CANopen DS301 - 应用层与通信协议规范
基本信息
- 标准号: CiA DS 301
- 版本: Version 4.02
- 日期: 2002年2月13日
- 发布组织: CAN in Automation e.V. (CiA)
- 页数: 135页
- 原文路径:
/日常学习资料/CAN OPEN 协议/DS301.pdf
文档概述
本文档是CANopen通信协议的核心规范,定义了CAN应用层(CAL - CAN Application Layer)的通信机制。CANopen是基于CAN总线的工业现场总线协议,广泛应用于自动化控制、机电一体化等领域。
核心内容
1. 参考模型与设备模型
- OSI七层模型映射: CANopen覆盖应用层,底层依赖CAN数据链路层和物理层
- 对象字典(Object Dictionary): 设备模型的核心,通过索引和子索引组织所有设备参数
- 三层关系模型:
- Master/Slave: 主从关系
- Client/Server: 客户端/服务器关系
- Producer/Consumer: 生产者/消费者关系
2. 物理层与数据链路层
- 收发器: 标准CAN收发器
- 比特率设置: 支持5Kbps至1Mbps,推荐8段配置表
- CAN帧类型: 数据帧、远程帧
3. 应用层通信对象
进程数据对象(PDO)
- 用于实时数据交换
- 支持循环传输和事件触发传输
- 分为TPDO(发送)和RPDO(接收)
服务数据对象(SDO)
- 用于非实时参数访问
- 支持客户端-服务器模式
- 支持块传输(Block Transfer)提高大数据传输效率
同步对象(SYNC)
- 用于网络时间同步
- 可配置周期或事件触发
时间戳对象(TIME)
- 提供高精度时间戳(微秒级)
紧急对象(EMCY)
- 错误报警机制
- 包含错误寄存器和各错误类别
网络管理(NMT)
- 节点状态管理
- 启动/停止/复位操作
4. 对象字典结构
| 索引范围 | 用途 |
|---|---|
| 0000h | 未使用 |
| 0001-001Fh | 静态数据类型定义 |
| 0020-003Fh | 复杂数据类型定义 |
| 0040-005Fh | 制造商特定数据类型 |
| 0060-0FFFh | 保留 |
| 1000-1FFFh | 通信协议特定对象 |
| 2000-5FFFh | 制造商特定区域 |
| 6000-9FFFh | 设备规范特定区域 |
| A000-FFFFh | 保留 |
5. 预定义连接集(Pre-defined Connection Set)
定义了标准通信对象标识符(COB-ID),确保不同厂商设备的互操作性。
6. 状态机
NMT状态机包含4个状态:
- Initialisation(初始化)
- Pre-operational(预运行)
- Operational(运行)
- Stopped(停止)
应用领域
- 工业自动化
- 机电一体化设备
- 过程控制
- 楼宇自动化
- 交通运输
相关标准
- CiA DS 201-207: 各类设备规范框架
- CiA DS 302: 可编程设备框架
- CiA DS 401-407: 各类设备应用协议
- CiA DS 305: LSS(层设定服务)