LinuxCNC Documentation

SYNOPSIS

xhc-whb04b-6 [-h] | [-H] [OPTIONEN]

BESCHREIBUNG

Die HAL-Komponente xhc-whb04b-6 unterstützt das XHC WHB04B-6, ein kabelloses 6-Achsen-USB-Pendant. Es bietet eine Reihe von Drucktasten, ein Jogwheel, zwei Drehknöpfe für die Achsen- und Geschwindigkeits-/Schrittauswahl und ein gewöhnliches LCD-Display.

Die LCD-Anzeige, die über eine sehr einfache Firmware-Schnittstelle verfügt, zeigt nur die nachfolgend aufgeführten Informationen an. Andere Informationen, wie z. B. benutzerdefinierte Daten, können nicht gedruckt werden.

  • Aktivierte Achse (X, Y, Z, A, B oder C)

  • Aktuelle Achsenposition von X, Y, Z und separat von A, B, C.

  • Ob Maschinenkoordinaten (X, Y, Z, A, B oder C) oder relative Koordinaten (X1, Y1, Z1, A1, B1 oder C1) angezeigt werden.

  • Schrittgröße oder -geschwindigkeit abhängig vom Betriebsmodus (MPG oder Schritt oder kontinuierlich).

  • Vorschubgeschwindigkeits-Anpassung (engl. override)

  • Spindeldrehzahl-Anpassung (engl. override)

  • Maschinenzustand wie Reset.

  • Akkustand

  • Wireless-Signalstärke

Das Display des Pendants, sein Drehschalter und die Bezeichnungen der Komponentenstifte verwenden die Bezeichnungen x, y, z, a, b und c. Während diese Anordnung von einer Maschine ausgeht, die als X, Y, Z, A, B und C konfiguriert ist, können die Stifte in einer HAL-Konfiguration je nach Bedarf unabhängig voneinander zugeordnet werden.

OPTIONEN

-h, --help

Gibt die Zusammenfassung und die am häufigsten verwendeten Befehle aus.

-H

Führt xhc-whb04b-6 im HAL-Modus statt im interaktiven Modus aus. Im HAL-Modus werden die Befehle des Geräts in den Shred-Speicher des HAL übertragen. Der interaktive Modus ist nützlich zum Testen der Gerätekonnektivität und zur Fehlersuche.

-s

Lead(? FIXME) + Jogwheel ändert die Spindel-Override-Drehzahl. Jeder Tick erhöht/verringert den Spindel-Override.

-f

MPG + Handrad (engl. jogwheel) ändert den Vorschub-Override. Mit jedem Tick wird der Vorschub-Override erhöht/verringert.

-B

Hinzufügen von 5 mm und 10 mm zur Stufenvorschubleistung

-t

Mit Timeout auf USB-Gerät warten und dann fortfahren, sonst beenden. Ohne -t ist die Zeitüberschreitung implizit unendlich.

-u, -U

Zeigt die vom Gerät empfangenen Daten an. Mit -U werden empfangene und gesendete Daten gedruckt. Die Ausgabe wird mit dem Präfix "usb" versehen.

-p

Zeigt HAL-Pins und HAL-bezogene Meldungen an. Der Ausgabe ist ein "hal" vorangestellt.

-e

Zeigt erfasste Ereignisse an, z. B. Taste gedrückt/freigegeben, Jog-Dial, Achsendrehknopf und Vorschubdrehknopf-Ereignis. Der Ausgabe wird ein "event" vorangestellt.

-a

Aktiviert alle Protokollierungsmöglichkeiten, ohne sie explizit anzugeben.

-c

Aktiviert die Ausgabe von Prüfsummen, die für die Fehlersuche in der Funktion des Prüfsummengenerators erforderlich ist. Verlassen Sie sich nicht auf diese Funktion, da sie entfernt wird, sobald der Generator implementiert ist.

-n

Erzwingt Stillschweigen und gibt außer bei Fehlern keine Ausgaben aus. Dadurch werden auch Meldungen mit dem Präfix "init" verhindert.

UDEV

Die ausführbare Datei xhc-whb04b-6 benötigt die Berechtigung zum Lesen des USB-Geräts des Pendants. Möglicherweise sind zusätzliche udev-Regeln erforderlich. Wenn dies der Fall ist, muss diese Datei
/etc/udev/rules.d/99-xhc-whb04b-6.rules
sollte mit einer einzigen Zeile erstellt werden
ATTR{idProduct}=="eb93", ATTR{idVendor}=="10ce", MODE="0666", OWNER="root", GROUP="plugdev".

Standalone-Nutzung

Die xhc-whb04b-6 Programm kann von der Kommandozeile ohne LinuxCNC ausgeführt werden, um ein Pendant zu testen. Dieser Standalone-Modus wird verwendet, um die Taste Codes für jede Taste drücken und Debug übertragen USB-Daten erzeugt zu identifizieren.

BEISPIELE

xhc-whb04b-6 -ue

Startet im Simulationsmodus und druckt eingehende USB-Datenübertragungen und generierte Ereignisse beim Drücken/Loslassen von Tasten.

xhc-whb04b-6 -p

Start im Simulationsmodus und Ausgabe von HAL-Pin-Namen und Ereignissen, die auf den HAL-Speicher verteilt werden.

xhc-whb04b-6 -H

Starten Sie im HAL-Modus (Normaler Modus für den realen Einsatz der Maschine).

xhc-whb04b-6 -HsfB

Start im HAL-Modus + Spindel-Override + Vorschub-Override + Großer Schritt (5/10 mm).

HAL-Nutzung (engl. usage)

Verwenden Sie die Option -H, um den HAL-Modus und andere Optionen nach Bedarf anzugeben:
loadusr -W xhc-whb04b-6 -HsfB

Eingangs-/Ausgangssignale

Note: Für jeden Button wird ein Ausgangspin bereitgestellt, auch wenn mit diesem Signal keine Funktionalität realisiert wird. Um beispielsweise ein laufendes Programm zu stoppen, kann der Stop-Button-Pin direkt mit halui.program.stop verbunden werden. Um jedoch ein Programm zu starten/pausieren/fortsetzen, schaltet der entsprechende Button neben whb.button.start-pause auch das ``whb.halui.program.``{run,pause,resume} entsprechend um.

Note: Die Spindel/Spindel--Tasten manipulieren die Spindel-Nachregelung (engl. override). Die Spindeldrehzahl wird mit den jeweiligen Kombos Fn
Spindel- und FN + Spindel
eingestellt.

In den folgenden Tabellen sind alle Ein-/Ausgangsstifte aufgeführt und es wird angegeben, mit welchen Signalen sie verbunden werden sollen.

Achse und Stepgen

Signale, die für die Bewegung der Achse verwendet werden.

<N> …​ bezeichnet die Nummer der Achse, die aus {x, y, z, a, b, c} besteht.

whb.halui.home-all (bit,out)

Verbindung zu halui.home-all, gesteuert durch den M-Home. Pin, um alle Achsen in die Ausgangsstellung zu bringen. Siehe auch whb.button.m-home.

whb.halui.axis._<N>_.select (bit,out)

Verbindung zu halui.axis._<N>_.select. Pin zur Auswahl der Achse.

whb.axis._<N>_.jog-counts (s32,out)

zu verbinden mit axis._<N>_.jog-counts. Der Zähl-Pin des Jogwheels.

whb.axis._<N>_.jog-enable (bit,out)

zu verbinden mit axis._<N>_.jog-enable. Wenn true (und im manuellen Modus), führt jede Änderung der "jog-counts" zu einer Bewegung. Wenn false, wird "jog-counts" ignoriert.

whb.axis._<N>_.jog-scale (float,out)

zu verbinden mit axis._<N>_.jog-scale. Die Strecke, die für jede Zählung bei "jog-counts" zurückgelegt wird, in Maschineneinheiten.

whb.axis._<N>_.jog-vel-mode (bit,out)

zu verbinden mit axis._<N>_.jog-jog-vel-mode. Bei false arbeitet das Jogwheel im Positionsmodus. Die Achse bewegt sich bei jeder Zählung genau um die Jog-Scale-Einheiten, unabhängig davon, wie lange das dauern könnte. Wenn true, arbeitet das Jogwheel im Geschwindigkeitsmodus - die Bewegung stoppt, wenn das Rad anhält, auch wenn das bedeutet, dass die befohlene Bewegung nicht abgeschlossen ist.

whb.halui.max-velocity.value (float,in)

zu verbinden mit halui.max-velocity.value. Die maximal zulässige Geschwindigkeit in Einheiten pro Sekunde (<N> ist zweistellig mit 0 aufgefüllt).

whb.halui.feed-override.scale (float,in)

zu verbinden mit halui.feed-override.scale. Die Skalierung für den Vorschub-Override-Wert.

whb.halui.axis.`__<N>__.pos-feedback` (float,in)

zu verbinden mit halui.axis._<N>_.pos-feedback. Rückmeldung der Achsenposition in Maschinenkoordinaten, die angezeigt werden sollen.

whb.halui.axis._<N>_.pos-relative (float,in)

zu verbinden mit halui.axis._<N>_.pos-relative. Angegebene Achsenposition in relativen Koordinaten, die angezeigt werden soll.

Maschine

Signale, die zum Umschalten des Maschinenstatus verwendet werden.

whb.halui.machine.on (bit,out)

Verbindung zu halui.machine.on. Pin für die Abfrage von machine on.

whb.halui.machine.is-on (bit,in)

Verbindung zu halui.machine.is-on. Pin, der anzeigt, dass die Maschine eingeschaltet ist.

whb.halui.machine.off (bit,out)

Verbindung zu halui.machine.off. Pin um das Ausschalten der Maschine anzufordern.

Spindel

Signale, die zum Betreiben einer Spindel verwendet werden.
whb.halui.spindle.start (bit,out)

Verbindung zu halui.spindle.0.start. Pin, um die Spindel zu starten.

whb.halui.spindle.is-on (bit,in)

Verbindung zu halui.spindle.0.on. Pin um anzuzeigen, dass die Spindel eingeschaltet ist (in beide Richtungen).

whb.halui.spindle.stop (bit,out)

Verbindung zu halui.spindle.0.stop. Pin um die Spindel anzuhalten.

whb.halui.spindle.forward (bit,out)

Verbindung zu halui.spindle.0.forward verbinden, damit die Spindel vorwärts fährt.

whb.halui.spindle.reverse (bit,out)

Mit dem Pin halui.spindle.0.reverse verbinden, um die Spindel rückwärts laufen zu lassen.

whb.halui.spindle.decrease (bit,out)

Verbindun zu halui.spindle.0.decrease. Pin um die Spindeldrehzahl zu verringern.

whb.halui.spindle.increase (bit,out)

Verbindung zu halui.spindle.0.increase. Pin um Spindeldrehzahl zu erhöhen.

whb.halui.spindle-override.increase (bit,out)

Zu verbinden mit halui.spindle.0.override.increase. Pin zur Erhöhung des Spindel-Overrides um den Betrag der Skala.

whb.halui.spindle-override.decrease (bit,out)

Zu verbinden mit halui.spindle.0.override.decrease. Pin zum Verringern des Spindel-Overrides um den Betrag der Skala.

whb.halui.spindle-override.value (float,in)

Zu verbinden mit halui.spindle.0.override.value. Der aktuelle Spindelüberschreibungswert.

whb.halui.spindle-override.scale (float,in)

Zu verbinden mit halui.spindle.0.override.scale. Der aktuelle Override-Wert der Spindelskalierung.

Vorschub

Signale, die für Anpassungen (engl. override) von Spindel und Vorschub verwendet werden. Der Vorschubdrehknopf kann dazu dienen

  • Kontinuierliche Bewegung x% von max Geschwindigkeit

  • Schrittbewegung x mm

  • MPG-Override Vorschub/Spindel

  • Die spezielle Position "Lead".
    Kontinuierlich (engl. continuous): In diesem Modus wird das Jogging mit der ausgewählten Vorschubgeschwindigkeit durchgeführt. Solange das Jog-Rad gedreht wird, bewegt sich die ausgewählte Achse.
    Schrittweise (engl. step): In diesem Modus bewegt sich die Maschine in Schritten von Rad-Zählern in der aktuell ausgewählten Schrittgröße und der eingestellten Vorschubgeschwindigkeit in Maschineneinheiten. Falls die angeforderte Position nicht erreicht wird, bewegt sich die Maschine weiter, auch wenn das Jog-Rad nicht gedreht wird.
    Lead: Manipuliert die Spindelüberschreibung.
    MPG: Manipuliert die Vorschubüberschreibung.

Hinweis: Als Folge der 3 Modi des Herstellers kehrt das Zurückschalten des Vorschubdrehknopfes von Blei in den MPG-Modus zurück, der MPG-Modus ist der Standardmodus beim Start. Je nach Modus vor dem Drehen des Drehknopfes ergibt der Vorschub-Override unterschiedliche Werte. In MPG/CON ändert sich der Vorschub auf 100%, 60%, …​ und so weiter. Im Step-Modus wird der Vorschub in mm angegeben.

whb.halui.feed-override.value (float,in)

Zu verbinden mit halui.feed-override.value. Der aktuelle Wert für den Vorschub-Override.

whb.halui.feed-override.decrease (bit,out)

Verbindung zu halui.feed-override.increase. Pin zur Erhöhung des Vorschub-Overrides um den Skalenwert.

whb.halui.feed-override.increase (bit,out)

Verbindung zu halui.feed-override.increase. Pin zur Erhöhung des Vorschub-Overrides um den Skalenwert.

whb.halui.feed-override.scale (float,out)

Zu verbinden mit`halui.feed-override.scale`. Pin zum Einstellen der Skala beim Ändern des Feed-Overrides.

whb.halui.max-velocity.value (float,out)

Verbindung mit halui.max-velocity.value herstellen.

Programm

Signale für Betriebsprogramm und MDI-Modus.

whb.halui.program.run (bit,out)

Zu verbinden mit halui.program.run, um ein Programm auszuführen.

whb.halui.program.is-running (bit,in)

Eine Verbindung zu halui.program.is-running herstellen, um anzuzeigen, dass ein Programm läuft.

whb.halui.program.pause (bit,out)

Verbindung zu halui.program.pause. Pin zum Anhalten eines Programms.

whb.halui.program.is-paused (bit,in)

Verbindung zu halui.program.is-paused Pin, der anzeigt, dass ein Programm pausiert.

whb.halui.program.resume (bit,out)

Verbindung zu halui.program.resume. Pin zur Wiederaufnahme eines Programms.

whb.halui.program.stop (bit,out)

Verbindung mit program.stop. Pin zum Anhalten eines Programms.

whb.halui.program.is-idle (bit,in)

Verbindung zu halui.program.is-idle. Pin, der anzeigt, dass kein Programm läuft.

whb.halui.mode.auto (bit,out)

Verbinden Sie sich mit dem halui.mode.auto. Pin zur Abfrage des automatischen Modus.

whb.halui.mode.is-auto (bit,in)

Verbindung zu halui.mode.is-auto. Pin für die Anzeige, dass der automatische Modus eingeschaltet ist.

whb.halui.mode.joint (bit,out)

Verbindung zum halui.mode.joint. Pin für eine Anfrage nach einem "gelenkweisen" (engl. joint by joint) Modus.

whb.halui.mode.is-joint (bit,in)

Verbindung mit halui.mode.is-joint. Pin, der anzeigt, dass der gelenkweise Modus (engl. "joint by joint") eingeschaltet ist.

whb.halui.mode.manual (bit,out)

Verbindung mit halui.mode.manual. Pin zur Anforderung des manuellen Modus.

whb.halui.mode.is-manual (bit,in)

Verbindung zu halui.mode.is-manual. Pin, der anzeigt, dass der manuelle Modus eingeschaltet ist.

whb.halui.mode.mdi (bit,out)

Verbindung zu halui.mode.mdi. Pin zur Anforderung des MDI-Modus.

whb.halui.mode.is-mdi (bit,in)

Zu verbinden mit halui.mode.is-mdi. Pin, der anzeigt, dass der MDI-Modus eingeschaltet ist.

whb.halui.mode.teleop (bit,out)

Verbindung zu halui.mode.teleop. Pin für die Abfrage der Achse nach Achsenmodus.

whb.halui.mode.is-teleop (bit,in)

Zu verbinden mit halui.mode.is-teleop. Pin, der anzeigt, dass der Achse-Modus eingeschaltet ist.

Buttons

Aus Gründen der Flexibilität bietet jeder Taster einen Ausgangspin, auch wenn keine Funktionalität direkt mit diesem Signal realisiert wird. Der Fn-Taster kann mit jedem anderen Taster kombiniert werden. Dazu gehören auch RESET, Stop, Start/Pause, Macro-10, und Step|Continuous. Standardmäßig werden die häufiger verwendeten orangen Tasten ausgeführt, die blauen (`whb.button.macro-`<M>) durch Kombination mit Fn (erst Fn, dann Taste drücken).

Dieses Schaltflächenmakro muss zu Ihrer INI hinzugefügt und für Ihre eigene Verwendung bearbeitet werden:

[HALUI]
MDI_COMMAND=(debug,macro0)  # this one is for numbering but not used by pendant (need 1 to 16)
MDI_COMMAND=(debug,macro1)
MDI_COMMAND=(debug,macro2)
MDI_COMMAND=(debug,macro3)
MDI_COMMAND=(debug,macro4)
MDI_COMMAND=(debug,macro5)
MDI_COMMAND=(debug,macro6)
MDI_COMMAND=(debug,macro7)
MDI_COMMAND=(debug,macro8)
MDI_COMMAND=(debug,macro9)
MDI_COMMAND=(debug,macro10)
MDI_COMMAND=(debug,macro11)
MDI_COMMAND=(debug,macro12)
MDI_COMMAND=(debug,macro13)
MDI_COMMAND=(debug,macro14)
MDI_COMMAND=(debug,macro15)
MDI_COMMAND=(debug,macro16)

<M> …​ denotes an arbitrary macro number which is of {1, 2, …​, 16}

whb.button.reset (bit,out)

Siehe whb.halui.estop.{activate, reset} True eine Reset-Taste gedrückt, false sonst. Zum Umschalten des Notaus-Schalters verwenden Sie whb.halui.estop .active und .reset.

whb.button.stop (bit,out)

Siehe whb.halui.program.stop True bei gedrückter Stop-Taste, false sonst. Zum Anhalten eines Programms verwenden Sie whb.halui.program.stop.

whb.button.start-pause (bit,out)

Siehe whb.halui.program.{run, pause, resume} True bei gedrückter Start-Pause-Taste, false andernfalls. whb.halui.program .run, .pause und .resume dienen zum Umschalten zwischen Start und Pause.

whb.button.feed-plus (bit,out)

Wahr, wenn die Taste Feed+ gedrückt wird, sonst falsch.

whb.button.feed-minus (bit,out)

Wahr bei gedrückter Feed- - Taste, sonst falsch.

whb.button.spindle-plus (bit,out)

Siehe halui.spindle.0.override.increase. True bei Spindel+ Taste unten, false sonst. Mit dieser Schaltfläche können Sie den Spindel-Override verändern. Zum Erhöhen des Spindel-Overrides verwenden Sie halui.spindle.0.override.increase.

whb.button.spindle-minus (bit,out)

Siehe halui.spindle.0.override.decrease. True bei gedrückter Spindel- Taste, false sonst. Um den Spindel-Override zu verringern, verwenden Sie halui.spindle.0.override.decrease.

whb.button.m-home (bit,out)

Zu verbinden mit halui.home-all True auf M-Home-Taste unten, sonst falsch. Fordert den MDI-Modus an, bevor der Tastenstift festgelegt wird. Siehe auch whb.halui.mode.mdi.

whb.button.safe-z (bit,out)

Sur Verbindung mit halui.mdi-command-`__<M>__ True on Safe-Z button down, false otherwise. Fordert den MDI-Modus an, bevor der Button-Pin gesetzt wird. Siehe auch `whb.halui.mode.mdi.

whb.button.w-home (bit,out)

Zur Verbindzung mit halui.mdi-command-`__<M>__ True bei gedrückter W-Home-Taste, false sonst. Fordert den MDI-Modus an, bevor der Button-Pin gesetzt wird. Siehe auch `whb.halui.mode.mdi.

whb.button.s-on-off (bit,out)

Siehe whb.halui.spindle.`{``start``,`` stop``}. True bei gedrückter S-ON/OFF-Taste, false sonst halui.spindle.0.start schaltet die Spindel ein und aus. Um die Spindel auszuschalten, verwenden Sie halui.spindle.0.stop.

whb.button.fn (bit,out)

True bei gedrückter Fn Funktions-Taste , false sonst.

whb.button.probe-z (bit,out)

Verbinden mit halui.mdi-command-`__<M>__ True on Probe-Z button down, andernfalls false. Fordert den MDI-Modus an, bevor der Tastenpin festgelegt wird. Siehe auch `whb.halui.mode.mdi.

whb.button.macro-1 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True bei Makro-1 Taste (Fn
Feed+) unten, false sonst.

whb.button.macro-2 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True on Macro-2 button (Fn
Feed-) down, andernfalls false.

whb.button.macro-3 (bit,out)

Siehe whb.halui.spindle.increase True bei Makro-3-Taste (Fn + Spindel+) unten, false sonst. Mit dieser Taste kann die Spindeldrehzahl verändert werden. Um die Spindeldrehzahl zu verringern, verwenden Sie whb.halui.spindle.increase.

whb.button.macro-4 (bit,out)

Siehe whb.halui.spindle.decrease True bei Macro-4 Taste unten (Fn
Spindel-), false sonst Diese Taste ist dazu gedacht, die Spindeldrehzahl zu manipulieren. Um die Spindeldrehzahl zu verringern, verwenden Sie whb.halui.spindle.decrease.

whb.button.macro-5 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True bei gedrücktem Macro-5 Button (Fn + M-HOME), false sonst.

whb.button.macro-6 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True bei Macro-6 Taste unten (Fn + Safe-Z), false sonst.

whb.button.macro-7 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True bei gedrücktem Macro-7 Button (Fn + W-HOME), false sonst.

whb.button.macro-8 (bit,out)

Reserviert für Spindeldrehrichtung True bei gedrückter Makro-8-Taste (Fn
S-ON/OFF), false sonst.

whb.button.macro-9 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True wenn Macro-9 button down (Fn + Probe-Z), sonst faslse.

whb.button.macro-10 (bit,out)

Reserviert für toggle DRO Abs/rel. True auf Macro-10 Button down, sonst false. Schaltet die Anzeigekoordinaten in relative Koordinaten um. Auf dem Display wird die Achse dann als X1, Y1, Z1, A1, B1 und C1 bezeichnet. Siehe auch whb.halui.axis.`__<N>__.pos-relative`.

whb.button.macro-11 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True bei Macro-11 button down (Fn + RESET), andernfalls false.

whb.button.macro-12 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True bei Macro-12 button (Fn
Stop) down, andernfalls false.

whb.button.macro-13 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True auf Macro-13 Taste (Fn Start/Pause) gedrückt, sonst falsch.

whb.button.macro-14 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> Wahr, wenn die Taste Macro-14 (Fn + Macro-10) gedrückt wird, sonst falsch.

whb.button.macro-15 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True auf Macro-15 Taste nach unten (Fn + MPG), sonst falsch.

whb.button.macro-16 (bit,out)

Zu verbinden mit `halui.mdi-command-`<M> True auf Macro-16-Taste (Fn
Step) nach unten, andernfalls falsch.

whb.button.mode-continuous (bit,out)

True, wenn die Taste für den Dauermodus gedrückt wird, sonst false.

whb.button.mode-step (bit,out)

True, wenn die Taste für den Schrittmodus gedrückt wird, sonst false.

Handsteuergerät (engl. pendant)

whb.pendant.is-sleeping (bit,out)

True, solange sich das Pendant im Schlafmodus befindet (normalerweise einige Sekunden nach dem Ausschalten), ansonsten false.

whb.pendant.is-connected (bit,out)

True, solange sich das Handsteuergerät nicht im Ruhezustand befindet (eingeschaltet ist), ansonsten false.

Beispiel für eine HAL-Konfiguration

Seien Sie vorsichtig, wenn Sie diesen Beispielcode aus den Online-Webdokumenten kopieren und einfügen. Bestimmte Zeichen werden von der Website inkompatibel kodiert (Minus wird zu em-dash). Sicherer ist es, den Code von https://raw.githubusercontent.com/LinuxCNC/linuxcnc/devel/src/hal/user_comps/xhc-whb04b-6/example-configuration.md zu kopieren und einzufügen.

#
### Hal-Datei xhc_whb04b_6.hal Beispiel
#
# ######################################################################
# Pendelkomponenten laden
# ######################################################################

loadusr -W xhc-whb04b-6 -HsfB

# ######################################################################
# Konfiguration des Hängesignals
# ######################################################################

# On/Off Signale
net machine.is-on                         halui.machine.is-on                   whb.halui.machine.is-on
net pdnt.machine.on                       whb.halui.machine.on                  halui.machine.on
net pdnt.machine.off                      whb.halui.machine.off                 halui.machine.off

# program related signals
net pdnt.program.is-idle                  whb.halui.program.is-idle             halui.program.is-idle
net pdnt.program.is-paused                whb.halui.program.is-paused           halui.program.is-paused
net pdnt.program-is-running               whb.halui.program.is-running          halui.program.is-running
net pdnt.program.resume                   whb.halui.program.resume              halui.program.resume
net pdnt.program.pause                    whb.halui.program.pause               halui.program.pause
net pdnt.program.run                      whb.halui.program.run                 halui.program.run
net pdnt.program.stop                     whb.halui.program.stop                halui.program.stop

# machine mode related signals
net pdnt.mode.auto                        whb.halui.mode.auto                   halui.mode.auto
net pdnt.mode.manual                      whb.halui.mode.manual                 halui.mode.manual
net pdnt.mode.mdi                         whb.halui.mode.mdi                    halui.mode.mdi
net pdnt.mode.joint                       whb.halui.mode.joint                  halui.mode.joint
net pdnt.mode.teleop                      whb.halui.mode.teleop                 halui.mode.teleop
net pdnt.mode.is-auto                     halui.mode.is-auto                    whb.halui.mode.is-auto
net pdnt.mode.is-manual                   halui.mode.is-manual                  whb.halui.mode.is-manual
net pdnt.mode.is-mdi                      halui.mode.is-mdi                     whb.halui.mode.is-mdi
net pdnt.mode.is-joint                    halui.mode.is-joint                   whb.halui.mode.is-joint
net pdnt.mode.is-teleop                   halui.mode.is-teleop                  whb.halui.mode.is-teleop

# "is-homed" axis signal for allowing pendant when machine is not homed
net pdnt.axis.X.is-homed                  halui.joint.0.is-homed                whb.halui.joint.x.is-homed
net pdnt.axis.Y.is-homed                  halui.joint.1.is-homed                whb.halui.joint.y.is-homed
net pdnt.axis.Z.is-homed                  halui.joint.2.is-homed                whb.halui.joint.z.is-homed

# "selected axis" signals
net pdnt.axis.X.select                    whb.halui.axis.x.select               halui.axis.x.select
net pdnt.axis.y.select                    whb.halui.axis.y.select               halui.axis.y.select
net pdnt.axis.Z.select                    whb.halui.axis.z.select               halui.axis.z.select

net pdnt.axis.x.jog-scale                 whb.axis.x.jog-scale                  axis.x.jog-scale
net pdnt.axis.y.jog-scale                 whb.axis.y.jog-scale                  axis.y.jog-scale
net pdnt.axis.z.jog-scale                 whb.axis.z.jog-scale                  axis.z.jog-scale

net pdnt.axis.x.jog-counts                whb.axis.x.jog-counts                 axis.x.jog-counts
net pdnt.axis.y.jog-counts                whb.axis.y.jog-counts                 axis.y.jog-counts
net pdnt.axis.z.jog-counts                whb.axis.z.jog-counts                 axis.z.jog-counts

net pdnt.axis.x.jog-enable                whb.axis.x.jog-enable                 axis.x.jog-enable
net pdnt.axis.y.jog-enable                whb.axis.y.jog-enable                 axis.y.jog-enable
net pdnt.axis.z.jog-enable                whb.axis.z.jog-enable                 axis.z.jog-enable

net pdnt.axis.x.jog-vel-mode              whb.axis.x.jog-vel-mode               axis.x.jog-vel-mode
net pdnt.axis.y.jog-vel-mode              whb.axis.y.jog-vel-mode               axis.y.jog-vel-mode
net pdnt.axis.z.jog-vel-mode              whb.axis.z.jog-vel-mode               axis.z.jog-vel-mode


# macro buttons to MDI commands
net pdnt.macro-1                          whb.button.macro-1                    halui.mdi-command-01             # use MDI command from main.ini
net pdnt.macro-2                          whb.button.macro-2                    halui.mdi-command-02             # use MDI command from main.ini
net pdnt.reserved.for.spindle+            whb.button.macro-3                                                     # Hardcoded for spindle+ whb.halui.spindle.increase
net pdnt.reserved.for.spindle-            whb.button.macro-4                                                     # Hardcoded for spindle- whb.halui.spindle.decrease
net pdnt.macro-5                          whb.button.macro-5                    halui.mdi-command-05             # use MDI command from main.ini
net pdnt.macro-6                          whb.button.macro-6                    halui.mdi-command-06             # use MDI command from main.ini
net pdnt.macro-7                          whb.button.macro-7                    halui.mdi-command-07             # use MDI command from main.ini
net pdnt.reserved.for.spindle.dir         whb.button.macro-8                                                     # Hardcoded for spindle direction inside pendant
net pdnt.macro-9                          whb.button.macro-9                    halui.mdi-command-09             # use MDI command from main.ini
net pdnt.reserved.for.ABS-REL             whb.button.macro-10                                                    # Hardcoded for swap Dro  Relative/Absolute
net pdnt.macro-14                         whb.button.macro-14                   halui.mdi-command-14             # use MDI command from main.ini
net pdnt.reserved.for.flood               whb.button.macro-15                                                    # Hardcoded for halui.flood on/off
net pdnt.reserved.for.mist                whb.button.macro-16                                                    # Hardcoded for halui.mist on/off

net pdnt.macro.11                         whb.button.macro-11                   halui.mdi-command-11             # use MDI command from main.ini
net pdnt.macro.12                         whb.button.macro-12                   halui.mdi-command-12             # use MDI command from main.ini
net pdnt.macro.13                         whb.button.macro-13                   halui.mdi-command-13             # use MDI command from main.ini


# flood and mist toggle signals
net  pdnt.flood.is-on                     whb.halui.flood.is-on                 halui.flood.is-on                #return signal is on or off
net  pdnt.flood.off                       whb.halui.flood.off                   halui.flood.off                  #reserved whb.button.macro-15
net  pdnt.flood.on                        whb.halui.flood.on                    halui.flood.on                   #reserved whb.button.macro-15

net  pdnt.mist.is-on                      whb.halui.mist.is-on                  halui.mist.is-on                 #return signal is on or off
net  pdnt.mist.off                        whb.halui.mist.off                    halui.mist.off                   #reserved whb.button.macro-16
net  pdnt.mist.on                         whb.halui.mist.on                     halui.mist.on                    #reserved whb.button.macro-16

# default function button signals
net pdnt.button.m-home                    whb.button.m-home                     halui.home-all                   # Homeing use built-in halui home all
net pdnt.button.safe-z                    whb.button.safe-z                     halui.mdi-command-03             # Safe-z  use MDI command from main.ini
net pdnt.button.w-home                    whb.button.w-home                     halui.mdi-command-04             # Unpark  use MDI command from main.ini
net pdnt.button.probe-z                   whb.button.probe-z                    halui.mdi-command-08             # Probe-Z use MDI command from main.ini


# unused, just exposes pendant internal status or as basic button
#net pdnt.mode-lead                        whb.halui.feed.selected-lead
#net pdnt.mode-mpg-feed                    whb.halui.feed.selected-mpg-feed
#net pdnt.mode-continuous                  whb.halui.feed.selected-continuous
#net pdnt.mode-step                        whb.halui.feed.selected-step

#net pdnt.button.mode-mpg                  whb.button.mode-continuous
#net pdnt.button.mode-step                 whb.button.mode-step
#net pdnt.button.fn                        whb.button.fn
#net pdnt.button.reset                     whb.button.reset
#net pdnt.button.stop                      whb.button.stop
#net pdnt.button.start-pause               whb.button.start-pause
#net pdnt.button.s-on-off                  whb.button.s-on-off
#net pdnt.button.spindle-plus              whb.button.spindle-plus
#net pdnt.button.spindle-minus             whb.button.spindle-minus
#net pdnt.button.feed-plus                 whb.button.feed-plus
#net pdnt.button.feed-minus                whb.button.feed-minus


# spindle related signals
net pdnt.spindle.is-on                    whb.halui.spindle.is-on               spindle.0.on
net pdnt.spindle.start                    whb.halui.spindle.start               halui.spindle.0.start
net pdnt.spindle.stop                     whb.halui.spindle.stop                halui.spindle.0.stop
net pdnt.spindle.forward                  whb.halui.spindle.forward             halui.spindle.0.forward
net pdnt.spindle.reverse                  whb.halui.spindle.reverse             halui.spindle.0.reverse
net pdnt.spindle.increase                 whb.halui.spindle.increase            halui.spindle.0.increase         # reserved whb.button.macro-3
net pdnt.spindle.decrease                 whb.halui.spindle.decrease            halui.spindle.0.decrease         # reserved whb.button.macro-4
net pdnt.spindle-speed-abs                whb.halui.spindle-speed-cmd           spindle.0.speed-out-abs          # speed cmd from motion in rpm absolute


# spindle speed override signals
net pdnt.spindle-override.scale           whb.halui.spindle-override.scale      halui.spindle.0.override.scale   # needed for both spindle+/- and spindleoverride+/- button
net pdnt.spindle.override.value           halui.spindle.0.override.value        whb.halui.spindle-override.value # GUI feed rate related signals
net pdnt.spindle.override.increase        whb.halui.spindle-override.increase   halui.spindle.0.override.increase
net pdnt.spindle.override.decrease        whb.halui.spindle-override.decrease   halui.spindle.0.override.decrease


# GUI feed rate related signals can be used when program is running moving GUI slider
net pdnt.feed-override.scale              whb.halui.feed-override.scale         halui.feed-override.scale        # needed for both FeedOverride+/- and rotary knob button
net pdnt.max-velocity.value               whb.halui.max-velocity.value          halui.max-velocity.value         # needed for Mpg mode : button feed position% * max-velocity = Mpg feedrate


# take feed override min/max values from/to the GUI
net pdnt.feed-override.value              halui.feed-override.value             whb.halui.feed-override.value    # GUI feed rate related signals
net pdnt.feed-override.increase           whb.halui.feed-override.increase      halui.feed-override.increase
net pdnt.feed-override.decrease           whb.halui.feed-override.decrease      halui.feed-override.decrease


# axis position related signals feedback
net pdnt.axis.x.pos-feedback              halui.axis.x.pos-feedback             whb.halui.axis.x.pos-feedback
net pdnt.axis.y.pos-feedback              halui.axis.y.pos-feedback             whb.halui.axis.y.pos-feedback
net pdnt.axis.z.pos-feedback              halui.axis.z.pos-feedback             whb.halui.axis.z.pos-feedback


# axis position related signals relative
net pdnt.axis.x.pos-relative              halui.axis.x.pos-relative             whb.halui.axis.x.pos-relative
net pdnt.axis.y.pos-relative              halui.axis.y.pos-relative             whb.halui.axis.y.pos-relative
net pdnt.axis.z.pos-relative              halui.axis.z.pos-relative             whb.halui.axis.z.pos-relative

SIEHE AUCH

ANMERKUNGEN

Die CRC-Code-Funktion wird vom Hersteller nicht offengelegt. Daher wird der mit jedem Paket übertragene CRC-Wert noch nicht überprüft. Sie können uns gerne helfen, die Komponente zu verbessern.

AUTOR

Diese Komponente wurde von Raoul Rubien auf der Grundlage der Vorgängerkomponente xhc-hb04.cc entwickelt. Unter https://github.com/machinekit/machinekit/graphs/contributors finden Sie eine vollständige Liste der Mitwirkenden.

GESCHICHTE

Die Komponente wurde zufällig als Freizeitprojekt entwickelt. Die Entwicklung begann mit der xhc-whb04 (4-Achsen-Funkpendel) Implementierung als Referenz. 73 & vielen Dank an die Entwickler, die eine hervorragende Vorarbeit geleistet haben!

Copyright © 2018 Raoul Rubien (github.com/rubienr) Aktualisiert für Linuxcnc 2020 durch alkabal_free.fr.

Dies ist freie Software; die Kopierbedingungen finden Sie in der Quelle. Es gibt KEINE Garantie; nicht einmal für die MARKTREIFE oder die EIGNUNG FÜR EINEN BESTIMMTEN ZWECK.