2014-11-05 6 views
0

다음 modbus 슬레이브 시뮬레이터 http://www.modbusdriver.com/diagslave.html과 다음 modbus 폴러 http://www.modbusdriver.com/modpoll.html을 실행 중입니다. 이상한 일은, 나는 그들에게 서로를 발견하게하지는 못한다. 다음은 슬레이브 시뮬레이터의 출력입니다.Modbus 시뮬레이터 이상한 동작

Protocol configuration: Modbus RTU 
Slave configuration: address = -1, master activity t/o = 3.00 
Serial port configuration: /dev/ttyS0, 19200, 8, 1, even 

Server started up successfully. 
Listening to network (Ctrl-C to stop) 
.................... 

다음은 Modbus 폴러의 출력입니다. 당신이 볼 수 있듯이

Protocol configuration: Modbus RTU 
Slave configuration...: address = 1, start reference = 1, count = 1 
Communication.........: /dev/ttyS0, 19200, 8, 1, even, t/o 1.00 s, poll rate 1000 ms 
Data type.............: 16-bit register, output (holding) register table 

-- Polling slave... (Ctrl-C to stop) 
Reply time-out! 
-- Polling slave... (Ctrl-C to stop) 

는 모드 버스 슬레이브 시뮬레이터뿐만 아니라 모드 버스 폴러 모두 동일한 값이 서로를 찾을 수가 있어야합니다. 그러나 그들은 내가 이상하게 여길 수 없습니다. 누구든지이 문제를 일으킬 수있는 것에 대한 제안 사항이 있습니까?

답변

0

시간 제한은 슬레이브 장치에 존재하지 않는 경우 (적합한 당신을 등록의 종류 폴링 있는지 확인도) 투표소를 해결

  • 레지스터 등 여러 가지 이유가 될 수

  • 슬레이브와 마스터 직렬 포트 인터페이스를 잘못 구성했기 때문에 슬레이브간에 연결이 설정되지 않았습니다 (마스터가 슬레이브 &).

  • 또한 직렬 링크가 물리적으로 양 끝에있는 정확한 핀 (슬레이브 및 마스터)에 올바르게 연결되었는지 확인하십시오.

- 마스터에서 설정 한 시간 초과 기간을 확인하십시오. 매우 낮은 값으로 설정했을 수 있으므로 슬레이브의 응답이 누락되었습니다.

희망이 도움이됩니다.

+0

나는 그것을 알아 냈다. 기기와 인터페이스하기 위해 API가 내장되어 있지 않습니다. 그래서 장치로 데이터를 보내고 장치가 동시에 데이터를 보내려고했지만 올바르게 작동하지 않았습니다. 자신의 드라이버를 작성하면 이제 매력처럼 작동합니다. – jgr208