现场总线总线协议PPT课件.ppt_第1页
现场总线总线协议PPT课件.ppt_第2页
现场总线总线协议PPT课件.ppt_第3页
现场总线总线协议PPT课件.ppt_第4页
现场总线总线协议PPT课件.ppt_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 第四章CAN ControllerAreaNetwork CAN即控制器局域网 最初是德国BOSCH公司为汽车的监测与控制而设计的 以解决汽车众多控制设备与仪器仪表之间的大量数据交换用硬件接线带来的问题 当今CAN的应用已不再局限于汽车行业 而向过程工业 机械工业 机器人 数控机床 医疗器械和传感器等领域发展 是一种有效支持分布式控制或实时控制的串行通信总线 CAN总线只制定了物理层和数据链路层 基于CAN又开发了DeviceNet CANopen等 4 1概述 本章内容 CAN总线规范CAN控制器及有关器件 带CAN控制器基于CAN总线的应用 2 概述部分在第一章已讲过 在此略过 CAN总线在汽车电子系统中已得到广泛应用 成为欧洲汽车制造业的主体行业标准 代表着汽车电子控制网络的主流发展趋势 现代汽车越来越多地采用电子装置控制 例如发动机的定时注油控制 加速 制动控制及防抱死制动系统 ABS 等 世界上很多著名的汽车制造厂商 如Volkswagen 大众 Benz 奔驰 BMW 宝马 Porsche 保时捷 Rolls Royce 劳斯莱斯 Jaguar 美洲豹 等公司都已经采用CAN总线来实现汽车内部控制系统的数据通信 解释上一页 3 1 CAN为多主方式工作 不分主从 通信方式灵活 通过报文标识符通信 无需站地址等节点信息 报文标识符可达2048种 CAN2 0A 而CAN2 0B的报文标识符几乎不受限制 2 CAN上的节点信息分成不同的优先级 可满足不同的实时要求 3 CAN采用非破坏性总线仲裁技术 当多个节点同时向总线发送信息时 优先级较低的节点会主动地退出发送 而最高优先级的节点可不受影响地继续传输数据 从而大大节省了总线冲突仲裁时间 尤其是在网络负荷很重的情况下 也不会出现网络瘫痪情况 4 CAN只需通过报文滤波即可实现点对点 一点对多点及全局广播等几种方式的数据传送与接收 无需专门的 调度 5 总线有 显性 和 隐性 两个状态 显性 对应逻辑 0 隐性 对应逻辑 1 6 采用短帧结构 传输时间短 受干扰概率低 具有极好的检错效果 7 CAN的每帧信息都有CRC及其它检错措施 降低了数据出错概率 8 CAN节点在错误严重的情况下具有自动关闭输出功能 以使总线上其它节点的操作不受影响 9 CAN的通信介质可为双绞线 同轴电缆或光纤 选择灵活 CAN的主要特性 4 CAN总线通信接口集成了CAN协议的物理层和数据链路层功能 可完成对通信数据的成帧处理 CAN总线的一个最大特点是废除了传统的站地址编码 而代之以对通信数据块进行编码 数据帧的标识码可由11位或29位组成 CAN2 0B规定在标识符的前7位不能同时为逻辑零 这种按数据帧编码的方式 还可使不同的节点同时接收到相同的数据 数据段长度最多为8字节 可满足通常工业领域中控制命令 工作状态及测试数据的一般要求 同时 8字节不会占用过长的总线时间 从而保证了通信的实时性 CAN协议采用CRC校验 并可提供相应的错误处理功能 保证数据通信的可靠性 解释上一页 5 4 2CAN的分层结构 4 2 1分层结构 CAN遵从OSI模型 CAN结构划分两层 数据链路层和物理层 CAN的数据链路层是其核心内容 其中逻辑链路控制子层 LogicalLinkcontrol LLC 完成过滤 超载通知和管理恢复等功能 媒体访问控制子层 MediumAceessControl MAC 完成数据封装 拆装 帧编码 媒体访问管理 错误检测 出错标定 应答 串并 并串 转换等功能 CAN2 0B规范兼容2 0A 因此只讲2 0B 6 4 2 2逻辑链路控制子层LLC 一 LLC子层功能 1 帧接收滤波 帧内容由标识符描述 确定 接收器通过滤波器确定是否接收 2 超载通告 如果接收器内部条件要求延迟下一个LLC数据帧或远程帧 则通过LLC发送超载帧 最多可以产生两个超载帧 以延迟下一个数据帧或远程帧 3 恢复管理 发送期间 对于丢失仲裁或被错误干扰的帧 LLC子层具有自动重发功能 二 LLC子层帧结构 LLC帧是同层LLC实体之间交换的数据单元 下面是LLC数据帧和远程帧结构 LLC可以生成数据帧和远程帧 LLC子层形成的帧到MAC子层还要经过封装 7 1 标识符 标识符长度为11位 CAN2 0A 或29位 CAN2 0B 2 DLC场 指出数据场长度 由4位构成 数据帧字节数为0 8 3 LLC数据场 发送的数据 可为0 8个字节 1 LLC数据帧 1 标识符 与LLC数据帧的标识符格式相同 2 DLC场 对应请求发送的数据帧的长度 2 LLC远程帧 远程帧是请求对方发送数据 8 4 2 2媒体访问控制子层 MAC 一 MAC子层结构功能模型 MAC子层划分为两个独立部分 发送部分和接收部分 两个部分功能如下 发送数据封装 发送媒体访问管理 接收数据拆装 接收媒体访问管理 LLC子层 发送数据编码 接收数据解码 对物理接口访问 MAC 物理层 9 1 发送数据封装接收LLC帧及接口控制信息CRC循环计算向LLC帧附加SOF RTR位 保留位 CRC ACK和EOF构造MAC帧 2 发送媒体访问控制确认总线空闲后 开始发送过程MAC帧串行化插入填充位 位填充 在丢失仲裁情况下 退出仲裁并转入接收方式错误检测 监控 格式校验 应答校验确认超载条件 LLC原因造成的超载 构造超载帧并开始发送构造出错帧并开始发送输出串行位流至物理层准备发送 1 发送部分功能 10 1 接收媒体访问控制 与发送媒体访问控制过程相反 由物理层接收串行位流解除串行结构重新构筑帧结构检测填充位 解除位填充 错误检测 CRC 格式校验 填充规则校验 发送应答构造错误帧并开始发送确认超载条件 MAC原因造成的超载 重激活超载帧结构并开始发送 2 接收数据拆装由接收帧中去除MAC特定信息输出LLC帧和接口控制信息至LLC层 2 接收部分功能 11 1 帧类型在CAN2 0B的版本协议中有两种不同的帧格式 不同之处为标识符域的长度不同 含有11位标识符的帧称之为标准帧 而含有29位标识符的帧称为扩展帧 数据在发送器与接收器之间传送 共有四种不同类型的帧 1 数据帧 数据帧将数据从发送器传输到接收器 2 远程帧 节点发出远程帧 请求发送具有同一标识符的数据帧 3 错误帧 任何单元检测到总线错误就发出错误帧 4 过载帧 过载帧用在相邻数据帧或远程帧之间提供附加的延时 数据帧或远程帧与前一个帧之间都会有一个隔离域 即帧间间隔 数据帧和远程帧可以使用标准帧及扩展帧两种格式 二 MAC帧结构 过载帧是接收方处理不过来 而发送数据帧远程帧时要检测总线空闲 前面需有帧间间隔 12 2 MAC数据帧 一个MAC数据帧由七个不同的位域 BitField 组成 帧起始 StartofFrame 仲裁域 ArbitrationField 控制域 ControlField 数据域 DataField CRC域 CRCField 应答域 ACKField 和帧结尾 EndofFrame 数据域的长度可以为0 8个字节 数据帧格式 1 帧起始 SOF 标志着数据帧和远程帧的起始 仅由一个 显性 位组成 在CAN的同步规则中 当总线空闲时 处于隐性状态 才允许站点开始发送数据帧和远程帧 所有的站点必须同步于首先开始发送报文的站点的帧起始前沿 该方式称为 硬同步 13 2 仲裁域 仲裁域如图所示 仲裁域由标识符和RTR位组成 标准帧格式与扩展帧格式的仲裁域格式不同 标准格式里 仲裁域由11位标识符和RTR位组成 标识符位有ID28 ID18 扩展帧格式里 仲裁域包括29位标识符 SRR位 IDE位 IdentifierExtension 标识符扩展 RTR位 其标识符有ID28 ID0 IDE位为显性 表示数据帧为标准格式 IDE位为隐性 表示数据帧为扩展帧格式 在扩展帧中 替代远程请求 SubstituteRemoteRequest SRR 位为隐性 仲裁域传输顺序为从最高位到最低位 其中最高7位不能全为零 RTR的全称为 远程发送请求 RemoteTransmissionRequest RTR位在数据帧里必须为 显性0 而在远程帧里必须为 隐性1 它是区别数据帧和远程帧的标志 且同标识符的数据帧优先 显性位0 隐性位1 14 替代远程请求位SRR为隐性 不起作用 标准帧仲裁域有12位 其中11位标示符 1位RTR 扩展帧仲裁与有32位 其中29位是标示符 其它3位是SRR TDE RTR 当几个站同时发送报文时 站1的报文标识符为011111 站2的报文标识符为0100110 站3的报文标识符为0100111 所有标识符都有相同的两位01 直到第3位进行比较时 站1的报文被丢掉 因为它的第3位为高 而其它两个站的报文第3位为低 站2和站3报文的4 5 6位相同 直到第7位时 站3的报文才被丢失 解释上一页 15 3 控制域 控制域由6位组成 包括2个保留位 r0 r1同于CAN协议扩展 及4位数据长度码 允许的数据长度值为0 8字节 4 数据域 发送缓冲区中的数据按照长度代码指示长度发送 对于接收的数据 同样如此 它可为0 8字节 每个字节包含8位 首先发送的是MSB 最高位 5 CRC校验码域 它由CRC域 15位 及CRC边界符 一个隐性位 组成 CRC计算中 被除的多项式包括帧的起始域 仲裁域 控制域 数据域及15位为0的解除填充的位流给定 此多项式被下列多项式X15 X14 X10 X8 X7 X4 X3 1除 系数按模2计算 相除的余数即为发至总线的CRC序列 发送时 CRC序列的最高有效位被首先发送 接收 之所以选用这种帧校验方式 是由于这种CRC校验码对于少于127位的帧是最佳的 16 6 应答域 应答域由发送方发出的两个 应答间隙及应答界定 隐性位组成 所有接收到正确的CRC序列的节点将在发送节点的应答间隙上将发送的这一隐性位改写为显性位 因此 发送节点将一直监视总线信号以确认网络中至少一个节点正确地接收到所发信息 应答界定符是应答域中第二个隐性位 由此可见 应答间隙两边有两个隐性位 CRC域和应答界定位 7 帧结束域 每一个数据帧或远程帧均由一串7个隐性位的帧结束域结尾 这样 接收节点可以正确检测到一个帧的传输结束 应答域由一个应答间歇位和一个应答界位组成 共两位 17 远程帧也有标准格式和扩展格式 而且都由6个不同的位域组成 帧起始 仲裁域 控制域 CRC域 应答域 帧结尾 与数据帧相比 远程帧的RTR位为隐性1 没有数据域 数据长度编码域可以是0 8个字节的任何值 这个值是远程帧请求发送的数据帧的数据域长度 当具有相同仲裁域的数据帧和远程帧同时发送时 由于数据帧的RTR位为显性 所以数据帧获得优先 发送远程帧的节点可以直接接收数据 远程帧结构如图所示 3 远程帧 18 由两个不同的域组成 第一个域是来自节点的错误标志 第二个域为错误分界符 其结构如图所示 4 错误帧 1 错误标志 有两种形式的错误标志 活动 Active 错误标志 它由6个连续显性位组成 认可 Passive 错误标志 它由6个连续隐性位组成 它可由其他CAN控制器的显性位改写 2 错误分界符 错误分界符由8个隐性位组成 检测到出错的节点 开始发送错误标志 因此错误标志是各节点发送的错误标志叠加而成的 错误分界符由8位隐性位组成 19 过载帧由两个区域组成 过载标识域及过载界定符域 下述三种状态将导致过载帧发送 1 接收方在接收一帧之前需要过多的时间处理当前的数据 接收尚未准备好 2 在帧空隙域检测到显性位信号 3 如果CAN节点在错误界定符或过载界定符的第8位采样到一个显性位节点会发送一个过载帧 过载帧的结构 5 超载帧 过载帧 超载标志 由6位显性位构成 此时其它站可能检测到超载 发送超载标志 重叠 超载界定符 由8位隐性位组成 整个处理过程尚未结束 就出现显性位 要注明超载 20 6 帧间空间 数据帧和远程帧与其它四种帧以帧间空间位场隔开 超载帧和错误帧前面不存在帧间空间 帧 帧 间歇 帧间空间 总线空闲 间歇场 由3个隐性位构成 间歇场期间不能发送数据帧和远程帧 总线空闲场 可以任意长度 要发送数据帧和远程帧时 不能马上发送 应等间歇场出现 间歇场的第三位检测到显性位时可解释为帧起始位然后开始发送标识符 21 三 MAC帧编码 帧起始 仲裁场 数据场 CRC序列均以位填充方法进行编码 连续5位相同位后自动插入一个补码位 数据帧 远程帧的其它位场 CRC界定符 ACK场合帧结束 为固定形式 不进行填充 错误帧和超载帧也是固定格式 四 媒体访问与仲裁 媒体访问 检测到错误时 错误 活动节点和错误 认可节点可以访问总线 数据帧和远程帧只在总线空闲时可以访问总线 仲裁 当许多节点开始发送时 只有最高权限的节点变为主站 节点的竞争机制是仲裁 每个节点发送时对仲裁域的每一位进行检测 当发送隐性位而检测到显性位时 退出发送 本帧优先级低 先高后低发送 先检测到1的标志符数大 优先级低 相同标识符的数据帧优先于远程帧 22 五 错误类型与错误处理 1 错误类型位错误 节点向外发送时同时监测 位值不符时 产生位错误 填充错误 应用位填充规则的报文中出现6个相同位 CRC错误 CRC序列不符 格式错误 固定格式域中含有非法位 应答

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论