【发布时间】:2022-06-10 21:45:50
【问题描述】:
美好的一天,我是 openCAN 的新手,有几个与 PDO 输入/输出相关的问题。 我从传感器收到以下消息 list of msgs i get from sensor
据我了解,这是 PDO 消息。如何解码它的有效载荷? 我还有一本传感器手册,它代表以下说明,如
instructions from sensor's manual
那么,例如,如何形成传感器获取温度的有效载荷?
【问题讨论】:
美好的一天,我是 openCAN 的新手,有几个与 PDO 输入/输出相关的问题。 我从传感器收到以下消息 list of msgs i get from sensor
据我了解,这是 PDO 消息。如何解码它的有效载荷? 我还有一本传感器手册,它代表以下说明,如
instructions from sensor's manual
那么,例如,如何形成传感器获取温度的有效载荷?
【问题讨论】:
大多数 CANopen 消息根据节点 ID 选择标识符。您的节点 ID 似乎是 44 小时(12 月 68 日)。如果我们从您的标识符中减去 44h,我们会得到:
0x180 = TPDO1 (3 bytes)
0x280 = TPDO2 (3 bytes)
0x380 = TPDO3 (6 bytes)
0x480 = TPDO4 (8 bytes)
0x700 = Heartbeat message
至于有效载荷的含义,您无法从 CAN 侦听器中得知,设备必须记录这一点。通过利用 PDO 映射,它们可能将多个数据项(如 0x2108 事物)存储在单个包中。检查上述 TPDO 的 PDO 映射参数,应在 OD 索引 1800h + 节点 ID 处找到。它应该列出一些位于 0x2000 到 0x5FFF 的内容,这是对象字典的制造商特定区域。
您也可以查看他们的 EDS 文件,它是一个可读的文本文件,应该列出所有默认配置。
【讨论】: