|
|
|
|
|
|
公交自动报站系统的嵌入式实现 |
|
日期:2009-6-6 10:50:16 |
本文提出的新型公交车自动报站系统通过GPS接收机接收GPS工作卫星的导航信息,从而解算出车辆目前的经、纬度等信息;根据GPS定位数据计算出公交车的实时坐标,将其与站点坐标相比较,当公交车驶入站点一定距离范围内时,不用人工干预,系统自动报站。LCD显示屏上显示公益信息、广告信息和景点信息等。在离站、到站和拐弯点阈值范围内语音提示的同时,在显示屏上显示同类信息,给乘客一种全方位的提示与服务。 本装置的定位系统使用GPS接收机进行自主定位,GPS定位的基本原理是根据高速运动的卫星瞬间位置作为已知的起算数据,采用空间距离后方交汇的方法,确定待测点的位置。GPS接收模块接收GPS卫星发送的定位数据,将GPS信号的数据流提取出来,经过简单的字符串操作就可以分别找出GPS信号中的经度、纬度以及相应的格林威治时间等定位信息。在实际开发中,GPS接收机根据从三颗以上卫星发来的数据计算出自身所处的位置,完成定位。通常GPS模块支持两种格式:二进制消息格式和NMEA-0183 ASCII消息格式。 本系统嵌入式系统固化于存储器中,其可靠性高、成本低、体积小、功耗低。本系统采用先进的卫星定位技术与语音合成技术相结合的方式,改变了传统公交车语音报站器必须有司机操控才能工作的落后方式,进站、出站自动播报站名及服务用语,准确、及时、不需要人工介入,实现了公交车报站器的完全智能化。GPS公交自动报站系统包含硬件和软件两部分。硬件以ARM9S3c2410x处理器为核心,配置存储器、I/O设备、通信模块等必要的外设;软件以嵌入式Linux操作系统为核心,向上提供应用编程接口API,向下屏蔽具体硬件特性的板级支持包BSP。嵌入式系统中,软件和硬件紧密配合,协调工作,共同完成系统预定的功能。 嵌入式GPS公交自动报站系统按功能模块可分为:GPS模块、Flash/RAM、JTAG口/串行接口/USB口、音频设备/扬声器、LCD触摸屏及核心处理器S3c2410x。核心处理器S3C2410X是一款由Samsung公司设计的低功耗、高度集成的16/32位RISC处理器,它采用272 脚FBGA 封装,为手持设备和一般类型应用提供了低价格、低功耗、高性能小型微控制器的解决方案。 本方案采用的Linux演示版本,已根据S3C2410X处理器的配置作了片级开发,但由于是开源版本,外围驱动做的并不完整,需要加入一些驱动程序。同时,由于使用的硬件芯片和三星的demo板并不相同,需要在配置Linux时进行一些调整,并修改部分源代码。最主要的工作是对存储单元的配置以及文件系统的建立,并在Linux内核的基础上开发应用程序。任务启动后,模块接收GPS信息,然后解析出GPS信息,根据解析出来的经纬度信息与数据库中存储的站点信息比较,计算出实际距离。如果距离到达阀值时,启动GPS报站中断。上电后,首先完成系统初始化,然后创建GPS 信号检测任务,并进入此任务执行GPS信号检测及解析,同时监测是否有GPS报站中断产生。若有中断产生,则启动MPlayer播放器播报站名、景点介绍等信息;若没有,则检测是否有触摸屏中断产生。若有中断,则进入人机交互界面;否则启动MPlayer播放器播报广告、公益信息等,同时检测、解析GPS信号。 本嵌入式公交自动报站系统采用GPS定位技术,具有体积小、播报准确的特点。系统可存储多条线路,方便公交车临时更换运营线路;并利用触摸屏作为人机交互界面,方便乘客查询相关信息;可提供广告等增值业务。系统基本解决了当前各大城市公交系统报站出错的问题。
|
|
|
|
|
|
|