本文提出智能车载导航仪的优化设计方案,剖析gpsOne的定位原理,探讨系统开发中的多项关键技术,并给出一个基于ARM和Linux平台的工程实例。
1 概述
1?1定位业务的产生背景
随着移动通信的发展,电信服务商与制造商除了语音传输外,纷纷推出各种增值数据业务与设备,以寻找新的收入来源。消费者也希望手机除了通话、收发邮件、上网外,还能有其他功能。国家基础地理信息中心的统计数据也表明:人们日常生活信息中有80%与空间位置有关,而企业所使用的信息中有59%的信息与空间位置有关。因此,作为最富潜力的增值应用平台之一,移动定位业务,即基于位置的业务LBS(LocaTIon Based Services),正受到前所未有的关注。它可以提供诸如导航、基于位置的付账、位置信息服务、网络规划和管理、财产追踪、个人定位服务、娱乐和紧急救援等多项应用。
1?2车载导航仪的发展前景
为了缓解现代城市交通的压力,近年来又出现了将最新的通信网络技术、卫星定位技术和地理信息技术相结合的ITS(Intelligent Transport Systems,智能交通系统)。ITS可以对机动车辆实施定位、报警、监控、调度、救援或防盗等多种功能,大幅度提高交通管理质量,不仅可以合理利用和充分发挥现有道路的交通潜力,有效解决交通拥挤的现象;而且能提高车辆的营运效率,降低营运成本。
ABI、IEK 2002年10月的研究报告就指出,全球GPS市场保守估计自2000年到2006年的年复合增长率(CAGR)约为24%,2006年产值约340亿美元。在目前卫星导航应用领域中,智能交通管理所占的比重最大,约占市场总量的40%。
目前及将来绝大多数GPS应用产品以陆上导航及定位系统为主,占约70%以上,且比例逐年升高。汽车导航、通信应用、车队追踪管理,到2006年将成为陆上导航产品的主导。我国现有430万辆货运车,170万辆客运车,450万辆轿车及各类船只90多万艘,如此大的汽车和船只保有量对导航终端产品和服务存在着迫切需求。
基于以上分析,研制开发车载移动定位终端,依托CDMA(Code Division MulTIple Access,码分多址)网络传输平台,与控制中心配合,实现车辆的定位、导航、报警、监控、调度以及其他基于位置的各项增值服务,可广泛应用于出租汽车行业、物流企业、大型企事业单位公务车辆管理及私家车和小型公司车辆,市场潜力巨大。
2 智能导航终端的系统原理及特点
2?1gpsOne系统简介
采用适当的定位技术获得位置信息是实现对车辆的导航和调度等位置服务的必要前提。本系统的移动定位解决方案,采用了美国高通(QUALCOMM)公司研制开发的gpsOne专利技术。
总体结构到2003年2月止,已有超过1000万部gpsOne终端在日本、韩国和美国投入商用,超过了全球所有制造商的商用GPS终端销量总和,成为世界上使用最广泛的移动定位系统。传统的无线定位技术按照起主导作用的实体所处的位置基本可以分为两大类:基于网络的方案和基于移动台的方案。基于网络的方案需要移动台发出信号并且由多个固定位置的基站接收,通过测量移动台到基站的信号的特征参数,再根据特定的算法判断出被测物体(移动台)的位置。
常用到达角AOA(Angle Of Arrival)和到达时间TOA( TIme Of Arrival)等技术。当信号较弱时,这种方案的定位精度会下降,还会受基站的覆盖范围、电波绕射、多径效应等影响。此外,这种方案还需对基站进行改造,增加了额外的升级费用。基于移动台的方案,最典型的是使用全球卫星定位(GPS)系统,由24颗人造卫星和配套的地面站组成。接收机(移动台)只需要接收到三颗卫星的信号,分别测量出到它们的距离,就可以计算出自己的位置。
除了接收机价格昂贵外,这种方案还有较长的“初次捕获时间”或“首次定位时间”TTFF(TIme To First Fix),尤其当接收机冷启动工作时,需要十多分钟才能完成对卫星的搜寻。而且,若移动台处于室内、高大植物、建筑物或卫星信号无法覆盖的地方,由于可见的GPS卫星数量较少,定位效果很差,甚至无法完成定位。尽管网络和GPS都不适合单独作为一套具有商用价值的定位方案,但它们之间可以取长补短。比如在基站覆盖不全的乡村和郊区,GPS接收机却可以搜索到四颗甚至更多的卫星。相反,在密集的城市地区和高大建筑物内,虽然GPS接收机检测不到足够的卫星,但移动台可见的基站却有两个或更多。高通公司借助CDMA网络开发出的gpsOne定位方案,是一种混合的无线辅助全球定位系统(Hybrid AGPS),不仅精度高,而且适用于各种地形,包括室内、密集城市地区和网络覆盖有限的乡村。它综合利用了无线蜂窝网和GPS卫星二者的优势,极大提高了定位方案的可用性、灵敏度和精度,并且甚至只需要一颗卫星和一个基站就可完成定位。
高通的某些CDMA芯片组中已经集成了gpsOne功能。这不仅降低了支持gpsOne功能的移动台的制造成本,也使整个方案部署起来快捷简便,无需对已有的网络设备做昂贵和复杂的改造,更不需要增加新的基站。此外,它遵从工业定位标准,支持漫游,并和已有的GSM网络兼容,最大限度地减少了网络改造开销。
2?2gpsOne系统定位原理分析
gpsOne的定位过程主要涉及两个活动:信号测量和位置计算。需要收集的待测信号不仅包括GPS卫星群发送的定位信息,还有来自无线网络的定位信息。gpsOne体制本身很灵活,允许在各式网络配置中采用不同的已成熟的无线电定位方法,如源小区COO(CellID Of Origin)技术或高级前向链路三角定位AFLT(Advanced Forward Link Trilateration)技术等。这也正是“无线辅助”和“混合”的含义所在。此外,系统还需要另外两个组成部分:GPS卫星广域参考网络(WARN)和基站位置信息数据库(BSA)。
AGPS的具体工作原理如下:
① 用户(移动台本身或监控中心)发出定位请求,然后移动台将其所在基站ID信息通过无线网络传输到位于网络中位置服务器(也称作定位实体,PDE, Position Determining Entity)。
② 位置服务器根据该移动台的大概位置,通知移动台应该监听哪些与其位置相关的GPS卫星的定位信息(包含GPS的星历和方位俯仰角等)。
③ 移动台根据位置服务器提供的辅助信息(主要用以提升GPS信号的TTFF能力),接收可见的GPS卫星群的原始信号。
④ 移动台解调信号,计算它到所有可见卫星的伪距(伪距为受各种GPS误差影响的距离);同时利用上述各种无线电定位技术收集多个临近基站的信号并测量出它到各个基站的距离,并将有关信息传送到位置服务器。
⑤ 位置服务器根据传来的GPS伪距和其他定位设备(如差分GPS基准站等)的辅助信息,通过一系列纠错算法,计算出该移动台的精确位置(包括经度、纬度和海拔高度)。
⑥ 位置服务器将位置信息发送给该移动台、第三方服务提供商SP(Service Provider)、定位网关或其他位置服务(LBS)应用平台。
以上过程中,当定位请求短消息发出后,移动台就会主动建立到PDE的TCP连接,与PDE之间通过端到端的IP会话完成遵从IS-801(工业定位标准)的定位过程,最后由PDE将经纬度信息返回给SP。信号测量和位置计算的活动,可以放在移动台上或网络侧进行,或二者兼而有之。
2?3智能嵌入式导航终端的特点
智能嵌入式导航终端的设计是在对目前同类产品的研究比较下提出的。该方案不仅吸取了众家之长,而且还根据将来的发展在车载系统的功能上提出了一些新的、更高的要求。嵌入式智能导航终端和其他现有的车载系统相比具有更多优点,其中主要的特点是:
① 定位方案采用基于A?GPS技术的高通gpsOne方案。
② 无线通信网络采用CDMA网络,包括目前的联通CDMA 1X网络和将来的第三代CDMA2000网络。
③ 采用多种通信方式,在车载终端和控制中心的通信方式上,提供短消息、话音、数据通道以及视频等多种手段。
④ 提供更丰富的增值业务,实现了除基本的定位、导航、监控和调度功能外,还可附加生活、交通、娱乐、服务、公共设施等方面基于位置的各种增值信息服务,如失窃物品追踪、餐馆和公园指南、火车时刻表、天气预报以及互动娱乐游戏等等。
⑤ 方便的人机交互界面。车载系统配有17.8 cm(7 in)TFT彩色触摸液晶显示屏、麦克风和扬声器。
⑥ 采用基于ARM核的MCU和嵌入式Linux操作系统。
⑦ 支持电子地图。
⑧ 多种报警功能。该车载系统具有防盗报警、反劫报警、遇险报警、损毁报警等多种报警功能。
⑨ 广播方式的群呼功能。监控中心可对车辆进行群呼、组呼,既可实现交通、新闻、股票、天气等信息的广播下行,又可对某个地区的出租车的分布情况进行实时统计。
⑩ 方便配置和扩展。嵌入式车载系统由各种具有基本功能的相对独立的模块组成,留有常见的各种控制接口。
3 嵌入式终端的优化设计与实现车载导航终端属于一个典型的嵌入式系统。对于嵌入式系统,目前比较合理的一个定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
(1) 嵌入式微处理器的选择
正因为嵌入式系统在系统特性、开发周期、设计要求等方面与通用计算机系统有巨大的差异,嵌入式处理器的选择受到很多独特因素的影响。本终端选用了基于ARM核的32位RISC处理器。ARM公司自1990年成立以来,在32位RISC CPU开发领域不断取得突破,其体系架构已从V3发展到V6。它一直以IP(Intelligence Property)提供者的身份向各大半导体制造商出售知识产权,而不介入芯片的生产销售。其设计的芯核具有功耗低、成本低等显著优点,因此获得众多的半导体厂家和整机厂商的大力支持,在嵌入式应用领域获得了巨大的成功。到2004年已经占有79%的嵌入式处理器市场,并且其ARM9系列内核已成为产品应用的主流。
① 性能。处理器必须有足够的性能执行任务和支持产品生命周期。考虑到智能导航终端应用的复杂性(电子地图、彩色液晶、触摸输入、gpsOne导航、语音交互等),选择处理器需要从内存管理单元(MMU)、时钟主频、内部存储器容量、通用可编程I/O(GPIO)数量、终端控制器、LCD控制器、ADC/DAC、UART接口、DMA控制器等各项性能指标综合考虑。
② 是否便于实现。
③ 工具支持。支持软件创建调试系统集成代码调整和优化工具对整体项目成功与否非常关键。
④ 操作系统支持。嵌入式系统应用需要使用有帮助的抽象来减少其复杂性。针对处理器系列产品作过优化的商用操作系统(OS)能够缩短设备开发周期和上市时间。ARM获得了许多著名的嵌入式(实时)操作系统,如VxWorks、Windows Mobile(WinCE)、Linux等的支持。
(2) 嵌入式操作系统的选择
8位单片机只需要直接编写单一的控制程序即可工作,但随着应用的复杂化,一个嵌入式控制器可能要同时控制、监视很多外设;有很多处理任务,各个任务之间有多种信息传递,原来的程序设计方法已根本无法满足系统需求,因此后PC时代的嵌入式系统都需要一个运行在嵌入式处理器之上的操作系统。在智能终端领域有四大主流操作系统,即Symbian、Windows Mobile、Palm OS和Linux;但是由于Linux的性能、可靠性、开放源代码、低成本和技术支持,越来越多的商用产品将会采用嵌入式Linux作为开发平台。图4说明了Linux在嵌入式OS中的发展趋势。
在嵌入式OS中发展趋势我们选择的方案是:下载GNU/Linux的标准源代码并进行适当裁减和修改,定制成符合导航终端需求的操作系统。据Linux Devices统计,这种所谓的“Home grown”已成为目前最流行的嵌入式Linux版本,其份额远远超出了商业嵌入式Linux的版本。这其实也是嵌入式系统多样性的必然反应。
(3) 基于ARM和嵌入式Linux平台的系统开发
将Linux移植到ARM处理器上并在此平台上进行应用开发大致涉及四个层次:引导装载程序、Linux OS移植(包括设置工具链、内核、驱动程序、文件系统等)、图形用户界面(或称GUI)和应用程序。
① 引导装载程序通常是在任何硬件上执行的第一段代码。基于ARM设备上一些流行的并可免费使用的Linux引导装载程序有Blob、Redboot和Bootldr。
② 设置工具链的目的是要在主机机器(X86架构的PC机)上创建一个用于编译将在目标(ARM架构的嵌入式系统)上运行内核和应用程序的构建环境。它由一套用于编译、汇编和链接内核及应用程序的组件组成。
③ 虽然Ext2fs是Linux事实上的标准文件系统,但在嵌入式环境中使用JFFS2是更好的选择。它是专为微型嵌入式设备设计的日志型闪存芯片文件系统。
④ 从用户的观点来看,图形用户界面(GUI)是系统的一个至关重要的方面:用户通过GUI与系统进行交互。Qt/Embedded是Trolltech新开发的用于嵌入式Linux的图形用户界面系统。
结语
综合ARM处理器、嵌入式Linux和gpsOne定位技术,依托CDMA网络传输平台而设计开发成的智能车载定位服务系统具有广泛的适用性。2008年的北京奥运会将会为智能车载导航调度系统的应用带来更广阔的前景。