Der Renishaw Rotationsachsenkalibrator RX10 wurde einst in einer Messmaschine verbaut und ist nun solo vorhanden. Nur dessen Ansteuerung via serielle Schnittstelle blieb unbekannt. Dokumentation gibt's nicht.
Beim Öffnen des Steuerteils fand ich einen 8051-Mikrocontroller und eine L165V-Leistungsendstufe. Neben dem üblichen Krimskrams. Damit handelt es sich um eine Gleichstrommotor-Steuerung.
Das Gerät selbst kennt einen blockierten und einen
ausgerasteten Zustand: Der Motor bewegt zunächst den drehbaren
Teil aus einer hochpräzisen Raststellung heraus, dann dreht er den Kopf,
um dann im Innern wieder in eine Raststellung hineinzufahren.
Der Umlauf hat 72 Raststellungen (00
..71
),
also alle 5°.
Feinere Winkel lassen sich nicht einstellen.
Der rote Not-Aus-Schalter muss für den Betrieb gelöst sein, also herausgucken.
Herausgefunden wurde durch Ausprobieren folgendes:
Schnittstellen-Parameter: 9600 Baud, 8 Datenbits, 1 Stopbit, keine Parität, Handshake unbekannt und irrelevant
Kommandoformat: <Buchstabe>[-][<Ziffer><Ziffer>]\n
Antwortformat: <Ziffer><Ziffer> Meldungstext[:0<Ziffer><Ziffer>]\r\n
Kommandos:
Kommando | Parameter (Beispiel) | Antwort (Beispiel) | Aktion | |
---|---|---|---|---|
absolute | a | 45 | Fahrt zum Rastpunkt 0..71 auf kurzem Weg | |
-60 | Fahrt zum Rastpunkt 0..71 auf langem Weg | |||
current | c | 02 Position: 060 | aktuelle Position abfragen | |
h | Referenzfahrt kurzer Weg | |||
reference | f | Referenzfahrt langer Weg | ||
lock | l | Verriegeln (passiert normalerweise automatisch nach jeder Fahrt) | ||
unlock | u | Entriegeln |
Hier ist es. Und so sieht's aus. Wie immer Win32 ohne Laufzeitbibliothek und nur 9 Kilobyte groß. Läuft von Windows 98 bis Windows 10.
Das Editfeld mit der Zahlenanzeige kann zur Eingabe eines beliebigen Kommandos aus der oben angegebenen Tabelle gefüttert werden. Es wird 1 Sekunde nach der letzten Änderung oder beim Drücken auf Hinfahren ausgeführt. Steht nur eine Zahl drin (wie im Bild 1 zu sehen), wird das Kommando a ausgeführt.