汽车车身上安装的电子器件和设备不断增多,例如:电动座椅、电动门窗、可开式车顶、可调式转向盘、空调系统等;还有各种车灯、雨刮器、电动门锁、除霜器、后视镜、喇叭、各种指示灯及各种数字式仪表(转速表、车速表、水温表、油量表)等。车用电子控制系统、传感器、执行机构和电线的数量也不断增加。汽车车身控制系统的功能是实现对车身上各种器件方便灵活地综合控制。
在传统的车身控制系统中,采用线束通过点对点的方式实现各种电子器件之间的相互连接和对其进行直接控制。但是随着器件的增加,使汽车内部的线束日益复杂、车内可利用空间变得越来越小,且由于线路复杂、故障率增加,造成汽车的制造成本提高,设计和维护难度也不断增加,可靠性却大大降低。如何对车身控制系统进行改造,解决上述遇到的问题,受到越来越多国内外汽车业内人士的关注。
二、总线式车身控制系统
传统的车身控制系统中的线束不仅用来传递信号,而且借助于线束及继电器和开关的触点来实现各种器件之间的控制逻辑。由于各种器件分散在车身的各个部位,因此车身控制系统更适合采用分布式控制系统来构建。
新型的车身控制系统采用1根总线来代替繁杂的点对点的线束,引入软硬件相结合的智能控制节点来构建车身控制系统。其方法是把各种器件连接到分布于车身中的多个智能控制节点上,每个智能控制节点都是拥有一定计算和存储资源的嵌入式处理单元。智能控制节点通过总线连接在一起,通过智能控制节点中的软件来实现对各种器件的综合控制,也即用软件逻辑取代传统车身控制系统中的硬件逻辑,具有更好的灵活性和易维护性。
CAN是被广泛应用于汽车中的一种总线技术,采用CAN总线技术构建车身控制系统的网络平台,以串行结构的总线代替并行结构的线束,实现分布式多路传输,可方便地实现各部件之间的信息交互和共享;同时集成实时诊断、测试和故障报警等多种功能;并能通过信息屏直接给出故障位置,便于维护;任意增减功能而不会影响其它部分的工作。采用CAN总线技术构建车身控制系统的网络平台是未来的发展方向。
但如何设计和开发车身控制系统软件,建立便于使用的、规范化的建模和设计方法及相应的开发平台是需要解决的关键问题。
三、自动机模型建模分析
车身控制系统的状态体现为各种器件的状态,器件状态的改变是由用户操作、传感器检测等触发的离散事件驱动,从而导致系统状态动态演化。车身控制系统是个典型的离散事件控制系统,通常采用有限自动机模型进行建模。典型的有限自动机表示为一个五元组
A=(S,E,η,y0,Sm)(1)
式中S为状态集,E为事件集,η为状态转移函数,y0为初始状态,Sm为终止状态集。
S是个非空集合,y0∈S,SmAS,并且η:S×E→S。其含义是:若e∈E,s1∈S,s2∈S,当事件e发生时,系统的状态由s1转变为s2,η将S与E的乘积映射到S。
用有限自动机模型对车身控制系统进行建模,首先要确定系统的S,其次要给出系统的η。车身控制系统中涉及的器件多,并且器件的状态数目也较多,如果直接对整个系统进行建模,系统的状态空间S将会很庞大。
假设器件个数为20,每个器件的状态数为3,车身控制系统的状态由所有器件的状态决定,则系统的状态为所有器件状态的组合,对应的状态数为320,状态空间非常庞大。再考虑η可用状态转移矩阵、状态转移表或状态转移图的形式表示,三者具有等价性,可互相转换。以状态转移矩阵为例,用行表示状态机所处的当前状态,列表示将要到达的下一个状态,行列交叉处表示触发事件,则得到的是320×320的矩阵,状态空间更加庞大。
从以上的分析可以看出,用有限自动机模型对车身控制系统进行建模,系统的状态数存在状态组合复杂性问题。另外,用有限自动机进行建模,在系统所处的每1个状态上,任何时刻最多只执行1个操作,即只能描述顺序系统,而无并发描述能力,但车身控制系统中存在大量并发事件和并发行为。
针对用有限自动机模型对车身控制系统进行建模所存在的问题,作者提出一种新的车身控制系统的建模和设计方法—规则化描述方法。
规则化描述方法引入分层建模机制,将组成系统的对象分解为多层,建立系统对象的树状层次模型,用逻辑规则表达式描述系统对象之间的逻辑控制关系,用消息来传递控制关系。系统的控制任务被划分为多个子任务,分布到组成系统的各层对象中,从而有效地减小系统控制的复杂性。用消息机制可方便地实现对并发事件和并发行为的处理。
四、分层建模机制
采用规则化描述方法对车身控制系统进行建模,为降低系统设计的复杂性,将系统对象分解为部件和接口两层。将系统的对象按照组成关系进行分为多个子空间。对系统的划分遵循“高内聚、低耦合”的原则,从而有效降低控制的复杂性。系统的控制任务被划分为多个子任务,分布到组成系统的各层对象中。高层对象充当管理器的角色,协调系统各个组成部分之间的控制任务;低层是传感器和执行器等,直接与外界进行交互,传感器实时感知环境信息并递交给高层对象,执行器主要用来把控制器的指令变换为实际的物理动作并作用于环境。系统各层对象之间存在着逻辑控制关系,对象之间的逻辑控制关系通过消息进行传递,由低层发送到高层的是通告消息,由高层发送到低层的是控制(命令)消息。
车身控制系统由多个部件组成,每个部件包含一个或多个接口,形成如图1所示的树状层次模型。
其中部件是对系统中每个在功能上相对独立的器件的逻辑抽象,接口是对控制单元I/O口的抽象。例如:汽车的前照灯由左右2只组成,在非故障情况下它们始终是同亮同灭,便可在逻辑上将其定义为“前照灯”一个部件;前照灯又有远光、近光、开关等正常状态和开路、短路等故障状态。部件以及接口之间存在着逻辑控制关系,包括部件与部件之间、部件与接口之间、接口与接口之间的逻辑关系,将这种逻辑关系采用形式化的逻辑规则表达式来描述。
五、逻辑控制关系的规则描述
车身控制系统的状态由组成系统的所有部件和接口的状态的集合决定,事件引发系统状态变化,也即导致部件和接口的状态改变,如何改变和变化的过程由部件和接口的逻辑控制关系决定。逻辑控制关系由逻辑规则表达式描述,系统状态的变化体现为逻辑控制关系以消息的方式在部件和接口之间进行传递(当逻辑控制关系所涉及的2个部件位于不同的控制单元中时,控制消息通过CAN进行传送),并触发相应部件和接口的状态改变。
逻辑规则表达式,简称规则式,是对部件和接口的逻辑关系的形式化表示。逻辑规则表达式可以看作为ECA规则的简化。一条ECA规则可表示为
式中E、C、A分别为规则的事件、条件和动作;P为描述规则行为或状态的附加性质。
ECA规则的职能是:当规则事件发生时,系统实时地或在规定时刻检查规则的条件,如满足则执行规则的动作。
车身控制系统中的事件由用户操作或传感器检测触发,并引发相应器件状态的变化,因此事件在表达式中也可以作为条件进行处理,从而可以使表达式得到简化。
采用Backus Naur范式语法表示方法,给出逻辑规则表达式的形式化定义如下。
定义1(逻辑规则表达式)
逻辑规则表达式::=左件→右件
左件::=因子|因子&左件
右件::=因子|因子&右件
即逻辑规则表达式的一般形式为
因子&因子&⋯&因子→因子&因子&⋯&因子
表达式中符号“→”左边的部分称为逻辑规则表达式的左件,其右边的部分称为逻辑规则表达式的右件。左件和右件均由因子组成,当因子不止1个时,中间用“&”相连,表示“逻辑与”。左件因子是条件因子,右件因子是响应因子。
定义1给出逻辑规则表达式的语法形式,语义是:如果左件为真,即左件中所有的条件因子均为真,也即条件符合,则执行右件,即执行各响应因子。
采用Backus Naur范式语法表示方法,给出因子的形式化定义如下。
定义2(因子)
因子::=(因子名=因子值)
因子是逻辑规则表达式的基本组成单元,因子由因子名和因子值两部分组成,分
别代表部件/接口和其状态值。
车身控制系统中的控制行为和各部件之间的逻辑控制关系可方便地用逻辑规则表达式描述。
例如:对于下面的逻辑控制关系
如果 变光开关位于“近光”挡
灯光开关位于“大灯”挡
点火开关处于“ON”状态
那么汽车前照灯点亮近光灯
该逻辑控制关系可以形式化地表示为规则式
(变光开关=近光)&(灯光开关=大灯)&(点火开关=ON)→(前照灯=近光灯)
图2 规则化描述方法的规则处理过程
采用规则化描述方法对车身控制系统进行建模,关键就是采用近似自然语言的逻辑规则表达式来描述系统各组成部分之间的逻辑控制关系,形成规则库;规则库经过编码以后由系统的控制单元解释执行;最终系统的控制过程就是事件触发、规则匹配、规则执行以及消息传递的过程,如图2所示。要修改系统的控制逻辑,只要修改规则库中的逻辑规则表达式即可实现。
规则化描述方法的特点可以概括为以下几点。
1、自然性 与人的思维相似,直观、自然,容易理解和解释,便于人机交换信息。
2、模块性 规则式是规则库中最基本的单元,规则之间相互独立,不互相调用、修改,增删方便,容易扩充和完善。
3、清晰性 规则式有固定的格式,每条规则式都由条件和操作两部分组成,这种统一的格式既易于设计、控制,又易于进行一致性、完整性检测。
4、独立性 表示系统逻辑控制关系的规则库与执行规则的推理机相对独立,便于规则库的管理与维护,也便于推理机的设计与实现。
六、结论
1、基于CAN总线技术并采用规则化描述方法的车身控制系统的建模方法,构建相应的试验环境和仿真、调试、测试工具,并成功应用于试验车中。
2、使用规则化描述方法大大简化不同车型、不同功能的车身控制软硬件的开发和维护。
3、当汽车车型发生变化或汽车需要增加新的功能时,只需对由逻辑规则表达式等组成的用户描述文件进行修改,无需花费大量时间重新编制系统软件,提高了可重用性,缩短新型汽车的开发周期,降低开发成本。