Prim�rschnittstelle (XML RPC)

Extensible Markup Language Remote Procedure Call, kurz XML-RPC. Diese Technik erm�glicht ein entferntes Ausf�hren von Methoden, wobei die Daten�bertragung per http erfolgt. Die zu �bertragenen Daten besitzen dabei eine XML-Formatierung.

Die zu �bertragenen Daten besitzen dabei eine XML-Formatierung. XML-RPC ist sprachenunabh�ngig, daher gibt es XML-RPC Clients in diversen Programmiersprachen, somit ist eine Integration in bestehende Projekte leicht m�glich. Die Befehle werden unabh�ngig von der Programmiersprache beschrieben.
F�r einen erleichterten Einstieg werden mehrere Beispiel-Clients zur Verf�gung gestellt.

Dieser Artikel beschreibt wie �ber die Externe Schnittstelle die unten beschriebenen Aktionen ausgef�hrt werden k�nnen. Hierf�r muss zuerst eine Verbindung mit dem Roboter hergestellt werden. Dies kann in dem Artikel Python 3: Verbindung mit dem Roboter herstellen nachgelesen werden.

horstFX-Version: 2020.10 und neuer

1. Ansicht wechseln

1.1 Befehl

HorstFX.Activity.switchActivity(id)

1.2 Parameter

Welche Ansicht welcher ID zugeteilt wurde, kann in dem Artikel Dokumentation Ansichten horstFX nachgelesen werden.

1.3 R�ckgabewert

true bei Erfolg.

2. Auf aktuelle Gelenkwinkel zugreifen

2.1 Befehl

HorstFX.Robotcontrol.getCurrentRobotJoints()

2.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

2.3 R�ckgabewert

Liefert bei Erfolg eine Map zur�ck.

Gelenkwinkel werden in Grad angegeben.

3. Auf aktuelle Pose zugreifen

3.1 Befehl

HorstFX.Robotcontrol.getCurrentRobotPose()

3.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

3.3 R�ckgabewert

Liefert bei Erfolg eine Map zur�ck.

4. Ausgang schalten

4.1 Befehl

HorstFX.Robotcontrol.setOutput(outputName, value)

4.2 Parameter

4.3 R�ckgabewert

true bei Erfolg

5. Betriebsmoduswechsel best�tigen

5.1 Befehl

HorstFX.Safety.confirmChangeOperationMode()

5.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

5.3 R�ckgabewert

true wenn der Betriebsmoduswechsel quittiert werden konnten.

6. Bool Register lesen

6.1 Befehl

HorstFX.Variable.getBoolRegister(registerIndex)

6.2 Parameter

6.3 R�ckgabewert

aktueller Wert des angefragten Registers (Bool-Wert)

 

7. Bool Register schreiben

7.1 Befehl

HorstFX.Variable.setBoolRegister(registerIndex, value)

7.2 Parameter

 

7.3 R�ckgabewert

true bei Erfolg

 

8. Eingang lesen

8.1 Befehl

HorstFX.Robotcontrol.getInput(inputName)

8.2 Parameter

8.3 R�ckgabewert

aktueller Wert des angefragten Inputs (Int-Wert)

 

9. Erweiterter Move-Befehl

9.1 Befehl

HorstFX.Robotcontrol.moveAdvanced(configMap)

9.2 Parameter

Die Map besitzt die gleichen Pflicht und Optionionale Parameter wie der erweiterte Move-Befehl im textuellen Programmiern.

Eine detaillierte Beschreibung ist in dem Artikel Erweiterter move Befehl zu finden.

9.3 R�ckgabewert

true bei Erfolg

 

10. externer Nothalt quittieren

Kann nur quittiert werden, wenn der externe Nothalt zur�ckgesetzt wurde.

10.1 Befehl

HorstFX.Safety.confirmExternalEmergencyStop()

10.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

10.3 R�ckgabewert

true wenn der externe Nothalt quittiert werden konnte.

 

11. Float Register lesen

11.1 Befehl

HorstFX.Variable.getFloatRegister(registerIndex)

11.2 Parameter

11.3 R�ckgabewert

aktueller Wert des angefragten Registers (Float-Wert)

 

12. Float Register schreiben

12.1 Befehl

HorstFX.Variable.setFloatRegister(registerIndex, value)

12.2 Parameter

12.3 R�ckgabewert

true bei Erfolg

 

13. Globale Geschwindigkeit auslesen

13.1 Befehl

HorstFX.Program.getGlobalSpeed()

13.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

13.3 R�ckgabewert

aktueller globale Geschwindigkeit (Float-Wert zwischen 0 - 1 (0 - 100%))

14. Globale Geschwindigkeit setzen

14.1 Befehl

HorstFX.Program.setGlobalSpeed(globalSpeed)

14.2 Parameter

14.3 R�ckgabewert

true bei Erfolg

 

15. Interne Fehler quittieren

15.1 Befehl

HorstFX.Safety.confirmInternalError()

15.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

15.3 R�ckgabewert

true wenn die internen Fehler quittiert werden konnten.

 

16. Int Register lesen

16.1 Befehl

HorstFX.Variable.getIntRegister(registerIndex)

16.2 Parameter

16.3 R�ckgabewert

aktueller Wert des angefragten Registers (Int-Wert)

 

17. Int Register schreiben

17.1 Befehl

HorstFX.Variable.setIntRegister(registerIndex, value)

17.2 Parameter

17.3 R�ckgabewert

true bei Erfolg

 

18. Joint Bewegung

18.1 Befehl

HorstFX.Robotcontrol.moveJoint(x, y, z, q0, q1, q2, q3, speed)

18.2 Parameter

18.3 R�ckgabewert

true bei Erfolg

 

19. Lineare Bewegung

Je nach Stellung des Roboters kann ein linearer Pfad nicht ausgef�hrt werden. Dies geschieht zum Beispiel wenn der Roboter mit sich selbst kollidieren w�rde, oder die Bewegung aufgrund der Kinematik nicht linear abgefahren werden kann.

19.1 Befehl

HorstFX.Robotcontrol.moveLinear(x, y, z, q0, q1, q2, q3, speed)

19.2 Parameter

19.3 R�ckgabewert

true bei Erfolg

 

20. n�chsten Joints lesen

20.1 Befehl

HorstFX.Variable.getNextJoints(

20.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

20.3 R�ckgabewert

Liefert bei Erfolg eine Map zur�ck.

21. n�chsten Joints setzen

21.1 Befehl

HorstFX.Variable.nextJoints(j1, j2, j3, j4, j5, j6)

21.2 Parameter

21.3 R�ckgabewert

true bei Erfolg

 

22. n�chste Pose setzen

22.1 Befehl

HorstFX.Variable.nextPose(x, y, z, q0, q1, q2, q3, )

22.2 Parameter

22.3 R�ckgabewert

true bei Erfolg

 

23. Nothalt quittieren

Kann nur quittiert werden, wenn der Nothalt am PANEL gel�st wurde.

23.1 Befehl

HorstFX.Safety.confirmEmergencyStop()

23.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.


23.3 R�ckgabewert

true wenn der Nothalt quittiert werden konnte.

 

24. Programm abbrechen

24.1 Befehl

HorstFX.Program.abort()

24.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

24.3 R�ckgabewert

true wenn das Programm abgebrochen werden kann.

 

25. Programm pausieren

25.1 Befehl

HorstFX.Program.pause()

25.2 Parameter

Diese Funktion besitzt keine Funktionsargumente.

25.3 R�ckgabewert

true wenn das Programm gestoppt werden kann.

 

26. Programm senden und starten

26.1 Befehl

HorstFX.Program.execute()

26.2 Parameter

26.3 R�ckgabewert

true wenn das Programm gesendet und gestartet wurde.

 

27. Programm starten<