Kepserver 应用之modbus TCP to opc UA

1.Kepserver 定义

kepserver 核心功能是协议网关功能(与互联网api 网关有类似但又不同), 网关连接的是工业协议与IT的通用API接口协议。

当然随着KepServer 产品迭代,有更多功能模块在新版本加入,例如历史数据库Datalog等,但是核心基础还是网关。

2.业务场景modbus TCP to opc UA

上面说过kepserver 核心功能是网关,该场景就是下位工业协议Modbus-tcp  经过Kepserver 网关后变成opc -ua;

3. 问题由来;

   同一批质量数据,有的能正常显示,有的不能显示,为什么呢?Modbus tcp to kepserver 数据都已经传输完成,kepserver opc client 可以监控到,但是在Tco Application里面就是显示空白

        排查方向:

  • a.超出Tco 设定的数据字符容量,排查没有任何限制
  • b.传输数据中有特殊字符导致无法解析被丢弃,SR_08/09经查里面没有特殊字符,都是可以被显示的
  • c.找不到原因,后来偶然发现,kepserver item 标签的顺序是反的。

4.问题的解决

TCO 等上位应用主要是引用OPC 类库, C# 是dll ,  java 是Package 类似, opc 的操作方式都是以item 顺序排列, 所以下例中ST3的数据是ST3_1+ST3_2+ST3_3+ST3_..+ST3_14的顺序拼接。

但是工业协议Modbus-tcp是以400001-465535的Word array 排序,下例中modbus -tcp 写入没有问题,问题在ST3_11、ST3_12、ST3_13、ST3_14、ST3_15  对应字节序因为不仔细原因导致对应modbus-tcp 的地址错乱,所以在OPC拼接中,数据也是乱的,SR08/SR09刚好对应就是错误数据组的【0.0.0.0.0.0.0.0.0.0】

这其实是一种思维固化,总以为数据是以Modbus -tcp的顺序传输的,但是kepserver opc 的item设置中忽略了这个问题,甚至出现问题后不好排查,以后要谨记!!!

---------------------------------------------------------------------------------------------------------------------------------

This is the COCKPIT01.ws96710.PDE3_ST3_14 interactive table

I find COCKPIT01.ws96710.PDE3_ST3_14 OPC item have the value;


  
   The image below shows the time of the reading, but is missing the value of  SR_08  SR_09 
     t        


 
 

 
 
 
 
 
 
      
 
    

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值