用S7-1200做主站和2个温控表及6个电流表进行MODBUS RTU通讯,目前是按照轮询来编写程序,由前一个指令的done或者error来做下一个指令的req,测试下来没有问题。
轮询流程如下:
MB Master 1 -8 读取温控表1,2温度及电流表1-6电流,MB Master 9向温控表1写入设定温度,MB Master 9的done或者error来做MB Master 1 的req,从而实现循环
因为PLC问温控表及电流表读数据是需要一直不停的做的,但是问温控表写入设定温度是很久才会做一次,所以打算给MB Master 9的req增加一个限制条件,考虑到整体的轮询,还做了程序内的跳转。但这样怎么都无法成功,通讯会卡死。如果不做条件设定,始终一直全部轮询,则会导致不想看到的情况,每个循环周期都给温控表写入设定温度。
请问是否有写成功过的这种条件轮询?即在整个轮询的从站中,有部分从站是按照需要参与或不参与通讯的?如有的话,麻烦给个提示,或者给一段示例程序,谢谢了