1 / 97

现场总线控制系统

现场总线控制系统. 第 5 章、 CAN 总线通信技术 5.1 概述. 5.1.1 CAN 的发展概况 现代社会对汽车的要求不断提高,这些要求包括:极高的主动安全性和被动安全性;乘坐的舒适性;驾驶与使用的便捷和人性化;尤其是低排放和低油耗的要求等。 在汽车设计中运用微处理器及其电控技术是满足这些要求的最好方法,而且已经得到了广泛的运用。目前这些系统有: ABS (防抱系统)、 EBD (制动力分配系统) 、 EMS (发动机管理系统)、多功能数字化仪表、主动悬架、导航系统、电子防盗系统、自动空调和自动 CD 机等。. 5.1.1 CAN 的发展概况.

elisa
Download Presentation

现场总线控制系统

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 现场总线控制系统

  2. 第5章、CAN总线通信技术5.1 概述 5.1.1 CAN的发展概况 • 现代社会对汽车的要求不断提高,这些要求包括:极高的主动安全性和被动安全性;乘坐的舒适性;驾驶与使用的便捷和人性化;尤其是低排放和低油耗的要求等。 • 在汽车设计中运用微处理器及其电控技术是满足这些要求的最好方法,而且已经得到了广泛的运用。目前这些系统有:ABS(防抱系统)、EBD(制动力分配系统)、EMS(发动机管理系统)、多功能数字化仪表、主动悬架、导航系统、电子防盗系统、自动空调和自动CD 机等。

  3. 5.1.1 CAN的发展概况 • 这些系统由多个电控单元相互连接而成,可分为控制器、传感器、执行器等。同时各个系统之间也互相连接,进行着越来越多的数据交换。这样就需要使用大量的线束和插接器来实现互连,进行它们之间的数据交换。随着汽车电子技术的不断发展,这种需求的增长是惊人的(如图)。

  4. 5.1.1 CAN的发展概况 • 由于线束和插接器的数量不断增加,整车电子系统的复杂程度愈来愈高,其可靠性将难以保证,故障率会提高,维修会更加困难。 • 为了满足汽车内部信息交换量急剧增加的要求,有必要使用一种实现多路传输方式的车载网络系统。这种网络系统采用串行总线结构,通过总线信道共享,减少线束的数量。 • 车载网络除了要求采用总线拓扑结构方式外,必须具有极好的抗干扰能力;极强的差错检测和处理能力;满足信息传输实时性要求;同时具备故障的诊断和处理能力等。另外考虑到成本因素,要求其控制接口结构简单,易于配置。

  5. 5.1.1 CAN的发展概况 • 20世纪80年代,Bosch的工程人员开始研究用于汽车的串行总线系统,因为当时还没有一个网络协议能完全满足汽车工程的要求。参加研究的还有Mercedes-Benz公司、Intel公司,还有德国两所大学的教授。 • 1986年, Bosch在SAE(汽车工程人员协会)大会上提出了CAN • 1987年,INTEL就推出了第一片CAN控制芯片—82526;随后Philips半导体推出了82C200。 • 1993年,CAN的国际标准ISO11898公布 • 从此CAN 协议被广泛的用于各类自动化控制领域。

  6. 5.1.1 CAN的发展概况 • 1992年,CIA(CAN in Automation)用户组织成立,之后制定了第一个CAN应用层“CAL”。 • 1994年开始有了国际CAN学术年会(ICC)。 • 1994年美国汽车工程师协会以CAN为基础制定了SAEJ1939标准,用于卡车和巴士控制和通信网络。 • 到今天,几乎每一辆欧洲生产的轿车上都有CAN;高级客车上有两套CAN,通过网关互联;1999年一年就有近6千万个CAN控制器投入使用;2000年销售1亿多CAN的芯片;2001年用在汽车上的CAN节点数目超过1亿个 。 • 但是轿车上基于CAN的控制网络至今仍是各大公司自成系统,没有一个统一标准。

  7. 5.1.1 CAN的发展概况 • 基于CAN的应用层协议应用较通用的有两种:DeviceNet(适合于工厂底层自动化) 和 CANopen(适合于机械控制的嵌入式应用)。 • 任何组织或个人都可以从DeviceNet供货商协会(ODVA)获得DeviceNet规范。购买者将得到无限制的、真正免费的开发DeviceNet产品的授权。 • DviceNet自2002年被确立为中国国家标准以来,已在冶金、电力、水处理、乳品饮料、烟草、水泥、石化、矿山等各个行业得到成功应用,其低成本和高可靠性已经得到广泛认同。

  8. 5.1.2 CAN的性能特点 • 有专门的国际标准ISO11898 。 • 任一节点可在任一时刻主动发送。 • 报文以标识符分为不同的优先级,可满足不同的实时性要求。优先级最高的报文保证134us内得到传输。 • 非破坏性总线仲裁技术,大大节省了总线冲突的仲裁时间。 • 通过对报文滤波可实现点对点、一点对多点和全局广播等多种传送方式。 • 速率最高可达1Mbps,最远可达10km • 节点数可达110个,标识符几乎不受限制

  9. 5.1.2 CAN的性能特点 • 短帧结构,传输时间短,受干扰概率低,适于工业环境 • 每帧信息都采用CRC校验及其他检错措施,数据出错率极低。 • 通信介质选择灵活(双绞线、同轴电缆或光纤) • 错误严重情况下自动关闭输出,保证不影响总线上其他节点通信。 • 性价比高,器件容易购置,节点价格低。 • 开发技术容易掌握,能充分利用现有的单片机开发工具。

  10. 5.1.3 位数值表示和通信距离 • “显性”位0和“隐性”位1 • 若总线上有两个以上驱动器同时分别发送“0”和“1”,其结果是总线数值为显性“0”。

  11. CAN总线上两个节点间的最大距离

  12. 5.2 CAN技术规范 • 1991年9月BOSCH公司发布了CAN技术规范2.0,该技术规范包括A和B两部分。 • 2.0A给出了CAN报文的标准格式 • 2.0B给出了标准的和扩展的两种报文格式 • 1993年11月ISO正式将它颁布为:道路交通工具-数据信息交换-高速通信控制器局域网标准ISO11898。 • 2.0B完全兼容2.0A。所以我们介绍2.0B。

  13. 5.2.1 基本概念 • 位速率 在一个给定的CAN系统里,位速率是唯一且固定的 • 远程数据请求 通过发送远程帧,需要数据的节点可以请求另一节点发送相应数据帧 • 仲裁 当总线开放时任何单元均可开始发送报文,运用非破坏性逐位仲裁规则解决潜在冲突:在标识符(仲裁区)发送期间,每个发送器都监视总线上当前的电平,并与它发送的电平进行比较,如果相等则继续发送,如果发送一个隐性位(1)而检测到的是一个显位(0),那么此节点失去仲裁,立即停止后续位的发送。仲裁区值最小的竞争者将赢得仲裁。

  14. 5.2.1 基本概念——标识符的逐位仲裁 显性 失去仲裁 隐性 节点1 节点2 线上可见

  15. 5.2.2 依据OSI模型的CAN的分层结构 逻辑链路子层LLC 接收滤波 超载通知 恢复管理 监控器 数据链路层 介质访问控制子层MAC 数据包装/解包 帧编码 介质访问管理 错误监测 出错标定 应答 串并转换 故障界定 位编码/解码 位定时 同步 驱动器接收器特性 物理层 总线故障管理

  16. 5.2.3 报文传送及其帧结构5.2.3.1 帧格式和帧类型 • 标准帧11位标识符 • 扩展帧29位标识符 • 帧类型 数据帧、远程帧、错误帧和过载帧 • 编码规则 1)位填充:发送器监视发送位流,连续5个相同位便自动插入一个补码位。(错误帧和过载帧以及帧结束标志不执行位填充) 2)采用不归零(NRZ)编码

  17. 5.2.3.2 数据帧 帧间空间 数据帧 帧间空间 • 由7个不同的场组成。数据场长度可为0 • CAN2.0B存在标准和扩展两种帧格式 • 为了设计简单,可以对标准格式执行部分扩展,不一定要完全扩展 • 可以用整个标识符进行报文滤波,也可以把标识符屏蔽一部分进行报文滤波 仲裁场 控制场 数据场 CRC场 帧结束 帧起始 ACK场

  18. 数据帧的标准格式和扩展格式 • 标准格式 仲裁场 控制场 数据场 SOF r0 RTR IDE 11位标识符 DLC • 扩展格式 仲裁场 控制场 数据场 SOF SRR IDE RTR r1 r0 11位标识符 18位标识符 DLC

  19. 数据帧的标准格式和扩展格式 • 帧起始(SOF)仅由一显位构成。所有站都必须同步于首先发送的那个帧起始前沿 • 仲裁场(标准格式)由11位标识符ID28~ ID18、远程发送请求位RTR组成,其中ID高七位不可全为1(隐性)。 • 仲裁场(扩展格式)由29位标识符ID28~ ID0、SRR位、IDE位、RTR位组成 • SRR是隐性位,它用于替代标准格式的RTR位。 • IDE=1(隐性)代表扩展格式。IDE位在扩展格式中位于仲裁场而在标准格式中位于控制场。

  20. 数据帧的标准格式和扩展格式 数据场或CRC场 仲裁场 控制场 • 控制场由6个位组成 • 数据长度码DLC3~DLC0指示数据场的字节数,0~8,其他数值不允许使用。 • 保留位r1和r0必须为0,IDE(标准格式)=0 • 数据场:0~8个字节,8位/字节,MSB先发 • CRC场由15位CRC序列和1位CRC界定符组成。CRC界定符为一隐性位。 IDE/r1 r0 DLC3 DLC2 DLC1 DLC0 数据长度码 保留位

  21. 数据帧的标准格式和扩展格式 • 应答场为2位,包括应答间隙和应答界定符,不进行位填充。 • 在应答间隙时间,发送器发隐位;所有正确接收到有效报文的接收器发一个显位。 • 应答界定符为隐位(1)。 • 帧结束:由7个隐位组成,不进行位填充。 7.2.3.3 远程帧 • 需要数据的节点可以发送远程帧请求另一节点发送相应数据帧 • 远程帧的RTR位是隐性的,它没有数据场,所以数据长度码没有意义。

  22. 5.2.3.4 错误帧 帧间空间或过载帧 数据帧 错误帧 • 错误帧由两个不同的场组成,第一个场是不同站提供的错误标志的叠加,第二个场是错误界定符。 • 错误标志分两种,主动错误标志(6个显性位)和被动错误标志(6个隐性位) • 检测到错误条件的“错误主动”站发送主动错误标志,这样一来所有其他站都会检测到错误条件并开始发送错误标志。叠加在一起最多12个显性位 错误标志 错误界定符 错误标志的重叠

  23. 5.2.3.4 错误帧 • 检测到错误条件的“错误被动”站发送被动错误标志。从那时开始,等待6个相同极性的位,一旦等到,被动错误标志就算完成 • 错误界定符包括8个隐性位。一个站发送错误标志以后,就发送一个隐性位,并一直监视总线,直到发现一个隐性位,就发送其余7个隐性位。

  24. 5.2.3.5 过载帧 帧结束或错误界定符或过载界定符 帧间空间或过载帧 过载帧 过载标志 • 过载帧包括两个场:过载标志(6个显位及其叠加)和过载界定符(8个隐位) • 导致发送过载标志的条件:①接收器内部要求延迟下一个数据帧或远程帧,②在间歇场第一或第二位检测到一个显性位 • 过载标志的形式与主动错误标志一样 • 一个站发出过载标志,其他站都将检测到过载条件并发出过载标志。 • 过载界定符的形式与错误界定符一样。过载标志发送后,站就监视总线直到发现从显位到隐位的跳变,然后发送其余7个隐性位。 过载界定符 过载标志的重叠

  25. 5.2.3.6 帧间空间 帧 帧间空间 帧 • 对于数据帧或远程帧,无论它前面是什么帧,都用帧间空间来分开;但是对于过载帧或错误帧,没有帧间空间与前面帧分开 • 间歇场由3个隐位组成。间歇场期间不允许启动发送数据帧或远程帧。 • 总线空闲周期可为任意长度。此时,总线是开放的,任何站可随时发送。 间歇场 总线空闲

  26. 5.2.4 错误类型和界定 • 5种错误类型: • 位错误:发送器监视到总线位数值与发出的位数值不同。仲裁场填充位和应答间隙发出隐位而检测到显位则例外 • 填充错误:应该使用位填充的地方出现第6个相同位。 • CRC错误:计算结果与收到的CRC不同 • 形式错误:固定形式的位场中出现非法位 • 应答错误:在应答间隙,发送器未检测到显位

  27. 5.2.4 错误类型和界定 • 检测到CRC错误,应在应答界定符后发送错误标志;检测到其他错误应在下一位发送错误标志。 • 节点的3种故障状态:①错误主动,②错误被动,③总线关闭 • 正常情况下节点是“错误主动”站,此类站检测到错误时发送主动错误标志 • 出现错误较多的节点转为“错误被动”站,此类站检测到错误时只能发被动错误标志 • 出现太多错误时节点转为“总线关闭”状态,此时节点不可对总线有任何影响(例如关闭输出驱动器)

  28. 5.2.4 错误类型和界定 • 为了界定故障,在每个节点中都有两种计数——发送错误计数和接收错误计数,按照以下规则计数: • 接收器检出错误时,接收错误计数器加1 • 接收器在送出错误标志后第一位检出一个显位,接收错误计数器加8 • 发送器送出一个错误标志时,发送错误计数器加8 • 送出一个错误标志或过载标志时检测到位错误,发送错误计数器加8 • 报文成功发送后发送错误计数器减1

  29. 5.2.4 错误类型和界定 • 报文成功接收后接收错误计数器减1,但若其>127则将其置为119到127之间某数 • 发送错误计数器>127或接收错误计数器>127,节点置“错误被动”状态 • 发送错误计数器>255,节点置“总线关闭”状态 • 两个计数器均小于等于127,错误被动节点置为错误主动节点 • 在检测到总线上连续11个隐位发生128次后,总线关闭节点变为错误主动节点且两个计数器清0

  30. 5.2.5 位定时与同步 • 一个标称的位时间分为:同步段、传播段、相位缓冲段1、相位缓冲段2。 • 同步段用于同步各节点,正常情况下跳变沿落在此段内 • 传播段用于补偿网络内的传输延时 • 采样点时刻读取的电平代表这个位的电平 采样点 相位缓冲段1 相位缓冲段2 同步段 传播段 1时间份额 1时间份额 4时间份额 4时间份额 1位时间= 10时间份额

  31. 5.2.5 位定时与同步 • 时间份额由振荡器周期分频而得 • 各时间段长度为:同步段1份额,传播段1~8份额,相位缓冲段1,1~8份额,相位缓冲段2,Max(相位缓冲段1,信息处理时间),其中信息处理时间<=2份额。一个位的总时间份额数为8~25,可以编程。 • 同步的规则: • 在总线空闲时,只要检测到一个隐性到显性的边沿,就执行一次硬同步(以该边沿作为同步段) • 在总线不空闲时,若边沿落在同步段以外,则按其与同步段之差执行再同步:

  32. 5.2.5 位定时与同步 • 再同步情况①:边沿落在同步段以后,则把所差份额加到相位缓冲段1 • 再同步情况② :边沿落在同步段以前,则从相位缓冲段2减去所差份额 • 再同步所加减的份额有个上限,该上限可取值1~4个时间份额,但不可大于相位缓冲段1。 • 因为有位填充规则,所以可用于再同步的边沿在一定时间内总会出现。最大可能时间间隔是29个位。 • 一个位时间内只能执行一次同步 • 一般只把隐性到显性的边沿用于同步

  33. 5.3 CAN控制器和CAN收发器简介5.3.1 CAN控制器的作用 • 完成CAN规范所规定的物理层和数据链路层大部分功能 • 有微处理器接口,易于连接单片机 • 结构分两种类型,独立IC或与单片机集成在一起,SJA1000属于前者 • 属于后者的有:PHILIPS的87C591、LPC2119,西门子的C167C,INTEL的80C196CA等 • 都遵循CAN2.0规范,掌握其中一种就可触类旁通

  34. 5.3.2 CAN控制器SJA1000主要特性 • 28引脚,可与INTEL系列或MOTOROLA系列微处理器接口 • 支持CAN2.0A和CAN2.0B规范 • 支持11位和29位标识符 • 64字节先进先出(FIFO)接收缓冲器 • 通信速率最高1Mbps • CAN输出驱动器可配置 • 工作温度 -40~125℃ • 扩展的报文验收滤波器,可置成单滤波或双滤波模式

  35. CAN控制器SJA1000在系统中的位置 分布模块1 分布模块2 传感器 执行元件 MMI 传感器 执行元件 MMI 模块控制器 微控制器 CAN控制器 SJA1000 TX RX TX RX CAN收发器 82C250 CAN总线

  36. SJA1000的模块结构 CAN总线线路 SJA1000 发送缓冲区 主控制器 收发器 接口管理逻辑 CAN2.0B核心模块 接收FIFO 验收滤波器

  37. SJA1000发送缓冲器的布局 标准帧格式 扩展帧格式

  38. SJA1000接收缓冲器(FIFO)的布局

  39. SJA1000接收标准帧报文的单滤波器配置 标识符 数据字节1~2

  40. SJA1000接收扩展帧报文的单滤波器配置 29位标识符

  41. SJA1000接收标准帧报文的双滤波器配置

  42. SJA1000接收扩展帧报文的双滤波器配置

  43. SJA1000与单片机典型接口电路

  44. 5.3.3 CAN收发器82C250主要特性 • 符合ISO11898标准,最高速率1Mbps; • 抗汽车环境瞬间干扰,具有保护总线能力; • 斜率控制,降低射频干扰RFI; • 热保护以及电源和地短路保护; • 低电流待机模式; • 未上电的节点对总线无影响; • 可连接110个节点; • 工作温度-40~+125℃。

  45. 5.3.3 CAN收发器82C250主要特性 • 内部具有限流电路,可防止发送输出级对电源、地或负载短路。虽然短路出现时功耗增加但不至于损坏器件。若结温超过160℃,则两个输出端电流限将减小,从而限制了芯片温升。器件的所有其他部分将继续工作。双线差分驱动有助于抑制汽车等恶劣电器环境下的瞬变干扰。

  46. 5.3.3 CAN收发器82C250 • PCA82C250收发器的典型应用如图。SJA1000的RX和TX分别通过光电隔离电路连接到82C250,82C250的差动收发端CANH和CANL连接到总线电缆。输入RS用于模式控制。Vref输出电压是0.5×Vcc,(Vcc=5V)。

  47. CAN总线系统智能节点硬件设计

  48. 5.4 DeviceNet简介5.4.1 DeviceNet技术概述 如图,在Rockwell提出的三层网络结构中,DeviceNet处于最底层,即设备层。

  49. 5.4.1 DeviceNet技术概述 工业控制网络底层节点相对简单,传输数据量小,但节点数量大,要求节点费用低。 针对以上通信要求,DeviceNet可以提供: • 低端网络设备的低成本解决方案; • 低端设备的智能化; • 主—从以及对等通信的能力。 DeviceNet有两个主要用途: • 传送与低端设备关联的面向控制的信息; • 传送与被控系统间接关联的其他信息(例如配置参数)。

  50. 5.4.1 DeviceNet技术概述 • 物理/介质特性 • 主干线—分支线结构; • 最多支持64个节点; • 无需中断网络即可解除节点; • 同时支持网络供电(传感器)及自供电(执行器)设备; • 使用密封式或开放式连接器; • 接线错误保护; • 数据波特率可选125、250、500kbps; • 标准电源插头,电源最大容量可达16A; • 内置式过载保护。

More Related