以下是针对cp1e-n20dr-a 而言的
PLC提供了A640.00,A640.01,A640.02三个内部寄存器对通讯进行监控
A640.01:MODBUS_RTU主站执行错误标志
A640.02:MODBUS_RTU主站执行正常标志
通讯正在执行时这两个标志均为OFF
A640.00:MODBUS_RTU主站通讯执行控制位 通过用户程序SET命令置ON,清除接收缓冲区D1250-D1259,启动MODBUS_RTU主站命令数据发出并等待从站响应,此时维持ON状态,在接收到响应(不管正确与否)或接收超时后该位自动置OFF,在接收缓冲区中会有从站响应回来的数据(未接收到响应时D1252的数据为HEX:0080表示响应超时,其他数据缓冲区维持0态),用户程序勿对其置OFF。
明白了以上过程,通过在发送缓冲区D1200-D1249预置MODBUS命令帧数据,并根据A640.00的状态进行监控即可实现MODBUS主站的通讯。发送,接收缓冲区的数据和MODBUS_RTU协议密切相关可参考PLC的软件手册和MODBUS_RTU协议去理解,如感兴趣的人多的话我会后续跟帖稍作说明。
楼主最近还看过