PLC论坛-全力打造可编程控制器专业技术论坛

 找回密码
 注册哦

QQ登录

只需一步,快速开始

微信扫码登录

查看: 48138|回复: 0

CANopen基本原理及其应用(三)——预定义连接集等

[复制链接]
发表于 2024-3-15 10:13:05 | 显示全部楼层 |阅读模式
1、CANopen预定义连接集

为了减小简单网络的组态工作量,CANopen定义了强制性的缺省标识符(CAN-ID)分配表。这些标志符在预操作状态下可用,通过动态分配还可修改他们。CANopen设备必须向它所支持的通讯对象的提供相应的标识符。

缺省ID分配表是基于11位CAN-ID,包含一个4位的功能码部分和一个7位的节点ID(Node-ID)部分



Node-ID由系统集成商定义,例如通过设备上的拨码开关设置。Node-ID范围是1~127(0不允许被使用)。

预定义的连接集定义了4个接收PDO(Receive-PDO),4个发送PDO(Transmit-PDO),1个SDO(占用2个CAN-ID),1个紧急对象和1个节点错误控制(Node-Error-Control)ID。也支持不需确认的NMT-Module-Control服务,SYNC和Time Stamp对象的广播。

CANopen预定义主/从连接集CAN标识符分配表



注意:

◆PDO/SDO 发送/接收是由(slave)CAN节点方观察的。

◆NMT 错误控制包括节点保护(NodeGuarding),心跳报文(Heartbeat)和Boot-up协议。

CANopen标识符分配

ID地址分配表与预定义的主从连接集(set)相对应,因为所有的对等ID是不同的,所以实际上只有一个主设备(知道所有连接的节点ID)能和连接的每个从节点(最多127个)以对等方式通讯。两个连接在一起的从节点不能够通讯,因为它们彼此不知道对方的节点ID。

比较上表的ID映射和CAL的映射,显示了具有特定功能的CANopen对象如何映射到CAL中一般的CMS对象。

CANopen网络中CAN 标识符(或COB-ID)分配3种不同方法:

◆使用预定义的主从连接集。ID是缺省的,不需要配置。如果节点支持,     PDO数据内容也可以配置。

◆上电后修改PDO的ID(在预操作状态),使用(预定义的)SDO在节点      的对象字典中适当位置进行修改。

◆使用CAL DBT服务:节点或从节点最初由它们的配置ID指称。节点ID             可以由设备上的拨码开关配置,或使用CAL LMT服务进行配置。当网络              初始化完毕,并且启动后,主节点首先通过”Connect_Remote_Node”报             文(是一个CAL NMT服务)和每个连接的从设备建立一个对话。一旦这              个对话建立,CAN通讯ID(SDO和PDO)用CAL DBT服务分配好,这需        要节点支持扩展的boot-up

CANopen boot-up过程

在网络初始化过程中,CANopen支持扩展的boot-up,也支持最小化boot-up过程。

扩展boot-up是可选的,最小boot-up则必须被每个节点支持。两类节点可以在同一个网络中同时存在。

如果使用CAL的DBT服务进行ID分配,则节点必须支持扩展boot-up过程。

可以用节点状态转换图表示这两种初始化过程,如图3-3所示。扩展boot-up的状态图在预操作和操作状态之间比最小化boot-up多了一些状态

CANopen最小化boot-up节点状态转换图



注意:

◆图3-3中括号内的字母表示处于不同状态那些通讯对象可以使用。

a. NMT , b. Node Guard , c. SDO , d. Emergency , e. PDO , f. Boot-up

◆状态转移(1-5由NMT服务发起),NMT命令字(在括号中):

1: Start_Remote_node (0x01)

2:Stop_Remote_Node (0x02)

3: Enter_Pre-Operational_State (0x80)

4: Reset_Node (0x81)

5:Reset_Communication (0x82)

6:设备初始化结束,自动进入Pre_Operational状态,发送Boot-up消息

在任何时候NMT服务都可使所有或者部分节点进入不同的工作状态。NMT服务的CAN报文由CAN头(COB-ID=0)和两字节数据组成;第一个字节表示请求的服务类型(‘NMT commandspecifier’),第二个字节是节点ID,或者0(此时寻址所有节点)。

仅支持最小化boot-up的设备叫最小能力设备。最小能力设备在设备初始化结束后自动进入预操作l状态。在这个状态,可以通过SDO进行参数配置和进行COB-ID分配。

设备进入准备状态后,除了NMT服务和节点保护服务(如果支持并且激活的话)外,将停止通讯。(因此‘Stopped’是描述这个状态的一

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|PLC技术网-PLC论坛 ( 粤ICP备17165530号 )|网站地图

GMT+8, 2024-9-17 03:39 , Processed in 0.063143 second(s), 26 queries .

快速回复 返回顶部 返回列表