今天做了个程序,用s7200smartPLC通过modbus RTU通讯采集燃气流量计的数据,共采集了六个个数据(长整数型和32位浮点数型),分别是标况瞬时流量,工况瞬时流量,标况累计流量,工况累计流量,温度,压力,存放地址分别是VD200 VD210 VD220 VD230,VD240 VD250 显示在中控室电脑的WINCC监控画面上,j监控画面上显示了四个,分别是工况瞬时,工况累计,温度,压力,数据都很准确。就是数据的显示,有时瞬时流量会显示在温度显示小窗口的上面,压力会显示在累计流量的小窗口上面,另外几个个也一样,随机显示,像图一压力显示在温度窗口里面了,图二温度显示在流量窗口里面了,图三是正常的,数据不会稳定的显示在程序分配给它的地址上面,各位前辈分析一下这是什么原因呀。后面是程序,压力和温度的也是一样的程序,对了,在程序里面监控的时候也是这种现象,网上到处找资料都没有我这方面问题的,急死小弟了,前辈们帮忙看看是哪方面原因。
楼主最近还看过
"gk2017" 的回复,发表在2楼
对内容: 【"AI雪" 的回复,发表在1楼 对内容: 【先问个问题啊 就一台流量计对吧 还有你这个系统里 除了上位机PLC还有没有别的 硬件 触摸屏之类的...】进行回复: -----...】进行回复:
-----------------------------------------------------------------
我之前有过类似情况,我是这样的 组态王上位机 昆仑通态触摸屏 200Smart,然后我上位机和触摸屏绑变量的时候 没有改只读,绑的读写,然后我触摸屏里面变量绑错位了,导致触摸屏的数往上位机里面写,出现了错位的现象
你这个PLC程序我看着没啥问题啊就是一个高低字节的转换,你交叉引用查下看看地址有没有重了吧
回复本条
"关育谋" 的回复,发表在11楼
对内容: 【也就是说转存数据要在MBUS_MSG指令执行完成后、指令的完成标志位为1、且错误代码为0的时候进行数据转存,这样才是最保险的,而不是你那样使用SM0.0一直接通着。你可以改改程序试试。...】进行回复:
-----------------------------------------------------------------
有道理,我明天改一下程序看看,但想想有不太对,我接收的数据都是很准确的,和仪表里面的一样,如果程序逻辑不够严谨,它接收的数据应该不会这么准确,就是显示的地址会错位,刚开始没做到WINCC画面里面,在程序状态图表里面直接监控的时候也是这样,几个采集数据的显示位置会错位,但数据准确
回复本条