CAN总线在汽车控制系统中的研究与应用
时间:11-04
来源:作者:姜竹胜 王启瑞 陈无畏
点击:
一、引言
随着汽车计算机控制技术的不断发展,现代汽车上的计算机控制系统越来越多,联系也越来越紧密。如发动机控制、变速控制、制动防抱死控制、安全气囊控制、照明控制、空调控制、仪表管理等。原来的汽车上这些计算机控制单元之间往往没有通过总线构成网络,而是独立进行控制,或者相关控制单元通过串行口进行联系。现在很多汽车采用CAN(Controller Area Network)总线将它们联系起来,但是现代汽车计算机控制单元多,各控制单元对系统响应时间的要求不一样。有些系统对实时性要求很高,系统指令发出以后如果得不到执行器的及时响应,就可能造成严重后果甚至车毁人亡,如制动防抱死控制单元、安全气囊等;而有些系统如照明控制、空调控制等对系统的响应时间要求就相对较低。
由于计算机控制单元越来越多,采用单网络CAN总线负荷很重,笔者通过分别构造高、低速CAN网络,对实时性要求高的计算机控制单元采用高速CAN网络传输;其它采用低速CAN网络传输,并采用微控制器兼作网关。使得传输线束大大简化,可靠性大大提高。
二,CAN总线的技术特性
CAN(Controller Area Network)总线是一种串行多主站控制器局域网总线。它具有很高的网络安全性、通讯可靠性和实时性,简单实用,网络成本低。特别适用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。通讯媒体可以是双绞线、同轴电缆或光导纤维,数据传输速率可达1 Mbits/s(此时通信距离最长为40m)。CAN总线还广泛应用于汽车、船舶、机器人、楼宇自动化等场合。
自CAN总线问世以来,为满足CAN总线协议的多种应用需要,相继出现了几种高层协议。目前大多数基于CAN总线的网络都采用CAN总线的高层协议。CANopen, DeviceNet和SDS是通常采用的高层协议,适用于任何类型的工业控制局域网应用场合,而CAL则应用于基于标准应用层通讯协议的优化控制场合,SAEJ1939则应用于卡车和重型汽车计算机控制系统。
三,基于P87C591的汽车计算机控制
(一) P87C591
P8xC591 是一个单片8位高性能微控制器,具有片内CAN控制器,从80C51微控制器家族派生而来。它采用了强大的80C51指令集并成功的包括了Philips 半导体SJA1000 CAN控制器的PeliCAN功能。全静态内核提供了扩展的节电方式。振荡器可停止和恢复而不会丢失数据。改进的1:1内部时钟预分频器在12MHz外部时钟速率时实现500ns指令周期。微控制器以先进的CMOS工艺制造,并设计用于汽车和通用的工业应用。除了80C51的标准特性之外,器件还为这些应用提供许多专用的硬件功能。P8xC591组合了P87C554(微控制器)和SJA 1000(独立的CAN控制器)的功能,并具有下面的增强特性:增强的CAN接收中断;扩展的验收滤波器;验收滤波器可"change on the fly"。
(二)系统实现
目前,汽车计算机控制已经涉及到动力性、经济性、安全性、可靠性、净化性和舒适性等诸多方面,具体包括发动机控制,变速器控制、巡行控制,制动控制,照明控制,空调控制,雨刷控制,仪表管理系统等,而且各种控制系统的电控单元(ECU)相互联系紧密,需要随时进行实时数据通信,CAN总线作为一种极具应用潜力的控制器局域网总线,近年来在汽车计算机控制系统中得到越来越广泛的应用,并已成为欧洲汽车制造业主体行业标准,代表着汽车电子控制网络的主流发展趋势。
汽车计算机控制系统中的所有这些子控制系统通过CAN,0.线构成一个实时控制系统网络,各控制单元的指令发出去之后,必须保证在一定时间内得到响应,要不然就有可能发生重大事故,这就要求汽车上的CAN通信网络有较高的波特率设置和可靠性。而且,汽车在实际运行过程中,众多节点之间需要进行大量的实时数据交换。若整辆汽车的所有节点都挂在一个CAN网络上,这么多节点通过一条CAN总线进行通信,信息管理配置稍有不当,就很容易出现总线负荷过大,将导致系统实时响应速度下降,这在实时系统中是不允许的。因此我们在对汽车上各节点的实时性进行了分析之后,根据各节点对实时性的要求,设计了高、低速两个速率不同的CAN通信网络。将实时性要求严格、可靠性要求高的节点组成高速CAN通信网络,将其它实时性要求相对较低的节点组成低速CAN通信网络,并架设网关将这两个速率不同的CAN通信网络连接起来,实现全部节点之间的数据共享。整辆汽车的通信网络拓扑结构如图1所示。
随着汽车计算机控制技术的不断发展,现代汽车上的计算机控制系统越来越多,联系也越来越紧密。如发动机控制、变速控制、制动防抱死控制、安全气囊控制、照明控制、空调控制、仪表管理等。原来的汽车上这些计算机控制单元之间往往没有通过总线构成网络,而是独立进行控制,或者相关控制单元通过串行口进行联系。现在很多汽车采用CAN(Controller Area Network)总线将它们联系起来,但是现代汽车计算机控制单元多,各控制单元对系统响应时间的要求不一样。有些系统对实时性要求很高,系统指令发出以后如果得不到执行器的及时响应,就可能造成严重后果甚至车毁人亡,如制动防抱死控制单元、安全气囊等;而有些系统如照明控制、空调控制等对系统的响应时间要求就相对较低。
由于计算机控制单元越来越多,采用单网络CAN总线负荷很重,笔者通过分别构造高、低速CAN网络,对实时性要求高的计算机控制单元采用高速CAN网络传输;其它采用低速CAN网络传输,并采用微控制器兼作网关。使得传输线束大大简化,可靠性大大提高。
二,CAN总线的技术特性
CAN(Controller Area Network)总线是一种串行多主站控制器局域网总线。它具有很高的网络安全性、通讯可靠性和实时性,简单实用,网络成本低。特别适用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。通讯媒体可以是双绞线、同轴电缆或光导纤维,数据传输速率可达1 Mbits/s(此时通信距离最长为40m)。CAN总线还广泛应用于汽车、船舶、机器人、楼宇自动化等场合。
自CAN总线问世以来,为满足CAN总线协议的多种应用需要,相继出现了几种高层协议。目前大多数基于CAN总线的网络都采用CAN总线的高层协议。CANopen, DeviceNet和SDS是通常采用的高层协议,适用于任何类型的工业控制局域网应用场合,而CAL则应用于基于标准应用层通讯协议的优化控制场合,SAEJ1939则应用于卡车和重型汽车计算机控制系统。
三,基于P87C591的汽车计算机控制
(一) P87C591
P8xC591 是一个单片8位高性能微控制器,具有片内CAN控制器,从80C51微控制器家族派生而来。它采用了强大的80C51指令集并成功的包括了Philips 半导体SJA1000 CAN控制器的PeliCAN功能。全静态内核提供了扩展的节电方式。振荡器可停止和恢复而不会丢失数据。改进的1:1内部时钟预分频器在12MHz外部时钟速率时实现500ns指令周期。微控制器以先进的CMOS工艺制造,并设计用于汽车和通用的工业应用。除了80C51的标准特性之外,器件还为这些应用提供许多专用的硬件功能。P8xC591组合了P87C554(微控制器)和SJA 1000(独立的CAN控制器)的功能,并具有下面的增强特性:增强的CAN接收中断;扩展的验收滤波器;验收滤波器可"change on the fly"。
(二)系统实现
目前,汽车计算机控制已经涉及到动力性、经济性、安全性、可靠性、净化性和舒适性等诸多方面,具体包括发动机控制,变速器控制、巡行控制,制动控制,照明控制,空调控制,雨刷控制,仪表管理系统等,而且各种控制系统的电控单元(ECU)相互联系紧密,需要随时进行实时数据通信,CAN总线作为一种极具应用潜力的控制器局域网总线,近年来在汽车计算机控制系统中得到越来越广泛的应用,并已成为欧洲汽车制造业主体行业标准,代表着汽车电子控制网络的主流发展趋势。
汽车计算机控制系统中的所有这些子控制系统通过CAN,0.线构成一个实时控制系统网络,各控制单元的指令发出去之后,必须保证在一定时间内得到响应,要不然就有可能发生重大事故,这就要求汽车上的CAN通信网络有较高的波特率设置和可靠性。而且,汽车在实际运行过程中,众多节点之间需要进行大量的实时数据交换。若整辆汽车的所有节点都挂在一个CAN网络上,这么多节点通过一条CAN总线进行通信,信息管理配置稍有不当,就很容易出现总线负荷过大,将导致系统实时响应速度下降,这在实时系统中是不允许的。因此我们在对汽车上各节点的实时性进行了分析之后,根据各节点对实时性的要求,设计了高、低速两个速率不同的CAN通信网络。将实时性要求严格、可靠性要求高的节点组成高速CAN通信网络,将其它实时性要求相对较低的节点组成低速CAN通信网络,并架设网关将这两个速率不同的CAN通信网络连接起来,实现全部节点之间的数据共享。整辆汽车的通信网络拓扑结构如图1所示。
图 1中的发动机控制、变速器控制、安全控制、防抱死制动控制(ABS)等控制单元节点是现代汽车动作的核心部件,对时间响应要求严
CAN总线 汽车控制系统 P87C591 SDS P8xC591 相关文章:
- 浅谈数据线扼流圈改善电磁兼容问题使汽车更加安全(06-23)
- CAN总线技术在汽车车身控制中的应用(03-28)
- 汽车电子须知 汽车网线与CAN总线的标准(04-17)
- 基于CAN总线重型汽车内轮差预警系统的设计(05-16)
- 利用CAN总线的进行汽车轮速传感器设计(06-27)
- 浅谈汽车车载网络的应用(07-07)