恒润科技公司主要内容概述CAN总线标准数据链路层通信机制数据帧错误检测帧格式位定时与同步物理层高速CAN低速容错CAN北京经纬恒润科技有限公司概述CAN的起源CAN—ControllerAreaNetwork—是20世纪80年代初德国Bosch公司为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发的一种串行通信协议北京经纬恒润科技有限公司概述CAN的起源传统的汽车线束连接PowertrainControlEngineControlActiveSuspensionABS/ASRTransmissionControlDoorControlAirbagAirConditionSeatControlPowerLocksLightControlBodyControlDashboard北京经纬恒润科技有限公司概述CAN的起源汽车的CAN网络PowertrainControlBodyControlDashboardDoorControlAirbagAirConditionSeatControlPowerLocksLightControlEngineControlActiveSuspensionABS/ASRTransmissionControl高速CAN低速CAN北京经纬恒润科技有限公司概述CAN的历史1983年,Bosch开始研究车上网络技术1986年,Bosch在SAE大会公布CAN协议1987年,Intel和Philips先后推出CAN控制器芯片1991年,Bosch颁布CAN2.0技术规范,CAN2.0包括A和B两个部分1991年,CAN总线最先在BenzS系列轿车上实现北京经纬恒润科技有限公司概述CAN的历史1993年,ISO颁布CAN国际标准ISO-118981994年,SAE颁布基于CAN的J1939标准2003年,Maybach发布带76个ECU的新车型(CAN,LIN,MOST)2003年,VW发布带35个ECU的新型Golf……未来,CAN总线将部分被FlexRay所取代,但CAN总线将仍会被持续应用相当长的时间北京经纬恒润科技有限公司概述CAN的特性采用双线差分信号协议本身对节点的数量没有限制,总线上节点的数量可以动态改变广播发送报文,报文可以被所有节点同时接收EMI应用层数据链路层物理层CAN_HCAN_L节点A报文报文比特流差分电压节点n…40m@1Mbps…隐性显性隐性CAN_HCAN_LUdiff北京经纬恒润科技有限公司概述CAN的特性多主站结构,各节点平等,优先权由报文ID确定每个报文的内容通过标识符识别,标识符在网络中是唯一的标识符描述了数据的含义某些特定的应用对标识符的分配进行了标准化根据需要可进行相关性报文过滤CAN节点滤波器CAN节点滤波器CAN节点滤波器CAN节点滤波器CAN节点滤波器IDDataCAN…北京经纬恒润科技有限公司概述CAN的特性保证系统数据一致性CAN提供了一套复杂的错误检测与错误处理机制,比如CRC检测、接口的抗电磁干扰能力、错误报文的自动重发、临时错误的恢复以及永久错误的关闭EMI应用层数据链路层物理层CAN_HCAN_L节点A报文报文比特流差分电压节点n…40m@1Mbps…错误检测错误处理北京经纬恒润科技有限公司概述CAN的特性使用双绞线作为总线介质,传输速率可达1Mbps,总线长度=40米,采用NRZ和位填充的位编码方式01040100200100010000总线长度/m51020501002005001000位速率/kbps隐性显性填充位位速率与总线长度的关系NRZ和位填充北京经纬恒润科技有限公司概述CAN的特性总结总线访问—非破坏性仲裁的载波侦听多路访问/冲突避免CSMA/CA(CarrierSenseMultipleAccess/CollisionAvoidance)载波侦听,网络上各个节点在发送数据前都要检测总线上是否有数据传输网络上有数据不发送数据,等待网络空闲网络上无数据立即发送已经准备好的数据多路访问,网络上所有节点收发数据共同使用同一条总线,且发送数据是广播式的冲突避免,节点在发送数据过程中要不停地检测发送的数据,确定是否与其它节点数据发生冲突北京经纬恒润科技有限公司主要内容概述CAN总线标准数据链路层通信机制数据帧错误检测帧格式位定时与同步物理层高速CAN低速容错CAN北京经纬恒润科技有限公司总线标准OSI参考模型底层标准高层协议3网络层7应用层6表示层5会话层4传输层OSI参考模型2数据链路层1物理层CAN2.011898CANopenDeviceNetJ1939……CANNMEA2000北京经纬恒润科技有限公司总线标准各层执行功能LogicLinkControlAcceptancefilteringOverloadnotificationRecoverymanagement2数据链路层MediumAccessControlDataencapsulation/decapsulationFramecoding(stuffing,destuffing)MediumaccessmanagementErrordetectionErrorsignallingAcknowledgementSerialization/deserialization1物理层PhysicalSignallingBitencoding/decodingBittimingSynchronizationPhysicalMediumAttachmentDriver/receivercharactericsMediumDependentInterfaceConnectors2数据链路层1物理层PLSPMAMDILLCMACLLC,LogicalLinkControl逻辑链路控制MAC,MediumAccessControl媒介访问控制PLS,PhysicalSignalingSublayer物理信令子层PMA,PhysicalMediumAttachment物理介质连接MDI,MediumDependentInterface介质相关接口北京经纬恒润科技有限公司总线标准底层标准ISO118982数据链路层1物理层PLSPMAMDILLCMACOSI参考模型CAN2.0CAN物理层ISO11898-1ISO11898-2ISO11898-3CAN控制器CAN收发器CANISO11898CAN实现Roadvehicles--Controllerareanetwork(CAN)ISO11898-1:2003Part1:DatalinklayerandphysicalsignallingISO11898-2:2003Part2:High-speedmediumaccessunitISO11898-3:2006Part3:Low-speed,fault-tolerant,medium-dependentinterfaceISO11898-4:2004Part4:Time-triggeredcommunicationISO11898-5:2007Part5:High-speedmediumaccessunitwithlow-powermode北京经纬恒润科技有限公司主要内容概述CAN总线标准数据链路层通信机制数据帧错误检测帧格式位定时与同步物理层高速CAN低速容错CAN北京经纬恒润科技有限公司通信机制报文发送节点发送报文时要检测总线状态只有总线处于空闲,节点才能发送报文在发送报文过程中进行“回读”,判断送出的位与回读的位是否一致北京经纬恒润科技有限公司通信机制报文发送“线与”机制通过ID进行仲裁显性位能够覆盖隐性位ID值越小,报文优先级越高SOF109876543210RTRControlData隐性显性只听只听节点A节点B节点C总线北京经纬恒润科技有限公司通信机制报文发送非破坏性仲裁退出仲裁后进入“只听”状态等待总线再次空闲时进行报文重发ITMITM节点AID=75Data节点BID=250Data节点CID=1000DataCANID=75Data节点A节点C节点BCAN总线ID=250ID=1000ID=75DataID=250ID=1000DataID=250DataID=1000ID=1000DataData仲裁阶段t仲裁阶段仲裁阶段北京经纬恒润科技有限公司通信机制如图所示,A、B、C、D四个节点在不同的时刻分别往总线上发送ID为5、7、3、6的消息。请画出消息在总线上出现的顺序(假设每帧报文的传输时间占3格)。CANnodeBCANnodeACANnodeCCANbusCANnodeD55573636练习1:CAN总线访问仲裁机制北京经纬恒润科技有限公司答案:CAN总线访问仲裁机制北京经纬恒润科技有限公司通信机制报文接收过滤通过滤波器,节点可以对接收的报文进行过滤CAN节点滤波器CAN节点滤波器CAN节点滤波器CAN节点滤波器CAN节点滤波器IDDataCAN…接收滤波器(AcceptanceFilter)报文的过滤过程010010100010100XXXXX掩码(Mask)选择器(SelectororCode)标识符(ID)允许通过的ID接收规则:比较消息ID与选择器中和接收过滤相关位是否相同接收过滤相关位:由掩码定义1=与消息过滤有关0=与消息过滤无关如果相关接收;如果不相关过滤北京经纬恒润科技有限公司通信机制NRZ编码与位填充NRZ(非归零)编码NRZ编码确保报文紧凑在相同带宽情况下,NRZ编码方式的信息量