工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->机动车 电动车电路图->汽车电子电路图->智能汽车ARM 和Qt/E的车载HMI终端设计方案

智能汽车ARM 和Qt/E的车载HMI终端设计方案

作者:不爱吃窝瓜时间:2015-09-13

0 引言

改善HMI (Human Machine Interface)终端性能可降低车辆控制系统操作的复杂性,也可提高驾驶员对自己车辆的控制力。车载HMI通过单一结构中控台,可以减少零部件数量,提高性价比。传统机械式的控制终端正在逐步向直观、便捷的HMI终端发展。2009年6月29日,美国汽车多媒体与通信研究服务公司Strategy Analytics发布最新研究报告,认为“车载人机界面市场领先者保持强势地位”。报告预测,2015年,车载语音和触摸屏市场规模将达到29 亿美元。目前,HMI设备,尤其是语音、触觉控制和触摸屏,在汽车市场上被大量应用。

本文报告了一种基于触摸控制与数字显示理念的车载HMI终端,通过在ARM 上移植Qt/E接TFT-LCD触摸面板加以实现。

1 系统结构介绍

基于ARM 和Qt/E的车载HMI终端主要由两个模块组成,分别是ARM 处理器与触摸显示屏组成的HMI触控平台和CAN/RS232协议转换器模块。该终端可接入车载CAN网络中实现车载设备的触摸控制与状态信息显示。其结构框图如图1所示。

 

图1 车载HMI终端结构

HMI触控平台主要是将Qt/E交叉编译后移植到ARM 平台,调用GUI在触摸面板显示。通过点击触控界面发送控制字,经CAN/RS232网关发送到CAN网络中对各设备进行控制,同时实时采集各设备运行状态参数并显示,便于驾驶员及时了解车辆运行状态。该平台还预留了UART和USB端口分别可外接GPS模块,无线上网卡或U 盘设备,实现导航、无线上网和多媒体播放功能。

CAN/RS232协议转换模块主要由MCU、CAN 接口与UART接口组成,其中CAN 接口采用CAN 控制器SJA1000和CAN收发器PCA82C250设计,RS232接口采用MAX232设计,以此实现两种不同总线协议数据帧的透明转换,是HMI终端与CAN网络中各设备交互的纽带。

车载CAN网络模块主要以Polo车CAN 试验台为平台,试验台集成了车灯、电动车窗、雨刷和后视镜CAN 节点模块。

2 Qt/E在ARM 上的移植

Qt/E是Trolltech公司专为嵌入式Linux系统开发的图像用户界面(GUI)工具包。提供了窗口操作系统、开发环境、工作辅助应用程序和个性选项等,是基于C++ 可跨平台的GUI应用程序框架;还提供给开发者建立艺术级GUI所需的功能,开发者可根据需求定制整个软件解决方案。目前,众多手机、PDA、机顶盒都采用Qt作为图形引擎。因此,选择了Qt/E作为HMI终端的开发工具。

2.1 交叉编译环境的搭建

采用宿主机Fedora9.0作为开发平台,移植ARM 版Qt/E4.7进行设计。因编译Linux内核和Qt/E都需要交叉编译工具链,交叉编译器版本过高过低都会与Qt/E4.7不兼容,最终导致安装失败,所以一定要根据Qt的版本来选择对应的编译器。本系统采用arm-linux-gcc-4.5.1.安装过程如下:

首先,解压arm-linux-gcc-4.5.1安装包,运行#tarxvzf arm-linux-gcc-4.5.1.tgz命令;然后将编译器所在路径加入系统环境变量,运行#gedit/root/.bashrc编辑该文件,修改最后一行为export PATH=PATH:/usrt/local/arm/4.5.1/binPATH,此时交叉编译器已经安装好;最后执行#arm-linux-gcc-v显示编译器版本信息,验证是否安装成功。

2.2 Qt/E4.7的编译与移植

减压ARM 版Qt/E安装包到指定目录,然后进入该目录执行编译配置源码命令#echo yes | 。/configure -opensource-embedded arm –xplatform qws/linux-arm-g++-no-webkit-qt-libtiff-qt-libmng-qt-mouse-tslib-qt-mouse-pc-no-mouse-linuxtp-no-neon.其中编译ARM 平台的embedded版本配置参数为embedded arm,使用arm-linux交叉编译器进行编译为xplatform qws/linuxarm-g++,qt-mouse-tslib是使用tslib来驱动触摸屏。然后执行make命令进行编译,当编译完成之后执行安装命令make install.最后把安装文件打包#tar cvzf qt4.7.tgz,下载到ARM 开发板,并解压到指定目录。至此Qt/E在ARM 开发板上移植完成。

安装Linux环境下X86版Qt SDK软件-Qt Creator2.0进行Qt程序开发,设置为支持Qt4.7ARM 的交叉编译。最后将设计好的程序通过编译,生产二进制文件下载到ARM 开发板运行,以此实现HMI界面显示功能。


关键词: 智能汽车 车载 HMI

评论

技术专区