基于CAN总线结构的并联液压混合动力车控制系统
制器,击活相应控制器的状态帧发送。目的是使主机能在规定的时间内获得电动车的状态信息,同时减少因各控制器自动发送状态帧而引起总线阻塞。
格式: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#控制器的“命令主机”。
图4 1#控制器流程
采用分布式控制方式,可以将主机从繁琐的逻辑控制过程中解放出来,对于主机的小型化、产品化有重要作用。
图5 3#控制器软件流程
4 系统的可靠性设计
硬件可靠性方面的工作很多,主要有以下两点:
(1)双时限看门狗:系统的每个节点控制器均采用了双时限看门狗电路。双时限看门狗有两个定时器:一个为短定时器(用单片机P80C592内带的),一个为长定时器(外部看门狗定时器MAX705)。短定时器定时为T1,长定时器定时为T2,0
这样,当程序进入某个死循环,如果这个死循环包含短定时器FeedDog语句而不包含长定时器FeedDog语句,那么长定时器终将溢出,使单片机复位。巧妙安排长定时器FeedDog语句的位置,可保证出现死机的概率极低。
(2)CAN总线系统的抗干扰性:为了增强CAN 总线节点的抗干扰能力,P80C592的CTX0和CRX0并不直接与82C250 的TXD和RXD相连,而设计为是通过高速光耦6N137后与82C250相连这样就很好的实现了总线上各CAN 节点间的电气隔离。应该特别说明的一点是,光耦部分电路所采用的两个电源是完全隔离的,否则采用光耦也就失去了意义。电源的完全隔离采用的是两个小功率DC/DC电源隔离模块。实现这些部分虽然增加了节点的复杂和成本,但是却提高了节点的稳定性和安全性。
82C250与CAN总线的接口部分也采用了一定的安全和抗干扰措施。82C250的CANH和CANL引脚各自通过一个5Ω的电阻与CAN总线相连,电阻可起到一定的限流作用保护82C250免受过流的冲击。CANH和CANL与地之间并联了两个
CAN总线结构并联液压混合动力车控制系 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)