CANopen和Modbus的EDS

时间:2014-04-30 13:14:39

标签: modbus opc canopen

我正在开发的设备必须支持CANopen和Modbus(RTU和TCP)通信。是否有任何格式的电子数据表(例如EDS或XDD)可用于定义两者?

我尝试使用一些工具(Vector CANeds和ODVA EZ-EDS)来生成一个兼容两者的简单EDS文件,甚至可以在文本编辑器中手动编辑文件,但每个工具的输出都会出现类似的,但从根本上与另一个不相容。

理想情况下,我想使用CiA XDD格式,因为从我的桌面主应用程序“反序列化”这相对简单。然而,这似乎完全以CANopen为导向。

任何人都可以提供的任何信息,提示,提示或指示都将不胜感激。

1 个答案:

答案 0 :(得分:4)

到目前为止,我提出的最好:

OPC Foundation指定用于定义设备的数据属性,服务,事件等的XML格式(有关详细信息,请参阅OPC Unified Architecture eBook - 映射部分),然后可以通过服务器,为客户端提供对设备支持的远程属性和方法的访问权限。但是,这不是一个直接的解决方案,因为它实际上是第三种替代方案,与EDS和XDD格式完全不兼容。

另一方面,它确实提供了一个标准'我可以用来定义我的设备的格式,我可以用它来定义我的设备,我可以在桌面应用程序中轻松地序列化和删除它,并用于生成对象字典'我的嵌入式应用程序的C源代码。

然后我需要定义一个接口,其中包含用于序列化设备描述对象的方法,并在我的每个Modbus和CANopen程序集中提供该接口的实现。

它需要的工作量比我原先希望的多一点,但这就是我得到的报酬。 : - )