labview利⽤簇模拟汽车控制_基于LabVIEW和PXI的汽车智能
数字仪表测试⽅案
摘要
在汽车智能数字仪表的开发过程中,数字仪表所需要采集的信息量⽐较多,各种车型的信息参数⼜差别较⼤,这些问题的存在给仪表的实车测试和参数标定带来了困难。为了在开发过程中能够快速有效的测试系统的各项功能,提⾼系统开发效率,我们设计了⼀套测试系统,它能够模拟产⽣汽车上的各种参数信息,快速的对设计仪表进⾏全⾯的测试,节约台架或实车测试时间,降低测试风险。
利⽤NI公司的软硬件产品,结合⼀块⾃⾏研发的数据通信转换卡构成数字式仪表在线测试系统,系统模拟数字仪表测试所需要的车辆的各种状态参数和信号,包括模拟、数字、开关量及CAN等信号,驱动待测数字仪表,模拟车辆相关状态⼯作并反馈数字仪表的⼯作状态信息。通过NI公司的LabVIEW软件平台对整个测试系统进⾏开发,最终提供了⼀个完整的汽车智能数字仪表的测试⽅案。
系统设计:
汽车智能数字仪表测试系统的开发要求针对不同的车型,能够模拟产⽣出仪表所需的各种采集信号信息,并且能够通过CAN接⼝与被测仪表进⾏通信。本⽂介绍的测试系统包括以下主要功能。
1)车速⾥程表的脉冲信号模拟产⽣
2)发动机转速表的脉冲信号模拟产⽣
3)车辆燃油表信号模拟产⽣
4)车辆⽔温表信号模拟产⽣
5)各种车灯、车窗、车门等车⾝开关信号模拟产⽣
6)数字仪表具有CAN通信接⼝,作为⼀个CAN节点,可以与车上CAN⽹络上的其他节点进⾏通信。
系统硬件设计:
数字仪表测试系统的硬件系统主要包括主控制器、PXI板卡、信号接线盒、数据通信转换板卡、供电电源以及被测试仪表等主要部分。NI公司提供的PXIF7fa5f4adef4e53f3d9aeed9e2cc860c板卡设备具有体积⼩、速度快、易扩展等特点,因此在硬件设计⽅⾯我们采⽤了PXI板卡产⽣汽车仪表所需的各种信号。汽车数字仪表的⾥程表和发动机转速表需要采集的是数字脉冲信号,不同的车型由于采⽤的传感器不同,所输出的脉冲信号⾼电平从3V-12V不等。为了能够全⾯测试设计仪表的信号,采⽤PXI-6624板卡,配合外部供电电路,产⽣仪表所需的⼀系列数字脉冲信号。PXI-6624是⼯业级隔离的32位定时
器/计数器PXI接⼝板卡,具有8路隔离的通道,我们采⽤Couter0和Counter1作为车速表和转速表的脉冲信号提供通道。燃油表和⽔温表采集的是模拟信号,PXI-6233能够输出4路10V模拟电平信
号,PXI-6713能够输出8路10V模拟电平信号,我们选择PXI-6713或者PXI-6233的2个模拟输出通道作为燃油表和⽔温表的模拟信号提供通道。由于仪表上的开关量信号⽐较多,如刹车、左右转向灯、燃油报警、⽔温报警以及左右车门开关信号等,他们之间产⽣的⼲扰也⽐较⼤。我们选⽤PXI-6528对仪表的开关量进⾏控制,PXI-6528是⾼速隔离的数字I/O通道,输⼊和输出通道分别独⽴,有效的抑制了信号之间的⼲扰。
采⽤⼀块数据通信转换卡来完成仪表参数的标定以及作为CAN 节点与车上其他CAN节点的数据通信,该卡的主要功能是完成串⼝信号与CAN信号之间的转换功能,开发数据通信转换卡的⽬的⼀是为了节约成本,⼆是考虑到⼤多数台式机或笔记本没有CAN接⼝。通过这个板卡对被控仪表的特征参数,如车辆的特征系数、传感器的传感系数、发动机的速⽐以及仪表的⼀些标定参数等进⾏设定。由于⽬标车型不确定,仪表的⼀些特征参数需要实车测试才能最后标定,所以该板卡可作为以后仪表参数标定⽤。
整个测试系统硬件功能框图如图1所⽰。
图1 仪表测试系统硬件功能框图
系统软件设计:
仪表测试系统软件采⽤NI公司的LabVIEW 8.20平台。LabVIEW是基于图形化编程语⾔的虚拟仪器软件开发平台,具有功能强⼤的函数模块库,特别适⽤于测试和控制系统的开发。结合NI的硬件模块,能够⽅便的进⾏采集和分析相关测试数据。考虑到仪表整体功能测试和模块功能测试的需要,整个系统主要包括界⾯模块和各个功能测试模块。根据信号类型将仪表功能测试分为:车速表测试模块、发动机转速表测试模块、燃油表测试模块、⽔温表测试模块、开关量测试模块、CAN通信测试模块以及参数设置模块等主要功能模块。汽车仪表测试系统的软件总体功能框图如图2所⽰。
图2 仪表测试平台软件总体功能框图
汽车油表
1.界⾯模块
测试平台左侧是各种模块功能测试的切换按键,可以切换到单个功能模块的测试项⽬。右侧主界⾯模拟汽车仪表板的显⽰界⾯,如车速表、转速表、⽔温表、燃油表、⾥程指⽰以及各种报警和开关信号等信息显⽰。在进⾏测试实验中,⼯作⼈员通过主界⾯即可观测到仪表测试的整体功能。主界⾯前⾯板如图3所⽰,控制框图如图4所⽰。
图3主界⾯前⾯板
图4 主界⾯功能控制框图
2.模块测试设计
车速表的测试需要预先了解设定⽬标车型的特征参数,如车辆特征系数、车速传感器的传感系数等,然后通过数据通信卡(CAN总线信号)将特征参数下载到被测仪表,按照测试要求产⽣脉冲信号,信号的幅值、频率可以通过⼿动/⾃动进⾏调整,车速信号具备超速报警提⽰功能,根据设定的超速门限值,⾼于该门限值时,通过主界⾯前⾯板上的超速报警灯闪烁来提⽰。测试过程也可以⼿动/⾃动进⾏,测试结果存档以备查询。
图5 模块软件测试状态转移图
车速表测试模块的设计采⽤状态机设计模式,如图5所⽰。主要分为开始、获取参数、⼿动/⾃动选择、采集(⼿动)、检查时间(⾃动)、输出信号和停⽌等状态。其中参数的获取主要是获取前⾯板上特征系数和传感系数的参数值。通常,这两个值在仪表参数标定的时候需要在线修改。检查时间是指按照程序规定的时间输出规定的信号,本系统中采取三⾓波模式的车速变化趋势对仪表进⾏测试,它的控制框图如下图6所⽰。
发动机转速表测试模块类似于车速表测试模块,区别在于它的特征参数不同。根据特定车型的情况,通过数据通信卡(CAN总线信号)将发动机转速⽐下载到被测仪表,然后对其进⾏测试。
燃油表的测试需要预先设定⽬标车型的燃油测试范围以及燃油门限报警值,通过数据通信卡(CAN总线信号)将参数值下载到被测仪表,然后按照测试要求开始测试。根据设定的燃油门限值,低于该门限值时,通过主界⾯前⾯板上的燃油报警灯闪烁提⽰。测试过程可以⼿动/⾃动进⾏。
燃油表的测试采⽤状态机的设计模式,主要分为开始、获取参数、⼿动/⾃动、采集、检查报警、输出信号等状态。⽔温表的测试同燃油表,在此不做具体说明。
图6 车速测试模块控制窗⼝
3.CAN通信测试模块
所有的模块测试之前⾸先需要对该模块的参数进⾏初始化,如进⾏特征系数、传感系数、发动机速⽐、超速门限、燃油门限、⽔温门限以及测量范围等参数的设置。数据通信采⽤CAN协议,鉴于成本⽅⾯的考虑,我们在LabVIEW上对串⼝进⾏操作,然后通过数据转换板卡输出CAN信号,CAN信号直接与被测仪表进⾏数据通信,因此,需要定义⼀个简单的CAN通信协议。测试系统作为CAN⽹络上的⼀个节点,节点ID号可以根据需求⾃⾏设定,数据区域由命令字、数据长度、数据、校验位组成。以下图7为CAN通信前⾯板图,表1是仪表参数设定CAN通信简单协议。
图7 CAN通信测试前⾯板
表1仪表测试参数设定CAN协议
测试结果分析
通过对现有车辆安装的数字仪表进⾏测试,各项关键指标如速度传感器和发动机转速传感器的测量误差均满⾜国标QC/T 727-2004的要求。同时作为CAN节点,根据特定的CAN应⽤协议,能够有效实现汽车仪表的参数设定及CAN⽹络通信。
总结
采⽤NI的PXI平台以及灵活⽅便的LabVIEW软件系统,使得我们在短期内构建了⼀套汽车数字仪表产
品开发、测试、评估多功能于⼀体的测试平台。通过对实际仪表的测试,结果表明该套测试系统能够快速准确的完成对被测仪表的各项功能测试,并且该系统具备可扩展性,可以很⽅便的移植到其他产品的测试⽅案中,为我们后续汽车电⼦产品的研发积累了测试经验。
参考⽂献:
[1] 雷振⼭. LabVIEW 7 Express 实⽤技术教程[M]. 北京:中国铁道出版社,2004.
[2] 周浩敏,王睿.测试信号处理技术[M].北京:北京航空航天⼤学出版社,2004.
[3] 杨乐平,李海涛,赵勇等. LabVIEW⾼级程序设计[M].北京:清华⼤学出版社,2005.
[4] National Instrument Co. LabVIEW Programmer Reference Manual[Z]. 1998.