|
Fernsteuerung
- Die CNC-Steuerung kann durch andere Programme ferngesteuert werden (ab Version 11.017)...
- Diese Funktion ist allerdings mehr oder weniger "just for fun"...
- Kalkuliere mit Änderungen oder gar Wegfall in späteren Updates...
Funktionsweise:
- Über die Windows API Funktion "Postmessage" können Befehle an das Steuerungsfenster gesendet werden...
- Message ID 0x400 / Übertragung Byteweise über "lparam" / Codierung UTF-8 / Kommandoende durch 0 signalisiert...
- Verfügbar sind die üblichen Befehle der Estlcam Kommandozeile plus die unten beschriebenen Zusatzfunktionen...
- Estlcam sendet nach Ausführung des Befehls "OK" bzw. den angefragten Wert auf dieselbe Weise zurück...
- Siehe Beispielcode "Sanduhr"...
- Geschrieben in VB.NET / Visual Studio 2017 / gerade mal 103 Zeilen - wirklich ziemlich easy...
Zusatzbefehle:
- REMOTE gefolgt vom Fenstertitel legt das Fenster fest an das die Steuerung seine Antwortnachrichten senden soll...
- Muss als erster Befehl gesendet werden, da dein Programm sonst keine Antwort zurück bekommt und nicht weiss wann der nächste Befehl gesendet werden kann...
- DIR legt einen Ordner fest in dem der Load Befehl CNC-Programmdateien sucht...
- LOAD Öffnet ein CNC-Programm, startes es jedoch noch nicht...
- START NORMAL Legt fest, dass CNC Programme wie gewohnt in Bezug zum aktuellen Nullpunkt ausgeführt werden...
- START LOCAL Legt fest, dass die aktuelle X/Y Position der Maschine als Nullpunkt angenommen wird...
- START AT FIRST COORDINATE Legt fest, dass die aktuelle Position der ersten Koordinate im CNC Programm entspricht und von da aus direkt gestartet wird...
- RUN Startet das CNC Programm...
- PROG X1? Abfrage 1. X Koordinate des CNC Programms...
- PROG Y1? Abfrage 1. Y Koordinate des CNC Programms...
- PROG Z1? Abfrage 1. Z Koordinate des CNC Programms...
- PROG DX? Abfrage Gesamtbreite des CNC Programms...
- PROG DY? Abfrage Gesamtlänge des CNC Programms...
- PROG DZ? Abfrage Gesamthöhe des CNC Programms...
- PROG MIN X? Abfrage kleinste X Koordinate des CNC Programms...
- PROG MIN Y? Abfrage kleinste Y Koordinate des CNC Programms...
- PROG MIN Z? Abfrage kleinste Z Koordinate des CNC Programms...
- PROG MAX X? Abfrage größte X Koordinate des CNC Programms...
- PROG MAX Y? Abfrage größte Y Koordinate des CNC Programms...
- PROG MAX Z? Abfrage größte Z Koordinate des CNC Programms...
- POS X? Aktuelle X-Position...
- POS Y? Aktuelle Y-Position...
- POS Z? Aktuelle Z-Position...
Tips:
- Vorsicht vor Rundungsfehlern:
- Relative Bewegungen werden zwangsläufig immer auf volle Schritte gerundet...
- Entsprechen 5mm z.B. 499,4 Schritten werden 499 Schritte gefahren...
- 10mm wären dann 998,8 Schritte = 999 gefahrene Schritte...
- Fährst du nun zwei mal je 5mm nach rechts und später ein mal 10mm nach links bist du insgesamt 998 Schritte nach rechts aber 999 nach links gefahren - stehst also nicht mehr auf 0!
- Verwende zumindest gelegentlich absolute Fahrbefehle (AX, AY, AZ) um solche Rundungsfehler wieder loszuwerden...
- Keine Syntaxprüfung:
- Die Ganze Sache ist eher als experimenteller Spaß zu sehen - unbekannte Befehle werden derzeit einfach ignoriert und mit "OK" beantwortet...
- Wenn die Maschine also auf einen Befehl nicht reagiert prüfe als erstes die Schreibweise...
|