Numeric_Control

Motivation

Numeric Control Jeder der schon mal an einer Drehbank oder Fräsmaschine gearbeitet hat, kennt das Problem; Man verzählt sich bei der Anzahl der Umdrehungen am Handrad oder vertraut den Skalenringen aufgrund des Umkehrspiels der Spindeln nicht so hundertprozentig und man muss die Bearbeitung des Werkstücks häufig unterbrechen, da man sich nicht mehr sicher mit der Maßhaltigkeit des Werkstücks ist, um nachzumessen.

Genau hierfür gibt es Anbaumessschieber für Drehbänke und Fräsmaschinen. Hierbei handelt es sich eigentlich um einen gewöhnlichen digitalen Messschieber, nur ohne Messschnäbel. Stattdessen gibt es Bohrungen und Befestigungselemente, um den Messschieber an das Maschinenbett oder an den Frästisch zu schrauben.

Da die Positionen der Anbaumessschieber meist recht ungünstig ist, um das Display abzulesen, gibt es fertige externe Anzeigen, die aber meist recht teuer sind und dabei einen schlecht verarbeiteten Eindruck machen. Deshalb lohnt es sich, wenn man ein bisschen Hintergrundwissen über Mikrocontrollerschaltungen hat, sich eine Anzeige selbst zu bauen.

Hintergrund

Die in diesem Artikel Vorgestellte Anzeige dient zum Auslesen von Messschiebern der Fa. Wabeco. Diese Messschieber haben eine kleine zweckentfremdete 5-pol Mini-USB Buchse, von denen 4 Anschlüsse belegt sind:

Anschluss Belegung
1 GND
2 CLK
3 DAT
4 Zero (GND)
5 N.C.

Der Messschieber sendet ein Paket mit den Positionsdaten ca. alle 115ms. Betrachtet man dann dieses Datenpaket genauer, erkennt man, dass es aus 24 Bit , also 3 Byte, besteht. Ein High-Pegel am Clock-Signal signalisiert ein gültiges Bit auf der Data-Leitung (Während des High-Pegels auf Clock ändert sich somit das Data-Bit auch nicht). Durch ausprobieren verschiedener Stellungen der Messschieber und Analyse des Datenpakets auf dem Oszilloskop kann relativ einfach die Codierung des Datenpakets ermittelt werden. Man erkennt relativ schnell, dass die ersten 20 Bit den Betrag der aktuellen Position in 1/100mm darstellen und dass das 21 Bit das Vorzeichen-Bit ist. Das 24. Bit steht für den aktuellen Modus (mm/inch) wobei inch in unseren Längengraden weniger gebräuchlich und deshalb in diesem Projekt nicht mit implementiert ist.

Signal der Anbaumessschieber

Dieses Bitmuster lässt sich relativ einfach mit einen Mikrocontroller über die INT0, INT1 und INT2 Interrupts auslesen. Zusätzlich besitzt die Anzeige noch eine Möglichkeit einen Hall-Sensor (TLE4905) anzuschließen um die Drehzahl der Maschinenspindel zu erfassen. Mit diesen Parametern X/Y Positionen und Drehzahl, lassen sich 2 weitere Parameter berechnen; Vorschub und Schnittgeschwindigkeit, die beim Drehen sehr hilfreich sein können, wenn man sie in Echtzeit angezeigt bekommt und nicht jedes Mal im Kopf überschlagen muss.

Schaltung

Im Prinzip handelt es sich hier um eine einfache Mikrocontroller-Grundschaltung mit einem GLCD ( Pollin TG12864B), Datenbits angeschlossen auf Port A und Steuerleitungen auf Port C. Der Hallsensor ist an einem beliebigen freien Portpin angeschlossen und wird über den Pin-Chance Interrupt des Mega644 ausgelesen. Zur Pegelanpassung der Signale vom Messschieber wird ein einfacher LM293 OP-Amp verwendet, der als Komparator verschaltet ist, das ganze pro Messschieber 2 mal für Clock und Data. Zusätlich dazu jeweils noch ein Transistor der die Zero-Leitung vom Anbaumessschieber auf GND, zur Nullung der Anzeige, auf GND zieht. Zudem besteht die Möglichkeit, den Anbaumessschieber über die Zero-Leitung mit Strom zu versorgen. Dazu muss die jeweilige Lötbrücke PWR_X/Y/Z einfach gesetzt werden.

Alle Anschlüsse sind jeweils auf Pinheader herausgeführt.

Bedienung

Die Bedienung der Anzeige ist relativ simpel. Taster 1 dient zum Umschalten auf die jeweilige Achse. Mit 2 weiteren Tastern (+/-) kann ein Offset auf die jeweilige Achse gegeben werden und über Taster 4 kann eine Nullung erfolgen. Der zur Verfügung gestellte Code ist zum einen für die Anwendung an der Drehbank gedacht, da die X-Achse mit 2 multipliziert wird und immer einen positiven Wert anzeigt. Das dient dazu, dass immer der aktuelle Durchmesser des Werkstücks angezeigt wird. Zum anderen, bei der Anwendung an einer Fräsmaschine, werden lediglich die 3 Achsen (X,Y und Z) angezeigt

Nachbau

Die für den Nachbau benötigten Files sind hier zu finden:

Bei der Programmierung des Mikrocontrollers muss lediglich in der Software per #define eingestellt werden ob die Anzeige für Drehbank oder Fräsmaschine verwendet werden soll. Eventuell müssen die Taster, je nachdem wie sie verkabelt wurden ebenfalls über die #defines gemappt werden. Hierzu dient folgender Codeabschnitt in der main.c

//#define LATHE
#define MILL

//---------------------- Define's  ----------------------//
//Taster
#define SET_CHANGE		!(PINB & (1<<PINB3))
#define SET_ZERO		!(PINB & (1<<PINC4))
#define SET_PLUS		!(PINC & (1<<PINC0))
#define SET_MINUS		!(PINC & (1<<PINC1))


Für Besitzer der alten Platine gibt es den letzten aktuellen Code mit Schaltplan etc. hier zum Downlod


CAD Modell des GehäusesFür einen Nachbau des Gehäuses, liegen auch CAD Files bereit, bei dem Gehäuse handelt es sich um das Promat Gehäuse von Reichelt (GEH EG 1). Die CAD Vorlage ist für die obige Platine in Verbindung mit dem Pollin Display vorgesehen.



Falls Interesse an gefertigten Platinen besteht, auch für dieses Projekt habe ich noch welche in der Bastelkiste; einfach per Email bei mir melden.

Bildergalerie

Platinenrückseite Platine mit Display


Aneige mit Messschiebern An der Drehbank montierte Anzeige



Ähnliche Projekte:




Die in diesem Artikel zur Verfügung gestellten Inhalte stehen frei zur privaten Nutzung, jedwede kommerzielle Nutzung erfordert mein ausdrückliches Einverständnis. Henning Schaper