一个西门子ST40,带了12个电动锁、2个移栽小车,每个设备都有485接口,走的是MODBUS协议,PLC自带485口做从站与上位机通讯,接受上位机的读写指令。
PLC的通讯板当主站与12个电动锁、2个移栽小车通讯(一共14个从站),需要读取设备状态并放在VB1000开始的地址给上位机读取,并根据上位机的指令手动控制下级设备,如上位机报文的数据是 01 01,则通过MODBUS控制第一个电动锁锁紧,也有同时让12个电动锁锁紧的指令
读取采用的是定时轮询的方式,1秒一个脉冲,从站1开始到从站14,读一圈,目前试了一下问题不大
目前问题是:上位机发送的控制单个设备的指令要求马上发送下去,举例:上位机要求控制从站5动作,但是轮询还在读取从站10中,从站10完成后马上要发送相应的数据给从站5, 然后发送完当前的写入指令后,接着回去轮询从站11.
如果是单个指令发送我感觉也还能接受,就是同时写入12个电磁锁动作怎么进行编程设计呢?我目前只想到一个填表
楼主最近还看过
用网关比较方便,这里有个案例: