CANopen笔记

        1、CANopen协议通常分为用户应用层、对象字典及通信三个部分。其中最为核心的是对象字典,描述了应用对象和CANopen报文之间的关系。CANopen通信是关键部分,其定义了CANopen协议通信规则以及与CAN控制器驱动之间对应关系。

        2、CANopen的预定义报文ID分类

        ※ 报文传输采用CAN标准帧格式(11bit ID域),以尽量减少传输时间。

        ※ 网络控制报文均采用最小字节数。比如心跳报文,只有1个字节数据。

        PDO属于过程数据,即单向传输,无需接收节点来回应CAN报文来确认,从通讯属于上来说属于“生产消费”模型。

        而SDO属于服务数据,有制定被接受节点的地址(Node-ID),并且需要制定的接收节点回应CAN报文来确认已经接收。这种通讯方式属于常见的“服务器客户端”的通讯模型,即我们通常所说的轮询式。

        由于需要区分每个CANopen节点的输入和输出,PDO分为TPDO(发送PDO)和RPDO(接收PDO),发送和接收都是以CAN从节点作为参考。

5.对象字典OD

        所谓的对象字典就是一个有序的对象组,描述了CANopen节点的所有参数,包括通讯数据的存放位置也列入其索引。

        CANopen协议的核心描述子协议是DS301,其中包括了CANopen协议应用层及通信结构描述,其他的协议子协议都是对DS301协议秒速文本的补充与扩展。在不同的应用行业都会起草一份CANopen设备自协议,子协议编号一般是DS4xx。

6.网络管理NMT与CANopen主站

        每个CANopen从节点的CANopen协议栈中,必须具备NMT管理的相应代码,这事节点具备CANopen协议的最基本的要素。

6.1 节点状态

        初始化、应用层复位、预操作状态、操作状态、停止状态。

6.2 NMT节点上线报文

        为了提示主站它已经加入网络(便于热插拔),或者避免与其他从站Node-ID冲突。

6.3 NMT节点状态与心跳报文

        为了监控CANopen节点是否在线与目前的节点状态。

6.4 NMT节点守护

        早期应用中,还有一种可以通过轮询模式见识从站状态的节点守护模式,它与心跳报文模式二者不能并存。

6.5 NMT 节点状态切换命令

        NMT网络管理中,最核心的就是NMT节点状态切换命令,这是NMT主站所进行网络管理的“命令”报文。使用者必须牢记这些命令。

7.过程数据对象

7.1PDO的CAN-ID定义

        TPDO和RPDO分别有4个数据对象,每种数据对象就是一条CAN报文封装,这些都是数据手法的容器。

        

        

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值