CAN总线基础知识-CANopen协议介绍

2024-10-13 22:18:21

学习CAN总线基础知识时,会遇到很多不懂的问题,其中CANopen协议作为CAN总线的高层协议,往往是CAN总线入门学习的门槛,涉及的基本概念比较多,也比较抽象,今天凭借广成的CANopen主从站设备,为大家介绍下CANopen协议。

CAN总线基础知识-CANopen协议介绍

2、CANopen 的核心概念是设备对象字典 ( OD: Object Dictionary), 在其它现场总线 ( Profibus, Interbus-S)。系统中也使用这种设备描述形式。注意:对象字典不是 CAL 的一部分,而是在 CANopen 中实现的。

CANopen协议-对象字典OD

1、对象字典( OD: Object Dictionary)是一个有序的对象组;每个对象采用一个 16 位的索引值来寻址,为了允许访问数据结构中的单个元素, 同时定义了一个 8 位的子索引。

CAN总线基础知识-CANopen协议介绍

CANopen协议-CANopen 预定义连接集

1、为了减小简单网络的组态工作量, CANopen 定义了强制性的缺省标识符( CAN-ID)分配表。这些标志符在预操作状态下可用, 通过动态分配还可修改他们。 CANopen 设备必须向它所支持的通讯对象的提供相应的标识符。缺省 ID 分配表是基于 11 位 CAN-ID,包含一个 4 位的功能码部分和一个 7 位的节点 ID(Node-ID)部分。

CAN总线基础知识-CANopen协议介绍

CANopen协议-CANopen标识符分配

1、ID 地址分配表与预定义的主从连接集( set) 相对应, 因为所有的对等 ID 是不同的, 所以实际上只有一个主设备(知道所有连接的节点 ID)能和连接的每个从节点(最多 127 个)以对等方式通讯。两个连接在一起的从节点不能够通讯,因为它们彼此不知道对方的节点 ID。比较上表的 ID 映射和 CAL 的映射, 显示了具有特定功能的 CANopen 对象如何映射到 CAL 中一般的CMS 对象。

2、CANopen 网络中 CAN 标识符(巡綮碣褂或 COB-ID)分配 3 种不同方法: 1.使用预定义的主从连接集。 ID 是缺省的, 不需要配置。 如果节点支持, PDO 数据内容也可以配置。2.上电后修改 PDO 的 ID(在预操作状态), 使用(预定义的) SDO 在节点的对象字典中适当位置进行修改。3. 使用 CAL DBT 服务: 节点或从节点最初由它们的配置 ID 指称。 节点 ID 可以由设备上的拨码开关配置, 或使用 CAL LMT 服务进行配置。 当网络初始化完毕, 并且启动后, 主节点首先通过”Connect_Remote_Node”报文(是一个 CAL NMT 服务) 和每个连接的从设备建立一个对话。一旦这个对话建立, CAN 通讯 ID( SDO 和 PDO)用 CAL DBT 服务分配好, 这需要节点支持扩展的 boot-up

猜你喜欢