CANopen是基于CAN通信的应用层协议,主要规划了PDO、SDO、NMT、心跳等功能,CANopen规划了很多行业协议,DS301是所有CANopen协议的基础,DS401、DS402都是在该基础。今天我们主要讲DS401实现。
CANopen 实现了OSI模型中的网络层以上(包括网络层)的协定。CANopen 标准包括寻址方案、数个小的通讯子协定及由设备子协定所定义的应用层。 CANopen 支持网络管理、设备监控及节点间的通讯,其中包括一个简易的传输层,可处理资料的分段传送及其组合。一般而言数据链结层及物理层会用CAN来实作。除了 CANopen 外,也有其他的通讯协定(如EtherCAT)实作 CANopen 的设备子协定。
首先我们要认识一下CANopen的帧格式,11位标准帧被分为功能码+节点号
总的来说RXPDO就是CANopen主站发给CANopen从站的数据,RXPDO1的COB-ID是201h,对应的通信参数是1400h,映射参数是1600h
DS401已经规划好了各个PDO对象所对应的功能
总的来说通过写映射参数1600对应的参数即可
具体还是要拿着成熟的程序来看比较快一点
技术交流德工微信:1845635074