정의
flange_serial_read(timeout=None, port=1)
기능
Pseudo Flange Serial에서 data를 읽어오기 위한 명령어입니다.
ModbusRTU 통신 방식으로 사용하는 경우, write 후 read 신호를 수신하기까지 최소 250 밀리초의 대기 시간이 필요합니다. flange_serial_read()를 여러 번 호출하거나 wait() 함수를 사용하지 않고, 이 함수의 timeout 인자만으로도 대기할 수 있습니다. 단, 수신을 보장하기 위해 timeout 값은 약간 큰 값(예시: 1초)으로 설정하는 것이 좋으며, 이를 통해 최소 시간 내에 데이터를 수신할 수 있습니다.
인수
|
인수명 |
자료형 |
기본값 |
설명 |
|---|---|---|---|
|
timeout |
float int |
None |
Read 대기시간 |
|
port |
int |
1 |
read 하고자 하는 포트번호 X1 포트 : 1 X2 포트 : 2 (A모델 사용 불가) |
리턴
|
값 |
설명 |
|---|---|
|
res |
수신한 데이터의 바이트 수 -1 : time out -2: overflow |
|
rx_data |
Read 한 데이터 |
예외
|
예외 |
설명 |
|---|---|
|
DR_Error (DR_ERROR_TYPE) |
인수들의 데이터형 오류 시 |
|
DR_Error (DR_ERROR_RUNTIME) |
C Extension 모듈 에러 발생 시 |
|
DR_Error (DR_ERROR_STOP) |
프로그램 강제 종료 시 |
예제
Python
# Sample 1. Wait using wait
# 2F-85 Gripper - Close the Gripper at full speed and full force
flange_serial_write(modbus_send_make(b"\x09\x10\x03\xE8\x00\x03\x06\x09\x00\x00\xFF\xFF\xFF"))
wait(0.25)
res, data = flange_serial_read(1,1)
# Sample 2. Wait using timeout
# 2F-85 Gripper - Close the Gripper at full speed and full force
flange_serial_write(modbus_send_make(b"\x09\x10\x03\xE8\x00\x03\x06\x09\x00\x00\xFF\xFF\xFF"))
res, data = flange_serial_read(1,1)