15. Weitere Schnittstellen

15.1. SSH öffentlichen Schlüssel abrufen

Prototyp

GetSSHKeygen()

Beschreibung

SSH öffentlichen Schlüssel abrufen

Erforderliche Parameter

Keine

Standardparameter

Keine

Rückgabewert

  • Fehlercode: 0 = Erfolg, sonst Fehlercode

  • keygen: Öffentlicher Schlüssel

15.2. SCP-Befehl senden

Neu in Version Python: SDK-v2.1.3

Prototyp

SetSSHScpCmd(mode, sshname, sship, usr_file_url, robot_file_url)

Beschreibung

SCP-Befehl senden

Erforderliche Parameter

  • mode: 0 = Hochladen (PC -> Controller), 1 = Herunterladen (Controller -> PC)

  • sshname: Benutzername auf dem PC

  • sship: IP-Adresse des PCs

  • usr_file_url: Dateipfad auf dem PC

  • robot_file_url: Dateipfad auf der Robotersteuerung

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.3. MD5-Wert einer Datei unter einem bestimmten Pfad berechnen

Prototyp

ComputeFileMD5(file_path)

Beschreibung

MD5-Wert einer Datei unter einem bestimmten Pfad berechnen

Erforderliche Parameter

  • file_path: Dateipfad inklusive Dateiname. Standard-Traj-Ordnerpfad: /fruser/traj/, z.B. /fruser/traj/trajHelix_aima_1.txt

Standardparameter

Keine

Rückgabewert

  • Fehlercode: 0 = Erfolg, sonst Fehlercode

  • md5: MD5-Wert der Datei

15.4. Codebeispiel für SSH- und MD5-Befehle des Roboters

 1from fairino import Robot
 2import time
 3import threading
 4# Verbindung zur Robotersteuerung herstellen, bei Erfolg wird ein Roboterobjekt zurückgegeben
 5robot = Robot.RPC('192.168.58.2')
 6file_path = "/fruser/airlab.lua"
 7md5 = ""
 8emerg_state = 0
 9si0_state = 0
10si1_state = 0
11sdk_com_state = 0
12ssh_keygen = ""
13retval,ssh_keygen = robot.GetSSHKeygen()
14print(f"GetSSHKeygen retval is: {retval}")
15print(f"ssh key is: {ssh_keygen}")
16ssh_name = "fr"
17ssh_ip = "192.168.58.45"
18ssh_route = "/home/fr"
19ssh_robot_url = "/root/robot/dhpara.config"
20retval = robot.SetSSHScpCmd(1, ssh_name, ssh_ip, ssh_route, ssh_robot_url)
21print(f"SetSSHScpCmd retval is: {retval}")
22print(f"robot url is: {ssh_robot_url}")
23error, md5 = robot.ComputeFileMD5(file_path)
24print(f"md5 is: {md5}")
25robot.CloseRPC()

15.5. Rückmeldezyklus für den Roboter-Port 20004 einstellen

Neu in Version Python: SDK-v2.0.5

Prototyp

SetRobotRealtimeStateSamplePeriod(period)

Beschreibung

Rückmeldezyklus für den Roboter-Port 20004 einstellen

Erforderliche Parameter

  • period: Rückmeldezyklus für Port 20004 (ms)

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.6. Rückmeldezyklus für den Roboter-Port 20004 abrufen

Neu in Version Python: SDK-v2.0.5

Prototyp

GetRobotRealtimeStateSamplePeriod()

Beschreibung

Rückmeldezyklus für den Roboter-Port 20004 abrufen

Erforderliche Parameter

Keine

Standardparameter

Keine

Rückgabewert

  • Fehlercode: 0 = Erfolg, sonst Fehlercode

  • period: Rückmeldezyklus für Port 20004 (ms)

15.7. Codebeispiel für die Konfiguration des Statusrückmeldezyklus (Port 20004)

 1from fairino import Robot
 2import time
 3import threading
 4# Verbindung zur Robotersteuerung herstellen, bei Erfolg wird ein Roboterobjekt zurückgegeben
 5robot = Robot.RPC('192.168.58.2')
 6robot.SetRobotRealtimeStateSamplePeriod(10)
 7error,getPeriod = robot.GetRobotRealtimeStateSamplePeriod()
 8print(f"period is {getPeriod}")
 9time.sleep(1)
10robot.CloseRPC()

15.8. Roboter-Software-Upgrade

Neu in Version Python: SDK-v2.0.5

Prototyp

SoftwareUpgrade(filePath, block)

Beschreibung

Roboter-Software-Upgrade

Erforderliche Parameter

  • filePath: Vollständiger Pfad zum Software-Upgrade-Paket

  • block: Blockierend bis zum Upgrade-Abschluss? True = blockierend, False = nicht blockierend

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.9. Status des Roboter-Software-Upgrades abrufen

Neu in Version Python: SDK-v2.0.5

Prototyp

GetSoftwareUpgradeState()

Beschreibung

Status des Roboter-Software-Upgrades abrufen

Erforderliche Parameter

Keine

Standardparameter

Keine

Rückgabewert

  • Fehlercode: 0 = Erfolg, sonst Fehlercode

  • state: Status des Softwarepaket-Upgrades: 0 = inaktiv oder Upload läuft; 1~100 = Fortschritt in %; -1 = Upgrade fehlgeschlagen; -2 = Prüfsummenfehler; -3 = Versionsprüfung fehlgeschlagen; -4 = Entpacken fehlgeschlagen; -5 = Upgrade der Benutzerkonfiguration fehlgeschlagen; -6 = Upgrade der Peripheriekonfiguration fehlgeschlagen; -7 = Upgrade der Erweiterungsachsenkonfiguration fehlgeschlagen; -8 = Upgrade der Roboterko nfiguration fehlgeschlagen; -9 = Upgrade der DH-Parameterkonfiguration fehlgeschlagen

15.10. Codebeispiel für Roboter-Software-Upgrade

 1from fairino import Robot
 2import time
 3import threading
 4# Verbindung zur Robotersteuerung herstellen, bei Erfolg wird ein Roboterobjekt zurückgegeben
 5robot = Robot.RPC('192.168.58.2')
 6error = robot.SoftwareUpgrade("D://zUP/QNX382/software.tar.gz", False)
 7print(f"SoftwareUpgrade error is {error}")
 8while True:
 9    curState = robot.GetSoftwareUpgradeState()
10    print(f"upgrade state is {curState}")
11    time.sleep(3)
12robot.CloseRPC()

15.11. Punktetabellen-Datenbank herunterladen

Neu in Version Python: SDK-v2.0.1

Prototyp

PointTableDownLoad(point_table_name, save_file_path)

Beschreibung

Punktetabellen-Datenbank herunterladen

Erforderliche Parameter

  • point_table_name: Name der herunterzuladenden Punktetabelle, z.B. pointTable1.db

  • save_file_path: Speicherpfad für die heruntergeladene Punktetabelle, z.B. C://test/

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.12. Punktetabellen-Datenbank hochladen

Neu in Version Python: SDK-v2.0.1

Prototyp

PointTableUpLoad(point_table_file_path)

Beschreibung

Punktetabellen-Datenbank hochladen

Erforderliche Parameter

  • point_table_file_path: Vollständiger Pfad zur hochzuladenden Punktetabelle, z.B. C://test/pointTable1.db

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.13. Lua-Datei mit Punktetabelle aktualisieren

Neu in Version Python: SDK-v2.0.1

Prototyp

PointTableUpdateLua(point_table_name, lua_file_name)

Beschreibung

Lua-Datei mit Punktetabelle aktualisieren

Erforderliche Parameter

  • point_table_name: Name der zu verwendenden Punktetabelle, z.B. pointTable1.db. Wenn der Name leer ist („), wird das Lua-Programm auf das ursprüngliche Programm ohne Punktetabelle zurückgesetzt.

  • lua_file_name: Name der zu aktualisierenden Lua-Datei, z.B. testPointTable.lua

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.14. Codebeispiel für Roboter-Punktetabellen-Operationen

 1from fairino import Robot
 2# Verbindung zur Robotersteuerung herstellen, bei Erfolg wird ein Roboterobjekt zurückgegeben
 3robot = Robot.RPC('192.168.58.2')
 4save_path = "D://zDOWN/"
 5point_table_name = "point_table_FR5.db"
 6rtn = robot.PointTableDownLoad(point_table_name, save_path)
 7print(f"download : {point_table_name} fail: {rtn}")
 8upload_path = "D://zDOWN/point_table_FR5.db"
 9rtn = robot.PointTableUpLoad(upload_path)
10print(f"retval is: {rtn}")
11point_tablename = "point_table_FR5.db"
12lua_name = "test0610.lua"
13rtn,error = robot.PointTableUpdateLua(point_tablename, lua_name)
14print(f"retval is: {rtn}")
15robot.CloseRPC()

15.15. Controller-Protokolle herunterladen

Neu in Version Python: SDK-v2.1.1

Prototyp

RbLogDownload(savePath)

Beschreibung

Controller-Protokolle herunterladen

Erforderliche Parameter

  • savePath: Pfad zum Speichern der Datei, z.B. D://zDown/

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.16. Alle Datenquellen herunterladen

Neu in Version Python: SDK-v2.1.1

Prototyp

AllDataSourceDownload(savePath)

Beschreibung

Alle Datenquellen herunterladen

Erforderliche Parameter

  • savePath: Pfad zum Speichern der Datei, z.B. D://zDown/

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.17. Daten-Backup-Paket herunterladen

Neu in Version Python: SDK-v2.1.1

Prototyp

DataPackageDownload(savePath)

Beschreibung

Daten-Backup-Paket herunterladen

Erforderliche Parameter

  • savePath: Pfad zum Speichern der Datei, z.B. D://zDown/

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.18. Codebeispiel zum Herunterladen von Controller-Daten

 1from fairino import Robot
 2import time
 3import threading
 4# Verbindung zur Robotersteuerung herstellen, bei Erfolg wird ein Roboterobjekt zurückgegeben
 5robot = Robot.RPC('192.168.58.2')
 6rtn = robot.RbLogDownload("D://zDOWN/")
 7print(f"RbLogDownload rtn is {rtn}")
 8rtn = robot.AllDataSourceDownload("D://zDOWN/")
 9print(f"AllDataSourceDownload rtn is {rtn}")
10rtn = robot.DataPackageDownload("D://zDOWN/")
11print(f"DataPackageDownload rtn is {rtn}")
12robot.CloseRPC()

15.19. Encoder-Upgrade einstellen

Neu in Version Python: SDK-v2.1.4

Prototyp

SetEncoderUpgrade(path)

Beschreibung

Encoder-Upgrade einstellen

Erforderliche Parameter

  • path: Vollständiger Pfad zum lokalen Upgrade-Paket (D://zUP/XXXXX.bin)

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.20. Gelenk-Firmware-Upgrade einstellen

Neu in Version Python: SDK-v2.1.4

Prototyp

SetJointFirmwareUpgrade(type, path)

Beschreibung

Gelenk-Firmware-Upgrade einstellen

Erforderliche Parameter

  • type: Dateityp für das Upgrade: 1 = Firmware-Upgrade, 2 = Upgrade der Slave-Konfigurationsdatei

  • path: Vollständiger Pfad zum lokalen Upgrade-Paket (D://zUP/XXXXX.bin)

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.21. Steuerkasten-Firmware-Upgrade einstellen

Neu in Version Python: SDK-v2.1.4

Prototyp

SetCtrlFirmwareUpgrade(type, path)

Beschreibung

Steuerkasten-Firmware-Upgrade einstellen

Erforderliche Parameter

  • type: Dateityp für das Upgrade: 1 = Firmware-Upgrade, 2 = Upgrade der Slave-Konfigurationsdatei

  • path: Vollständiger Pfad zum lokalen Upgrade-Paket (D://zUP/XXXXX.bin)

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.22. Endeffektor-Firmware-Upgrade einstellen

Neu in Version Python: SDK-v2.1.4

Prototyp

SetEndFirmwareUpgrade(type, path)

Beschreibung

Endeffektor-Firmware-Upgrade einstellen

Erforderliche Parameter

  • type: Dateityp für das Upgrade: 1 = Firmware-Upgrade, 2 = Upgrade der Slave-Konfigurationsdatei

  • path: Vollständiger Pfad zum lokalen Upgrade-Paket (D://zUP/XXXXX.bin)

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.23. Upgrade der vollständigen Gelenkparameter-Konfigurationsdatei

Neu in Version Python: SDK-v2.1.4

Prototyp

JointAllParamUpgrade(path)

Beschreibung

Upgrade der vollständigen Gelenkparameter-Konfigurationsdatei

Erforderliche Parameter

  • path: Vollständiger Pfad zum lokalen Upgrade-Paket (D://zUP/XXXXX.bin)

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.24. Codebeispiel für Roboter-Slave-Firmware-Upgrade

 1from fairino import Robot
 2import time
 3import threading
 4# Verbindung zur Robotersteuerung herstellen, bei Erfolg wird ein Roboterobjekt zurückgegeben
 5robot = Robot.RPC('192.168.58.2')
 6robot.RobotEnable(0)
 7time.sleep(0.2)
 8rtn = robot.JointAllParamUpgrade("D://zUP/MT/joint0603/jointallparameters.db")
 9print(f"robot JointAllParamUpgrade rtn is {rtn}")
10rtn = robot.SetCtrlFirmwareUpgrade(2, "D://zUP/MT/FAIR_Cobot_Cbd_Asix_V2.0.bin")
11print(f"robot SetCtrlFirmwareUpgrade rtn is {rtn}")
12rtn = robot.SetEndFirmwareUpgrade(2, "D://zUP/MT/FAIR_Cobot_Axle_Asix_V2.4.bin")
13print(f"robot SetEndFirmwareUpgrade rtn is {rtn}")
14robot.SetSysServoBootMode()
15time.sleep(0.2)
16rtn = robot.SetCtrlFirmwareUpgrade(1, "D://zUP/MT/FR_CTRL_PRIMCU_FV201412_MAIN_U4_T01_20250630(MT).bin")
17print(f"robot SetCtrlFirmwareUpgrade rtn is {rtn}")
18rtn = robot.SetEndFirmwareUpgrade(1, "D://zUP/MT/FR_END_FV2010010_MAIN_U1_T01_20250603.bin")
19print(f"robot SetEndFirmwareUpgrade rtn is {rtn}")
20rtn = robot.SetJointFirmwareUpgrade(1, "D://zUP/MT/FR_SERVO_FV504215_MAIN_U7_T07_20250603.bin")
21print(f"robot SetJointFirmwareUpgrade rtn is {rtn}")
22robot.CloseRPC()

15.25. Upgrade des Roboter-Betriebssystems (LA-Steuerkasten)

Neu in Version Python: SDK-v2.1.6

Prototyp

KernelUpgrade(filePath)

Beschreibung

Upgrade des Roboter-Betriebssystems (LA-Steuerkasten)

Erforderliche Parameter

  • filePath: Vollständiger Pfad zum Betriebssystem-Upgrade-Paket

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.26. Ergebnis des Roboter-Betriebssystem-Upgrades abrufen (LA-Steuerkasten)

Neu in Version Python: SDK-v2.1.6

Prototyp

GetKernelUpgradeResult()

Beschreibung

Ergebnis des Roboter-Betriebssystem-Upgrades abrufen (LA-Steuerkasten)

Erforderliche Parameter

Keine

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode

15.27. Roboter-MCU-Protokoll generieren

Neu in Version Python: SDK-v2.1.7

Prototyp

RobotMCULogCollect()

Beschreibung

Roboter-MCU-Protokoll generieren

Erforderliche Parameter

Keine

Standardparameter

Keine

Rückgabewert

Fehlercode: 0 = Erfolg, sonst Fehlercode