随着汽车工业的发展和进步,人们对汽车的动力性、经济性、安全性及排放等方面提出了更高的要求,传统的机械式控制系统已经远远不能满足这些需要。电子化控制系统以其高精度、高速度、控制灵活、稳定可靠等特点逐渐取代了机械式控制系统,是汽车控制系统的发展趋势。
由于对控制性能的要求越来越严格,使得汽车电子控制系统对控制器的要求越来越高。控制器的开发与设计一般都要经过如图1所示的步骤,即由上层到底层,再由底层到上层的一个V字形过程。首先是控制器的上层功能设计,详细确定控制器将要实现的功能;然后生成目标程序代码;最后是控制器的底层软、硬件实现。
从控制器实现到实车测试的过程中还需要进行硬件在环实时仿真测试。这是因为在整车控制器的开发过程中,利用整车控制器硬件在仿真测试平台构建虚拟的整车现场环境。对控制器进行硬件在环仿真测试,不但可以大大加快整车控制器软、硬件的开发过程,而且开发成功的控制器具有较高的可靠性。因为仿真测试平台可以模拟出在实车试验中难以实现的特殊行驶状态和危险状态,从而对整车控制器进行全面的测试。控制器硬件在环仿真测试中,系统用数学模型来代替,控制器使用实物,系统模型和控制器之间的接口要与实际保持一致,在仿真调试完毕后,达到控制器和系统之间的“垂直安装”或“垂直集成”。控制器在完成硬件在环仿真之后,就可以进入系统集成和测试环节,最后实现初期设计的各项功能和指标。
本文基于Matlab/Simulink RTW 和XPC Real-time Target实时仿真平台,配合PCI数据采集卡底层软件的开发和信号调理装置硬件设计,系统地实现了燃料电池汽车整车控制器仿真测试平台。利用该平台可以对整车控制器硬件电气特性、底层软件平台和控制算法等进行测试。
硬件在环实时仿真测试平台方案设计
硬件在环实时仿真平台构建了虚拟的整车环境,并基于虚拟的人机交互司机模型,将人作为硬件在环的一个元素引入到实际的仿真测试中,具体结构如图2所示。两个基于工业控制计算机的虚拟平台分别为虚拟整车平台和虚拟司机平台。虚拟整车平台基于Matlab/Simulink xPC Target实时仿真环境,作用是模拟真实燃料电池客车的运行,为测试整车控制器提供所需的虚拟控制对象。虚拟司机平台基于Matlab/Simulink RTW Target实时仿真环境,作用是模拟真实燃料电池客车的操控机构,配合加速踏板为测试整车控制器提供所需的虚拟驾驶环境。当两个计算机虚拟平台对实际环境进行模拟时,通过数据采集卡、CAN通讯卡与可配置的信号处理装置相连,可配置的信号处理装置对信号进行处理,从而实现真实的复杂整车环境,直接与整车控制器连接进行仿真测试试验。并配有基于CAN总线的实时监控装置,可以全过程实时地监控仿真测试试验。
硬件在环实时仿真测试平台硬件设计
虚拟平台硬件设计
虚拟平台的硬件需要完成计算机模型产生的虚拟信号到真实信号的转换,这些信号包括数字量输入输出信号、模拟量输入输出信号和CAN通讯信号。例如燃料电池发动机启动开关信号属于数字信号,电机转速信号属于模拟信号,而控制器控制命令通过CAN总线网络进行传送。
虚拟平台的数字信号和模拟信号通过PCI接口的数据采集卡实现与真实世界的交换。采用的各种通讯卡一般都具有Matlab底层软件驱动程序,可以直接用于实时仿真。对于部分不支持Matlab实时仿真环境的数据采集卡, 可以采用Matlab/Simulink环境下的S函数编写,并在Matlab环境下调用动态链接库。本文采用的PCI1731、PCI1723和PCI1720板卡并不配套Matlab驱动程序,因此采用S函数进行集成。整个虚拟平台共具备32路数字量输入接口、32路数字量输出接口、32路数字量输入/输出复用接口、32路模拟量输入接口和20路模拟量输出接口。
虚拟平台产生或接收的CAN信号通过PCI总线与CAN通讯卡相连,由CAN通讯卡通过CAN总线与待测整车控制器进行通讯。虚拟平台支持CAN2.0A和CAN2.0B扩展协议,能够同时输出2路独立的CAN信号。
信号调理器硬件设计
由于燃料电池客车上的信号比较复杂,数字信号有24V、12V和5V等不同的驱动电平和驱动方式,模拟信号也有各种电压范围和驱动功率的不同需求。而从虚拟平台经过数据采集卡输出的信号比较单一,故经过信号调理器对信号进行调理后,才能够完全再现燃料电池客车上的真实控制接口,直接与整车控制器连接进行仿真测试。
虚拟平台产生或接收的数字模拟信号通过PCI总线与数据采集卡相连。数据采集卡与可配置的信号调理器之间通过专用的数据线进行数据交换,经过可配置的信号调理器对信号进行必要的放大、电平转换、逻辑转换后,输出信号完全符合实际整车信号规范,并采用标准接口与待测整车控制器相连,从而实现对整车控制器的无缝连接。通过调整可配置信号调理器的配置方式,可以实现各种车辆的不同信号规范。信号调理器为灵活的母板子板设计,母板完成通用的信号连接电源供给等任务,子板完成具体的可配置信号处理功能。母板和子板联合工作,可以根据用户的需要随时更换子板电路,以满足不同仿真测试的需要。
硬件在环实时仿真测试平台软件设计
虚拟整车平台软件设计
虚拟整车平台基于Matlab/Simulink平台构建了燃料电池汽车仿真模型,该模型包括燃料电池发动机、DC-DC变换器、蓄电池、异步驱动电机及车辆负载。系统各部件模型一方面需考虑模型精度,另一方面必须满足实时性的要求。整个模型在Matlab/Simulink xPC Target实时仿真环境上运行。整车仿真模型通过PCI数据采集卡和PCI CAN卡实现与驾驶员和整车控制器的通讯。
虚拟司机平台软件设计
虚拟司机平台实现了可供驾驶员操作的虚拟驾驶环境。除了驾驶加速信号由测试人员通过踏板输入外,其余整车启停开关、燃料电池开关、电机转速表、车速表、水温报警等控制开关和仪表均由虚拟司机平台实现。整个模型基于Matlab/Simulink RTW Target 实时仿真环境实现,并利用Matlab Gauges工具箱实现了整车仪表显示和控制开关输入。Gauges是Matlab在Simulink中提供的一款用于显示监控数据的仪表开发工具,利用Gauges工具箱可以在Simulink模型中快速地开发出虚拟车用仪表系统。虚拟司机仿真模型同样通过PCI数据采集卡和PCI CAN卡实现与驾驶员和整车控制器的通讯。
实时性能分析
Matlab/Simulink为实时仿真提供了很好的软件环境。Real-Time Workshop代码自动生成工具可以将仿真模型编译生成实时C代码,并支持多种实时仿真目标环境,包括Matlab工具箱RTW Target、xPC Target以及第三方软件,如dSPACE等。本文选择了xPC Target和RTW Target来构建虚拟整车平台和虚拟司机平台。
整车虚拟平台承担再现真实燃料电池汽车运行的任务,是整个测试平台的核心部件。由于燃料电池汽车结构复杂、控制对象较多,为了真实再现整车运行情况,系统各部件模型除了需要满足精度要求外,还必须严格满足实时性的要求。整车虚拟平台采用的xPC Target实时仿真环境采用目标机和宿主机的结构,由Matlab生成的实时内核通过软驱或者USB闪存独立运行在目标机上,直接调用CPU资源。仿真模型通过宿主机编译生成实时代码后下载到目标机上运行,能够实现严格的系统实时仿真。
虚拟司机平台采用的RTW Target实时内核直接运行在Matlab/Simulink环境中,在同一台PC机上就能够迅速实现系统的实时仿真。其缺点是由于整个系统在Windows系统下运行,实时内核不能完全占有PC机操作系统资源,实时性受其他运行程序的影响。由于驾驶员模拟操作对实时性要求不高,因此选择RTW Target实时仿真环境能够满足这一要求。
实时仿真信号定义
虚拟整车平台、虚拟司机平台的信号定义如表1、表2所示,与目标燃料电池汽车完全保持一致。虚拟整车平台定义了燃料电池汽车各部件控制器CAN网络节点协议以及整车控制器制动信号输入和整车车速输出。虚拟司机平台系统信号包括各种驾驶员指令输出以及驾驶员面板显示信息输入,并定义了一个数据采集CAN节点。虚拟整车平台与虚拟司机平台除了车速信号、CAN网络信号的联系,其他所有信号均是与整车控制器交互。
实验分析
利用仿真测试平台可以对燃料电池整车控制器进行软硬件实时在环测试。将整车控制器通过信号调理装置与仿真测试平台按照实时仿真信号定义将相应接口信号连接起来,再分别运行虚拟整车平台和虚拟司机平台,即可用于测试。
该燃料电池汽车硬件在环实时仿真平台已经成功地应用于“十五”燃料电池城市客车电控单元的开发。在控制器上车前即可对整车控制器数字、模拟信号的电气特性、控制逻辑和算法、故障诊断功能等进行检验。配合快速原型开发工具dSPACE可以完整地实现快速原型开发整车控制器测试流程。
基于本仿真测试平台的试验除了待测整车控制器为实际车用控制器以外,所有的测试环境均为仿真测试平台虚拟真实环境得到,并且从控制器角度上看与整车真实环境完全一致,从而实现了低成本地、便捷地、快速地对整车控制器进行各种测试,不但提高了整车控制器的开发效率,也完善了整车控制器上车前的必要测试过程,降低了整车控制器进行实车试验的风险及成本。该平台具有通用性,可以根据需要进行不同的仿真测试,并不局限于整车控制器的开发,具有广泛的应用前景。
整车控制器经过仿真平台的反复测试后将进行实际的实车试验,而从试验中获得的各部件数据又为仿真模型的进一步精确化匹配标定提供了条件,从而使仿真平台更符合实际。