《CAN总线通信协议.pptx》由会员分享,可在线阅读,更多相关《CAN总线通信协议.pptx(47页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、CAN 总线,控制器局域网 Controller Area Network,CAN Controller Area Network 控制器局域网 CAN总线技术,由于其高性能、高可靠性以及独特的设计,越来越受到人们的重视。已被列入ISO国际标准,称为ISO11898, ISO11519。 CAN最初是由BOSCH公司为汽车监测、控制系统而设计的。由于CAN总线本身的特点,其应用范围已不再局限于汽车工业,而向过程工业、机械工业、纺织机械、农用机械、机器人、数控机床、医疗器械等领域发展。,CAN 总线概述,CAN 总线概述,CAN 总线拓扑图,多主控制 在总线空闲时,所有的单元都可开始发送消息(多
2、主控制)。 最先访问总线的单元可获得发送权。 多个单元同时开始发送时,发送高优先级 ID (标识符 Identifier) 消息的单元可获得发送权。 消息的发送 在 CAN 协议中,所有的消息都以固定的格式发送。 总线空闲时,所有与总线相连的单元都可以开始发送新消息。 两个以上的单元同时开始发送消息时,根据ID决定优先级。 ID 并不是表示发送的目的地址,而是表示访问总线的消息的优先级。 两个以上的单元同时开始发送消息时,对各消息ID 的每个位进行逐个仲裁比较。仲裁获胜(被判定为优先级最高)的单元可继续发送消息,仲裁失利的单元则立刻停止发送而进行接收工作。,CAN 总线特点,系统的柔软性 与总
3、线相连的单元没有类似于“地址”的信息。因此在总线上增加单元时,连接在总线上的其它单元的软硬件及应用层都不需要改变。 通信速度 根据整个网络的规模,可设定适合的通信速度。在同一网络中,所有单元必须设定成统一的通信速度。即使有一个单元的通信速度与其它的不一样,此单元也会输出错误信号,妨碍整个网络的通信。不同网络间则可以有不同的通信速度。,CAN 总线特点,远程数据请求 可通过发送“遥控帧(远程帧)” 请求其他单元发送数据。 错误检测功能 错误通知功能 错误恢复功能 所有的单元都可以检测错误(错误检测功能)。 检测出错误的单元会立即同时通知其他所有单元(错误通知功能)。 正在发送消息的单元一旦检测出
4、错误,会强制结束当前的发送。强制结束发送的单元会不断反复地重新发送此消息直到成功发送为止(错误恢复功能)。,CAN 总线特点,故障封闭 CAN 可以判断出错误的类型是总线上暂时的数据错误(如外部噪声等)还是持续的数据错误(如单元内部故障、驱动器故障、断线等)。由此功能,当总线上发生持续数据错误时,可将引起此故障的单元从总线上隔离出去。 连接 CAN 总线是可同时连接多个单元的总线。可连接的单元总数理论上是没有限制的。但实际上可连接的单元数受总线上的时间延迟及电气负载的限制。降低通信速度,可连接的单元数增加;提高通信速度,则可连接的单元数减少。,CAN 总线特点,OSI(Open System
5、Interconnect) 开放式系统互联,OSI参考模型 是ISO(国际标准化组织)组织在1985年研究的网络互联模型。该体系结构标准定义了网络互连的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层和应用层),在这一框架下进一步详细规定了每一层的功能,以实现开放系统环境中的互连性、互操作性和应用的可移植性。,OSI 参考模型,OSI 参考模型,OSI与TCP/IP,OSI 参考模型,OSI 参考模型,OSI 参考模型,CAN 总线协议中的OSI模型,LLC: logical Link control (逻辑链路控制) MAC:Medium Access Control (媒介访问
6、控制),CAN 总线电平信号,CAN 总线物理特性,CAN 总线信号编码方式: 采用 NRZ(单极性不归零码)编码,相比曼彻斯特码具有更好的 EMC 性能。 当发送器检测到位流里有连续 5 个相同极性的位就会插入一个填充位,接收器会删除这个填充位,,CAN 总线物理特性,具有更好的电磁兼容性,ISO11898 标准 速度为125kbps-1Mbps 的CAN 高速通信标准。 ISO11898 追加新规约后,成为ISO11898-1 新标准。 ISO11519标准 速度为 125kbps 以下的CAN 低速通信标准。 ISO11519-2 是ISO11519-1 追加新规约后的版本。 两种标准数
7、据链路层的定义相同,但物理层不同。,ISO 标准化的CAN 协议,ISO11898 和11519-2 物理层的主要不同点,ISO 标准化的CAN 协议,ISO11898 和11519-2物理层特性,ISO 标准化的CAN 协议,ISO11898 和11519-2 驱动芯片,ISO 标准化的CAN 协议,不仅是 ISO,SAE等其它的组织、团体、企业也对CAN 协议进行了标准化。,CAN 和标准规格,帧的种类: 数据帧 用于发送单元向接收单元传送数据的帧。 遥控帧(远程帧) 用于接收单元向具有相同 ID 的发送单元请求数据的帧。 错误帧 用于当检测出错误时向其它单元通知错误的帧。 过载帧 用于接
8、收单元通知其尚未做好接收准备的帧。 帧间隔 用于将数据帧及遥控帧与前面的帧分离开来的帧。,CAN 协议,帧的格式: 标准帧 11 个位的ID (标识符 Identifier) 扩展帧 29 个位的ID,CAN 协议,CAN 协议-数据帧,CAN 协议-远程帧,请求数据帧的长度,用于将数据帧及遥控帧与前面的帧分离开来的帧 过载帧和错误帧前不能插入帧间隔。,CAN 协议-帧间隔(间歇场),主动错误标志为 6 位显性位构成 被动错误标志为 6 位隐性位构成 错误界定符由 8 位隐性位构成,CAN 协议-错误帧,连续的6个显性位,不满足 CAN协议的最多5个连续的同性位要求,错误帧的发出时刻: 一旦节
9、点检测到位错误、或位填充错误、或帧格式错误、或应答错误,错误帧立即在比特流的下一个bit发出; 若接收节点检测CRC错误,该错误帧在应答界定位处发出,除非之前上述四种错误如应答错误或位错误已经发出。,CAN 协议-错误帧,过载帧用于接收方通知发送方尚未准备好接收数据,过载帧在先行和后续的数据帧(或远程帧)之间提供一个附加的延时。 过载标志由 6 位显性位构成 过载界定符由 8 位隐性位构成,CAN 协议-过载帧,三种情况都会引发过载标志的传送: 1.接收方的内部情况(接收方尚未准备好接收数据,对于下一个数据帧或远程帧需要有一个延时); 2.在帧间隔的第一和第二字节检测到一个“显性”位; 3.如
10、果 CAN 节点在错误界定符或过载界定符的第 8 位(最后一位)采样到一个显性位,节点会发送一个过载帧(不是错误帧)。 过载帧的发送时刻 1.必须、只能在其接收的数据帧结束后马上发出,而且必须、只能在帧间歇的第一个位时间发出; 2、3.在检测到显性位后马上发出 错误计数器不会增加。,CAN 协议-过载帧,总线上显性电平支配隐性电平。逻辑“0”为显性电平;逻辑“1” 为隐性电平; 总线空闲时,任何节点可以开始发送报文; 总线上每条报文都具有唯一的一个 11 位或 29 位标识符; 报文标识符的值越小,报文具有越高的优先权; 多个节点同时发送时,总线在“仲裁场”进行“逐位仲裁”; 传送高优先级报文
11、的节点赢得仲裁,并继续传输报文; 失去仲裁的节点在总线空闲时重新传送,CAN 总线 仲裁,CAN 总线 仲裁,当一个扩展帧和一个标准帧同时出现在网络并且扩展帧的高 11 位与标准帧相同时,CAN 总线 仲裁,位时序: 由发送单元在非同步的情况下发送的每秒钟的位数称为位速率。一个位可分为 4 段。 同步段(SS) 传播时间段(PTS) 相位缓冲段 1(PBS1) 相位缓冲段 2(PBS2),CAN 协议-位时序,位时序: 由发送单元在非同步的情况下发送的每秒钟的位数称为位速率。一个位可分为 4 段。 同步段(SS) 传播时间段(PTS) 相位缓冲段 1(PBS1) 相位缓冲段 2(PBS2),C
12、AN 协议-位时序,位时序: 标称位速率:一理想发送器在没有重新同步的情况下每秒发送的位数量; 标称位时间:1/标称位速率。 同步段 传输延时段 相位缓冲段 1 相位缓冲段 2 采样点:读总线电平并解释各位的值的一个时间点。采样点位于相位缓冲段 1 之后; 时间份额:时间份额是派生于振荡器周期的固定时间单元,它是实现 CAN 协议的基准时钟; 信息处理时间:信息处理时间是以一个采样点作为起始的时间段。采样点用于计算后续位的位电平。,CAN 协议-位时序,CAN 协议-位时序,CAN 协议-位时序,硬同步 重同步,CAN 协议-同步,硬同步,CAN 协议-同步,重同步,CAN 协议-同步,CAN 协议-总线错误,错误帧的输出,CAN 协议-总线错误,错误处理机制,CAN 协议-总线错误,错误处理机制,CAN 协议-总线错误,发送-三个邮箱 接收-两个3级FIFO 滤波器,STM32-CAN总线,