| 作者 | 主题 |
|---|---|
|
吴弟 游士 经验值:288 发帖数:12 精华帖:0 |
楼主
主题:Modbus-RTU S7-1200做主站轮询8个从站,采用Done和ERROR的方式,发现一个问题,当其中一个从站掉电后,就会停止轮询。请教大神,怎样编写检测故障程序,判断这个站故障并跳过这个站,以使轮询能够进行下去 定时器加计数器来实现的话,现场调试要花很长时间,大家有什么好的轮询思路? |
|
努力前行 奇侠 经验值:7578 发帖数:823 精华帖:5 |
8楼
主题:回复:Modbus-RTU这个项目我们也曾做过,1200作主站与10个变频器MODBUS-RTU通信,运行的两年多了,一直非常稳定。不仅是根据DONE和ERROR的状态,而且也做了一个延时判断,当DONE或延时到触发了下一从站的通信。如下图。 图1:从站丢失或故障的情况下延时1秒,并记录未响应次数。 图2:触发下一个从站的采集。 结论:485通信,会因为设备原因、环境原因等,导致各种故障现象,因此程序上还是要考虑的可能性越多越好,而且还要有一些容错机制。 仅个人观点,表述不当之外,请指正。
办法总比困难多
|