DCS做主站,我这边做从站,机架配置了两块CP341卡,DCS要读取我这边PLC的数据,两块卡的收发状态灯一直在交替闪烁,DI的信号都能在DCS上读取到,AI的信号在下位机中已经转换为了REAL型的数据,第一块卡的FC030616中填的是DB11.DW0,第二块卡的FC030616中填的是DB13.DW0,程序中新建了DB11和DB13块,块里面通道的类型设置为INT型,AI的REAL型数据分别赋值到了DB11和DB13块中,DB11和DB13块在线后,各条数据都跟原始数据一样,见附件照片。FB80功能块西门子的例子程序是用语句写的,我是从库里调用的FB80,见附件,参照例子FB80配置的,就OB_MASK让它为1,其余都是为0。请问我这些配置都对么?还缺少什么吗?DCS一开始读取到了DB11块的大多数,另外有两三个数据为1万多,或是负的2万多,肯定是不对了,然后我DB块类型和赋值到DB块那里都修改为REAL型的,然后DCS说数据都不动了,我再改回INT型的,DCS读取到时数据还是不动后的数据,一直不变了。然后另外还有一套冗余的CP341,配置同上,DCS说只能连到一块卡,读取到的数据也都不对,都是很大的正数或负数,另一块卡连不上,但是两块卡的收发灯都是一直在闪烁的。是不是我新建的DB块不对,新建的时候我没有选择,是默认的Share什么的。谢谢!被这个搞的头大了。以前的问题大家回复后,有的回复我不明白或是不理解,但是没有办法联系上回答者,我的QQ号是27017238,希望大神们回复后能留个QQ号什么的,能帮我解决掉这个问题。再次感谢!
图片说明:
最佳答案
比如你的压力信号会出现小数,这样可以传送REAL型,整数的用word型的,
例如DB11.DBD0对应MODBUS功能码40001
DB11.DBD4对应MODBUS功能码40003
DB11.DBD8对应MODBUS功能码40005
如果下一个是word型
DB11.DBW12对应MODBUS功能码40007
DB11.DBW14对应MODBUS功能码40008
DB11.DBW16对应MODBUS功能码40009
DB11.DBW18对应MODBUS功能码40010
如果REAL型的数据在DCS侧数据显示不对,要做高低位转换
QQ986725726
提问者对于答案的评价:
虽然问题还未解决,但还是非常感谢你的耐心解答。
专家置评
已阅,最佳答案正确。开关量可以正常通讯说明通信已经建立。需要提醒的是注意高低字节是否转换,读取的区域起始地址和数据长度是否正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc226132.html