CANopen轻松入门二

[复制链接]
查看94629 | 回复0 | 2024-1-9 09:26:57 | 显示全部楼层 |阅读模式
1、CANopen的预定义报文ID分类:

在CANopen创立之初,即使在CAN总线应用最广泛的汽车电子行业,网络中的CAN节点数量和需要通讯的信息都是比较少的。人们使用CAN取代RS485,主要是看重其可以突发发送的实时性优势,而在多节点、长距离应用中,CAN总线和RS485比起来并无优势,比如同样的波特率下,CAN的通信距离只能达到RS485的0.6-0.8倍,而多节点通信CAN无法进行任意的突发发送,不得不遵循RS485那样的轮询通信机制,否则会导致拥堵,如图4.1所示。就像这个十字路口的汽车,如果车只有10辆,即使没有交通灯,根本不会拥堵。而如果有100辆,如果任意行驶,就会发生严重拥堵。



CAN的突发优势和多借点拥堵

CANopen的创始人是非常了解CAN总线这个特征,所以在设计CANopen时,对其定义为小网络、控制信号的实时通讯:

1报文传输采用CAN标准帧格式。即11bit的ID域,以尽量减小传输时间;



COB-ID

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

3.实时更新的过程数据无需接收方报文应答。即采用生产消费模型,降低总线负载;

4.需要接收方确认的配置参数一般都是采用快速单字传输。即1个报文最多传送1个32字节的参数变量,避免了分帧引起的实时性降低。

以上这些定义都是为了节约时间开销,最大限度保证实时性。同时为了减小简单网络的组态工作量,CANopen定义了强制性的缺省标识符(CAN帧ID)分配表,以减少使用者与维护者的学习时间,快速上手。

2、网络管理与特殊协议报文ID分类

虽然CANopen的通讯发挥了CAN的特色,所有节点通信地位平等,运行时允许自行发送报文,但CANopen网络为了稳定可靠可控,都需要设置一个网络管理主机NMT-Master(NetworkManagement-Master),就像一个交响乐团的指挥家,所有节点的启动、停止都是有他进行指挥,如图



NMT-master就像交响乐指挥家

NMT主机一般是CANopen网络中具备监控的PLC或者PC(当然也可以是一般的功能节点),所以也称为CANopen主站。相对应的其他CANopen节点就是NMT从机(NMT-slaves)。

NMT主机和NMT从机之间通讯的报文就称为NMT网络管理报文。管理报文负责层管理、网络管理和ID分配服务。例如,初始化、配置和网络管理(其中包括节点保护)。网络管理中,同一个网络中只允许有一个主节点、一个或多个从节点,并遵循主从模式。

另外,为了协调各个节点的同步、心跳、时间、错误提示等通讯控制,CANopen还定义了一系列特殊协议(Special protocols)报文。如表所示,为CANopen预定义报文(Pre-defined CAN-IDs)的NMT报文和特殊协议报文。



NMT与特殊协议的CAN-ID定义

CAN-ID就是这类报文的COB-ID,其中读者必须需要记住的是绿色底纹的这些常用的CAN-ID含义,在研发和应用CANopen中,这三类是最为常用的NMT与特殊协议报文。

                  本文章转载自广州致远(原文作者周立功、黄敏思)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则