《《CAN培训第一讲》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《CAN培训第一讲》PPT课件.ppt(14页珍藏版)》请在金锄头文库上搜索。
1、现场总线现场总线CANBUSCANBUS交流交流(1 1)本次交流目的本次交流目的v了解什么是了解什么是CANv了解了解CAN总线的特点及优点总线的特点及优点v理解理解CAN信号的组成以及如何工作信号的组成以及如何工作v公司产品的分类及使用公司产品的分类及使用CAN在汽车上的运用在汽车上的运用什么是什么是CAN?v国际上应用最广泛的现场总线之一,也是目前唯国际上应用最广泛的现场总线之一,也是目前唯一有国际标准的现场总线,在一有国际标准的现场总线,在80年代末的汽车工年代末的汽车工业中,由德国业中,由德国BOSCH提出提出vCAN“ControllerAreaNetwork”即控制器局域网即控制
2、器局域网 CANCAN具有十分优越的特点,使人们乐于选择。这些特性包括:具有十分优越的特点,使人们乐于选择。这些特性包括:1 1、低成本;、低成本;2 2、极高的总线利用率;(高优先率的报文最多可以在、极高的总线利用率;(高优先率的报文最多可以在134134微秒内得微秒内得到传输到传输 )3 3、很远的数据传输距离、很远的数据传输距离( (长达长达10Km)10Km);4 4、高速的数据传输速率(高达、高速的数据传输速率(高达1Mbit/s1Mbit/s););5 5、可根据报文的、可根据报文的IDID决定接收或屏蔽该报文;决定接收或屏蔽该报文;6 6、可靠的错误处理和检错机制;、可靠的错误处
3、理和检错机制;7 7、发送的信息遭到破坏后,可自动重发;、发送的信息遭到破坏后,可自动重发;8 8、节点在错误严重的情况下具有自动退出总线的功能;、节点在错误严重的情况下具有自动退出总线的功能;9 9、报文不包含源地址或目标地址,仅用标志符来指示功能信息、优、报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息。先级信息。CANBUS的优点的优点特性特性RS-485CANBUS成本成本低廉低廉稍高,稍高,20-30元元/总线利用率总线利用率低低高高网络特性网络特性一主多从一主多从多主多主数据传输率数据传输率低低高高容错机制容错机制无无错误处理和检测机制错误处理和检测机制通讯失败率通
4、讯失败率高高低低节点错误影响节点错误影响网络瘫痪网络瘫痪无影响无影响通讯距离通讯距离1.5KM可达可达10KM网络调试网络调试困难困难容易容易开发难度开发难度简单简单一定的技术基础一定的技术基础后期维护成本后期维护成本高高低低CAN信号与信号与485信号的比较信号的比较CAN信号电平信号电平 CANCAN能够使用多种物理介质,例如双绞线、光纤等。能够使用多种物理介质,例如双绞线、光纤等。最常用的就是双绞线。信号使用差分电压传送,两条信号最常用的就是双绞线。信号使用差分电压传送,两条信号线被称为线被称为“CAN_HCAN_H”和和“CAN_LCAN_L”,静态时均是,静态时均是2.5V2.5V左
5、右,左右,此时状态表示为逻辑此时状态表示为逻辑“1 1”,也可以叫做,也可以叫做“隐性隐性”。用。用CAN_HCAN_H比比CAN_LCAN_L高表示逻辑高表示逻辑“0 0”,称为,称为“显形显形”,此时,通,此时,通常电压值为:常电压值为:CAN_H = 3.5V CAN_H = 3.5V 和和CAN_L = 1.5VCAN_L = 1.5V CAN网络的用线标准网络的用线标准参数参数标志标志单位单位最小值最小值标称值标称值最大值最大值条件条件阻抗阻抗Z108120132单线之间单线之间与长度有关的电与长度有关的电阻阻rm m/m70规定线延迟规定线延迟ns/m05位时间位时间+接受,发接受
6、,发送延迟送延迟符合CANBUS网络的双线(屏蔽或不屏蔽的)物理参数 标准标准CANCAN的标志符长度是的标志符长度是1111位,而扩展格式位,而扩展格式CANCAN的标志符长度可达的标志符长度可达2929位。位。CAN CAN 协议的协议的2.0A2.0A版本规定版本规定CANCAN控制器必须有一个控制器必须有一个1111位的标志符。同时,在位的标志符。同时,在2.0B2.0B版本中规定,版本中规定,CANCAN控制器的标志符长度可以是控制器的标志符长度可以是1111位或位或2929位。遵循位。遵循CAN2.0BCAN2.0B协议的协议的CANCAN控制器可以发送和接收控制器可以发送和接收1
7、111位标识符的标准格式报文或位标识符的标准格式报文或2929位标识符的扩展格式报文。如果禁止位标识符的扩展格式报文。如果禁止CAN2.0B,CAN2.0B,则则CAN CAN 控制器只能发送和接控制器只能发送和接收收1111位标识符的标准格式报文,而忽略扩展格式的报文结构,但不会出现位标识符的标准格式报文,而忽略扩展格式的报文结构,但不会出现错误错误 目前,目前,PhilipsPhilips公司主要推广的公司主要推广的CANCAN独立控制器均支持独立控制器均支持CAN2.0BCAN2.0B协议,协议,即支持即支持2929位标识符的扩展格式报文结构位标识符的扩展格式报文结构标准帧和扩展帧标准帧
8、和扩展帧CAN2.0ACAN2.0BvCAN2.0ACAN2.0A:标识符的长度为标识符的长度为1111位,这些位从高位到低位的顺序位,这些位从高位到低位的顺序发送,最低位为发送,最低位为ID.0ID.0,其中最高,其中最高7 7位(位(ID.10ID.10ID.4ID.4)不能全为隐位。)不能全为隐位。远程发送请求位(远程发送请求位(RTRRTR)在数据帧中必须是显位,)在数据帧中必须是显位,而在远程帧中必须为隐位而在远程帧中必须为隐位仲裁场由仲裁场由1111位标识符和远程发送请求位位标识符和远程发送请求位RTRRTR组成。组成。vCANCAN2.0B2.0B:存在两种不同的帧格式,具有存在
9、两种不同的帧格式,具有1111位标识符的标准帧,位标识符的标准帧,2929位标识符的扩展帧位标识符的扩展帧标准帧与标准帧与CAN2.0ACAN2.0A相同相同扩展帧的仲裁场由扩展帧的仲裁场由2929位标识符和替代远程请求位标识符和替代远程请求SRRSRR位、标识位和远程发送请求位组成,标识符位为位、标识位和远程发送请求位组成,标识符位为ID.28ID.28至至ID.0ID.0。 CSMA/CDCSMA/CD是是“载波侦听多路访问载波侦听多路访问/ /冲突检测冲突检测”(Carrier Sense Carrier Sense Multiple Access with Collision Dete
10、ctMultiple Access with Collision Detect) 利用利用CSMACSMA访问总线,可对总线上信号进行检测,只有当总线处于空闲状态时,访问总线,可对总线上信号进行检测,只有当总线处于空闲状态时,才允许发送。利用这种方法,可以允许多个节点挂接到同一网络上。当检测才允许发送。利用这种方法,可以允许多个节点挂接到同一网络上。当检测到一个冲突位时,所有节点重新回到到一个冲突位时,所有节点重新回到监听监听总线状态,直到该冲突时间过总线状态,直到该冲突时间过后,才开始发送。在总线超载的情况下,这种技术可能会造成发送信号经过后,才开始发送。在总线超载的情况下,这种技术可能会造
11、成发送信号经过许多延迟。为了避免发送时延,可利用许多延迟。为了避免发送时延,可利用CSMA/CDCSMA/CD方式访问总线。当总线上有方式访问总线。当总线上有两个节点同时进行发送时,必须通过两个节点同时进行发送时,必须通过“无损的逐位仲裁无损的逐位仲裁”方法来使有最高优方法来使有最高优先权的的报文优先发送。在先权的的报文优先发送。在CANCAN总线上发送的每一条报文都具有唯一的一个总线上发送的每一条报文都具有唯一的一个1111位或位或2929位数字的位数字的IDID。CANCAN总线状态取决于二进制数总线状态取决于二进制数0 0而不是而不是1 1,所,所以以IDID号越小,则该报文拥有越高的优
12、先权。因此一个为全号越小,则该报文拥有越高的优先权。因此一个为全0 0标志符的报标志符的报文具有总线上的最高级优先权。可用另外的方法来解释:在消息冲突的位置,文具有总线上的最高级优先权。可用另外的方法来解释:在消息冲突的位置,第一个节点发送第一个节点发送0 0而另外的节点发送而另外的节点发送1 1,那么发送,那么发送0 0的节点将取得总线的控制的节点将取得总线的控制权,并且能够成功的发送出它的信息权,并且能够成功的发送出它的信息。 如图如图CAN的非破坏性仲裁的非破坏性仲裁发送器和接收器的定义发送器和接收器的定义发送器:产生报文的单位,当总线为空闲或者该单位失去仲裁时,发送器:产生报文的单位,
13、当总线为空闲或者该单位失去仲裁时,该单位该单位 不应该被成为发送器不应该被成为发送器 接收器:如果一个单位不是发送器且总线不为空闲,那么此单位为接收器接收器:如果一个单位不是发送器且总线不为空闲,那么此单位为接收器v数据帧数据帧v远程帧远程帧v错误帧错误帧v过载帧过载帧v帧间隔帧间隔CANBUS报文分析报文分析用来将数据从发送点传输到接收点用来请求相同ID的节点给它发送数据任何总线发现错误就发送错误帧为相邻的数据帧或远程帧请求延时用于分隔数据帧和远程帧数据帧与远程帧的异同数据帧与远程帧的异同数据帧组成:帧起始,仲裁段,控制段,数据段,数据帧组成:帧起始,仲裁段,控制段,数据段,CRCCRC段,
14、段, ACKACK段,帧结束段,帧结束远程帧组成:帧起始,仲裁段,控制段,远程帧组成:帧起始,仲裁段,控制段,CRCCRC段,段,ACKACK段,段, 帧结束帧结束 远程帧没有数据段,那么它的控制段式用来干吗的呢?远程帧没有数据段,那么它的控制段式用来干吗的呢? 用来描述请求发送的数据的位数。用来描述请求发送的数据的位数。 数据帧有数据段,但是它的数据段也可以为空,当它为数据帧有数据段,但是它的数据段也可以为空,当它为空时表示确认连接或者是其他的应答。空时表示确认连接或者是其他的应答。 远程帧的远程帧的TTRTTR为隐性,所以没有数据段的数据帧与远程帧为隐性,所以没有数据段的数据帧与远程帧的产别在于的产别在于TTR,TTR,我们根据此来分辨数据帧和远程帧。我们根据此来分辨数据帧和远程帧。 同时,当远程帧和数据帧的标示符一致时,数据帧具有高同时,当远程帧和数据帧的标示符一致时,数据帧具有高的优先级的优先级。