基于PXA270与WinCE的分布式地铁车载系统开发
车载信息娱乐系统与报站系统作为地铁列车必不可少的配置显得尤为重要,可以使乘客准确地确定到站站点、缓解乏味的旅途,也可以轻松地获得各站点的换乘路线、乘车指南等有意义的信息。
早期车载多媒体播放器多是传统的磁带收音机、CD播放器、DVD播放器等,磁带机的缺点是音质不好且由于传动机械的故障会出现卡带的现象,现基本已淘汰。车载CD播放器最近几年才应用于车载系统,在音质方面有了很大的提高,但只能读取CD光盘不能下载网络媒体,具有歌曲更换不便的缺点,同时缺少可视效果[1]。DVD是采用MPEG2标准压缩的全数字影音光盘,它的特点是音质高、画质高、容量大,但成本相对较高,同时也具有CD播放器媒体文件更换不便的缺点[2]。现阶段的车载媒体播放系统多采用嵌入式技术,如以三星S3C2440A处理器为核心的车载信息服务系统,可实现信息提示、导航定位、多媒体播放等功能[3]。其中媒体播放多基于嵌入式流媒体技术,如通过GStreamer和RTP/RTCP流媒体协议设计流媒体播放器[4]。但此方式对于列车这种单一源多接收端拓扑结构,其带宽占用高,易造成堵塞。
现有公交报站系统仅是音频广播报站,地铁的报站提示是通过三色LED的颜色变化与音频广播来实现的,报站形式单一,且缺少换乘路线、乘车指南等信息的提示,同时与媒体播放系统相分离。例如通过在站台与列车上分别放置RF无线节点来实现自动报站。其系统使用射频与接收芯片CC1100、语音播放芯片VS1003和单片机控制,通过对每一个车站进行ID编码,利用身份识别技术实现自动报站功能[5]。此外,也有基于ZigBee技术的定位解决方案,通过放置无线节点组成ZigBee网络,根据射频接收信号强度指示计算出所需定位的位置[6],此方法对于实现报站功能成本过高。由于地铁运行于地下,乘客没有可参考的建筑物标识来判断即将到达的站点,因此其报站系统十分重要。而实现地铁的自动报站并非易事,它不能像地面公交系统那样通过GPS定位系统[7]来实现车辆的定位与报站。
针对以上问题,本文开发了一种基于PXA270硬件平台与WinCE嵌入式操作系统的车载媒体报站系统。此系统集媒体播放、站点信息播报与换乘信息提示于一体,媒体文件更换方便快捷。系统采用分布式布局,各车载播放终端通过软件升级后,完全可以作为车载广播中心使用,因此进一步增加了系统的稳定性。系统采用嵌入式技术,专用性强、特色功能易实现,如可根据站点的具体布局提示乘客换乘路线等。同时采用WinCE嵌入式操作系统,具有实时性好的特点。
1 系统硬件平台设计
系统采用Xscale PXA270芯片为核心处理器,主频为520 MHz,SDRAM为64 MB,Flash为32 MB[8-9]。由于报站同步性的需要,通过IP组播的方式将站点信息与媒体文件传输至各节车厢,这样既方便了多媒体文件的更新,同时也减少了系统的成本。系统主体框图如图1所示,采用分布式布局,即在列车的车头放置车载广播中心,实现站点的接收、媒体文件的存储、通过IP组播将到站离站信息与媒体文件传输至各节车厢。在各节车厢放置车载播放终端,负责接收站点信息与媒体文件,并完成多媒体播放与站点信息的广播报站功能。同时各节车厢的车载播放终端也可以作为车载广播中心进行工作,这样系统更加稳定可靠。
1.1 车载广播中心
车载广播中心放置在车头,负责站点信息与媒体文件的广播,其框图如图2所示。U盘负责存储媒体文件,触摸屏用于播放列表的制作与更换,按键则用于离站的信号触发,网络控制器则负责将站点信息与媒体文件传输至各车载播放终端。
1.2 车载播放终端
车载播放终端负责媒体文件与报站信息的接收和播放,其框图如图3所示。网络控制器用于接收报站信息与媒体文件,U盘用于存储各站点的报站音频与信息提示文件,LCD则用于视频与站点信息的显示,喇叭用于音频的播放。
1.3 站台节点与车载节点
站台节点采用STC89C52单片机为微处理器,通过其P0口连接8位拨码开关,实现对各站点的编码标识。NRF905模块与STC89C52单片机之间通过SPI串行外设接口通信,STC89C52 P1.4~P1.7引脚分别与NRF905模块的MISO、MOSI、SCK和CSN引脚相连,通过C程序模拟SPI时序完成数据的传输。站点的标识通过NRF905模块发送。站台节点原理图如图4所示。
车载节点上的NRF905模块负责接收站点标识,并通过串口将站点标识数据传输至车载广播中心。NRF905模块的连接方式同站台节点。车载节点原理图如图5所示。
2 系统软件构建
2.1 操作系统的选择与定制
WinCE是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的嵌入式操作系统[10]。WinCE是从整体上为有限资源平台设计的多线程、完整优先权、多任务的操作系统,模块化的设计使WinCE系统可大可小,具有很好的稳定性与移植性;支持多种外围硬件与设备,图形界面出色,其强大的图形界面开发能力是其他嵌入式操作系统所不具备的,因此很适合作为车载平台的操作系统。
利用WinCE进行嵌入式系统开发的首要工作是操作系统的定制,即根据实际需要进行裁剪、添加所需的组件与驱动,以及配置文件的修改。系统定制[11]的主要步骤如下:
(1)创建新工程
通过微软提供的Platform Builder5.0新建工程,在选择BSP包时,选择开发板提供的XSBASE270:ARMV4I。由于此系统的主要功能是多媒体的解码播放,因此设计模板选择为Digital Media Receiver。之后根据实际需要选择相应的组件完成工程的创建。
pxa270 S3C2440A WinCE STC89C52 相关文章:
- GPS导航数据提取的设计与研究(01-25)
- 基于WinCE的智能车载仪表设计(01-28)