引言
目前,车载GPS系统终端通常由GPS模块、无线通信模块、报警控制模块、语音控制模块、显示模块和车载PC等几个部分组成。作为系统核心的车载PC具有体积小、集成度高、功耗低、处理能力强和操作简单便捷的特点。较多的车载PC使用嵌入式操作系统,如Windows CE和嵌入式Linux等。
GPS技术利用GPS卫星接收信号,可以不断地接收卫星发送的数据。车载导航仪通过接收卫星信号和配合电子地图数据,掌握自己的方位,使得行车更加安全舒适。国内一些知名的汽车厂家(如一汽、二汽、上海通用等)均计划将GPS导航系统作为标准配置。车载GPS主要有以下功能[1]:
◆ 导航。使用者在车载GPS导航系统上任意标注两点后,导航系统便会自动根据当前的位置,为车主设计最佳路线。
◆ 语音转向提示。能够提供全程语音提示,只要车辆遇到前方路口或者转弯,车载GPS语音系统就会提示用户转向,避免车主走弯路。
◆ 增加兴趣点或新路线。可以将电子地图上没有的目标点或新路线增加到地图上。这些新增的兴趣点均可使用电子地图查阅。
◆ 定位。GPS通过接收卫星信号,可以准确地定出其所在的位置,位置误差小于10 m,GPS还可以显示方向和海拔高度等信息。
◆ 测速。通过GPS对卫星信号的接收计算,可以测算出行驶的具体速度,比一般的里程表准确得多。
◆ 显示航迹。GPS带有航迹记录功能,可以记录车辆行驶经过的路线,用户可以启动它的返程功能,引领车主沿来时的路线顺利返回。
1面向对象技术与UML语言
统一建模语言 UML是基于面向对象技术的标准建模语言,是一种定义良好、易于表达、功能强大且普遍适用的建模语言。UML用模型来描述系统的结构或静态特征、行为特征或动态特征,将模型中的信息用标准图形元素直观地显示,使用户、开发人员、测试人员、管理人员和其他涉及项目的人员可以更好地交流。
从不同的视角为系统的架构建模,形成系统的不同的UML视图(view),每一种视图都是由一个或多个图(diagram)组成的。UML提供了9种不同的图,可以分为2类: 一类为静态图,包括用例图(use case diagram)、类图(class diagram)、对象图(object diagram)、组件图(component diagram)和配置图(deployment diagram);另一类为动态视图,包括活动图(activity diagram)、顺序图(sequence diagram)、合作图(collaboration diagram)和状态图(stated diagram)。这些图为系统的分析、设计和建模提供了多种图形表达形式,可应用于开发的不同阶段,通过有机结合构建一个完整而一致的系统。
2嵌入式系统设计
嵌入式系统设计是一个软、硬件结合的协同设计[23],需要不同技术背景的人共同开发。这就带来了一个问题——如何使这些具有不同技术背景和专长的人联合开发、协同设计。UML采用一种简单而直观的图形化方式描述系统设计中的各个问题和细节,不同技术背景的设计师只需懂得简单的UML符号就可以轻易地与对方交流、共同设计。因此,在嵌入式系统设计中使用UML建模可以达到事半功倍的效果。
2.1系统需求分析
需求说明是开发的基础,也是衡量最终系统是否满足用户需要的依据。使用用例图描述系统需求使系统的目标与实现过程分开,便于开发人员与用户充分交流。对于比较复杂的系统需求,可增加活动图显示活动流程和并发行为。
车载GPS终端是置于机动车内的实时定位装置。其设计思想是软件功能尽量丰富,操作尽量简单,终端坚实可靠,依托无线网络,可实现车辆实时准确定位,在紧急情况下进行呼叫。系统用例图如图1所示。
图1系统用例图
2.2类图分析
类图描述的是系统中的类及其相互之间的关系,在UML中类图是其他图的设计基础,因此完善而深入的类设计是整个建模的关键。在系统中GPS接收的卫星信号就是一个实体类,其类图如图2所示。
类之间关系的设计原则是尽量保持与现实中的关系一致。类间关系主要有联系和泛化。泛化表示超类和子类之间的关系,没有继承关系的类之间使用“联系”相关联。类图可以清晰地标识系统的这些对象之间的联系。本系统中的对象及其关系如图3所示。
图2GPS类图图3对象模型
2.3动态行为分析
顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互。图4显示了GPS系统对用户发出的紧急呼叫信号的处理过程。
图4系统序列图
活动图描述满足用例要求所要进行的活动以及活动间的约束关系。利用活动图可以对系统某一功能的执行过程进行规范。图5显示了车载 GPS接收到卫星数据时所要执行的动作流程。
图5GPS数据处理活动图
2.4系统实现
组件图的主要目的是显示系统组件间的结构关系,有助于分析和理解部件之间的相互影响程度,对于不同的小组是有用的交流工具。使用组件图描述代码部件的结构及各部件之间的依赖关系,各功能组件的关系如图6所示。
图6系统架构
结语
利用 UML系统设计方法可以使传统嵌入式系统设计的多领域沟通和交流的困难大为降低,提高了嵌入式系统的开发速度和产品质量,增强了设计的可复用性。