技术中心
 
 

基于 CAN总线结构的并联液压混合动力车控制系统

   日期:2008-11-25     来源:中国测控网     作者:管理员    

摘 要:本文介绍了一种应用于并联液压混合动力车的控制系统。该控制系统采用基于CAN总线的分布式控制系统体系结构,确定了网络协议,并设计了控制系统的硬件平台和控制软件,最后对系统软硬件可靠性进行了设计。该控制系统可实现并联液压混合动力车的复杂控制,并具有良好的可扩展性,具有较好的应用前景。

关键字:并联液压混合动力车 分布式控制系统 CAN总线

Abstract: A CAN BUS based control system is introduced in this paper, which is designed for PHHV (Parallel Hydraulic Hybrid Vehicle). The control system adopts the distributed frame, which is more Flexible than the concentrated one. The hardware and software are designed, and especially the reliability design is introduced. The control system can meet the requirement of complicated control process of PHHV, and has well expansibility, so that will be a good application.

Key Words: PHHV , distributed control system, CAN BUS

1 引言

  目前,我国城市公共交通主要依赖公交车,站间距离一般在500~1000米。公交车在每站间有数次刹车和启动,在交通流量的高峰期,刹车和启动更加频繁,带来能源浪费、尾气污染加剧、部件寿命缩短等一系列问题。

  本课题研究的控制系统,可使并联液压混合动力车充分利用制动能量,在频繁刹车和启动的路况,可以明显提高车辆启动、加速和减速特性,改善车辆排放,降低油耗,延长发动机及刹车装置的寿命。而且与混合动力电动车相比,该系统在成本,技术成熟度,可靠性,维护性等方面均占有相当的优势。

  并联式液压混合动力车的动力传动系中有两种或两种以上的动力源可同时或单独提供动力,有两个或两个以上相应的执行元件可同时驱动负载,该动力传动系主要由发动机、变速箱、主减速器、液压蓄能器和液压泵/马达组成。并联形式保留传统车的动力传动链,只是在原传动链上增加了由液压泵/马达和液压蓄能器组成的能量再生系统,从而形成双动力驱动。

  目前,并联液压混合动力车技术已经比较成熟,如图1所示。

  车辆在启动和加速时,液压驱动系统提供辅助动力,释放蓄能器中储存的能量;车辆减速和制动时,液压驱动系统提供辅助制动力,并向蓄能器中储存能量。


图1 并联液压混合动力车结构原理图

2 控制系统网络结构

  CAN总线是一种有效支持分布式控制或实时控制的串行通信网络,优越性是显而易见的,同时,CAN总线也被认为是混合动力车最佳通讯结构,本文采用CAN总线网络来搭建控制系统。

  图如下图2所示,控制系统采用分布式控制,共有5个节点控制器,主要分布在车上控制量和采集量密集的地方,包括主控制模块、液压系统测控模块、液压充液控制模块、车辆信息采集模块以及发动机控制模块。


图2 控制系统网络结构

  主控制模块控制器采用配备了智能PC104 CAN控制卡的PC104计算机,其他模块控制器采用以P80C592单片机为核心构成。P80C592芯片本身集成有CAN控制器,A/D转换器,看门狗,使用该芯片使各控制节点小型化成为可能,在它的基础上扩展了外围模拟量和数字量的输入和输出,便于过程控制。

3 控制系统的通讯管理

  3.1 CAN总线节点地址分配

  对于以上述P80C592和PC104结构CAN通讯卡为硬件基础的CAN总线网络形式,节点之间通讯报文所用到的信息帧有两种:数据帧和远程帧。数据帧和远程帧的帧起始位之后都包括有标识符和远程发送请求位(RTR)组成的仲裁场。标识符的长度为11(ID.10~ID.0)位,包含信息帧目标地址特征。RTR位在数据帧中必须是“显性”电平,用以标记帧类型。

  节点报文接收器的接收滤波器由两部分组成:接收码寄存器(ACR)和接收屏蔽寄存器(AMR)。此两个寄存器均为8位:验收码位(AC.7~AC.0),验收屏蔽位(AM.7~AM.0)。当信息帧的报文标识符最高8位(ID.10~ID.3)满足下列等式:

  〔(ID.10~ID.3)=(AC.7~AC.0)〕或(AM.7~AM.0)=11111111B

  则该信息帧将被报文接收器接收。

  对于本系统的5个网络节点,定义各节点的验收码和验收屏蔽码如下:

  1#:ACR=81H,AMR=BEH;

  2#:ACR=82H,AMR=BDH;

  3#:ACR=84H,AMR=BBH;

  4#:ACR=88H,AMR=B7H;

  主机:ACR=A0H,AMR=9FH;

  根据上述节点地址分配,各节点均可实现对其它任意节点组合的信息发送。如主机对1#、2#、3#节点同时发送信息,则主机发送信息帧的标识符高8位可写为:87H或07H。

  可见对报文接收器而言,ID.10=0或1没有区别。但根据CAN总线协议,显性位“0”将比隐性位“1”具有更高的总线优先权。定义ID.10=0的信息帧为“快速帧”,ID.10=1的信息帧为“普通帧”。

  因此,上述地址分配方法具有以下优点:

  (1)容易实现单点对其他点任意组合的信息发送;

  (2)各节点具有不同的优先级,从1#到5#到主机优先级依次降低,保证发往关键节点的信号不被阻塞;

  (3)每个节点都有两种地址编码,且优先级不同,保证关键指令首先被接收。

  3.2通讯方式及信息帧分类

  由于分布式控制通讯量较大,对信息进行分类和规定相应的协议将有利于软件的标准化,提高编程效率和程序的可靠性。首先,依据CAN总线协议标准,定义以C语言描述的CAN信息帧格式:

  struct CAN_MSG

  {

  unsigned char CAN_FLAG;

  unsigned char CAN_DLC;

  unsigned char CAN_DATA[8];

  };

  其中CAN_FLAG是信息目标标识符,CAN_DLC含远程帧信号位、帧定义描述和数据帧长度信息,CAN_DATA为8字节数据。

  依据信息的流向、总线优先级和作用的不同,将通讯信息分为5类,其具体定义如下(按优先级从低到高排列):

  (1)远程帧:由主机以一定节拍发往各控制器,击活相应控制器的状态帧发送。目的是使主机能在规定的时间内获得电动车的状态信息,同时减少因各控制器自动发送状态帧而引起总线阻塞。

  格式:CAN_FLAG采用“普通帧”点对点编码;CAN_DLC=0xF0;CAN_DATA为空。

  (2)状态帧:由控制器发往主机或其他控制器。状态帧返回当前命令执行状态和采集量信息,作为上层控制器执行下一步规划的标志。

  格式:CAN_FLAG采用“普通帧”点对点、点对多编码;CAN_DLC=0xE8;CAN_DATA[0]为状态或信息数据标识,确定后续数据的含义;CAN_DATA[1]~ CAN_DATA[7]为数据。

  (3)间接命令帧:由主机发往控制器,或由某运行复合动作元的控制器发往其他控制器。间接命令帧含有复合动作元或动作元指令,接收方必须对命令进行分解才能产生驱动外设动作的控制元指令。

  格式:CAN_FLAG采用“普通帧”点对点、点对多编码;CAN_DLC=0x60+DLC,DLC等于有效数据的字节数;CAN_DATA[0]为状态或信息数据标识,确定后续数据的含义;CAN_DATA含有具体指令信息。

  (4)直接命令帧:发送方向同间接命令帧。但该命令帧所含命令将被接收方直接执行,驱动控制元动作,因此,应具有比间接命令帧更高的优先级。

  格式:CAN_FLAG采用“快速帧”点对点、点对多编码;CAN_DLC=0x20+DLC,DLC等于有效数据的字节数;CAN_DATA含有具体指令信息。

  (5)紧急命令帧:从检测到紧急状态的控制发往其他相关控制器。此命令具有最高优先级,用以在检测到紧急状态时,快速执行相应动作、避免事故发生。该命令将被接收方直接运行。

  格式:CAN_FLAG采用“快速帧”点对点、点对多编码;CAN_DLC=0x00+DLC,DLC等于有效数据的字节数;CAN_DATA含有具体指令信息。

  3.3 软件设计

  CAN总线为分布式控制提供了良好的硬件基础,使各节点的通讯不再是制约分布式控制实现的主要因素。整个系统从本质上说已经不存在主、从节点之分,整个系统的控制的控制已经从传统网络中主节点的单一控制(这种体系结构要求上位机具有大容量的程序存储器和高运算速度,必然造成上位机的大型化),转化为各节点的协调控制,整加了系统控制的灵活性,也同时降低了对主节点的要求。


图3 控制器1#,3#输入输出参数

  如上图3所示,车辆信息采集模块采集车速、发动机转速、档位信号(前进、空档、倒车)、油门踏板及刹车踏板的状态及幅度。液压系统测控模块采集蓄能器的压力,控制离合器的吸合与断开,通过油路控制(4个开关量)实现油路分配控制,最后通过液压泵/马达控制实现液压系统回收/释放功能及强度。

  各节点控制器均能独立完成部分命令分解和调用底层指令的功能。这样,对于某一动作元而言,节点控制器将充当“命令主机”。下面以“液压系统运行调节”这一复合动作元执行时,1#,3#控制器流程图(如图4,图5所示)为例,说明各控制器在分布式控制系统中的作用。可以看出,在该指令执行过程中,3#控制器充当了1#控制器的“命令主机”。

 
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作