5. E/S do Robô
5.1. Definir Saída Digital da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Define a saída digital da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.2. Definir Saída Digital da Ferramenta
Protótipo |
|
|---|---|
Descrição |
Define a saída digital da ferramenta |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.3. Definir Saída Analógica da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Define a saída analógica da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.4. Definir Saída Analógica da Ferramenta
Protótipo |
|
|---|---|
Descrição |
Define a saída analógica da ferramenta |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.5. Exemplo de Código para Configurar Saídas Digitais e Analógicas
1from fairino import Robot
2import time
3# Estabelece conexão com o controlador do robô, retorna um objeto robô se a conexão for bem-sucedida
4robot = Robot.RPC('192.168.58.2')
5status = 1
6smooth = 0
7block = 0
8for i in range(16):
9 robot.SetDO(i, status, smooth, block)
10 time.sleep(0.3)
11status = 0
12for i in range(16):
13 robot.SetDO(i, status, smooth, block)
14 time.sleep(0.3)
15status = 1
16for i in range(2):
17 robot.SetToolDO(i, status, smooth, block)
18 time.sleep(1)
19status = 0
20for i in range(2):
21 robot.SetToolDO(i, status, smooth, block)
22 time.sleep(1)
23for i in range(100):
24 robot.SetAO(0, i, block)
25 time.sleep(0.03)
26for i in range(100):
27 robot.SetToolAO(0, i, block)
28 time.sleep(0.03)
29robot.CloseRPC()
5.6. Obter Entrada Digital da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Obtém a entrada digital da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
|
5.7. Obter Entrada Digital da Ferramenta
Protótipo |
|
|---|---|
Descrição |
Obtém a entrada digital da ferramenta |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro
- |
5.8. Obter Entrada Analógica da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Obtém a entrada analógica da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
|
5.9. Obter Entrada Analógica da Ferramenta
Protótipo |
|
|---|---|
Descrição |
Obtém a entrada analógica da extremidade |
Parâmetros obrigatórios |
|
Parâmetros padrão |
|
Valor de retorno |
|
5.10. Obter Estado do Botão de Gravação de Ponto da Extremidade do Robô
Protótipo |
|
|---|---|
Descrição |
Obtém o estado do botão de gravação de ponto da extremidade do robô |
Parâmetros obrigatórios |
Nenhum |
Parâmetros padrão |
Nenhum |
Valor de retorno |
|
5.11. Obter Estado de Saída DO da Extremidade do Robô
Protótipo |
|
|---|---|
Descrição |
Obtém o estado de saída DO da extremidade do robô |
Parâmetros obrigatórios |
Nenhum |
Parâmetros padrão |
Nenhum |
Valor de retorno |
|
5.12. Obter Estado de Saída DO do Controlador do Robô
Protótipo |
|
|---|---|
Descrição |
Obtém o estado de saída DO do controlador do robô |
Parâmetros obrigatórios |
Nenhum |
Parâmetros padrão |
Nenhum |
Valor de retorno |
|
5.13. Exemplo de Código para Obter Estado DI e DO do Robô
1from fairino import Robot
2import time
3# Estabelece conexão com o controlador do robô, retorna um objeto robô se a conexão for bem-sucedida
4robot = Robot.RPC('192.168.58.2')
5block = 0
6error, di = robot.GetDI(0, block)
7print(f"di0: {di}")
8error, tool_di = robot.GetToolDI(1, block)
9print(f"tool_di1: {tool_di}")
10error, ai = robot.GetAI(0, block)
11print(f"ai0: {ai:.2f}")
12error, tool_ai = robot.GetToolAI(0, block)
13print(f"tool_ai0: {tool_ai:.2f}")
14error, button_state = robot.GetAxlePointRecordBtnState()
15print(f"_button_state is: {button_state}")
16error, tool_do_state = robot.GetToolDO()
17print(f"tool DO state: {tool_do_state}")
18error, [do_state_h, do_state_l] = robot.GetDO()
19print(f"DO state high: {do_state_h}")
20print(f"DO state low: {do_state_l}")
21robot.CloseRPC()
5.14. Aguardar Entrada Digital da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Aguarda a entrada digital da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.15. Aguardar Entrada Digital Múltipla da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Aguarda a entrada digital múltipla da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.16. Aguardar Entrada Digital da Ferramenta
Protótipo |
|
|---|---|
Descrição |
Aguarda a entrada digital da extremidade |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.17. Aguardar Entrada Analógica da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Aguarda a entrada analógica da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.18. Aguardar Entrada Analógica da Ferramenta
Protótipo |
|
|---|---|
Descrição |
Aguarda a entrada analógica da extremidade |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.19. Exemplo de Código para Aguardar Sinais de Entrada Digital e Analógica da Caixa de Controle
1from fairino import Robot
2# Estabelece conexão com o controlador do robô, retorna um objeto robô se a conexão for bem-sucedida
3robot = Robot.RPC('192.168.58.2')
4status = 1
5smooth = 0
6block = 0
7for i in range(16):
8 robot.SetDO(i, status, smooth, block)
9 time.sleep(0.3)
10status = 0
11for i in range(16):
12 robot.SetDO(i, status, smooth, block)
13 time.sleep(0.3)
14status = 1
15for i in range(2):
16 robot.SetToolDO(i, status, smooth, block)
17 time.sleep(1)
18status = 0
19for i in range(2):
20 robot.SetToolDO(i, status, smooth, block)
21 time.sleep(1)
22for i in range(100):
23 robot.SetAO(0, i, block)
24 time.sleep(0.03)
25for i in range(100):
26 robot.SetToolAO(0, i, block)
27 time.sleep(0.03)
28block = 0
29error, di = robot.GetDI(0, block)
30print(f"di0: {di}")
31error, tool_di = robot.GetToolDI(1, block)
32print(f"tool_di1: {tool_di}")
33error, ai = robot.GetAI(0, block)
34print(f"ai0: {ai:.2f}")
35error, tool_ai = robot.GetToolAI(0, block)
36print(f"tool_ai0: {tool_ai:.2f}")
37error, button_state = robot.GetAxlePointRecordBtnState()
38print(f"_button_state is: {button_state}")
39error, tool_do_state = robot.GetToolDO()
40print(f"tool DO state: {tool_do_state}")
41error, [do_state_h, do_state_l] = robot.GetDO()
42print(f"DO state high: {do_state_h}")
43print(f"DO state low: {do_state_l}")
44rtn = robot.WaitDI(0, 1, 1000, 1)
45print(f"WaitDI over; rtn is: {rtn}")
46rtn = robot.WaitMultiDI(1, 3, 3, 1000, 1)
47print(f"WaitDI over; rtn is: {rtn}")
48rtn = robot.WaitToolDI(1, 1, 1000, 1)
49print(f"WaitDI over; rtn is: {rtn}")
50rtn = robot.WaitAI(0, 0, 50, 1000, 1)
51print(f"WaitDI over; rtn is: {rtn}")
52rtn = robot.WaitToolAI(0, 0, 50, 1000, 1)
53print(f"WaitDI over; rtn is: {rtn}")
54robot.CloseRPC()
5.20. Definir se a Saída DO da Caixa de Controle é Reiniciada Após Parada/Pausa
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define se a saída DO da caixa de controle é reiniciada após parada/pausa |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.21. Definir se a Saída AO da Caixa de Controle é Reiniciada Após Parada/Pausa
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define se a saída AO da caixa de controle é reiniciada após parada/pausa |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.22. Definir se a Saída DO da Ferramenta de Extremidade é Reiniciada Após Parada/Pausa
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define se a saída DO da ferramenta de extremidade é reiniciada após parada/pausa |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.23. Definir se a Saída AO da Ferramenta de Extremidade é Reiniciada Após Parada/Pausa
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define se a saída AO da ferramenta de extremidade é reiniciada após parada/pausa |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.24. Definir se a Saída DO Estendida é Reiniciada Após Parada/Pausa
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define se a saída DO estendida é reiniciada após parada/pausa |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.25. Definir se a Saída AO Estendida é Reiniciada Após Parada/Pausa
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define se a saída AO estendida é reiniciada após parada/pausa |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.26. Definir se a Saída DO do SmartTool é Reiniciada Após Parada/Pausa
Novo na versão python: SDK-v2.0.5
Protótipo |
|
|---|---|
Descrição |
Define se a saída DO do SmartTool é reiniciada após parada/pausa |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.27. Exemplo de Código para Reinicialização de Saída Após Parada/Pausa do Programa LUA
1from fairino import Robot
2import time
3robot = Robot.RPC('192.168.58.2')
4for i in range(16):
5 robot.SetDO(i, 1, 0, 0)
6 time.sleep(0.2)
7resetFlag = 0
8resumeReloadFlag = 0
9rtn = robot.SetOutputResetCtlBoxDO(resetFlag, resumeReloadFlag)
10robot.SetOutputResetCtlBoxAO(resetFlag, resumeReloadFlag)
11robot.SetOutputResetAxleDO(resetFlag, resumeReloadFlag)
12robot.SetOutputResetAxleAO(resetFlag, resumeReloadFlag)
13robot.SetOutputResetExtDO(resetFlag, resumeReloadFlag)
14robot.SetOutputResetExtAO(resetFlag, resumeReloadFlag)
15robot.SetOutputResetSmartToolDO(resetFlag, resumeReloadFlag)
16robot.ProgramLoad("test.lua")
17robot.ProgramRun()
18time.sleep(2)
19robot.PauseMotion()
20time.sleep(2)
21robot.ResumeMotion()
22time.sleep(2)
23robot.CloseRPC()
24return 0
5.28. Definir Função da Porta CI Configurável
Protótipo |
|
|---|---|
Descrição |
Define a função da porta CI configurável |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.29. Obter Função da Porta CI Configurável da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Obtém a função da porta CI configurável da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.30. Definir Função da Porta CO Configurável
Protótipo |
|
|---|---|
Descrição |
Define a função da porta CO configurável |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.31. Obter Função da Porta CO Configurável
Protótipo |
|
|---|---|
Descrição |
Obtém a função da porta CO configurável |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.32. Definir Função da Porta End-CI Configurável da Extremidade
Protótipo |
|
|---|---|
Descrição |
Define a função da porta End-CI configurável da extremidade |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.33. Obter Função da Porta End-CI Configurável da Extremidade
Protótipo |
|
|---|---|
Descrição |
Obtém a função da porta End-CI configurável da extremidade |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.34. Definir Estado Ativo do CI Configurável da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Define o estado ativo do CI configurável da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.35. Obter Estado Ativo do CI Configurável da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Obtém o estado ativo do CI configurável da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.36. Definir Estado Ativo do CO Configurável da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Define o estado ativo do CO configurável da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.37. Obter Estado Ativo do CO Configurável da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Obtém o estado ativo do CO configurável da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.38. Definir Estado Ativo do CI Configurável da Extremidade
Protótipo |
|
|---|---|
Descrição |
Define o estado ativo do CI configurável da extremidade |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.39. Obter Estado Ativo do CI Configurável da Extremidade
Protótipo |
|
|---|---|
Descrição |
Obtém o estado ativo do CI configurável da extremidade |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.40. Definir Estado Ativo do DI Padrão da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Define o estado ativo do DI padrão da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.41. Obter Estado Ativo do DI Padrão da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Obtém o estado ativo do DI padrão da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.42. Definir Estado Ativo do DO Padrão da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Define o estado ativo do DO padrão da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.43. Obter Estado Ativo do DO Padrão da Caixa de Controle
Protótipo |
|
|---|---|
Descrição |
Obtém o estado ativo do DO padrão da caixa de controle |
Parâmetros obrigatórios |
|
Parâmetros padrão |
Nenhum |
Valor de retorno |
Código de erro: sucesso-0, falha-código de erro |
5.44. Exemplo de Código SDK de Configuração de E/S
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 TestIOConfig(self):
10 # Definir e obter configuração DI
11 setDIConfig = [1, 2, 3, 4, 5, 6, 7, 8]
12 getDIConfig = [0] * 8
13 rtn = robot.SetDIConfig(setDIConfig)
14 print(f"SetDIConfig rtn is {rtn}")
15 rtn, getDIConfig = robot.GetDIConfig()
16 print(f"GetDIConfig rtn is {rtn}, value is {getDIConfig[0]} {getDIConfig[1]} {getDIConfig[2]} {getDIConfig[3]} {getDIConfig[4]} {getDIConfig[5]} {getDIConfig[6]} {getDIConfig[7]}")
17
18 # Definir e obter configuração DO
19 setDOConfig = [9, 10, 11, 12, 13, 14, 15, 16]
20 getDOConfig = [0] * 8
21 rtn = robot.SetDOConfig(setDOConfig)
22 print(f"SetDOConfig rtn is {rtn}")
23 rtn, getDOConfig = robot.GetDOConfig()
24 print(f"GetDOConfig rtn is {rtn}, value is {getDOConfig[0]} {getDOConfig[1]} {getDOConfig[2]} {getDOConfig[3]} {getDOConfig[4]} {getDOConfig[5]} {getDOConfig[6]} {getDOConfig[7]}")
25
26 # Definir e obter configuração DI da ferramenta
27 setToolDIConfig = [17, 18]
28 getToolDIConfig = [0] * 2
29 rtn = robot.SetToolDIConfig(setToolDIConfig)
30 print(f"SetToolDIConfig rtn is {rtn}")
31 rtn, getToolDIConfig = robot.GetToolDIConfig()
32 print(f"GetToolDIConfig rtn is {rtn}, value is {getToolDIConfig[0]} {getToolDIConfig[1]}")
33
34 # Definir e obter configuração de nível DI (0: nível baixo ativo, 1: nível alto ativo)
35 setDIConfigLevel = [1, 1, 1, 1, 0, 0, 0, 0]
36 getDIConfigLevel = [0] * 8
37 rtn = robot.SetDIConfigLevel(setDIConfigLevel)
38 print(f"SetDIConfigLevel rtn is {rtn}")
39 rtn, getDIConfigLevel = robot.GetDIConfigLevel()
40 print(f"GetDIConfigLevel rtn is {rtn}, value is {getDIConfigLevel[0]} {getDIConfigLevel[1]} {getDIConfigLevel[2]} {getDIConfigLevel[3]} {getDIConfigLevel[4]} {getDIConfigLevel[5]} {getDIConfigLevel[6]} {getDIConfigLevel[7]}")
41
42 # Definir e obter configuração de nível DO (0: nível baixo ativo, 1: nível alto ativo)
43 setDOConfigLevel = [0, 0, 0, 0, 1, 1, 1, 1]
44 getDOConfigLevel = [0] * 8
45 rtn = robot.SetDOConfigLevel(setDOConfigLevel)
46 print(f"SetDOConfigLevel rtn is {rtn}")
47 rtn, getDOConfigLevel = robot.GetDOConfigLevel()
48 print(f"GetDOConfigLevel rtn is {rtn}, value is {getDOConfigLevel[0]} {getDOConfigLevel[1]} {getDOConfigLevel[2]} {getDOConfigLevel[3]} {getDOConfigLevel[4]} {getDOConfigLevel[5]} {getDOConfigLevel[6]} {getDOConfigLevel[7]}")
49
50 # Definir e obter configuração de nível DI da ferramenta
51 setToolDIConfigLevel = [1, 0]
52 getToolDIConfigLevel = [0] * 2
53 rtn = robot.SetToolDIConfigLevel(setToolDIConfigLevel)
54 print(f"SetToolDIConfigLevel rtn is {rtn}")
55 rtn, getToolDIConfigLevel = robot.GetToolDIConfigLevel()
56 print(f"GetToolDIConfigLevel rtn is {rtn}, value is {getToolDIConfigLevel[0]} {getToolDIConfigLevel[1]}")
57
58 # Definir e obter configuração de nível DI padrão
59 setStandardDILevel = [1, 1, 1, 1, 0, 0, 0, 0]
60 getStandardDILevel = [0] * 8
61 rtn = robot.SetStandardDILevel(setStandardDILevel)
62 print(f"SetStandardDILevel rtn is {rtn}")
63 rtn, getStandardDILevel = robot.GetStandardDILevel()
64 print(f"GetStandardDILevel rtn is {rtn}, value is {getStandardDILevel[0]} {getStandardDILevel[1]} {getStandardDILevel[2]} {getStandardDILevel[3]} {getStandardDILevel[4]} {getStandardDILevel[5]} {getStandardDILevel[6]} {getStandardDILevel[7]}")
65
66 # Definir e obter configuração de nível DO padrão
67 setStandardDOLevel = [0, 0, 0, 0, 1, 1, 1, 1]
68 getStandardDOLevel = [0] * 8
69 rtn = robot.SetStandardDOLevel(setStandardDOLevel)
70 print(f"SetStandardDOLevel rtn is {rtn}")
71 rtn, getStandardDOLevel = robot.GetStandardDOLevel()
72 print(f"GetStandsrdDOLevel rtn is {rtn}, value is {getStandardDOLevel[0]} {getStandardDOLevel[1]} {getStandardDOLevel[2]} {getStandardDOLevel[3]} {getStandardDOLevel[4]} {getStandardDOLevel[5]} {getStandardDOLevel[6]} {getStandardDOLevel[7]}")
73
74 # Aguardar 2 segundos
75 time.sleep(2)
76
77 # Fechar conexão
78 robot.CloseRPC()
79 time.sleep(1)
80
81# Chamar função de teste
82TestIOConfig(robot)