![](/mb/picture/logo1.jpg)
所需要采集的信息量比较多,各种车型的信息参数又差别较大,这样一些问题的存在给仪表的实车测试和参数标定带来了困难。为了在开发过程中能快速有效地检测系统的各项功能,提高系统开发效率,我们设计了一套测试系统,它能够模拟产生汽车上的各种参数信息,快速地对设计仪表做全面的测试,节约台架或实车测试时间,降低测试风险。
汽车智能数字仪表检测系统的开发要求针对不一样的车型,能够模拟产生出仪表所需的各种采集信号信息,还可以通过CAN接口与被测仪表进行通信。本文介绍的检测系统包括以下主要功能:
数字仪表具有CAN通信接口,作为一个CAN节点,可以与车上CAN网络上的其他节点进行通信。
数字仪表检测系统的硬件系统最重要的包含主控制器、PXI板卡、信号接线盒、数据通信转换板卡、供电电源以及被测试仪表等主要部分。NI提供的PXI模块化板卡设备具备了体积小、速度快、易扩展等特点,因此在硬件设计方面我们采用了PXI板卡发生汽车仪表所需的各种信号。汽车数字仪表的里程表与发动机转速表需要采集的是数字脉冲信号,不同的车型由于采用的传感器不同,所输出的脉冲信号高电平从3V~12V不等,为了可以测试设计仪表的信号范围适用性,采用PXI-6624板卡,配合外部供电电路,能够产生仪表所需采集的数字脉冲信号。PXI-6624是工业级隔离的32位定时器/计数器PXI接口板卡,具有8路隔离的通道,我们采用Couter0和 Counter1作为车速表和转速表的脉冲信号提供通道。燃油表和水温表采集的是模拟信号,PXI-6233能够输出4路10V模拟电平信号,PXI-6713能够输出8路10V模拟电平信号,我们最终选择PXI-6713的2个模拟输出通道作为燃油表和水温表的模拟信号提供通道。由于仪表上的开关量信号比较多,他们之间产生的干扰随着也比较大,我们选用PXI-8528对仪表的开关量来控制,PXI-6528是高速隔离的数字I/O通道,输入和输出通道分别独立,有效的抑制了信号之间的干扰。
仪表参数的标定以及作为CAN 节点与车上其他CAN节点的数据通信,采用一块数据通信转换卡来完成,该卡的基本功能是完成串口信号与CAN信号之间的转换功能,开发数据通信转换卡的目的一是为了节省本金,二是考虑到大多数PC没有CAN接口。通过这一个板卡对被控仪表的特征参数,如车辆的特征系数、传感器的传感系数、发动机的速比以及仪表的一些标定参数等进行设定。由于目标车型不确定,仪表的一些特征参数需要实车测试才能最后标定,所以该板卡可作为以后仪表参数标定用。
仪表检测系统软件采用NI公司的LabVIEW8.20平台做设计,本系统采用LabVIEW的图形化程序语言,以一种很直观的方法建立前面板人机界面和程序框图。前面板是用户可见的,类似传统仪器的操作面板,利用工具模板从控制模板中添加输入控制器和输出指示器,控制器和指示器种类可选择。程序框图是支持虚拟仪器实现其功能的核心,对程序框图的设计涉及节点、数据端口和连线的设计。连线代表数据走向,节点则是函数、VI子程序、结构或代码接口。本检测系统考虑到仪表整体功能测试和模块功能测试的需要,总系统最重要的包含界面模块和各个功能测试模块,根据信号类型将仪表功能测试分为:车速表测试模块、发动机转速表测试模块、燃油表测试模块、水温表测试模块、开关量测试模块、CAN通信测试模块以及参数设置模块等基本功能模块。汽车仪表检测系统的软件总体功能框图如图2所示。
测试平台左侧是各种模块功能测试的切换按键,可以切换到单个功能模块的测试项目。右侧主界面模拟汽车仪表板的显示界面,如车速表、转速表、水温表、燃油表、里程指示以及各种报警和开关信号等信息数据显示。在来测试实验中,工作人员通过主界面即可观测到仪表测试的整体功能,主界面如图3所示。
车速表的测试需要预先了解设定目标车型的特征参数,如车辆特征系数、车速传感器的传感系数等,然后通过数据通信卡(CAN总线信号)将特征参数下载到被测仪表,按照测试要求产生脉冲信号,信号的幅值、频率能通过手动/自动做调整,车速信号具备超速报警提示功能,根据设定的超速门限值,高于该门限值时,通过主界面前面板上的超速报警灯闪烁提示。测试过程也可以手动/自动进行,测试结果存档以备查询。软件测试状态转移图见图4。
车速表测试模块的设计采用状态机设计模式,大致上可以分为开始、获取参数、手动/自动选择、采集(手动)、检查时间(自动)、输出信号和停止等状态。其中参数的获取主要是获取前面板上特征系数和传感系数的参数值,通常,这两个值在仪表参数标定的时候需要在线修改。检查时间是指按照程序规定的时间输出规定的信号,本系统中采取V模式阶梯状的车速变化趋势对仪表来测试,见图5。
发动机转速表测试模块类似于车速表测试模块,不同之处在于它的特征参数不同,根据特定车型的情况,通过数据通信卡(CAN总线信号)把发动机转速比下载到被测仪表,然后对其进行测试。
燃油表的测试需要预先设定目标车型的燃油测试范围以及燃油门限报警值,通过数据通信卡(CAN总线信号)将参数值下载到被测仪表,然后按照测试要求开始测试跟据设定的燃油门限值,低于该门限值时,通过主界面前面板上的燃油报警灯闪烁提示。测试过程可以手动/自动进行。燃油表的测试采用状态机的设计模式,大致上可以分为开始、获取参数、手动/自动、采集、检查报警、输出信号等状态。水温表的测试同燃油表,在此不做具体说明。
所有的模块测试之前第一步是要对该模块的参数进行初始化,如进行特征系数、传感系数、发动机速比、超速门限、燃油门限、水温门限以及测量范围等参数的设置。数据通信采用CAN协议,鉴于成本方面考虑,我们在LabVIEW上对串口做相关操作,然后通过数据转换板卡输出CAN信号,CAN信号直接与被测仪表进行数据通信,因此,需要定义一个简单的CAN通信协议。检测系统作为CAN网络上的一个节点,节点ID号能够准确的通过需求自行设定,数据区域由命令字、数据长度、数据、校验位组成。图6和表1是仪表参数设定CAN通信简单协议。
采用NI系列PXI板卡以及灵活方便的LabVIEW软件平台,使得我们在短期内构建一套汽车数字仪表产品研究开发、测试、评估多功能于一体的测试平台,通过对实际仪表的测试,根据结果得出该套检测系统能快速准确地完成对被测仪表的各项功能测试,并且该系统具备可扩展性,可以很方便地移植到别的产品的测试方案中,为我们后续汽车电子科技类产品的研发积累了测试经验。