汽车工业是技术密集、资金密集、综合性强、附加值高、经济效益好的产业。汽车工业的水平与规模是一个国家综合国力的体现。据统计,2002年,中国汽车的生产量为325万辆;2003年1至8月,国内汽车产量272.8万辆,同比增长36%;轿车销售量占国内汽车销售量的42.5%。我国已成为世界第五大汽车生产国。
汽车产业是我国国民经济的支柱产业;汽车电子产品是汽车的重要组成部分。将汽车电子产品分为车载电子产品和车控电子产品,并分析车控电子产品的嵌入式技术基础。通过对当前国际上主流车控软件标准OSEK/VDX的分析,提出我国自主发展车控电子的基于OSEK/VDX的产品开发流程;总结车控电子产品发展的趋势。
汽车电子化是现代汽车发展的重要标志之一。目前世界每辆汽车采用电子装置的情况已成为衡量这部汽车水平高低的主要标志。国外汽车电子系统在汽车价格中所占比例已达 30%以上(我国目前仅为10%以内),而且这一比例还在不断扩大。为了加强市场竞争能力,国外广泛采用 16~32位微处理器,以及广泛采用更先进的传感器,使汽车的功能从对汽车自身的控制管理扩大到“汽车-人-环境”这样一个大系统的信息获取、处理和控制。
与国外相比,我国的汽车电子工业起点低,技术装备水平较低,没有掌握核心技术。伴随着我国汽车需求的强劲增长,我们应抓住国外汽车生成基地向我国转移的机遇,大力发展自主产权的汽车电子控制技术,促进我国汽车电子控制产品开发水平升级。
汽车电子产品的分类及嵌入式技术应用
按照对汽车行驶性能作用的影响划分,可以把汽车电子产品归纳为两类。一类是车控电子——汽车电子控制装置。汽车电子控制装置要和车上机械系统进行配合使用,即所谓“机电结合”的汽车电子装置。它们包括发动机、底盘、车身电子控制,例如电子燃油喷射系统、制动防抱死控制、防滑控制、牵引力控制、电子控制悬架、电子控制自动变速器、电子动力转向等。另一类是车载电子——车载汽车电子装置。车载汽车电子装置是在汽车环境下能够独立使用的电子装置,与汽车本身的性能并无直接关系。它们包括汽车信息系统(行车电脑)、导航系统、汽车音响及电视娱乐系统、车载通信系统、上网设备等。
汽车电子的技术基础是嵌入式技术。在过去的几十年里,嵌入式技术发展迅速。随着后PC时代的来临,计算广泛的嵌入到应用中去,嵌入式系统将成为未来计算的主要存在方式。应用的牵引和计算环境的变迁推动了嵌入式技术的发展。嵌入式技术与行业的结合又带动了行业的发展。汽车的电子化、信息化是嵌入式技术在汽车行业的应用。
车控电子产品是一个个分布在汽车上的电子控制单元(ECU)、智能传感器(Smart Sensor)等功能单元器件。这些器件通过总线连接在一起组成一个子系统。它们可以以适合自己的协议,如Lin、J1939等进行通信。不同的子系统也通过总线组成更大的网络。其中智能传感器(Smart Sensor)是一个以工业现场总线为基础,以CPU为处理核心,以数字通信为变送方式的传感器和变送器的统一体。
车控电子产品系统平台——OSEK/VDX
为了满足日益庞大复杂的汽车电子控制软件的开发需要,实现应用软件的可移植性和不同厂商的控制模块间的可兼容性。1993年,德国汽车工业界联合推出了汽车电子的开放式系统及接口——OSEK/VDX(Open Systems and the Corresponding Interfaces For Automotive Electronics)规范,旨在为汽车上的分布控制单元提供一个开放结构的工业标准。OSEK/VDX 规范从实时操作系统RTOS(RealTime Operating System)、软件接口、通信和网络管理等方面对汽车的电子控制软件开发平台作了较为全面的定义与规定。
它所提出的一整套解决方案是未来汽车电子软件开发的发展方向。目前,一些公司推出了符合OSEK/VDX规范的操作系统并得到了OSEK/VDX委员会的认证,如 OSEK Works、OSEKOS、OSEKTurbo等。OSEK/VDX标准包括以下四部分:OSEK/VDX操作系统规范(OSEK Operating System,OSEK OS), OSEK/VDX通信规范(OSEK Communication,OSEK COM), OSEK/VDX网络管理规范(OSEK Network Management,OSEK NM)以及OSEK/VDX实现语言(OSEK Implementation Language,OSEK OIL)。采用符合OSEK/VDX标准的嵌入式实时操作系统可以提高产品代码的复用率、降低开发成本、缩短产品开发周期。使用兼容OSEK/VDX标准的嵌入式实时操作系统的应用架构如图1所示。
OSEK OS规范定义操作系统内核的实现机制和应用编程接口(API),包括任务管理机制、中断处理机制、事件机制、资源管理机制、报警器管理机制等及相关标准的应用编程接口。OSEK OS规范的实现机制见本刊网站。
OSEK COM规范(OSEK Communication Specification)为汽车ECU应用软件提供了统一的通信环境。通过定义应用软件通信接口以及ECU内部通信和ECU外部通信,OSEK COM规范提高了应用软件模块的可移植性。OSEK COM 提供了多种服务,以方便在任务与任务之间、中断服务程序与中断服务程序之间以及任务与中断服务程序之间发送数据。
OSEK COM 规范的目的是支持应用软件的移植性、重用性和相互合作性。应用程序接口隐藏了内部和外部通信的区别,同样也隐藏了不同的通信协议、总线系统和网络。
OSEK COM中的通信是基于消息的。消息包括了特定应用的数据。消息和消息属性通过OSEK实现语言(OIL)静态配置。消息的内容和使用方法与OSEK COM无关。OSEK COM允许0长度的消息存在。在内部通信情况下,交互层IL(Interaction Layer)使消息数据立即发送到接收方。在外部通信情况下,IL将1个或多个消息压缩成指定的交互层协议数据单元(IPDU),并把它们传递到下层处理,如图2所示。 内部通信的功能性是外部通信功能性的子集。交互层里的消息管理者是基于消息对象的。消息对象存在于发送端的是“发送消息对象”,存在于接收端的是“接收消息对象”。
3OSEK NM规范
对于由不同生产商生产的汽车ECU产品,它们有通过串行数据交换连接成网络的趋势。因此,为了避免重复劳动和缩短开发时间,需要有一个基础性的标准。OSEK NM规范(OSEK Network Management system specification)为提高ECU产品的网络互连能力提供了一个网络连接标准。OSEK NM任务的目的是提高ECU产品网络通信的安全性和可靠性。OSEK NM规范规定了网络管理的机制和应用编程接口(API)。采用OSEK NM规范的ECU产品具有以下功能:
◆ 经过授权后,每一个节点必须是可以访问的;
◆ 在允许访问失败的情况下,具有最大容忍限度;
◆ 支持网络诊断。
作为一个基础的配置,遵守OSEK规范的网络管理实现必须应用在网络的所有节点。每一个节点都能在规定的间隔内获得整个网络的状态信息。OSEK NM为网络监控提供了两种机制:一种是通过监控应用的消息进行间接监控;另一种是对于特定的网络管理利用标记机制进行直接监控。OSEK NM包括以下部分:
◆ OSEK NM与应用程序的接口(API);
◆ 节点监控的算法;
◆ OSEK NM与OSEK COM的接口;
◆ 转换到睡眠状态的算法;
◆ OSEK NM协议数据单元(NMPDU)。
OIL中的对象包括:CPU(处理器)、OS(操作系统)、Appmode(应用模式)、Isr(中断服务)、Resource(资源)、Task(任务)、Counter(记数器)、Event(事件)、Alarm(报警器)、Com(通信子系统)、Message(消息)、Ipdu(交互层协议数据单元)、NM(网络管理)。
结语
我国自主发展汽车车控产品尚处于起步阶段。本文简要介绍了车控产品的系统平台——OSEK/VDX规范,并给出了一个基于OSEK/VDX规范的简单的车控电子开发模型。在这个模型中,要求开发者熟练使用国际上主流的开发工具,以提高开发效率,缩短开发时间。
(转载)