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(层设定服务)