3. Fondamenti Robot

3.1. Istanziazione Robot

Prototipo

RPC(ip)

Descrizione

Istanzia un oggetto robot

Parametri Obbligatori

  • ip:Indirizzo IP del robot, IP predefinito di fabbrica è “192.168.58.2”

Parametri Predefiniti

Nessuno

Valore Ritorno

  • Successo: ritorna un oggetto robot

  • Fallimento: l’oggetto creato viene distrutto

3.2. Chiudere Connessione RPC

Prototipo

CloseRPC()

Descrizione

Chiude connessione RPC

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

Nessuno

3.3. Interrogare Numero Versione SDK

Prototipo

GetSDKVersion()

Descrizione

Interroga numero versione SDK

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

  • Codice errore successo-0 fallimento-errcode

  • sdk:Numero versione SDK, numero versione controller

3.4. Ottenere IP Controller

Prototipo

GetControllerIP()

Descrizione

Interroga IP controller

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

  • Codice errore successo-0 fallimento- errcode

  • ip:IP controller

3.5. Controllare Entrata/Uscita Modalità Insegnamento Trascinamento

Prototipo

DragTeachSwitch(state)

Descrizione

Controlla entrata/uscita modalità insegnamento trascinamento

Parametri Obbligatori

  • state:1-entra modalità insegnamento trascinamento, 0-esce modalità insegnamento trascinamento

Parametri Predefiniti

Nessuno

Valore Ritorno

Codice errore successo-0 fallimento- errcode

3.6. Interrogare Se Robot è in Modalità Trascinamento

Prototipo

IsInDragTeach()

Descrizione

Interroga se robot è in modalità insegnamento trascinamento

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

  • Codice errore successo-0 fallimento- errcode

  • state:0-non in modalità insegnamento trascinamento, 1-in modalità insegnamento trascinamento

3.7. Controllare Abilitazione/Disabilitazione Robot

Prototipo

RobotEnable(state)

Descrizione

Controlla abilitazione/disabilitazione robot

Parametri Obbligatori

  • state:1-abilitato, 0-disabilitato

Parametri Predefiniti

Nessuno

Valore Ritorno

Codice errore successo-0 fallimento- errcode

3.8. Controllare Cambio Modalità Manuale/Automatica Robot

Prototipo

Mode(state)

Descrizione

Controlla cambio modalità manuale/automatica robot

Parametri Obbligatori

  • state:0-modalità automatica, 1-modalità manuale

Parametri Predefiniti

Nessuno

Valore Ritorno

Codice errore successo-0 fallimento- errcode

3.9. Spegnere Sistema Operativo Robot

Nuovo nella versione python: SDK-v2.1.1

Prototipo

ShutDownRobotOS()

Descrizione

Spegne sistema operativo robot

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

Codice errore successo-0 fallimento- errcode

3.10. Inizializzare Parametri Log

Nuovo nella versione python: SDK-v2.1.1

Prototipo

LoggerInit(output_model=1, file_path=", file_num=5)

Descrizione

Inizializza parametri log

Parametri Obbligatori

Nessuno

Parametri Predefiniti

  • output_model:Modalità output, 0-output diretto; 1-output bufferizzato; 2-output asincrono, default 1

  • file_path:Percorso salvataggio file + nome, nome deve essere formato xxx.log, es. /home/fr/linux/fairino.log. Percorso predefinito programma esecuzione, nome predefinito: fairino_anno+mese+data.log (es: fairino_2024_03_13.log);

  • file_num:Numero file archiviazione rolling, 1~20 file, valore predefinito 5. Singolo file limite superiore 50M;

Valore Ritorno

Codice errore successo-0 fallimento- errcode

3.11. Impostare Livello Filtro Log

Nuovo nella versione python: SDK-v2.0.2

Prototipo

SetLoggerLevel(lvl=1)

Descrizione

Imposta livello filtro log

Parametri Obbligatori

Nessuno

Parametri Predefiniti

  • lvl:Valore livello filtro, valore più piccolo produce meno log output, 1-error, 2-warning, 3-inform, 4-debug, valore predefinito 1

Valore Ritorno

Codice errore successo-0 fallimento- errcode

3.12. Esempio Codice Controllo Fondamentale Robot

 1from fairino import Robot
 2# Stabilire connessione con controller robot, connessione riuscita ritorna oggetto robot
 3robot = Robot.RPC('192.168.58.2')
 4error,version = robot.GetSDKVersion()
 5print(f"SDK version: {version}")
 6error,ip = robot.GetControllerIP()
 7print(f"controller ip: {ip}")
 8robot.Mode(1)
 9time.sleep(1)
10robot.DragTeachSwitch(state=1)
11time.sleep(1)
12error,state = robot.IsInDragTeach()
13print(f"drag state: {state}")
14time.sleep(3)
15robot.DragTeachSwitch(state=0)
16time.sleep(1)
17error,state = robot.IsInDragTeach()
18print(f"drag state: {state}")
19time.sleep(3)
20robot.RobotEnable(0)
21time.sleep(3)
22robot.RobotEnable(1)
23robot.Mode(0)
24time.sleep(1)
25robot.Mode(1)
26robot.CloseRPC()

3.13. Ottenere Versione Software Robot

Nuovo nella versione python: SDK-v2.0.1

Prototipo

GetSoftwareVersion()

Descrizione

Ottiene versione software robot

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

  • Codice errore successo-0 fallimento- errcode

  • robotModel:Modello robot

  • webVersion:Versione web

  • controllerVersion:Versione controller

3.14. Ottenere Informazioni Versione Hardware Robot

Nuovo nella versione python: SDK-v2.0.1

Prototipo

GetSlaveHardVersion()

Descrizione

Ottiene informazioni versione hardware robot

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

  • Codice errore successo-0 fallimento- errcode

  • ctrlBoxBoardVersion:Versione box controllo

  • driver1Version

  • driver2Version

  • driver3Version

  • driver4Version

  • driver5Version

  • driver6Version

  • endBoardVersion

3.15. Ottenere Informazioni Versione Firmware Robot

Nuovo nella versione python: SDK-v2.0.1

Prototipo

GetSlaveFirmVersion()

Descrizione

Ottiene informazioni versione firmware robot

Parametri Obbligatori

Nessuno

Parametri Predefiniti

Nessuno

Valore Ritorno

  • Codice errore successo-0 fallimento- errcode

  • ctrlBoxBoardVersion:Versione box controllo

  • driver1Version

  • driver2Version

  • driver3Version

  • driver4Version

  • driver5Version

  • driver6Version

  • endBoardVersion

3.16. Esempio Codice Versione Software/Firmware Robot

 1from fairino import Robot
 2# Stabilire connessione con controller robot, connessione riuscita ritorna oggetto robot
 3robot = Robot.RPC('192.168.58.2')
 4rtn,robotModel, webversion, controllerVersion = robot.GetSoftwareVersion()
 5print(f"Getsoftwareversion rtn is: {rtn}")
 6print(f"robotmodel is: {robotModel}, webversion is: {webversion}, controllerVersion is: {controllerVersion}\n")
 7rtn,ctrlBoxBoardversion, driver1version, driver2version,driver3version, driver4version, driver5version,driver6version, endBoardversion = robot.GetHardwareversion()
 8print(f"GetHardwareversion rtn is: {rtn}")
 9print(f"GetHardwareversion get hardware version is: {ctrlBoxBoardversion}, {driver1version}, {driver2version}, "
10      f"{driver3version}, {driver4version}, {driver5version}, {driver6version}, {endBoardversion}\n")
11rtn,ctrlBoxBoardversion, driver1version, driver2version,driver3version, driver4version, driver5version,driver6version, endBoardversion = robot.GetFirmwareVersion()
12print(f"GetFirmwareversion rtn is: {rtn}")
13print(f"GetFirmwareversion get firmware version is: {ctrlBoxBoardversion}, {driver1version}, {driver2version}, "
14      f"{driver3version}, {driver4version}, {driver5version}, {driver6version}, {endBoardversion}\n")
15robot.CloseRPC()