湖北电线价格联盟

汽车网关是个什么东西?非常专业

全球汽车精选2018-12-05 16:43:57

一、网关的概念
网关是接连异型网络的接口装置,它综合了桥接器和路由器的功能,汽车网关主要能在OSI参考模型的物理层、数据链路层和应用层上对双方不同的协议进行翻译和解释。
对 于Bosch公司为奔驰600SEL等汽车开发的控制器区域网CAN1.2与CAN2.0协议之间的网关,是指为处理多个ECU的核中和CPU之间的通信 而提供的一种综合接口装置,实际上就是一个Intel—16位80C196单片微机,至于美国三大汽车公司采用的SAEJ1850网络与Bosch— CAN网络之间的网关,实际上就是一个Intel—16位87C196KR单片微机。
一 个网关必须具备有一个网络协议到另一个协议转换信息的能力,对于CAN协议的网关,应能涉及CAN协议4种帧类型中的两种,即数据帧和远程帧。另外两种错 误帧和超限帧,由该网关的CAN芯片硬件控制,因此,可以说网关无附加的相应性。当然,网关必须具备有“状态位” ,即在任何一个网络中发生的错误太多时,网关应有报警状态位或总线中断状态位,这样,网关就像网络中的节点那样,可以调查总线状态。
对于两个网络之间的网关,起码应具备以下特性:尽量少的传输等待时间,信息丢失或超限差错最少,能处理总线出现的差错。

二、Bosch—CAN1.2与CAN2.0版本的主要区别
1991年9月,标准的1.2版本的CAN协议修订为新的2.0版本,新版本的技术关键是增加了信息标识符,也就是说,新的CAN2.0既支持标准的11位,也支持扩展后的29位信息标识。图5位两个CAN版本的互联框图。
CAN2.0实施新的信息位,标识扩展位(IDE)使CAN操作装置能区分标准和扩展格式,但大多数现存的标准CAN—1.2版本不能使被扩展后的信息格式,在实施过程中会影响错误信息。
为了能实施29位的信息标识,Intel公司开发了品种繁多的芯片,作为CAN的汽车用户,可以采用网关使网络互联,在仅用CAN—1.2—11位信息标识的条件下,能正确响应29位标识。

三、CAN1.2与CAN2.0的信息格式
信 息格式是数据通信系统中关于标题、信息首部、地址、正文和结尾等的书写规定。CAN—1.2 采用11位表示符,称为标准(1.2版本)格式;CAN—2.0采用29位标识符,称为扩展(2.0版本)格式。标准和扩展的格式均支持4种帧类型:数据 帧,载运数据;远程帧,当一个节点向另一个节点要求数据时发送;错误帧,当某个节点检测到一个消息错时发送;过载(超限)帧,当某个节点要求附加延迟时发 送。
图6表示数据帧和远程帧的标准和扩展的信息格式,内容如下:
SOF:起始帧(支配位),标志数据帧湖远程帧开始。
Arbitration Field:判优字段,包括信息标识位的1个或2个字段。标准格式由1个11位字段,而扩展格式有11位和18位宽的2个字段,共29位标识符。
RTR:远程传输请求位,该位在判优字段,对于数据帧是主位,对于远程帧是从属位。

SRR:用于扩展信息中替代远程请求位,是从属的。该位代替标准格式中的RTR位,位于扩展格式的判优字段中。
IDE:标识扩展位,对于标准格式是支配的,对于扩展格式是从属的。该位位于扩展格式的判优字段和标准格式的控制字段中。
Control Field:控制字段。保留位r0和r1被单作支配位发送。4位数据长度码DLC表示数据字段中的字节数。
Data Field:数据字段。数据字节位于数据帧(0—8字节)中。远程帧包含零数据字节。
CRC Field:循环冗余效验字段。该字段由1组15位虚幻冗余效验误码和1个从属的CRC分隔符位组成。
ACK Field:确认字段。确认是1个支配位,由接收数据帧和远程帧的节点发送,紧跟着1个从属的ACK分隔位符位。
End of Frmae:帧结束。由7个从属位结束帧。
Int:中断。是3个用来分隔数据帧与远程帧的从属位。
表 6中的位计数是用来评定网关信息传输等待时间和过速(指网关部能按数据发送速率接收数据而造成的数据丢失)敏感度。这些信息的实际长度可能有差异,原因是 “填充”位被添加到信息中。由于信息中增加了转换,故填充位有助于同步。5个连续等值为被发送后,填充位被插入到位流中,填充位于5个连续位反极性。处理 CRC分隔符、ACK字段和帧结束外,所有的信息字段都被填充。

四、CAN网关的布局及进行能够的主要操作
如 果两个CAN网络执行器是两片独立的芯片(图7),微控制器(单片微机)作为网关,那么,CAN芯片就像灵巧的随机存储器被网关读写。一旦接收到信息,网 关就执行接收CAN芯片的外部读操作,接着执行转换信息的逻辑指令,然后执行外部写操作,对第二个网络的CAN芯片做传输编成。




所以说,网关主要是执行外部读、写操作和转换信息标识符,而执行读、写操作的重要技术条件是时间,读、写所要求的时间又取决于网关和CAN芯片借口的定时特性。

图7的结构采用1组16位地址/数据总线,该总线在网关与CAN芯片间又双通信能力,CAN芯片驱动连至网关独立中断线,以利于识别中断的CAN装置。


五、CAN芯片信息结构的特点
CAN芯片配置有接收和发送信息的结构。典型的CAN芯片的信息结构支持2—15个信息客体(含有信息的实体或接收信息的实体,对客体的存取即为对其包含的信息存取)。信息客体由存储信息标识符、数据字节和控制字节的RAM字节组成。为提高接收信息的可靠性,CAN芯片必须在接收新信息的同时仍能处理早先接收的旧信息。具体的做法是:采用1套带缓冲的接收信息客体或采用两个交替作确认和否认的缓冲接收信息客体(图8)。假设所有接收信息就只被单个缓冲的接收信息客体接收。若不用认可的过滤,起阻止作用的一些接收信息客体将会接收所需的全部信息。为了捕获新信息,新信息的末位被接收前的那一个接收信息客体必须“有效” 。


每个CAN芯片使用1或2个信息客体接收,剩余的信息客体用来处理远程帧和发送信息。网关必须配备存储多个发送信息的结构(图9)。以等待CAN总线存取。所需要的发送信息客体的数量,取决于网关传送和接收的信息量以及将这些信息送至另一个网络的能力。总线的总负荷和越过网关的信息优先级,对所需要的发送信息客体的数量,起着决定性的作用。
管理发送信息客体的方法之一,是提供一个堆栈,以存储末用的信息客体(号)数。如果需要一条信息传输,一个信息客体号就从该堆栈中“弹出” 。同样,当结束了一条信息传输,它的信息客体号就被“压入”堆栈中。网关管理发送信息客体的次序,低优先级的信息不会被先排定发送。例如,Intel 82527使用被存在最低号数的信息客体中的信息以供判优,可以不考虑芯片上其他信息客体的判优登记,信息客体#1中的低优先级信息不会先于其他信息传输。

六、网关“处理”内容
网关主要“处理”有关下面三部分的内容(图10):从第一个网络读取所接收的信息,翻译信息,向第二个网络发送信息。图中翻译信息标识符的含义如下:CAN1.2和CAN2.0的网关可用于以下两种情况,第一种是最简单的实施方式,即在两个网络之间不需要对信息标识符翻译,只是传送标准信息,也就是说,这是6的网关只起到互联CAN1.2与CAN2.0,并让这两个网络共享标准信息的任务;第二种实施方式需要对信息标识符作翻译,也就是说,两个网络有各自的信息标识符。例如,“发动机温度信息”在CAN1.2网络上具有专用的11位表转信息标识符,而在CAN2.0网络上却具有扩展的29位信息标识符,此时的网关需对这两种信息标识符通过计算或“查表”翻译。



七、为什么实施SAE J1939和J1850网络协议的美国汽车也要采用与CAN桥接的网关?
SAE汽车选用CAN2.0协议作为“C级”串行控制和通信网络的推荐实施标准,又称为SAE J1939规范。CAN2.0每秒钟的数据速率可达1Mbps,也就是说,CAN2.0执行相当于SAE—C级的高速数据速率。而对于载货车的挂车或被牵引的机具来说,并不需要如此高的数据速率。由于高速率的串行链路的电子元件和硬件的成本较昂贵,因此,就采用中速率(B级)41.6kbps的J1850网络来管理挂车的牵引和制动,而CAN2.0只用于支持主车发动机的各个ECU,这样,在载货车和大客车大客车上献出现了连接异型网络的网关(图11)
同样原理,原实施SAE—J1650B级通信速率的小客车,感到发动机、自动变速器、ABS等系统的数据速率偏低,想提高通信速率以改善汽车的控制性能,又不能让汽车成本增加太多,就将原实施J1850的汽车增加一网关(图12),并将网关前方的总线修改为CAN总线。


八、CAN与J1850桥接网关硬件的配置
CAN与J1850桥接的网关硬件主要由四部分组成(图13)
(1)87C196KR微控制器。该微控制器为16位,16MHz,经编程后使CAN和J1850控制器互通。87C196KR实际上就是网关。87C196KR利用端口引脚产生通至网络各个控制器的复位和片选信号。作为一输入配置的端口引脚,从网络控制器的开式 — 漏极输出端接收中断信号。87C196KR至82527的借口使用8位多路复用地址/数据总线。

高位地址译码,生成片选数据至83527。其他总线信号(ALE,RD# ,WR#)控制总线操作,87C196KR跨接一个串行外围借口SPI与MC68HC57互通。87C196KR同步串行输入/输出外围设备控制SPI接口。


(2)82527—CAN控制器。82527是执行CAN2.0规范的全特性CAN器件。该芯片具有能提供大量发送/接收配置的15个信息客体。网关虽只有1个16位多路复用接口,但可利用82527的8位同步和异步非多路复用接口及1个SPI接口。另外,82527还配置有1个缓冲接收信息客体,用来从CAN总线接收扩展信息。13和14号接收的标准信息交替构成有效/无效,以执行缓冲接收。这样能给微控制器有更多的时间处理信息。其他的12个信息客体发送信息。堆栈通过存储在其上的相应信号数据跟踪可用的信息客体(图14),如果需要1个信息客体,一个可用的信息客体号数就被堆栈“弹出”(亦称出栈)。如果1个信息客体已被发送,它的信息客体号数就被压回堆栈。这种类型的堆栈,对管理配置在这一事件传输的多条信息是很有用的。



(3)MC68HC57数据链路控制器。MC68HC57处理J1850的总线占控度。芯片上收发器让芯片直接到J1850总线上。MC68HC57缓冲发送和接收通过串行口编程的87C196KR只能操作与1MHz。
87C196KR发送第1个字节装有数据、第2字节装有命令的2字节系列串行信息给MC68HC57,命令又包括装入1条发送信息、取出1条接收信息、读出一状态字节,然后配置MC68HC57中断发送和支持接收。
队列用于管理J1850传输(图15),由于MC68HC57具有发送FIFO的内存缓冲区,队列被用于保持FIFO的全发送。随着传输的进行,从队列中检索出的信息馈入MC68HC57中。

(4)CAN总线驱动器,CAN总线驱动器是一组用于驱动连接到CAN总线上的逻辑元件的功率放大器。它具有三态特性,即除了高、低电平输出外,还具有高阻抗状态,便于收控不见在逻辑上暂时与总线断开。当总线上连接的器件较多时,呈现容性负载,会减慢数据传送速率,影响网关硬件的正常操作时序,加入驱动器后可以减小容性负载的影响。



九、CAN与J1850桥接软件的流程
CAN与J1850的桥接软件流程如图16所示。流程涉及到两个网络之间的控制器配置、通信量管理和信息翻译等。
流程已开始,两个网络控制器的硬件复位。网关用输出引脚保持复位低(低态有效信号)15ms,接着配置网络控制器。网关对82527的控制寄存器、CPU接口寄存器及总线配置、位定时和认可屏蔽等各个寄存器写,让82527的前12个信息客体失效,配置15号信息客体接收扩展信息,培植13和14号信息客体接收标准信息。由于两种信息客体得到管理,因此接收功能被缓冲。堆栈上创设了1个存储可用信息客体发送表,堆栈上的任何信号数都可用来发送1个未来信息。

MC68HC57通过发送1个配置字节而初设。82527初始位被清除,两个网络控制器联机准备实施桥接功能。
网关开始环路等待中断,一旦中断发生,网关必须确定收到的是CAN还是J1850的信息。通过读82527的中断寄存器可很快地确定中断源。非零值表示已发生1次中断。如果82527是中断源,网关效验接受中断(信息13—15)或发送中断(信息1—12),表明传输正常。如果82527不是中断源,网关则读MC68HC57的状态字节,确是接收发生的中断还是发送发生的中断。
十、J1939、就、J1922和J1857汽车网络标准的物理层特性
通过表7的7个方面的对比,可看出网络标准物理层特性的差别。


表中“1”的线路驱动器,是通过传输线或其他电路传送模拟信号或数字信号的一种放大器,“放大”的目的是为了解决线路上连接器渐增多造成数据传送速率减慢脑的缺陷。
RS—485时美国电子工业协会(EIA)关于多点通信线路的一个标准,它使用DB—37或DB—9连接器构成线路连接,使用具有三态特性的驱动器,利用低阻抗驱动器和接收机。RS—485允许在线路上接入的节点多于46个。
从表7种还可对比看出J1939的一些优良特性,其物理层工作在较高的信号传送速率(250kbps),约为J1922和J1587的26倍;最多节点数可达3个;线性总长40m并带有少于1M长度的T型连接器。这种连接器可作3个不同方向的连接,并可作为总线式或环式网络中的电缆分制器。具体使用时,其中间端口接网卡,另外两个端口接同轴电缆。线性总线是1根带有漏极引线和每个断电有终端电阻器的屏蔽双绞线,漏极引线为网络的连接点(如控制器)缚接和添加屏蔽提供了方便。程序模块通过3脚非屏蔽的连接器连接到网络上。3脚连接器中的1脚经非屏蔽的连接器的另一半配对接通屏蔽(图17),因此保持了屏蔽的连续性。


对于J1939网络屏蔽的配置和覆盖域,假设所用电子控制装置ECU为30个,可由图18表示。

十一、J1939、J1922和J1587网络标准的数据链路层特性
通过表8中的8个方面的对比,可看出这3个网络标准数据链路特性的差别。从表8中可看出,SAE—J1939的数据链路层采用的是Bosch公司的CAN2.0b,有29位标识符;可用标记在J1587的基础上增至8672个,其目的是为了扩展动力系统的用途,使之能适于低等级公路等苛刻的条件。


十二、SAE—J1939与Bosch—CAN数据帧的顺应性
J1939数据链路层采用CAN2.0b作为信息规约。标识符有两段长度规格:11位标识符是CAN的标准帧规格,18位字段时CAN的扩展帧规格(图19)。CAN2.0的29位标识符与J1939的要求是一致的。途中的内容可参考前述的CAN1.2与CAN2.0的信息格式。

J1939与CAN数据帧的顺应性可由两种J1939定义的协议数据单元PDU的格式作出判断(图20)。PDU中的每一个字段,表示在某一传送形势下获得的传输能力。从图中可看出两种PDU的格式和位字段及它们的相互依赖关系。
协议数据单元专用(PS)字段为8位长度,该字段要么是目的地址(DA),要么就是扩展数据内容(EDC),也就是说,依据于数据内容字段之值:如果数据内容字段值为0—239,则协议数据单元专用字段为一目的地址;若数据内容为240—255,则为一扩展的数据内容字段。


优先(P)字段为3位长度(图19),该字段时用来确保在J1939的整个寿命期间,被定义的数据内容能获得较高的优先级。优先字段被看作CAN起始帧(SOF)之后总线判优过程的头3位标识符。J1939给定的任何优先(P)部分都作了定义,但这些值都可能被汽车系统末端的积分电路所调整。也就是说,如果J1939重新定义了新的命令,该命令比原先定义的命令要求更高的优先,那么优先就需要调整。
保留(R)字段为1位长度,该字段用来增加数据内容标记数——从8627增至17344(2页增至4页)。
数据页(DP)字段为1长度,并在2页数据内容标记之间作选择,每夜有4336个标记。该位将汇同保留(R)位形成4页标记。
数据内容(DC)字段为8位长度,它用来对信息中数据字段的数据作标记该数据标记与优先字段或源地址字段无关。不过,可以选择旋钮西接收器察看信息源,决定是否使用所接收的数据。
源地址(SA)字段为8位长度,它用来标识信息源。SAE拟定了两种地址分配:第一种开始于零并向浮动边界增长,每次分配1个地址,这种地址分配的应用是针对主车,执行传输控制类的1个子系统功能;第二种使用1种模块的原理,每个模块耗用8个地址。模块的分配开始于247并向第一种与第二种抵制类型之间的浮动边界增长。这种地址分配的应用主要针对非公路运输机械设备及农业机具等。
数据字段为0—64位长,它用来传送与数据内容标记有关的数据。如果与某个数据内容标记有关的数据超过64位,该字段就通过1个独立的传输协议跨越网络进行通信。该独立的传输协议允许与它有关的数据内容标记达1785数据字节。
总的说来,J1939的优先(P)、保留(R)、数据页(DP)、数据内容(DC)、协议数据单元专用(PS)和源地址(SA)等字段位长之和共计29位,与CAN的标准标识位11位及扩展标识位18位之和相等;另外,J1939的数据字段0—64位也与CAN的数据字段相等。可以认为J1939与CAN数据帧的顺应性良好。
十三、J1939、J1922和J1587网络标准的应用层特性
通过表9中的5个方面的对比,可看出3个网络标准应用层特性的差别。从表中可看出,J1939发动机和变速器控制信息的更新周期最短,应用范围较宽。


十四、汽车多个ECU之间的典型网络布局
常见的有分级式和分开式两种布局。
(1)采用J1939标准的分级式。该结构将整个网络分成不同功能层级(图21),并用特制的微机对不同层级进行处理和控制。这种网络布局具有超过30个ECU的容量。



(2)采用J1587/J1708标准的分开式。在这种网络布局(图22)中,各个网络都有自己的操作系统,相互之间用桥接器来处理多个ECU之间的通信。

全球汽车精选

视觉的盛宴

Copyright © 湖北电线价格联盟@2017