CAN控制器局域网简介

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
控制器局域网 (CAN)
CAN 和 CANopen 嵌入式解决方案中的串行网络技术
演讲者
赵瑞俊
上海雁德电气技术有限公司 http://www.esd-electronics.cn 著作权所有者:Wilfred Voss of esd electronics, Inc. Dr. Werner Schulze of esd electronics gmbh, Germany
© 2006, esd electronics
Page 8
Fra Baidu bibliotekAN物理层
总线仲裁主要规则: 谁在总线上获胜?
• 在仲裁域中通过判别不同的电位差进行仲裁 • 显性位 = 0, 隐性位 = 1 => 显性位一定会在和隐性位的判别过程中获胜
© 2006, esd electronics
Page 9
总线仲裁原理
Page 17
总线仲裁原理
© 2006, esd electronics
Page 18
数据传输同步
位编码 • 位编码根据“NZR”原则
• 具有最高传输能力 • 位时间上的常量位平 • 位流同步所需的不足信号移动 • 要求“位填充”
© 2006, esd electronics
Page 19
数据传输同步
Page 11
数据帧报文广播
• 节点A传送一个报文 • 节点B, C 和 D 接收到此报文 • 节点B 和 D 接受此报文, 节点C拒绝
© 2006, esd electronics Page 12
远程帧报文请求
• 节点A发送一个远程帧 (请求) • 节点B, C, D 接收报文 • 节点D接受, 节点B & C拒绝
CAN/CANopen应用
• 客车 (多个分散的CAN网络) • 卡车和公共汽车, 工程车, 农用车 • 机器人, 运动控制应用 • 客货列车 (制动控制, 拖车通讯) • 飞机 (空调, 座位调节) • 电梯 (Otis) • 楼宇技术 (照明和门禁系统, 传感器, 等) • 医疗器械 (X光, CT扫描, 等) • 家用电器 (咖啡机, 洗衣机, 等) • 空间技术 (人造卫星) (SAE J1939协议) • 半导体工业 (Wafer Handlers, 等)
© 2006, esd electronics
Page 2
什么是CAN ?
• 完整的应用于实时系统的串行数据通讯总线 • 高性能、高可靠设计 • 高达1 Mbit/sec的数据传输率 • 出色的错误检测和故障界定能力 • 最初由Bosch公司开发,并应用于汽车行业 • 已被广泛应用于其他工业自动化及控制领域 • 符合国际标准: ISO 11898 • 工业自动化领域内CAN独立厂商协会:CiA
© 2006, esd electronics
Page 5
CiA – CAN in Automation
• 国际用户及厂商协会 • 开发制定CAN标准及CAN基础上的高层协议 • 协会所有活动基于CiA成员利益 http://www.can-cia.org
CAN会刊 订阅方式: http://www.can-cia.org/newsletter/
© 2006, esd electronics
Page 26
总线拓扑
ISO 11898标准总线拓扑
© 2006, esd electronics
Page 27
总线层
ISO 11898标准总线层
© 2006, esd electronics
Page 28
总线链接
© 2006, esd electronics
总线仲裁主要规则: 优先权 • 总线在发送报文后出现一段时间的空闲状态 • 最低二进制标识符的节点发送报文 (最高优先级) 仲裁获胜并继续发送 => 其他节点变为接收状态 • 仲裁失败的节点继续进入新的仲裁,直至总线重新处于空闲状态 • 尽管CAN是一条总线系统, 但不会出现像如Ethernet冲突检测下中止信号传输的 情况 • CAN是一种冲突避免总线: 最重要的(最高优先级)报文无需延时或复制即在总线上 处于优先
© 2006, esd electronics
Page 6
CAN主要特点
• 多主总线 • 报文广播 • 报文优先权 (无节点标识符) • 最大为8字节的数据长度 • 最大为1 Mbit/sec的数据传输率 • 出色的错误检测和故障界定
© 2006, esd electronics
Page 7
使用CAN的优点
主要优点: • 由单芯片实现物理层和数据链路层 • 如您熟悉基于RS-232, RS-422甚至 RS-485的串行协议安装,您将无师自通 • 无需软件工程师参与编写协议功能
ISO 11898 7协议层参考模式
• 低成本执行 • 可靠性高, 错误预防 • 全世界范围通用 • CAN为您省钱!
请注意! 无论何时您如尝试在数据链路层和应用层间增加软件功能,您只需增加可即插即用的更高层协议功能即 可,如CANopen。
© 2006, esd electronics
Page 34
CANopen的其他特点
• 提供标准协议服务 • 协议除CAN报文标识符外还支持节点标识符 • 网络中最多可达127个节点, 每个节点有一个独一的标识符 • 全方位的开放功能 • 可即用的源代码 • 非常低的资源/内存占用 CANopen从站~10…20k ROM, <1k RAM CANopen主站~20…30k ROM, ~1k RAM
© 2006, esd electronics
Page 1
什么是CAN ?
• 嵌入式解决方案中的串行网络技术
• 最初为汽车业高可靠性要求的通讯要求开发设计 • 已经成为工业自动化领域通用网络总线
• 在微处理器间建立起来的网络技术 • 为高速及实时应用要求提供良好的配置 • 通讯完整,可靠 • CAN集成电路芯片生产厂家有:Motorola, Philips, Intel, Infineon, 等 • 2003年CAN集成电路芯片的销售额为3.55亿欧元
© 2006, esd electronics
Page 31
高层协议
为什么要有高层协议?
• 多于8字节的数据传输 • 嵌入系统要求在主/从配置基础上的特有通讯模式 • 网络管理 (网络启动, 节点监测, 节点同步, 等)
© 2006, esd electronics
Page 32
高层协议
CANopen
© 2006, esd electronics Page 13
远程帧报文请求
• 节点D发送请求报文 • 节点A, B, C接收请求报文 • 节点A, B接受请求报文, 节点C拒绝
© 2006, esd electronics Page 14
报文帧格式
• 数据帧
• 远程帧
• 错误/过载帧
© 2006, esd electronics
© 2006, esd electronics
Page 24
故障界定
CAN节点错误状态
© 2006, esd electronics
Page 25
总线媒介
• 物理媒体必须支持 “显性” 和 “隐性” 总线层 显性位始终优先于隐性位,特别是在总线仲裁中
• 屏蔽双绞线避免信号反射 • 可选项: 使用光隔
错误检测
错误帧 基本错误帧
更多 “现实的” 错误帧
错误修复时间 = 错误标志 + 错误界定符 + 间歇域 = 12 + 8 + 3 = 23位
© 2006, esd electronics
Page 23
故障界定
• 保证网络的正常运行,即便遇到故障节点产生的不间断的错误情况 • 辨别临时节点错误和永久节点错误 • 从总线上标识和移除(自回收)故障节点
Page 15
报文帧格式
© 2006, esd electronics
Page 16
扩展CAN协议
• 标准格式: 11位报文标识符
• 扩展格式: 29位报文标识符
• 两种格式, 标准格式和扩展格式, 可并存于同一条CAN总线 • 两种格式由 “标识符扩展位” (IDE)区分
© 2006, esd electronics
• 适用于嵌入式应用 • 最初为运动控制设计 • 由CiA用户组研发及维护 • 厂商的独立协议 http://www.can-cia.org
DeviceNet
• 适用于工业应用 (floor automation) • 由Allen Bradley/Rockwell研发 • 由开放式DeviceNet商家协会维护 • 由Allen Bradley/Rockwell掌握行业标准 http://www.odva.org
© 2006, esd electronics
Page 35
CANopen参考模式
© 2006, esd electronics
Page 36
设备定义
定义 DS-401 DS-402 DS-403 DS-404 DS-405 DS-406 DS-407 DS-408 DS-409 DS-410 DS-412 DS-413 DS-414 DS-415 DS-416 DS-417 DS-418 DS-419 DS-420 装置 一般I/O模块 传动及运动控制 未分配 测量装置及闭环控制器 依据IEC 61131-3可编程器 编码器 公共交通 – 乘客信息系统 流体力学技术 – 液压传动及比例阀 汽车门控 磁偏针 医疗器械 卡车用网关 编织机 路建机械 楼宇门禁 提升控制系统 蓄电池 充电器 挤压装置
Page 29
最大总线长度
© 2006, esd electronics
Page 30
CAN控制器芯片
CAN应用的两种不同形式: • CAN控制器单片机 • CAN集成控制器的微处理器
许多主流半导体厂商, 如Motorola, Philips, Intel, Infineon, 等等, 销售CAN芯片 大多数半导体厂商在他们的微处理器设计中集成了通用非同步收发传输器 (UART), 来支持RS232/485的串行通讯, 如今趋向于用集成CAN的方式来替代。
SAE J 1939
• 汽车网络通讯 (卡车, 公共汽车, 等) • 行业标准由SAE制定 http://www.sae.org © 2006, esd electronics Page 33
什么是CANopen ?
• 基于CAN的高层协议 • 保留所有CAN的特征: 简易, 高可靠性, 极短的反应/错误修复时间 • 主/从配置, 支持多主结构和从站间直接通讯 supported • 最初为运动控制设计 • “开放”系统, 无专利 • 支持开关量I/O, 模拟量I/O, 运动控制其, 传感器, 执行器, 等 • 所有CANopen装置使用 “同一种语言” • 最终目标: 制造商的独立性, 装置可互换
© 2006, esd electronics
Page 3
CAN站点的业绩
CAN站点销售量(百万计):
1998 1999 2000 2001 2002 2003 31 57 120 203 273 355 2007年CAN站点总量将达到7亿
© 2006, esd electronics Page 4
位填充 • 发送器在相同的报文两端5个连续位后填入一个补充位 (“填充位”) • 接收器滤波补充位
1. 2. 3.
需传输的位序 总线上位填充后的传输位序 滤波填充位后接收器上的位序
© 2006, esd electronics
Page 20
错误检测
• 位监测 每个传输节点监测在总线上的电平,对比传输报文电平,快速检测整个总线及本地错 误提供 • 填充错误 在位填充部分的相同两端,多于5位 • CRC错误 对比接收到的CRC序列以及计算过的。对本地接收器错误进行检测。 • 格式错误 非法的固定位域格式 • 应答错误 传输报文接收到一个应答错误。应答域只确认成功的传输。用于错误的界定。
© 2006, esd electronics
Page 10
报文帧
• 数据帧 – 向CAN总线播送一个报文
• 远程帧 – 要求报文传输
请记住: 数据帧的显性RTR位优先于远程帧的隐性RTR位,如果两者在同一位时间 内传输。 • 错误帧 – 信号错误条件
© 2006, esd electronics
© 2006, esd electronics
Page 21
错误检测
错误检测分析 CAN报文未检测故障概率
若: • 每 0.7秒发生一个位错误 • 500 kBit/秒 • 每天工作8小时 • 全年无休
遗漏错误概率: 每一千年一个未检测错误
© 2006, esd electronics
Page 22
相关文档
最新文档