新闻中心

EEPW首页>汽车电子>设计应用> 基于GPS的嵌入式公交自动报站系统的研究

基于GPS的嵌入式公交自动报站系统的研究

作者:孙弋 汪亚东 李培煊 时间:2008-07-25 来源:电子技术应用 收藏

  2.1 系统硬件设计

本文引用地址://m.amcfsurvey.com/article/86242.htm

自动报站系统按功能模块可分为:模块、Flash/RAM、JTAG口/串行接口/USB口、音频设备/扬声器、LCD触摸屏及核心处理器S3c2410x。系统硬件框图如图3所示。

  核心处理器S3C2410X是一款由Samsung公司设计的低功耗、高度集成的16/32位RISC处理器,它采用272 脚FBGA 封装,为手持设备和一般类型应用提供了低价格、低功耗、高性能小型微控制器的解决方案。S3C2410X的显著特性是其CPU核心为一个16/32位的ARM920T RISC处理器。ARM920T实现了MMU、AMBA BUS和Harvard高速缓冲体系结构。这一结构具有独立的16KB指令Cache和16KB数据Cache,每个都是由8字长的行(line)构成。通过提供一系列完整的系统外围设备,S3C2410X可大大减少整个系统的成本,不需要为系统配置额外器件。工作频率最高达到203MHz,同时具有MMU(内存管理单元),使得处理器轻松运行于Windows CE、等操作系统,可进行较为复杂的信息处理。

模块采用美国Garmin公司的GPS 15模块。GPS 15系列是Garmin公司新推出的产品,具备12个平行接收频道,最多能同时解算12颗卫星讯息,以供快速定位与导航。使用者不需初始化设定,可自动搜寻卫星信号,进行定位功能,并输出NMEA 0183标准资讯。所有GPS 15系列产品皆具有低耗电设计。使用读写式记忆体设计,内部使用记忆体电池,断电后储存资料不流失。3.3V~40V的大范围输入电压承载设计及输出界面选择,针对不同领域提供全方位更灵活的运用,即便是在车上电压不稳定的环境下也不会受到影响。表1为GPS模块接口定义,与ARM处理器相应管脚连接即可。

  系统外扩一个USB口,使用廉价的1GB或2GB的U盘作为海量存储器来存放站点信息及广告等多媒体文件。

  2.2 系统软件设计

  目前主流的实时操作系统有:Windows CE系列(含Pocket PC)、VxWorks和。相对于Windows CE、VxWorks,用作嵌入式操作系统具有如下优势:用户可以依照需要自行对Linux系统进行裁剪,这对于在功能、可靠性、体积、成本和功耗方面有严格要求的专用终端系统来说是一个非常重要的特点;可以用于多种硬件平台;Linux为开源软件,使用灵活,开发成本低。

  本方案采用的Linux版本为韩国MIZI公司为S3C2410X处理器开发的开源版本板级BSP包Linux 2.4.18-rmk7-pxa1。该版本也是三星公司的S3C2410X demo板上的Linux演示版本,已根据S3C2410X处理器的配置作了片级开发,但由于是开源版本,外围驱动做的并不完整,需要加入一些驱动程序(LCD驱动、USB驱动)。同时,由于使用的硬件芯片和三星的demo板并不相同,需要在配置Linux时进行一些调整,并修改部分源代码。最主要的工作是对存储单元的配置以及文件系统的建立,并在Linux内核的基础上开发应用程序(MPlayer播放器、Qt图形应用程序、GPS定位应用程序),如图4。

  2.2.1 GUI设计

  QT/Embedded是一个专门为小型设备提供图形用户界面的应用框架和窗口系统。它提供了丰富的窗口小部件(Widgets),并支持窗口部件的定制,因此可以为用户提供漂亮的图形界面。Qt是KDE等项目使用的GUI支持库,有许多基于Qt的X Window程序可以方便地移植到Qt/Embedded上。Qt/Embedded以原始Qt为基础,并做了许多出色的调整以适用于嵌入式环境。在Qt中加入触摸屏驱动的接口函数,便可支持触摸功能。

  移植Qt时,在装有Linux的PC机上安装交叉编译环境,编译器版本为arm-linux-gcc-3.4.1,在/root/.bash_profile中修改编译器搜索路径;编译库文件(libjpeg-iwmmxxt.tar.bz2);编译工具包(tslib.tar.gz、tmake-1.13.tar.gz);编译Qtopia桌面环境(qtopia-free-source-2.1.1.tar.bz2);最后将交叉编译后得到的Qtopia桌面环境、Qtopia.sh文件及相应的库文件下载到自动报站系统。

  在车未到站时,如果有乘客通过触摸屏查询信息,则触发人机交互中断,调用Qt图形应用程序。该程序可以通过触摸屏显示当前时间、本公交运行路线图、首末班车发车时间及本线路沿途各站点所经过的其他公交车。

  2.2.2 多媒体播放器

  用于播放景点介绍、广告等信息的播放器选用MPlayer播放器,它基于0.2.0版本的Libmpeg2函数库编写,因此支持多种流行的图像压缩格式,例如:MPG、DAT、BIN、VOB、ASF、WMF、AVI等。MPlayer播放器本身编译自带了多种类型的编码器,不需要再安装xvid、ffdshow、ac3、filter、ogg、vobsub等解码器。本系统移植采用较新版本的MPlayer-1.0pre7try2.tar.bz2。
2.2.3 GPS定位应用程序

  GPS模块工作流程如图5所示。任务启动后,模块接收GPS信息,然后解析出GPS信息,根据解析出来的经纬度信息与数据库中存储的站点信息比较,计算出实际距离。如果距离到达阀值时,启动GPS报站中断。

  2.2.4 系统软件总流程

  系统的软件流程如图6所示。上电后,首先完成系统初始化,然后创建GPS 信号检测任务,并进入此任务执行GPS信号检测及解析,同时监测是否有GPS报站中断产生。若有中断产生,则启动MPlayer播放器播报站名、景点介绍等信息;若没有,则检测是否有触摸屏中断产生。若有中断,则进入人机交互界面;否则启动MPlayer播放器播报广告、公益信息等,同时检测、解析GPS信号。

  本嵌入式公交自动报站系统采用GPS定位技术,具有体积小、播报准确的特点。系统可存储多条线路,方便公交车临时更换运营线路;并利用触摸屏作为人机交互界面,方便乘客查询相关信息;可提供广告等增值业务。系统基本解决了当前各大城市公交系统报站出错的问题。

参考文献

[1] 管素清.公交车自动报站和地图匹配的研究(学位论文).山东大学,2005,4.
[2] 倪继利.Qt及Linux操作系统窗口设计.北京:电子工业出版社,2006.
[3] 李征航,黄劲松.GPS测量与数据处理[M].湖北:武汉大学出版社,2005.
[4] 刘淼.嵌入式系统接口设计与Linux驱动程序开发[M].北京:北京航空航天大学出版社,2006.
[5] 严盈富.触摸屏与PLC入门[M].北京:人民邮电出版社,2006.
[6] 张其善.智能车辆定位导航系统及其应用[M].北京:科学出版社,2002.

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭