Numeric_Control

Projekt Numeric_Control von Henning Schaper

Status: Abgeschlossen

Eine Anzeigeeinheit mit einem Atmega644 und GLCD für digitale Messschieber.

Motivation

num_ctrl4.jpg Jeder der schon mal an einer Drehbank 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 den Drehvorgang 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.

Dieses Bitmuster lässt sich relativ einfach mit einen Mikrocontroller über die INT0 und INT1 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 B. 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. Alle Anschlüsse sind jeweils auf Pinheader herausgeführt.

Bedienung/Nachbau

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 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. Der Code sollte sich aber recht leicht für Fräsmaschinen oder ähnliches anpassen lassen Die für den Nachbau benötigten Files sind hier zu finden: numericcontrol.zip

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

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

Bilder

num_ctrl1.jpgnum_ctrl2.jpg num_ctrl3.jpgnum_ctrl5.jpg