indy7 step 프로그래밍 예제 에러
-
indyDCP 로 파이썬 프로그램 중입니다.
소켓붙는 건 정상인데요, 예제 실행 시 다음과 같은 에러가 납니다.
indy.set_joint_vel_level(3)에서 문제가 되는 것 같내요.
실행코드 :
indy.connect()
indy.set_joint_vel_level(3)
prog = JsonProgramComponent(policy=1, resume_time=2) # Init. prgoram
에러메시지 :
Connect: Server IP (192.168.100.55)
--------------------------------------------------------------------------- timeout Traceback (most recent call last) <ipython-input-9-94506e2f5682> in <module>() 1 indy.connect() 2 ----> 3 indy.set_joint_vel_level(3) 4 5 prog = JsonProgramComponent(policy=1, resume_time=2) # Init. prgoram ~/jupyter/indydcp/indy_utils/indydcp_client.py in decorated(*args) 445 exec('_req_data.' + data_type + ' = tmp_val') 446 --> 447 args[0]._handle_command(cmd, _req_data, _req_data_size) 448 return func(*args) 449 return decorated ~/jupyter/indydcp/indy_utils/indydcp_client.py in decorated(*args, **kwargs) 400 args[0].lock.acquire() 401 # args[0].connect() --> 402 func_out = func(*args, **kwargs) 403 # args[0].disconnect() 404 args[0].lock.release() ~/jupyter/indydcp/indy_utils/indydcp_client.py in _handle_command(self, cmd, req_data, req_data_size) 649 # Recv header from socket 650 res_header = HeaderCommand() --> 651 read_buffer = self._recv_message(read_buffer, SIZE_HEADER_COMMAND) 652 memmove(res_header.byte, read_buffer, SIZE_HEADER_COMMAND) 653 ~/jupyter/indydcp/indy_utils/indydcp_client.py in _recv_message(self, buf, size) 557 while bytes_recd < size: 558 self.sock_fd.settimeout(self.time_out) --> 559 chunk = self.sock_fd.recv(size - bytes_recd) 560 if chunk == b'': 561 print('Error: receive error') timeout: timed out
-
안녕하세요.
뉴로메카입니다.
우선 다른 PC 에서 IndyDCP 연결을 유지하고 있지 않은지 확인해 주시기 바랍니다.
IndyDCP는 보안상의 이유로 한번에 최대 하나의 PC와의 통신만 허용하고 있습니다.
다른 PC에서 사용 후 disconnect()를 하지 않고 연결을 시도할경우 명령어가 실행되지 않고 timeout됩니다.
-
모든 연결을 끊고 해봤습니다.
다른 에러가 나네요.
-
사용하고 계신 Indy 의 software 버전 확인을 부탁드립니다.
Conty App - option 탭 - 어플리케이션 정보 에서 확인할 수 있습니다.
Program Maker기능을 사용하기 위해서는 2.3.1 이상의 버전이 필요합니다.