logo资料库

基于CAN总线的CANopen协议讲座(一).pdf

第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
资料共9页,剩余部分请下载后查看
1. 引言
2. CAN总线特点
3. CAN控制器介绍
4. CAN总线网络结构
5. CAN总线应用层协议
6. 结语
7. 参数资料
基于 CAN 总线的 CANopen 协议讲座(一) CAN 总线简介 AN01010101 Date: 2009/11/14 V1.00 产品应用笔记 类别 关键词 摘 要 内容 CANopen CAN 总线 CAN-bus 现场总线 总线协议 CANopen 协议以其成熟的结构、抗干扰能力强等优势越来越 多的应用到各种工业活动中,也成为各种行业的标准,已经 成为未来现场总线发展的一种趋势。 Application Note 广州致远电子有限公司
广州致远电子有限公司 基于 CAN 总线的 CANopen 协议 CAN 总线介绍 修订历史 版本 V1.00 日期 2009/11/14 原因 创建文档 产品应用笔记 ©2008 Guangzhou ZHIYUAN Electronics CO., LTD. i
广州致远电子有限公司 基于 CAN 总线的 CANopen 协议 CAN 总线介绍 销售与服务网络(一) 广州周立功单片机发展有限公司 地址:广州市天河北路 689 号光大银行大厦 12 楼 F4 邮编:510630 电话:(020)38730916 38730917 38730972 38730976 38730977 传真:(020)38730925 网址:www.zlgmcu.com 广州专卖店 地址:广州市天河区新赛格电子城 203-204 室 电话:(020)87578634 87569917 传真:(020)87578842 北京周立功 地址:北京市海淀区知春路 113 号银网中心 A 座 1207-1208 室 (中发电子市场斜对面) 电话:(010)62536178 62536179 82628073 传真:(010)82614433 杭州周立功 地址:杭州市天目山路 217 号江南电子大厦 502 室 电话:(0571) 28139611 28139612 28139613 28139615 28139616 28139618 传真:(0571) 28139621 深圳周立功 地址:深圳市深南中路 2070 号电子科技大厦 C 座 4 楼 D 室 电话:(0755)83781788(5 线) 传真:(0755)83793285 上海周立功 地址:上海市北京东路 668 号科技京城东座 7E 室 电话:(021)53083452 53083453 53083496 传真:(021)53083491 南京周立功 地址:南京市珠江路 280 号珠江大厦 2006 室 电话:(025)83613221 83613271 83603500 传真:(025)83613271 重庆周立功 地址:重庆市石桥铺科园一路二号大西洋国际大厦 (赛格电子市场)1611 室 电话:(023)68796438 68796439 传真:(023)68796439 成都周立功 地址:成都市一环路南二段 1 号数码同人港 401 室 (磨子桥立交西北角) 电话:(028)85439836 85437446 传真:(028)85437896 武汉周立功 地址:武汉市洪山区广埠屯珞瑜路 158 号 12128 室 (华中电脑数码市场) 电话:(027)87168497 87168297 87168397 传真:(027)87163755 西安办事处 地址:西安市长安北路 54 号太平洋大厦 1201 室 电话:(029)87881296 83063000 87881295 传真:(029)87880865 产品应用笔记 ©2008 Guangzhou ZHIYUAN Electronics CO., LTD. ii
广州致远电子有限公司 基于 CAN 总线的 CANopen 协议 CAN 总线介绍 销售与服务网络(二) (楼宇自动化事业部) 广州致远电子有限公司 地址:广州市天河区车陂路黄洲工业区 3 栋 2 楼 邮编:510660 传真:(020)38601859 网址:www.embedtools.com (嵌入式系统事业部) www.embedcontrol.com (工控网络事业部) www.ecardsys.com 技术支持: CAN-bus: 电话:(020)22644381 22644382 22644253 邮箱:can.support@embedcontrol.com MiniARM: 电话:(020)28872684 28267813 邮箱:miniarm.support@embedtools.com 无线通讯: 电话:(020) 22644386 邮箱:wireless@embedcontrol.com 编程器: 电话:(020)22644371 邮箱:programmer@embedtools.com ARM 嵌入式系统: 电话:(020)28872347 28872377 22644383 22644384 邮箱:arm.support@zlgmcu.com iCAN 及数据采集: 电话:(020)28872344 22644373 邮箱:ican@embedcontrol.com 以太网: 电话:(020)22644380 22644385 邮箱:ethernet.support@embedcontrol.com 串行通讯: 电话:(020)28267800 22644385 邮箱:serial@embedcontrol.com 分析仪器: 电话:(020)22644375 28872624 28872345 邮箱:tools@embedtools.com 楼宇自动化: 电话:(020)22644376 22644389 28267806 邮箱:mjs.support@ecardsys.com mifare.support@zlgmcu.com 销售: 电话:(020)22644249 22644399 22644372 22644261 28872524 28872342 28872349 28872569 28872573 38601786 维修: 电话:(020)22644245 产品应用笔记 ©2008 Guangzhou ZHIYUAN Electronics CO., LTD. iii
广州致远电子有限公司 基于 CAN 总线的 CANopen 协议 CAN 总线介绍 目 录 1. 引言...........................................................................................................................1 2. CAN总线特点 ...........................................................................................................1 3. CAN控制器介绍 .......................................................................................................2 4. CAN总线网络结构 ...................................................................................................3 5. CAN总线应用层协议 ...............................................................................................4 6. 结语...........................................................................................................................4 产品应用笔记 ©2008 Guangzhou ZHIYUAN Electronics CO., LTD. i
广州致远电子有限公司 基于 CAN 总线的 CANopen 协议 CAN 总线介绍 1. 引言 随着汽车工业的发展,20 世纪 80 年代中期,率先由 Bosch 公司研发出新一代的汽车总 线即控制器局域网(Controller Area Network,简称:CAN 总线或 CAN-bus),CAN 总线具 有布线简单、典型的总线型结构、可最大限度的节约布线与维护成本、稳定可靠、实时、抗 干扰能力强、传输距离远等特点,这些都决定了 CAN 总线必定是一种成功的总线。一经推 出不仅在汽车行业得到广泛的推广与应用,在诸如航天、电力、石化、冶金、纺织、造纸等 领域也得到广泛应用。在自动化仪表、工业生产现场、数控机床等系统中也越来越多的使用 了 CAN 总线,CAN 总线在未来的发展中依然充满活力,有着巨大的发展空间。 由于 CAN 总线本身只定义 ISO/OSI 模型中的第一层(物理层)和第二层(数据链路层), 通常情况下 CAN 总线网络都是独立的网络,所以没有网络层。在实际使用中,用户还需要 自己定义应用层的协议,因此在 CAN 总线的发展过程中出现了各种版本的 CAN 应用层协 议,现阶段最流行的 CAN 应用层协议主要有 CANopen、DeviceNet 和 J1939 等协议。 本系列文章主要介绍 CAN 总线、基于 CAN 总线的应用层协议—CANopen,以及 CANopen 设备的应用及组网方式。本文主要介绍 CAN 总线相关的概念及网络结构。 2. CAN总线特点 CAN总线采用差分信号传输,通常情况下只需要两根信号线(CAN-H和CAN-L)就可 以进行正常的通信。在干扰比较强的场合,还需要用到屏蔽地即CAN-G(主要功能是屏蔽 干扰信号),CAN协议推荐用户使用屏蔽双绞线作为CAN总线的传输线。在隐性状态下, CAN-H与CAN-L的输入差分电压为 0V(最大不超过 0.5V),共模输入电压为 2.5V。在显 性状态下,CAN-H与CAN-L的输入差分电压为 2V(最小不小于 0.9V),如下图 1所示。 U 压 电 线 总 VCAN-L VCAN-H Vdiff 平均 电压 隐性位 显性位 隐性位 时间t 图 1 CAN 总线位电平特点 其物理传输层详细和高效的定义,使得 CAN 总线具有其它总线无法达到的优势,注定 其在工业现场总线中占有不可动摇的地位,CAN 总线通信主要具有如下所示的优势和特点。  CAN 总线上任意节点均可在任意时刻主动的向其它节点发起通信,节点没有主从 之分,但在同一时刻优先级高的节点能获得总线的使用权,在高优先级的节点释放 总线后,任意节点都可使用总线;  CAN 总线传输波特率为 5Kbps~1Mbps,在 5Kbps 的通信波特率下最远传输距离可 以达到 10Km,即使在 1Mbps 的波特率下也能传输 40m 的距离。在 1Mbps 波特率 下节点发送一帧数据最多需要 134μs;  CAN 总线采用载波监听多路访问、逐位仲裁的非破坏性总线仲裁技术。在节点需 要发送信息时,节点先监听总线是否空闲,只有节点监听到总线空闲时才能够发送 产品应用笔记 ©2008 Guangzhou ZHIYUAN Electronics CO., LTD. 1
广州致远电子有限公司 基于 CAN 总线的 CANopen 协议 CAN 总线介绍 数据,即载波监听多路访问方式。在总线出现两个以上的节点同时发送数据时, CAN 协议规定,按位进行仲裁,按照显性位优先级大于隐性位优先级的规则进行 仲裁,最后高优先级的节点数据毫无破坏的被发送,其它节点停止发送数据(即逐 位仲裁无破坏的传输技术)。这样能大大的提高总线的使用效率及实时性;  CAN 总线所挂接的节点数量主要取决于 CAN 总线收发器或驱动器,目前的驱动器 一般都可以使同一网络容量达到 110 个节点。CAN 报文分为两个标准即 CAN2.0A 标准帧和 CAN2.0B 扩展帧,两个标准最大的区别在于 CAN2.0A 只有 11 位标识符, CAN2.0B 具有 29 位标识符;  CAN 总线定义使用了硬件报文滤波,可实现点对点及点对多点的通信方式,不需 要软件来控制。数据采用短帧发送方式,每帧数据不超过 8 字节,抗干扰能力强, 每帧接收的数据都进行 CRC 校验,使得数据出错机率极大限度的降低。CAN 节点 在错误严重的情况下具有自动关闭的功能,避免了对总线上其它节点的干扰;  CAN 总线通信介质可采用双绞线、同轴电缆或光纤,选择极为灵活。可大大节约 组网成本。 3. CAN控制器介绍 随着 CAN 总线不断的发展壮大,符合 CAN2.0A 和 CAN2.0B 协议的独立芯片越来越多。 如 NXP 公司推出的 SJA1000 及 SJA1000F,可以直接与普通单片机组合,使该单片机具有 CAN 通信的能力。随着 CAN 需求的日益增大,芯片厂商也把 CAN 控制器直接集成到芯片 内部,例如 NXP 公司的 LPC2119、LPC2294、LPC2378 等。以下主要以 LPC2378 的集成 CAN 控制器为例,对 CAN 控制器作一个介绍。 LPC2378 CAN控制器结构如图 2所示。该控制器是一个带有发送和接收缓冲器的串行 接口,但它并不含有验收过滤器。验收过滤器是一个独立的模块,能够对所有CAN通道进 行CAN标识符过滤。 APB 总线 接口管理逻辑 CAN内核模块 错误管理逻辑 TX RX CAN 收发器 VIC 发送缓冲器 1、2 和3 通用状态寄存器 位时序逻辑 接收滤波器 接收缓冲器 1和2 位流处理器 图 2 LPC2378 CAN 控制器结构 LPC2378 CAN 控制器工作流程主要分为发送过程和接收过程。  发送过程 CAN控制器是完全受处理器控制,CPU通过内部总线向CAN控制器的发送寄存器里填 写需要发的数据,然后启动CAN控制器的发送使能,发送的数据分别经过位流管理器(变 成在总线上发送的二进制码)、错误管理逻辑(负责检测总线状态及发送是否出现错误)及 产品应用笔记 ©2008 Guangzhou ZHIYUAN Electronics CO., LTD. 2
广州致远电子有限公司 基于 CAN 总线的 CANopen 协议 CAN 总线介绍 位时序逻辑(管理数据在总线上的发送时序)、CAN收发器(负责把位流数据转换成CAN 总线够传输的差分电平),这样就完成了一帧CAN数据的发送,如图 3所示。 ARM7 处理器 内部总线 CAN中断 向量和 CAN通用 状态寄 存器 内部总线 发送 缓冲 器 位流 管理 器 错误管理 逻辑及位 时序逻辑 TX RX CAN 收发 器 CAN内核模块 CAN控制器 图 3 发送过程 s u b - N A C  接收过程 CAN数据的接收与CAN数据的发送是一个相反的过程,如图 4所示。当CAN收发器检 测到CAN总线上有数据时,CAN收发器把CAN总线上的差分信号转换成位流数据,经过错 误管理器及位时序逻辑单元对位数据流和时序进行检查,再经过位流管理器把位流数据转换 成字节数据并存放到接收缓冲器中,当一帧数据接收完了之后则由接收缓冲器产生数据接收 中断(通知CPU已经接收到一帧新数据),并将产生的各种状态通过改变状态寄存器的值来 表示。 内部总线 ARM7 处理器 CAN中断 向量和 CAN通用 状态寄 存器 内部总线 接送 缓冲 器 位流 管理 器 错误管理 逻辑及位 时序逻辑 TX RX CAN 收发 器 CAN内核模块 CAN验收过 滤器 CAN控制器 图 4 接收送过程 s u b - N A C 以上主要介绍 LPC2378 CAN 工作流程,CAN2.0A/B 标准协议在 CAN 控制器中都得以 实现,用户只需要操作相关的 CAN 寄存器就可以控制 CAN 控制器动作(控制器的具体操 作请参考 LPC2378 数据手册),因此可以大大提高 CAN 节点的开发时间,提高工作效率。 4. CAN总线网络结构 作为一个总线型网络,其结构如图 5所示,其组网与维护相当方便。CAN总线具有在 线增减设备,即总线在不断电的情况下也可以向网络中增加或减少节点。一条总线最多可以 容纳 110 个节点,通信波特率为 5Kbps~1Mbps,在通信的过程中要求每个节点的波特率保 持一致(误差不能超过 5%),否则会引起总线错误,从而导致节点的关闭,出现通信异常。 节点1 节点2 节点3 CAN总线 节点4 节点5 节点6 节点7 产品应用笔记 ©2008 Guangzhou ZHIYUAN Electronics CO., LTD. 3
分享到:
收藏