摘 要:车载导航系统现已广泛应用,此类产品经过两次升级换代目前已经进入第三代产品。该系统中的NAVI(Navigation)模块始终是导航系统中最重要的一部分。NAVI画面迁移更是关键,本文阐述了该功能的实现。
关键词:车载导航系统;NAVI画面迁移
1、引言
汽车导航系统是一种发展迅速的嵌入式软件系统,导航系统中的NAVI(Navigation)模块始终是导航系统中最重要的一部分。NAVI画面迁移的POI(Point of Interest)部分是在已有的专用OS和硬件体系基础上,对HMI(Human Machine Interface)的导航部分功能开发及实现,尤其是50音检索等功能开发与实现,画面设计与实现。
在API和HMIAPI中设置的各种接口可以使HMI设计者容易的调用其中的各种功能并实现画面(如指定要检索的数据,检索结果的显示,以及触摸式的各种按钮的功能实现)的动态迁移。通过该功能的实现,可有效地让用户使用汽车导航系统中强大的检索功能,如通过汽车导航机输入设施名称查找自己想去的饭店,超市等设施;计算现在地与想去的设施间的距离等功能,为消费者提供了极大的便利。
2.研究的目的和意义
近年来,随着全球定位系统(GPS)、现代地理信息系统(GIS)与遥感技术(RS)的发展与结合,促进了现代空间数据快速获取的集成技术、计算机技术与通讯技术的发展与结合。人们不断从更广泛的领域中涉足导航系统和导航电子地图的研究,特别是在美、日等一些发达国家,已逐步将三维智能交通系统(RTS)变成现实,形成了一个全球交通事业深远的和跨时代的革命。
3、 国内外在该方向的研究现状及分析
全球汽车导航产品的发展历史,已经走过了第一代自助式导航和第二代多媒体导航两个阶段。
第一代导航为自助导航,其产品由全球定位系统(GPS)和液晶显示器(LCD-DISPLAY)两部分构成。内置的GPS天线会接收到来自环绕地球的24颗GPS卫星中的至少3颗所传递的数据信息,由此测定汽车当前所处的位置。第二代导航为多媒体导航,多媒体导航系统是在第一代的基础上增加了电话间播放的功能,一般具有GPS 卫星导航定位、路线规划以及VCD/DVD、电视等功能。多媒体导航除保留了第一代的电子地图和电子语音提示功能外,另外增加了前方转向提示信息,即对于一些重要、复杂的交通路口,能提前在屏幕上显示路口的放大地图,并用醒目的提示指引正确的行驶方向。
发达国家,车载导航已经是一个非常成熟的系统,高档车型大都已经安装上了汽车导航系统,而国内由于对导航电子地图的管制比较严格、道路发展速度快、交通管理规则变化频繁及总体汽车消费水平限制等特殊情况,汽车导航产品发展迟缓。但是随着汽车数量的不断增加,近几年的汽车导航产品发展很快。
4、 关键技术实现
4.1五十音检索的功能的实现
五十音检索的功能主要是提供用户按照五十音输入,然后检索到相应的设施或者设施list。它包括了五十音检索和五十音缩进检索的功能。
五十音检索,是用户输入五十音之后进行一次检索,得到数据中包括了所有与用户输入的五十音匹配的设施(所有以用户输入的文字为关键字的数据),然后做成list并进行显示。
五十音缩进检索则是在五十音检索完成之后,用户还可以选择县别缩进、设施种类缩进以及区域缩进的检索,在已经检索到的五十音检索结果list中进行缩进的检索,显示所有符合缩进条件的list。
4.2开发环境
本系统是在VC6.0的环境及HMI tool工具辅助下,用C语言完成的NAVI画面POI部分的相关功能。系统要求开发者具备以下能力:
1.熟练掌握C语言工程开发方法;
2.研究汽车导航系统整体设计框架,做好汽车导航系统中的NAVI画面迁移部分的需求分析;
3.学习导航Framework平台中的HMIAPI以及HMI tool工具使用;
4.实现汽车导航系统中NAVI部分主要画面的开发设计及迁移过程。
本课题研究方案大概流程如图1所示。
图1课题研究方案
5、设计流程及方法
在设计过程中,相关制作流程及方法要求如下:
1.AW导航设备画面数据制作;
2.AW导航设备画面编码实现;
3.AW画面迁移的实现方法;
4.AW导航设备List画面的实现方法。
6、实施
本设计是基于汽车导航开发相关的Framework和HMI driver实现汽车导航中POI画面的迁移,以及50音检索等功能。故采用以下方法。
1.熟悉汽车导航系统的理论知识,尤其是50音检索和画面迁移知识的理解;
3.掌握汽车导航系统中各模块实现的功能以及HMI tool的使用方法;
4.采用模块化的设计方法,分解画面生成和画面迁移功能的实现方法;
5.导航设备画面数据制作、画面编码实现方法;
6.画面迁移的实现方法、List画面的实现方法。
参考文献:
[1]谭浩强,《C程序设计(第二版)》,清华大学出版社
[2]Nicolai M.Josuttis《C++标准程式库》,候捷/孟岩合译
[3]Kris Jamsa,Lars Klander,《C/C++程序员实用大全》,中国水利水电出版社