Dies ist ein in Python geschriebenes nicht-Echtzeit HAL-Programm zur Steuerung von Hypetherm Powermax-Plasmaschneidern unter Verwendung des Modbus-ASCII-Protokolls über RS485.
Anmerkung
|
Da es sich um ein nicht-Echtzeit-Programm handelt, kann es durch Computerbelastung und Latenzzeiten beeinträchtigt werden. Es ist möglich, die Kommunikation zu verlieren, was durch eine Änderung der Statusausgabe angezeigt wird. Es sollte immer eine Notaus-Schaltung vorhanden sein, um die Stromzufuhr zum Gerät im Notfall verlässlich unterbrechen zu können. |
Diese Komponente wird mit dem halcmd-Befehl "loadusr" geladen:
loadusr -Wn pmx485 pmx485 /dev/ttyUSB0
Dadurch wird die pmx485-Komponente über den Port /dev/ttyUSB0 geladen und gewartet, bis sie bereit ist.
Es ist erforderlich, den für die Kommunikation zu verwendenden Anschluss zu benennen.
1. Pins
-
pmx485.mode-set (bit, in) # set cutting mode
-
pmx485.current-set (bit, in) # set cutting current
-
pmx485.pressure-set (bit, in) # set gas pressure
-
pmx485.enable (bit, in) # enable the component
-
pmx485.mode (bit, out) # cut mode feedback
-
pmx485.current (bit, out) # cutting current feedback
-
pmx485.pressure (bit, out) # gas pressure feedback
-
pmx485.fault (bit, out) # powermax fault code
-
pmx485.status (bit, out) # connection status
-
pmx485.current-min (bit, out) # minimum allowed current
-
pmx485.current-max (bit, out) # maximum allowed current
-
pmx485.pressure-min (bit, out) # minimum allowed gas pressure
-
pmx485.pressure-max (bit, out) # maximum allowed gas pressure
2. Beschreibung
Um mit einem Powermax zu kommunizieren, muss die Komponente zunächst über den enable-Pin aktiviert werden und kann dann eine Anfrage an den Powermax stellen, indem sie einen gültigen String an die folgenden Pins schreibt:
-
mode-set
-
current-set
-
pressure-set
Anmerkung
|
Ein pressure-set-Wert von Null ist gültig, der Powermax berechnet dann intern den erforderlichen Druck. |
Die Kommunikation kann über das Powermax-Display oder den Status-Pin validiert werden. Im Fernsteuerungsmodus können der Modus, der Strom und der Druck nach Bedarf geändert werden.
Um die Kommunikation zu beenden, führen Sie einen der folgenden Schritte aus:
-
Setzen Sie alle Set-Pins auf Null: mode-set, current-set und pressure-set.
-
Trennen Sie das Powermax-Netzteil für etwa 30 Sekunden von der Stromquelle. Wenn Sie das System wieder einschalten, befindet es sich nicht mehr im Remote-Modus.
3. Referenz:
-
Hypertherm Anwendungshinweis #807220
"Powermax45 XP/65/85/105/125® Serielles Kommunikationsprotokoll"