[西门子] S7-200 smart非时间/计数轮询来实现modbus通讯测试

[复制链接]
查看44548 | 回复0 | 2024-8-11 08:51:56 | 显示全部楼层 |阅读模式
前言:

    以前都是采用的时间/计数轮询通讯,有两个缺点,一是轮询时间较长,二是容易造成宕机,数据传输不过来。

    在昔日同事的指导下,本次采用标志位来驱动轮询,速度和稳定性得到了较大的提升。

具体实现说明:

网络1:复位所有标志位,防止系统无法运行。



这里有5个标志位,下面程序中可以看出。

网络2:将重试次数设置为0



   



网络3:启动主站控制程序,设置方式参考如下:



网络四:第一个数据采集,标志位为M0.1。



网络五:



复位最后一个采集信息的标志位

网络六、七:采集第二个数据和复位第一个标志位



网络八、九:采集第3个数据和复位第2个标志位



网络十、十一:采集第4个数据和复位第3个标志位



网络十二、十三:采集过来的数据计算和转换。







     一般读过来的数据都是整型,根据仪表的通讯手册或者对照现场的实际数据,我们做一些简单的计算就可以得到真实数据,比如转换为浮点数后除以10.0或者100.0。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则