1基于计算机控制技术的总线式汽车组合仪表校验系统开发崔浩汪激刘寅(上海交通大学机动学院1011研究室,上海200030)摘要:针对某引进车型CAN总线轿车仪表,采用工控机、基于单片机的数据采集器等硬件,与VB6.0平台上开发的软件构成了一套完整的性能校验系统。经实际应用表明,该系统具有测试精度高、开发成本低、抗干扰能力强、检测效率高、操作简单等优点。从硬件和软件两方面对测试系统的实现方法及功能进行了详细的介绍。关键词:汽车仪表;VB;性能;校验系统中图分类号:TP274文献标识码:AComputer-basedControlBusClusterCalibrationSystemCUIHao,WANGJi,LIUYin(SchoolofMechanicalEngineering,ShanghaiJiaoTongUniversity,Shanghai20030)Abstract:AcompletesetofperformancecalibrationsystemisconstitutedbythehardwareusingIPC,thedataacquisitionsystembasedonMCUandthesoftwaredevelopedontheplatformVB6.0.Practiceshowsthatthesystemhashighaccuracy,lowcost,highanti-interferencecapability,highdetectionefficiencyandtheoperationissimple.Themethodandfunctionsofthecalibrationsystembothfromhardwareandsoftwarearedescribedindetails.Keywords:Cluster;VB;Performance;Calibrationsystem0、引言随着汽车仪表的集成度、智能化程度的不断提高,以及市场对汽车仪表产品需求量的不断增长,对测试系统的性能要求也在逐渐提高。实用的测控系统包括可靠的数据通信、高精度的控制方法、实时数据管理功能和良好的用户界面等诸多方面的因素。一个集成化、智能化,能够自动测量、分析、图形或统计数据显示测试结果的测试系统越来越受到汽车仪表生产厂商的青睐。在Windows操作系统下,开发自动测试软件,并配套相应的硬件系统,可以对汽车仪表的各项性能进行自动检测,完成复杂、繁琐的测试工作,避免人为因素造成的误差。本文针对某引进车型CAN总线轿车仪表的性能校验要求,开发了一套完整的检测系统,包括基于单片机的数据采集器等硬件系统,以及基于VB6.0平台的测试软件系统。经现场实际应用验证,该系统具有测试精度高、开发成本低、抗干扰能力强、检测效率高、操作简单等优点。1、系统构成汽车仪表用于汽车驾驶中,给驾驶员提供信息提示、报警等功能。仪表上配置的器件种类繁多,包括信号指示灯、报警灯、车速表、发动机转速表、水温表、油量表、LCD显示器等。本测试系统针对某引进车型CAN总线轿车仪表的各项性能指标,在不同模式下,通过串口,采用CAN总线与仪表进行通信,并集成外部测量设备,完成对仪表各项性能的测试。基本测试项目有:(1)仪表各模块的电流量、电阻值;(2)产品内部性能参数校准;(3)校正指针的指示精度;(4)产品缺省信息配置;(5)验证仪表的校正精度。2、系统硬件结构2.1系统硬件结构框图工业计算机LPT1USBRS232A/D检测模块电流检测模块电阻检测模块信息配置模块指针校验模块ACLD-9185ACLD-9182A程控电源程控数据采集系统CAN接口卡ACL-7120打印机气动控制仪表校验台PCI2Fig.1CalibrationSystemHardwareFrameworkChart如图1所示,整个校验系统硬件平台可分为:气动控制仪表校验台架、测试功能模块、I/O接口电路模块和工业控制计算机等四个部分。2.2硬件系统所实现的功能系统中所有的测试硬件均采用模块化设计,每一个测试模块完成一项或几项测试任务。(1)测试系统的主控模块中,基于PCI接口的数字量I/O卡,通过连接功能扩展板卡实现在计算机的控制下,依次接通各个测量模块与仪表之间的电路,使得相应的测量模块得以启动或终止工作。(2)上位机通过RS232串口与程控电源、程控数据采集系统进行通信。设置仪表不同模式下的电压输出,读取各个测试项的测量值。(3)智能CAN接口卡通过USB接口与工控机连接,程序中通过调用外部DLL库函数来驱动智能CAN接口卡,实现上位机与仪表基于CAN协议下通信。在仪表的正常模式下,发送、接收CAN指令,对仪表指针的指示精度修正结果进行校验。(4)通过LPT1并口与打印机连接,打印当前不合格产品的信息(产品序列号、错误项名称、测试时间等),以便记录、查看历史测试情况。3、系统软件设计3.1系统功能需求测试软件主要分为检测和校验两部分。仪表检测包括:静态电流测试、工作状态下电源引脚电流、点火引脚电流、内照明引脚电流、各盏指示灯、报警灯的电流、引脚之间的电阻等。仪表校验是汽车仪表校验系统最重要的部分,包括:线路板微通道A/D值、车速表指针指示精度、发动机转速表指针指示精度、水温表指针指示精度、油量表指针指示精度等。测试的标准从产品数据库中读取,测试结果存入ACCESS数据库文件[1]。向仪表芯片中写入指针校验结果、出厂配置信息等。测试系统能够存储、打印不合格产品的条形码及错误项的测试结果。3.2软件开发的基本思想用VisualBasic6.0提供的MSComm控件来实现与外围设备的串口通信;由于WindowsXP操作系统不支持对IO端口的直接操作,因此需要调用WindowsAPI函数实现对WinI/O端口的控制[2];调用外部动态链接库(DLL)函数来驱动外部设备,例如智能CAN接口卡等,实现与仪表的通信。模块化编程是实现软件结构化设计的重要手段。测试软件采用模块化的思想。将每个测试任务写成一个结构完整、相对独立的程序模块,针对具体的测试要求,可以自由配置模块次序。采用模块化设计的软件,用户可以选择要进行的测试项目、修改测试参数,提高了程序的可配置性能,方便现场调试,能够满足不同的测试需求。3.3系统软件的产品测试流程汽车仪表测试部分软件流程如图2所示。下面介绍几个主要的测试项目。Fig.2CalibrationSystemTestProcess(1)初始化。主要完成读取系统信息配置文件、载入数据库中的测试标准、读取历史测试记录、初始化WinI/O端口、初始化RS232串口、初始化CAN接口卡、配置当前测试信息等工作。参数设置程序运行初始化主窗口界面修改测试参数测试开始扫描条形码NY结束保存结果测试下一个?异常处理打印信息校验指针精度写入配置信息校准指针精度读取芯片A/D值测试电流、电阻PPPPPNFFFFF3(2)电流电阻测试。该部分测试是通过RS232串口控制数据采集仪器,读取仪表端子上的电流值以及电阻值,经过对采集的数据进行软件上的标定,与数据库给定的值进行比较,判断该仪表是否合格,同时在软件界面给予显示。(3)芯片A/D值测试。在仪表的诊断模式下,通过RS232串口,按照仪表的通信协议,读取芯片微通道端口(MicroPort)上的A/D值,与数据库给定的值进行比较,判断该仪表是否合格,同时在软件界面给予显示。(4)校准指针精度。仪表指针在压针安装时,存在着装配误差,为了消除或减小仪表指针的装配误差,提高仪表指示精度,需要对4个指针进行指示精度修正。发送指针的理论定位指令,观察指针指示情况。通过微调指令数值,调整步进电机的旋转角度,使得指针精确定位。记录当前的指令值,写入仪表存储单元。(5)校验指针精度。在仪表正常模式下,调用DLL函数驱动CAN接口卡,按照CAN通信协议,实现与汽车仪表通信,发送控制指令,校验车速表、发动机转速表、水温表、油量表的指针指示精度。(5)异常处理。当某一测试项失败,即刻执行异常处理模块,发出错误报警,结束当前测试循环,推出测试件,并且打印错误报告;自动进入下一个测试循环的准备就绪状态。4结束语由基于工控机上的PCI、USB、RS232等通信端口的设备构成硬件平台,并配以不同的软件功能模块,便可构成各种测量和控制仪器,并且系统开放、灵活,技术更新周期短,开发与维护的费用较低,预示了未来测试系统发展的趋势[3]。本文开发的测试系统便具备以上特征。本文开发的某型轿车仪表校验系统已经用于实际生产,实现了现代汽车仪表对测试系统的各方面要求,包括串口通信,并口通信,对硬件端口的读写以及对数据库的管理和维护。本系统投入生产后运行良好,大大提高了现场测试的效率和精度,而且性能稳定、抗干扰能力强,完全满足校验系统的性能要求,因此本系统具有较好的推广价值和应用前景。参考文献:[1]陈俊源.VisualBasic6.0程序设计——数据库应用务实篇.中国铁道出版社,1999[2]冯雪飞.Windows平台下串行通信的几种实现方法.机械制造与自动化,2002[3]王栋.VisualBasic程序设计实用教程.清华大学出版社,2003作者简介:崔浩(1981-),男,山东烟台人,上海交通大学机械与动力工程学院硕士研究生,研究方向为汽车数字组合仪表与信息显示系统模块化技术平台研究,E-mail:eric.cuihao@gmail.com。汪激,男,上海交通大学教授刘寅,男,上海交通大学研究员联系地址:上海市华山路1954号上海交通大学机动学院1011研究室,邮编:200030