基于Qt的汽车BCM自动检测系统设计
随着汽车行业的快速发展,越来越多的车身电子设备得到应用。汽车BCM上的节点和连线也越来越多,导致了汽车BCM功能检测变得更加复杂。
1 系统设计的可行性
1.1 自系统的应用前景
随着生活水平的提高,人们对汽车功能的舒适性和安全性也提出了更高的要求。汽车BCM模块控制着汽车上的绝大部分自动化功能,主要包括汽车的灯光、电动车窗、中央门锁、防盗报警、电动后视镜、电动座椅、雨刮器、安全气囊等。在安装使用BCM前企业就需要对汽车BCM进行全功能检测。由于器件繁多,传统的人工检测方法工人需要根据各个功能模块采用手动方式逐个进行测试,测试效率低,可靠性差。自动检测系统用于生产检测后不仅可以大幅降低BCM检测仪的体积和成本,而且BCM的检测效率也可提高4~6倍。投入使用后可为公司减少设备投资、节省人力,带来更大经济效益。
1.2 系统可行性
汽车BCM检测时,工人通过各种开关按键让BCM在模拟负载环境下,测试各个功能模块是否存在故障。而这些开关信号可通过程序中的高低电平来代替,这给自动化测试创造了可行条件。该自动检测系统开始工作时,中央控制器通过接口板向汽车BCM发送测试信号,然后BCM做出响应驱动接口板上的负载,再将检测结果传输到屏幕并显示。如果BCM一切功能正常,液晶显示屏就会显示BCM良好。而检测过程中如果某一部分功能出现故障,则检测系统立即停止检测,并将故障部位显示在液晶屏幕上提示检测人员。另外基于嵌入式系统下通过Qtopia可以较为容易地开发触摸屏控制界面,这样工人就可以直观地通过简单的操作来实现汽车BCM功能的自动化检测。
2 系统的软件设计
软件部分是在嵌入式Redhat9Linux操作系统下设计的,使用Linux-2.6.30.4版本内核、EABI_4.3.3_EmbedSky交叉编译工具。
2.1 嵌入式Linux操作系统的搭建
2.1.1 移植uboot到开发板
开发板中缺少uboot开机无法启动,要将编写好的uboot通过Jtag分别烧写到开发板的Nor Flash和NandFlash存储器中,即可从Nor Flas h或者Nand Flash启动。
2.1.2 Linux系统内核移植
下载并解压系统源码到PCLinux的/opL/EmbedSky/中,解压命令为#tar xvfj linux-2.6.30.4tar.bz2-C/opt/EmbedSky/,再进入内核源码通过修改Makefile文件中的"ARCH? =(SUBARCH)"和"CROSS_COMPILE? ="分别为"ARCH=arm"和"CROSS_COMPILE=arm-linu x-"从而添加系统对ARM的支持。使用命令:#make menuconfig打开配置菜单界面,如图2所示。
按要求配置完成以后通过命令:#make zImage进行编译后生成zImage镜像,最后将其烧写到开发板中。
2.1.3 文件系统移植
打开配置单,存配置单中增加对yaffs的支持。
对各项配置好以后保存为.config然后编译出镜像来。
2.2 搭建Qtopia-2.2.0开发应用平台
Qtopia是Trolltech公司为采用嵌入式Linux操作系统的消费电子设备而开发的综合应用平台,Qtopia包含完整的应用层、灵活的用户界面、窗口操作系统、应用程序启动程序以及开发框架。
本系统检测设计时首先是在PC机上设计、修改、调试、编译通过以后再烧录到开发板的。首先解压安装交叉编译器EABI_4.3.3_Embed Sky.tar.bz2,然后使用#source/etc/profile命令使其生效。接着编译PC版本的Qtopia-2.2.0,打开PC机的Linux终端然后在终端输入执行命令:./x86-qtopia-2.2.0-kongqueror-build,之后就开始编译QT。等编译完成后在终端里输入命令#./test-x86就打开了Qtop ia的仿真界面,如图3所示。
随后编译ARM版本的Qtopia接着制作Qtopia2.2.0的文件系统后就可以进行QT应用程序的开发。
2.3 系统应用程序开发
首先设置环境变量,然后建立QT的项目文件后启动Qtdesigner开始根据实际需要设计控制界面。在设计过程巾需要注意QT信号和槽的对应关系,设计完成后保存为*.ui工程文件。通过uic软件把建立好的工程转换成源代码,再添加通用的文件main.cpp文件,使用tmake中的progen软件生成pro文件,从上面得到的pro文件再生成Makefile文件,然后制作启动器、桌面图标,在*.cpp文件巾加入本设计系统对汽车BCM自动检测的控制程序,最后进行编译和仿真。在ARM环境下编译完成后将"/opt/EmbenSky/Qte/arm-qtopia/qtopia/image/opt /Qtopia/bin/"目录下的应用程序和在这个目录"Qte/arm-qtopia/qtopia/image/opt/Qtopia/pics/"下的桌面图标以及"Qte /arm-qtopia/qtopia/image/opt/Qtopia/apps/EmbedSky"目录下的启动器分别放到开发板文件系统对应的目录下,编译镜像文件烧录到开发板,最后重新启动开发板后就可正常运行了。图4为本设计系统的触摸屏控制界面。
- 基于GPS/3G技术的公交车远程监控系统设计(05-01)
- BCM车身控制模块简述(03-26)
- Freescale 车身控制模块(BCM) 解决方案(04-28)
- 车身控制模块中的失效保护方法(02-02)
- 基于MC9S12XS128的汽车BCM的设计与实现(03-07)
- 车载防盗报警LIN节点的设计与实现(04-18)