11. Periféricos do Robô
11.1. Configurar Garra
Protótipo |
|
|---|---|
Descrição |
Configura a garra |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
|
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.2. Obter Configuração da Garra
Protótipo |
|
|---|---|
Descrição |
Obtém a configuração da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.3. Ativar Garra
Protótipo |
|
|---|---|
Descrição |
Ativa a garra |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.4. Controlar Garra
Protótipo |
|
|---|---|
Descrição |
Controla a garra |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.5. Obter Estado de Movimento da Garra
Protótipo |
|
|---|---|
Descrição |
Obtém o estado de movimento da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.6. Obter Estado de Ativação da Garra
Novo na versão python: SDK-v2.1.2
Protótipo |
|
|---|---|
Descrição |
Obtém o estado de ativação da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.7. Obter Posição da Garra
Novo na versão python: SDK-v2.1.2
Protótipo |
|
|---|---|
Descrição |
Obtém a posição da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.8. Obter Velocidade da Garra
Novo na versão python: SDK-v2.1.2
Protótipo |
|
|---|---|
Descrição |
Obtém a velocidade da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.9. Obter Corrente da Garra
Novo na versão python: SDK-v2.1.2
Protótipo |
|
|---|---|
Descrição |
Obtém a corrente da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.10. Obter Tensão da Garra
Novo na versão python: SDK-v2.1.2
Protótipo |
|
|---|---|
Descrição |
Obtém a tensão da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.11. Obter Temperatura da Garra
Novo na versão python: SDK-v2.1.2
Protótipo |
|
|---|---|
Descrição |
Obtém a temperatura da garra |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.12. Calcular Ponto de Pré-Captura - Visão
Protótipo |
|
|---|---|
Descrição |
Calcula o ponto de pré-captura - Visão |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.13. Calcular Ponto de Retirada - Visão
Protótipo |
|
|---|---|
Descrição |
Calcula o ponto de retirada - Visão |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.14. Exemplo de Código para Operações com a Garra do Robô
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4company = 4
5device = 0
6softversion = 0
7bus = 2
8index = 2
9act = 0
10max_time = 30000
11block = 0
12status = 0
13fault = 0
14active_status = 0
15current_pos = 0
16current = 0
17voltage = 0
18temp = 0
19speed = 0
20robot.SetGripperConfig(company, device, softversion, bus)
21time.sleep(1)
22error,[company, device, softversion, bus] = robot.GetGripperConfig()
23print(f"gripper config:{company},{device},{softversion},{bus}")
24robot.ActGripper(index, act)
25time.sleep(1)
26act = 1
27robot.ActGripper(index, act)
28time.sleep(1)
29error = robot.MoveGripper(index, 90, 50, 50, max_time, block, 0, 0, 0, 0)
30print(f"MoveGripper retval is:{error}")
31time.sleep(1)
32error = robot.MoveGripper(index, 30, 50, 0, max_time, block, 0, 0, 0, 0)
33print(f"MoveGripper retval is:{error}")
34error, [fault, status] = robot.GetGripperMotionDone()
35print(f"motion status:{fault},{status}")
36error, [fault, active_status] = robot.GetGripperActivateStatus()
37print(f"gripper active fault is:{fault},status is:{active_status}")
38error, [fault, current_pos] = robot.GetGripperCurPosition()
39print(f"fault is:{fault},current position is:{current_pos}")
40error, [fault, current] = robot.GetGripperCurCurrent()
41print(f"fault is:{fault},current current is:{current}")
42error, [fault, voltage] = robot.GetGripperVoltage()
43print(f"fault is:{fault},current voltage is:{voltage}")
44error, [fault, temp] = robot.GetGripperTemp()
45print(f"fault is:{fault},current temperature is:{temp}")
46error, [fault, speed] = robot.GetGripperCurSpeed()
47print(f"fault is:{fault},current speed is:{speed}")
48retval = 0
49prepick_pose = [0.0]*6
50postpick_pose = [0.0]*6
51p1Desc = [-419.524, -13.000, 351.569, -178.118, 0.314, 3.833]
52p2Desc = [-321.222, 185.189, 335.520, -179.030, -1.284, -29.869]
53retval, prepick_pose = robot.ComputePrePick(p1Desc, 10, 0)
54print(f"ComputePrePick retval is:{retval}")
55print(f"xyz is:{prepick_pose[0]},{prepick_pose[1]},{prepick_pose[2]};rpy is:{prepick_pose[3]},{prepick_pose[4]},{prepick_pose[5]}")
56retval, postpick_pose = robot.ComputePostPick(p2Desc, -10, 0)
57print(f"ComputePostPick retval is:{retval}")
58print(f"xyz is:{postpick_pose[0]},{postpick_pose[1]},{postpick_pose[2]};rpy is:{postpick_pose[3]},{postpick_pose[4]},{postpick_pose[5]}")
59robot.CloseRPC()
11.15. Obter Número de Rotações da Garra Rotativa
Novo na versão python: SDK-v2.0.7
Protótipo |
|
|---|---|
Descrição |
Obtém o número de rotações da garra rotativa |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.16. Obter Porcentagem de Velocidade de Rotação da Garra Rotativa
Novo na versão python: SDK-v2.0.7
Protótipo |
|
|---|---|
Descrição |
Obtém a porcentagem de velocidade de rotação da garra rotativa |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.17. Obter Porcentagem de Torque de Rotação da Garra Rotativa
Novo na versão python: SDK-v2.0.7
Protótipo |
|
|---|---|
Descrição |
Obtém a porcentagem de torque de rotação da garra rotativa |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.18. Exemplo de Código para Obter Estado da Garra Rotativa
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4fault = 0
5rotNum = 0.0
6rotSpeed = 0
7rotTorque = 0
8error,fault, rotNum = robot.GetGripperRotNum()
9error,fault, rotSpeed = robot.GetGripperRotSpeed()
10error,fault, rotTorque = robot.GetGripperRotTorque()
11print(f"gripper rot num:{rotNum},gripper rotSpeed:{rotSpeed},gripper rotTorque:{rotTorque}")
12robot.CloseRPC()
11.19. Iniciar/Parar Esteira Transportadora
Protótipo |
|
|---|---|
Descrição |
Inicia/para a esteira transportadora |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.20. Registrar Ponto de Detecção IO
Protótipo |
|
|---|---|
Descrição |
Registra o ponto de detecção IO |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.21. Registrar Ponto A
Protótipo |
|
|---|---|
Descrição |
Registra o ponto A |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.22. Registrar Ponto de Referência
Protótipo |
|
|---|---|
Descrição |
Registra o ponto de referência |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.23. Registrar Ponto B
Protótipo |
|
|---|---|
Descrição |
Registra o ponto B |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.24. Detecção IO de Peça na Esteira
Protótipo |
|
|---|---|
Descrição |
Detecção IO de peça na esteira |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.25. Obter Posição Atual do Objeto
Protótipo |
|
|---|---|
Descrição |
Obtém a posição atual do objeto |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.26. Iniciar Rastreamento da Esteira
Protótipo |
|
|---|---|
Descrição |
Inicia o rastreamento da esteira |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.27. Parar Rastreamento da Esteira
Protótipo |
|
|---|---|
Descrição |
Para o rastreamento da esteira |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.28. Configurar Parâmetros da Esteira
Protótipo |
|
|---|---|
Descrição |
Configura os parâmetros da esteira |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
|
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.29. Compensação do Ponto de Captura da Esteira
Protótipo |
|
|---|---|
Descrição |
Compensação do ponto de captura da esteira |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.30. Movimento Linear com Rastreamento da Esteira
Protótipo |
|
|---|---|
Descrição |
Movimento linear com rastreamento da esteira |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
|
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.31. Detecção de Entrada de Comunicação da Esteira
Novo na versão python: SDK-v2.1.1
Protótipo |
|
|---|---|
Descrição |
Detecção de entrada de comunicação da esteira |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.32. Acionamento da Detecção de Entrada de Comunicação da Esteira
Novo na versão python: SDK-v2.1.1
Protótipo |
|
|---|---|
Descrição |
Acionamento da detecção de entrada de comunicação da esteira |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.33. Exemplo de Código de Operação da Esteira do Robô
1from fairino import Robot
2import time
3import threading
4# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
5robot = Robot.RPC('192.168.58.2')
6retval = robot.ConveyorStartEnd(1)
7print(f"ConveyorStartEnd retval is:{retval}")
8retval = robot.ConveyorPointIORecord()
9print(f"ConveyorPointIORecord retval is:{retval}")
10retval = robot.ConveyorPointARecord()
11print(f"ConveyorPointARecord retval is:{retval}")
12retval = robot.ConveyorRefPointRecord()
13print(f"ConveyorRefPointRecord retval is:{retval}")
14retval = robot.ConveyorPointBRecord()
15print(f"ConveyorPointBRecord retval is:{retval}")
16retval = robot.ConveyorStartEnd(0)
17print(f"ConveyorStartEnd retval is:{retval}")
18param = [1.0, 10000.0, 200.0, 0.0, 0.0, 20.0]
19retval = robot.ConveyorSetParam(param,0)
20print(f"ConveyorSetParam retval is:{retval}")
21cmp = [0.0, 0.0, 0.0]
22retval = robot.ConveyorCatchPointComp(cmp)
23print(f"ConveyorCatchPointComp retval is:{retval}")
24index = 1
25max_time = 30000
26block = 0
27retval = 0
28p1Desc = [-419.524, -13.000, 351.569, -178.118, 0.314, 3.833]
29p2Desc = [-321.222, 185.189, 335.520, -179.030, -1.284, -29.869]
30retval = robot.MoveCart(p1Desc, 1, 0, 100.0)
31print(f"MoveCart retval is:{retval}")
32retval = robot.WaitMs(1)
33print(f"WaitMs retval is:{retval}")
34retval = robot.ConveyorIODetect(10000)
35print(f"ConveyorIODetect retval is:{retval}")
36retval = robot.ConveyorGetTrackData(1)
37print(f"ConveyorGetTrackData retval is:{retval}")
38retval = robot.ConveyorTrackStart(1)
39print(f"ConveyorTrackStart retval is:{retval}")
40retval = robot.ConveyorTrackMoveL("cvrCatchPoint", 1, 0, 100)
41print(f"TrackMoveL retval is:{retval}")
42retval = robot.MoveGripper(index, 51, 40, 30, max_time, block, 0, 0, 0, 0)
43print(f"MoveGripper retval is:{retval}")
44retval = robot.ConveyorTrackMoveL("cvrRaisePoint", 1, 0, 100)
45print(f"TrackMoveL retval is:{retval}")
46retval = robot.ConveyorTrackEnd()
47print(f"ConveyorTrackEnd retval is:{retval}")
48robot.MoveCart(p2Desc, 1, 0, 100.0, 100.0)
49retval = robot.MoveGripper(index, 100, 40, 10, max_time, block, 0, 0, 0, 0)
50print(f"MoveGripper retval is:{retval}")
51robot.CloseRPC()
11.34. Configurar Sensor de Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Configura o sensor de extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.35. Obter Configuração do Sensor de Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Obtém a configuração do sensor de extremidade |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.36. Ativar Sensor de Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Ativa o sensor de extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.37. Escrita no Registrador do Sensor de Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Escrita no registrador do sensor de extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.38. Exemplo de Código do Sensor de Extremidade
1from fairino import Robot
2import time
3import threading
4# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
5robot = Robot.RPC('192.168.58.2')
6robot.AxleSensorConfig(18, 0, 0, 1)
7error, company, type = robot.AxleSensorConfigGet()
8print(f"company is:{company},type is:{type}")
9rtn = robot.AxleSensorActivate(1)
10print(f"AxleSensorActivate rtn is:{rtn}")
11time.sleep(1)
12rtn = robot.AxleSensorRegWrite(1, 4, 6, 1, 0, 0, 0)
13print(f"AxleSensorRegWrite rtn is:{rtn}")
14robot.CloseRPC()
11.39. Obter Protocolo de Periféricos do Robô
Novo na versão python: SDK-v2.0.3
Protótipo |
|
|---|---|
Descrição |
Obtém o protocolo de periféricos do robô |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.40. Definir Protocolo de Periféricos do Robô
Novo na versão python: SDK-v2.0.3
Protótipo |
|
|---|---|
Descrição |
Define o protocolo de periféricos do robô |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.41. Exemplo de Código para Definir Protocolo de Periféricos do Robô
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4protocol = 4096
5rtn = robot.SetExDevProtocol(protocol)
6print(f"SetExDevProtocol rtn:{rtn}")
7rtn, protocol = robot.GetExDevProtocol()
8print(f"GetExDevProtocol rtn:{rtn},protocol is:{protocol}")
9robot.CloseRPC()
11.42. Obter Parâmetros de Comunicação da Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Obtém os parâmetros de comunicação da extremidade |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.43. Definir Parâmetros de Comunicação da Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define os parâmetros de comunicação da extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.44. Definir Tipo de Transferência de Arquivo da Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define o tipo de transferência de arquivo da extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.45. Ativar Execução LUA na Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Ativa a execução LUA na extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.46. Recuperação de Erro de Arquivo LUA na Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Recuperação de erro de arquivo LUA na extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.47. Obter Estado de Ativação da Execução LUA na Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Obtém o estado de ativação da execução LUA na extremidade |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.48. Definir Tipo de Dispositivo de Extremidade Ativado pelo LUA na Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define o tipo de dispositivo de extremidade ativado pelo LUA na extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.49. Obter Tipo de Dispositivo de Extremidade Ativado pelo LUA na Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Obtém o tipo de dispositivo de extremidade ativado pelo LUA na extremidade |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.50. Obter Dispositivo de Extremidade Atualmente Configurado
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Obtém o dispositivo de extremidade atualmente configurado |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.51. Ativar Função de Controle de Movimento da Garra
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Ativa a função de controle de movimento da garra |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.52. Obter Função de Controle de Movimento da Garra Ativada
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Obtém a função de controle de movimento da garra ativada |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.53. Escrita de Arquivo no Escravo Ethercat do Robô
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Escrita de arquivo no escravo Ethercat do robô |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.54. Enviar Arquivo de Protocolo Aberto LUA da Extremidade
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Envia arquivo de protocolo aberto LUA da extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.55. Entrar no Modo Boot do Escravo Ethercat do Robô
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Entrar no modo boot do escravo Ethercat do robô |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.56. Exemplo de Código para Operações com Arquivos LUA da Extremidade do Robô
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4robot.AxleLuaUpload("D://zUP/AXLE_LUA_End_DaHuan.lua")
5param = [7, 8, 1, 0, 5, 3, 1] # Parâmetros AxleComParam correspondentes
6robot.SetAxleCommunicationParam(7, 8, 1, 0, 5, 3, 1)
7error,getParam0,getParam1,getParam2,getParam3,getParam4,getParam5,getParam6 = robot.GetAxleCommunicationParam()
8print(f"GetAxleCommunicationParam param is:{getParam0} {getParam1} {getParam2} {getParam3} {getParam4} {getParam5} {getParam6}")
9robot.SetAxleLuaEnable(1)
10error,luaEnableStatus = robot.GetAxleLuaEnableStatus()
11robot.SetAxleLuaEnableDeviceType(0, 1, 0)
12error,forceEnable, gripperEnable, ioEnable = robot.GetAxleLuaEnableDeviceType()
13print(f"GetAxleLuaEnableDeviceType param is:{forceEnable} {gripperEnable} {ioEnable}")
14func = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]
15robot.SetAxleLuaGripperFunc(1, func)
16error,getFunc = robot.GetAxleLuaGripperFunc(1)
17error,getforceEnable, getgripperEnable, getioEnable = robot.GetAxleLuaEnableDevice()
18print("\ngetforceEnable status:", end=" ")
19for i in range(8):
20 print(f"{getforceEnable[i]},", end="")
21print("\ngetgripperEnable status:", end=" ")
22for i in range(8):
23 print(f"{getgripperEnable[i]},", end="")
24print("\ngetioEnable status:", end=" ")
25for i in range(8):
26 print(f"{getioEnable[i]},", end="")
27print()
28robot.ActGripper(1, 0)
29time.sleep(2)
30robot.ActGripper(1, 1)
31time.sleep(2)
32robot.MoveGripper(1, 90, 10, 100, 50000, 0, 0, 0, 0, 0)
33while True:
34 error,pkg = robot.GetRobotRealTimeState()
35 print(f"gripper pos is:{pkg.gripper_position}")
36 time.sleep(0.1)
37robot.CloseRPC()
11.57. Obter Estado dos Botões do SmartTool
Novo na versão python: SDK-v2.1.2
Protótipo |
|
|---|---|
Descrição |
Obtém o estado dos botões do SmartTool |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.58. Exemplo de Código do Botão SmartTool
1from fairino import Robot
2import time
3# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
4robot = Robot.RPC('192.168.58.2')
5while True:
6 error,state = robot.GetSmarttoolBtnState()
7 print(f"{state:016b}")
8 time.sleep(0.1)
11.59. Definir Detecção de Força da Carga Antes de Ativar a Arrastagem
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Define a detecção de força da carga antes de ativar a arrastagem |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.60. Função de Ligar/Desligar Periférico Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Função para ligar/desligar o periférico laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
|
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.61. Função de Iniciar/Parar Rastreamento a Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Função para iniciar/parar o rastreamento a laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.62. Busca de Posição a Laser - Direção Fixa
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Busca de posição a laser - Direção fixa |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.63. Busca de Posição a Laser - Direção Arbitrária
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Busca de posição a laser - Direção arbitrária |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.64. Configuração de IP do Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Configuração de IP do laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.65. Configuração do Período de Amostragem do Periférico Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Configuração do período de amostragem do periférico laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.66. Carregar Driver do Periférico Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Carrega o driver do periférico laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.67. Descarregar Driver do Periférico Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Descarrega o driver do periférico laser |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.68. Gravação da Trajetória da Solda a Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Gravação da trajetória da solda a laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.69. Reprodução da Trajetória da Solda a Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Reprodução da trajetória da solda a laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.70. Reprodução do Rastreamento a Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Reprodução do rastreamento a laser |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.71. Reprodução da Trajetória da Solda a Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Reprodução da trajetória da solda a laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.72. Mover para o Início da Gravação da Solda
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Mover para o início da gravação da solda |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.73. Mover para o Fim da Gravação da Solda
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Mover para o fim da gravação da solda |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.74. Mover para o Ponto de Busca do Sensor a Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Mover para o ponto de busca do sensor a laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.75. Obter Informações de Coordenadas do Ponto de Busca do Sensor a Laser
Novo na versão python: SDK-v2.1.6
Protótipo |
|
|---|---|
Descrição |
Obtém as informações de coordenadas do ponto de busca do sensor a laser |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.76. Exemplo de Código para Configuração e Depuração de Parâmetros do Periférico Laser
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4robot.LaserTrackingSensorConfig("192.168.58.20", 5020)
5robot.LaserTrackingSensorSamplePeriod(20)
6robot.LoadPosSensorDriver(101)
7robot.LaserTrackingLaserOnOff(0, 0)
8time.sleep(3)
9robot.LaserTrackingLaserOnOff(1, 0)
10robot.CloseRPC()
11.77. Exemplo de Código para Digitalização e Reprodução de Trajetória a Laser
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4robot.OpenLuaUpload("D://zUP/CtrlDev_laser_ruiniu-0117.lua")
5time.sleep(2)
6robot.SetCtrlOpenLUAName(0, "CtrlDev_laser_ruiniu-0117.lua")
7robot.UnloadCtrlOpenLUA(0)
8robot.LoadCtrlOpenLUA(0)
9time.sleep(8)
10i = 0
11while i<10:
12 startjointPos = [56.205, -117.951, 141.872, -118.149, -94.217, -122.176]
13 startdescPose = [-97.552, -282.855, 26.675, 174.182, -1.338, -91.707]
14 exaxisPos = [0.0] * 4
15 offdese = [0.0] * 6
16 robot.MoveL(desc_pos=startdescPose,tool= 1,user= 0,vel= 100,acc= 100,ovl= 100,blendR= -1,exaxis_pos= exaxisPos,search= 0,offset_flag= 0, offset_pos= offdese,overSpeedStrategy= 1,speedPercent= 1)
17 robot.LaserSensorRecord1(2, 10)
18 endjointPos = [68.809, -87.100, 121.120, -127.233, -95.038, -109.555]
19 enddescPose = [-103.555, -464.234, 13.076, 174.179, -1.344, -91.709]
20 robot.MoveL(desc_pos=enddescPose,tool= 1,user= 0,vel= 50,acc= 100,ovl= 100,blendR= -1,exaxis_pos= exaxisPos,search= 0,offset_flag= 0, offset_pos= offdese,overSpeedStrategy= 1,speedPercent= 1)
21 robot.LaserSensorRecord1(0, 10)
22 robot.MoveToLaserRecordStart(1, 30)
23 robot.LaserSensorReplay(10, 100)
24 robot.MoveLTR()
25 robot.LaserSensorRecord1(0, 10)
26 i = i+1
27robot.CloseRPC()
11.78. Exemplo de Código para Busca de Posição e Rastreamento em Tempo Real a Laser
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4robot.OpenLuaUpload("D://zUP/CtrlDev_laser_ruiniu-0117.lua")
5time.sleep(2)
6robot.SetCtrlOpenLUAName(0, "CtrlDev_laser_ruiniu-0117.lua")
7robot.UnloadCtrlOpenLUA(0)
8robot.LoadCtrlOpenLUA(0)
9time.sleep(8)
10time.sleep(8)
11i = 0
12while i < 10:
13 startjointPos = [56.205, -117.951, 141.872, -118.149, -94.217, -122.176]
14 startdescPose = [-97.552, -282.855, 26.675, 174.182, -1.338, -91.707]
15 exaxisPos = [0.0] * 4
16 offdese = [0.0] * 6
17 directionPoint = [0.0] * 3
18 robot.MoveL(desc_pos=startdescPose,tool= 1,user= 0,vel= 100,acc= 100,ovl= 100,blendR= -1,exaxis_pos= exaxisPos,search= 0,offset_flag= 0, offset_pos= offdese,overSpeedStrategy= 1,speedPercent= 1)
19 robot.LaserTrackingSearchStart_xyz(3, 100, 300, 1000, 3)
20 robot.LaserTrackingSearchStop()
21 robot.MoveToLaserSeamPos(1, 30, 0, 0, 0, offdese)
22 robot.LaserTrackingTrackOnOff(1, 3)
23 endjointPos = [68.809, -87.100, 121.120, -127.233, -95.038, -109.555]
24 enddescPose = [-103.555, -464.234, 13.076, 174.179, -1.344, -91.709]
25 robot.MoveL(desc_pos=enddescPose,tool= 1,user= 0,vel= 20,acc= 100,ovl= 100,blendR= -1,exaxis_pos= exaxisPos,search= 0,offset_flag= 0, offset_pos= offdese,overSpeedStrategy= 1,speedPercent= 1)
26 robot.LaserTrackingTrackOnOff(0, 3)
27 i = i + 1
28 print(i)
29robot.CloseRPC()
11.79. Exemplo de Código para Rastreamento a Laser Síncrono com Eixo de Extensão e Robô
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4startexaxisPos = [0.0, 0.0, 0.0, 0.0]
5seamexaxisPos = [-10.0, 0.0, 0.0, 0.0]
6endexaxisPos = [-30.0, 0.0, 0.0, 0.0]
7offdese = [0.0] * 6
8seamjointPos = [0.0] * 6
9seamdescPose = [0.0] * 6
10i=0
11while i < 10:
12 startjointPos = [58.337, -119.628, 146.037, -116.358, -92.224, -117.654]
13 startdescPose = [-53.375, -255.363, 0.919, 178.054, 1.077, -94.026]
14 robot.ExtAxisSyncMoveJ(joint_pos=startjointPos, tool=1,user= 0,vel= 100,acc= 100, ovl=100,exaxis_pos= startexaxisPos,blendT= -1,offset_flag= 0,offset_pos= offdese)
15 ret = robot.LaserTrackingSearchStart_xyz(3, 100, 300, 1000, 2)
16 robot.LaserTrackingSearchStop()
17 tool = 0
18 user = 0
19 rnte, seamjointPos, seamdescPose, tool, user, startexaxisPos = robot.GetLaserSeamPos(0, offdese)
20 print(f"{seamjointPos[0]},{seamjointPos[1]},{seamjointPos[2]},{seamjointPos[3]},{seamjointPos[4]},{seamjointPos[5]},{seamdescPose[0]},{seamdescPose[1]},{seamdescPose[2]},{seamdescPose[3]},{seamdescPose[4]},{seamdescPose[5]}")
21 if ret == 0:
22 robot.ExtAxisSyncMoveJ(joint_pos=seamjointPos, tool=1,user= 0,vel= 100,acc= 100, ovl=100,exaxis_pos= seamexaxisPos,blendT= -1,offset_flag= 0,offset_pos= offdese)
23 robot.LaserTrackingTrackOnOff(1, 2)
24 endjointPos = [70.580, -90.918, 126.593, -125.154, -92.162, -105.403]
25 enddescPose = [-53.375, -419.020, 0.920, 178.054, 1.076, -94.026]
26 robot.ExtAxisSyncMoveL(desc_pos=enddescPose, tool=1,user= 0,vel= 20,acc= 100, ovl=100,blendR= -1,exaxis_pos= endexaxisPos,offset_pos= offdese)
27 robot.LaserTrackingTrackOnOff(0, 2)
28 i = i+1
29 print(i)
30robot.CloseRPC()
11.80. Controlar Matriz de Ventosas
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Controla a matriz de ventosas |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.81. Obter Estado da Matriz de Ventosas
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Obtém o estado da matriz de ventosas |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.82. Aguardar Estado da Ventosa
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Aguarda o estado da ventosa |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.83. Exemplo de Código para Instruções de Controle da Matriz de Ventosas
Novo na versão python: SDK-v2.1.5
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4robot.OpenLuaUpload("C://openlua/CtrlDev_sucker.lua")
5time.sleep(2)
6robot.UnloadCtrlOpenLUA(1)
7robot.LoadCtrlOpenLUA(1)
8time.sleep(1)
9ctrl = bytearray(20)
10ctrl[0] = 1
11robot.SetSuckerCtrl(0, 1, ctrl)
12for i in range(100):
13 rtn, state, press_value, error = robot.GetSuckerState(1)
14 print(f"sucker1 state is {state}, pressValue is {press_value}, error num is {error}")
15 rtn, state, press_value, error = robot.GetSuckerState(12)
16 print(f"sucker12 state is {state}, pressValue is {press_value}, error num is {error}")
17 time.sleep(0.1)
18ret = robot.WaitSuckerState(1, 1, 100)
19print(f"WaitSuckerState result is {ret}")
20ctrl[0] = 3
21robot.SetSuckerCtrl(1, 1, ctrl)
22robot.SetSuckerCtrl(12, 1, ctrl)
23robot.CloseRPC()
11.84. Enviar Arquivo Lua de Protocolo Aberto
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Envia o arquivo Lua de protocolo aberto |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.85. Obter Parâmetros da Placa Escrava
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Obtém os parâmetros da placa escrava |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.86. Escrever DO no Escravo
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Escreve DO no escravo |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.87. Escrever AO no Escravo
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Escreve AO no escravo |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.88. Ler DI do Escravo
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Lê DI do escravo |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.89. Ler AI do Escravo
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Lê AI do escravo |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
|
11.90. Aguardar Entrada DI de Extensão
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Aguarda a entrada DI de extensão |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.91. Aguardar Entrada AI de Extensão
Novo na versão python: SDK-v2.1.5
Protótipo |
|
|---|---|
Descrição |
Aguarda a entrada AI de extensão |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.92. Exemplo de Código para Interfaces de Instrução do Modo Escravo
Novo na versão python: SDK-v2.1.5
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
3robot = Robot.RPC('192.168.58.2')
4robot.OpenLuaUpload("D://zUP/CtrlDev_field.lua")
5time.sleep(2)
6robot.SetCtrlOpenLUAName(3,"CtrlDev_field.lua")
7robot.UnloadCtrlOpenLUA(3)
8robot.LoadCtrlOpenLUA(3)
9time.sleep(8)
10rtn,type, version, conn_state = robot.GetFieldBusConfig()
11print(f"type is {type}, version is {version}, connState is {conn_state}")
12# Write digital outputs
13ctrl = [1, 0, 1] # DO0=1, DO1=0, DO2=1
14robot.FieldBusSlaveWriteDO(0, 3, ctrl)
15# Write analog output
16ctrl_ao = [0x1000] # AO2 = 0x1000
17robot.FieldBusSlaveWriteAO(2, 1, ctrl_ao)
18for i in range(100):
19 rtn,di = robot.FieldBusSlaveReadDI(0, 4)
20 print(f"DI0 is {di[0]}, DI1 is {di[1]}, DI2 is {di[2]}, DI3 is {di[3]}")
21 rtn, ai = robot.FieldBusSlaveReadAI(0, 3)
22 print(f"AI0 is {ai[0]}, AI1 is {ai[1]}, AI2 is {ai[2]}")
23 time.sleep(0.01)
24ret = robot.FieldBusSlaveWaitDI(0, 1, 100)
25print(f"FieldBusSlaveWaitDI result is {ret}")
26ret = robot.FieldBusSlaveWaitAI(0, 0, 400.00, 100)
27print(f"FieldBusSlaveWaitAI result is {ret}")
28robot.CloseRPC()
11.93. Interface SDK para Ativar/Desativar Função de Passagem Direta na Extremidade
Protótipo |
|
|---|---|
Descrição |
Ativa/desativa a função de passagem direta na extremidade |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.94. Interface SDK para Transmissão e Recepção de Dados Aperiódicos na Função de Passagem Direta na Extremidade
Protótipo |
|
|---|---|
Descrição |
Envia dados aperiódicos na extremidade e aguarda resposta |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.95. Exemplo de Código para Comunicação de Dados Aperiódicos do Cabeçote de Moxabustão Beiyikang Baseado na Função de Passagem Direta na Extremidade
1from time import sleep
2from fairino import Robot
3from ctypes import sizeof
4# A connection is established with the robot controller. A successful connection returns a robot object
5# Estabelece conexão com o controlador do robô, retorna um objeto robô se bem-sucedido
6robot = Robot.RPC('192.168.58.2')
7
8import time
9
10
11def testAxleGenCom(self):
12
13 led_on = [0xAB, 0xBA, 0x12, 0x01, 0x01, 0x79]
14 led_off = [0xAB, 0xBA, 0x12, 0x01, 0x00, 0x78]
15 version = [0xAB, 0xBA, 0x11, 0x00, 0x76]
16 state = [0xAB, 0xBA, 0x1B, 0x01, 0xAA, 0x2B]
17 cycleState = [0xAB, 0xBA, 0x12, 0x01, 0x00, 0x78]
18 cnt = 1
19
20 p1Joint = [88.708, -86.178, 140.989, -141.825, -89.162, -49.879]
21 p1Desc = [188.007, -377.850, 260.207, 178.715, 2.823, -131.466]
22 p2Joint = [112.131, -75.554, 126.989, -139.027, -88.044, -26.477]
23 p2Desc = [368.003, -377.848, 260.211, 178.715, 2.823, -131.465]
24
25 exaxisPos = [0, 0, 0, 0]
26 offdese = [0, 0, 0, 0, 0, 0]
27
28 # Ativa a função de passagem direta na extremidade
29 robot.SetAxleGenComEnable(1)
30 robot.SetAxleLuaEnable(1)
31
32 while cnt <= 10000:
33 # Lê o número da versão
34 ret,rcvdata = robot.SndRcvAxleGenComCmdData(len_snd=5, sndBuff=version, len_rcv=10)
35 print(ret)
36 print(rcvdata)
37 print(f"hard version : {rcvdata[4]},hard code:{rcvdata[5]}, soft version:{rcvdata[6]} {rcvdata[7]}, soft code:{rcvdata[8]}")
38 if ret != 0:
39 break
40 time.sleep(1)
41 # Lê o estado de presença do cabeçote de moxabustão
42 ret,rcvdata = robot.SndRcvAxleGenComCmdData(6, state, 6)
43 print(f"state : {rcvdata[4]} ")
44 time.sleep(1)
45 # Ativa o laser do cabeçote de moxabustão
46 ret,rcvdata = robot.SndRcvAxleGenComCmdData(6, led_on, 6)
47 print(f"led on rcv data is: {rcvdata[0]}, {rcvdata[1]}, {rcvdata[2]}, {rcvdata[3]}, {rcvdata[4]}, {rcvdata[5]}")
48 robot.MoveJ(joint_pos=p1Joint, tool=0, user=0, vel=100, acc=100, ovl=100, exaxis_pos=exaxisPos, blendT=-1,
49 offset_flag=0, offset_pos=offdese)
50 time.sleep(4)
51 # Desativa o laser do cabeçote de moxabustão
52 ret, rcvdata = robot.SndRcvAxleGenComCmdData(6, led_off, 6)
53 print(f"led off rcv data is: {rcvdata[0]}, {rcvdata[1]}, {rcvdata[2]}, {rcvdata[3]}, {rcvdata[4]}, {rcvdata[5]}")
54 robot.MoveJ(joint_pos=p2Joint, tool=0, user=0, vel=100, acc=100, ovl=100, exaxis_pos=exaxisPos, blendT=-1,offset_flag=0, offset_pos=offdese)
55 time.sleep(1)
56 print(f"***********************complate No. {cnt} SDK test*****************************")
57 cnt = cnt + 1
58
59 robot.CloseRPC()
60 return 0
61
62testAxleGenCom(robot)
11.96. Download do Arquivo Lua de Protocolo Aberto
Protótipo |
|
|---|---|
Descrição |
Download do arquivo Lua de protocolo aberto |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.97. Excluir Arquivo Lua de Protocolo Aberto Específico
Protótipo |
|
|---|---|
Descrição |
Exclui um arquivo Lua de protocolo aberto específico |
Parâmetros Obrigatórios |
|
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.98. Excluir Todos os Arquivos Lua de Protocolo Aberto
Protótipo |
|
|---|---|
Descrição |
Exclui todos os arquivos Lua de protocolo aberto |
Parâmetros Obrigatórios |
Nenhum |
Parâmetros Padrão |
Nenhum |
Valor de Retorno |
Código de erro: Sucesso-0 Falha - errcode |
11.99. Exemplo de Código SDK para Operações com Arquivos Lua de Protocolo Aberto
1from time import sleep
2import time
3from fairino import Robot
4
5# Estabelece conexão com o controlador do robô
6robot = Robot.RPC('192.168.58.2')
7
8
9def TestCtrlOpenLuaOperate(self):
10 # Envia arquivo Lua para o robô
11 rtn = robot.OpenLuaUpload("D://zUP/openlua/CtrlDev_WELDING_A.lua")
12 print(f"OpenLuaUpload rtn is {rtn}")
13
14 rtn = robot.OpenLuaUpload("D://zUP/openlua/CtrlDev_SWDPOLISH.lua")
15 print(f"OpenLuaUpload rtn is {rtn}")
16
17 # Download do arquivo Lua do robô
18 rtn = robot.OpenLuaDownload("CtrlDev_WELDING_A.lua", "D://zDOWN/")
19 print(f"OpenLuaDownload rtn is {rtn}")
20
21 rtn = robot.OpenLuaDownload("CtrlDev_SWDPOLISH.lua", "D://zDOWN/")
22 print(f"OpenLuaDownload rtn is {rtn}")
23
24 # Define o nome do Lua de protocolo aberto de controle
25 rtn = robot.SetCtrlOpenLUAName(0, "CtrlDev_WELDING_A.lua")
26 print(f"SetCtrlOpenLUAName rtn is {rtn}")
27
28 rtn = robot.SetCtrlOpenLUAName(1, "CtrlDev_SWDPOLISH.lua")
29 print(f"SetCtrlOpenLUAName rtn is {rtn}")
30
31 # Obtém o nome do Lua de protocolo aberto de controle
32 rtn, name = robot.GetCtrlOpenLUAName()
33 print(f"ctrl open lua names : {name[0]}, {name[1]}, {name[2]}, {name[3]}")
34
35 # Carrega o Lua de protocolo aberto de controle
36 rtn = robot.LoadCtrlOpenLUA(1)
37 print(f"LoadCtrlOpenLUA rtn is {rtn}")
38 time.sleep(2)
39
40 # Descarrega o Lua de protocolo aberto de controle
41 rtn = robot.UnloadCtrlOpenLUA(1)
42 print(f"UnloadCtrlOpenLUA rtn is {rtn}")
43
44 # Exclui o arquivo Lua especificado
45 rtn = robot.OpenLuaDelete("CtrlDev_WELDING_A.lua")
46 print(f"OpenLuaDelete rtn is {rtn}")
47
48 # Exclui todos os arquivos Lua
49 rtn = robot.AllOpenLuaDelete()
50 print(f"AllOpenLuaDelete rtn is {rtn}")
51
52 # Fecha a conexão
53 robot.CloseRPC()
54 time.sleep(1)
55
56
57# Chama a função de teste
58TestCtrlOpenLuaOperate(robot)