请教下关于欧姆龙PLC OPC处理Float类型的方法

2019-07-17 08:10发布

  如题,欧姆龙PLC,之前做项目从没用过OPC通讯,这个项目因为是接手别人的,结构没设计好,如果替换为协议通讯就得大改动,没时间 只能换用OPC,之前是西门子PLC,现在换成欧姆龙了,OPC Sever搞定了,D区的数据如果我OPC中设为Float类型,那么读写全不正常,敢问这个怎么解决?只能先乘以100或1000变为整数再处理吗?  这样需要改动的就很多了,不比改程序架构简单多少,哪位有好的方法麻烦讲一下,万分感谢! (PS:通讯方面没问题,不管OPC还是协议发指令都没问题,这些各位大神就跳过吧)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
crescent
1楼-- · 2019-07-17 13:11
 精彩回答 2  元偷偷看……
tyx010203
2楼-- · 2019-07-17 19:03
我做的的项目都是用的OPC与西门子的PLC进行通信,应该用欧姆龙也是一样的,针对你的问题你可以检查这几点问题,首先PLC本身进行数据修改是否正常,然后打开OPC Quick中数据是否正常,在进行DB地址与OPC标签的检查,一个Float占4个字节,PLC往DB块中写数据时要保证位数是否正确。然后在创建OPC 标签的时候,你可以检查每个数据的DB块地址是否与PLC对应,地址是否有重复或者创建了地址超出DB块的有效数据。
zhouyezuishuai
3楼-- · 2019-07-17 21:03
crescent 发表于 2018-5-11 19:10
以前做过这个内容,凭印象答一下吧!PLC的浮点数是遵循IEEE754标准的。
至于如何转换,见附件VI。

这个问题我解决了,float数据类型占两个寄存器,就这么简单   不推荐OPC,速度太慢太慢,走TCP的话用协议收发指令速度要快的多,如果说用OPC做曲线帧率是10,那么走协议帧率就是60以上了
crescent
4楼-- · 2019-07-18 02:00
zhouyezuishuai 发表于 2018-6-8 16:34
这个问题我解决了,float数据类型占两个寄存器,就这么简单   不推荐OPC,速度太慢太慢,走TCP的话用协议收发指令速度要快的多,如果说用OPC做曲线帧率是10,那么走协议帧率就是60以上了

是的,很多PLC也可以用485。三菱的PLC走TCP的话协议包太复杂。
zyicc
5楼-- · 2019-07-18 05:04
有个网友发过FINS TCP可以了解一下。

一周热门 更多>