基于 ARM的嵌入式机场场面车载终端设计

2010-08-17 06:57张琳琳黄圣国
关键词:电子地图车载嵌入式

张琳琳,黄圣国,陶 诚

(南京航空航天大学 民航学院,南京 210016)

近年来,随着世界经济的高速、稳定发展,从事民用航空的飞机逐年增多,机场内部的飞机、车辆和人员数量以惊人的速度增长,机场场面安全受到了严重的威胁.在机场场面,经常出现车辆与飞机、车辆与车辆的碰撞冲突,跑道入侵也不断增长.在大雾等恶劣天气条件下,目视指挥十分艰难,情况更为严重.目前,为了提高机场场面的安全,国际上的通常做法是建立机场场面的飞机(车辆)监视系统来进行科学化的辅助管理,从而摆脱以往的目视指挥方法,更加适应恶劣天气情况下的工作[1].

在场面监视系统中,车载终端是整个场面监视系统的移动终端,安装在场面的移动目标上,接收来自监控中心的指令和数据信息.根据车载电子地图显示的机场场面情况,提供提示和告警信息.本文介绍了以 ARM微处理器为平台的嵌入式车载终端的软硬件设计,基于 Qt/Embedded Linux的电子地图实现以及沿路径的告警算法.

1 车载终端的工作原理及组成

1.1 工作原理

车载终端通过差分 GPS(DGPS)接收机获取自身的高精度定位信息,包括位置、速度和航向等;采用 GPRS向监控中心发送车辆定位信息;需要时,通过 GPRS向监控中心发送“指令请求”信息(如:报告、路径规划、求助等信息);接收来自监控中心的控制指令和数据,更新地图上的指定路径、受控或限制区域;在终端电子地图上显示车辆位置、指定路径以及冲突区域(冲突点、停止线和禁行区等);通过车载终端系统软件解析判断,对可能发生的和已经发生的冲突以多种方式(文本、声音以及语言)向司乘人员提供提示或告警[2].

1.2 组成

车载终端由硬件和软件 2部分组成,如图1.硬件包括 GPS模块、GPRS模块、人机交互模块和嵌入式处理模块.其中,人机交互模块由显示屏、按键、蜂鸣器以及音频输出组成.显示屏显示电子地图、车辆的位置、指定路径、冲突区域以及文本提示和告警信息.按键的作用包括复位、地图缩放与定位、屏幕锁定等.蜂鸣器发出开机提示音以及冲突告警,而音频输出用于语音告警提示.终端的软件基于嵌入式操作系统,可以降低开发难度.

图1 车载终端的软硬件组成

2 车载终端的硬件设计

基于低成本、高性能的要求,车载终端选择了Samsung公司 ARM 9系列的 S3C2410微处理器芯片.该芯片是基于 ARM920T内核的 16/32位 RISC嵌入式微处理器,集成了一个具有日历功能的RTC和具有 PLL(MPLL和 UPLL)的芯片时钟发生器,工作频率最高可以达到 203 MHz.这个频率能够使其轻松运行在 WinCE、Linux等嵌入式操作系统上以及进行较复杂的信息处理.而且 S3C2410提供了丰富的标准接口资源,可以方便与其他功能模块连接.

车载终端的硬件结构如图2.其中,S3C2410通过 UART0连接 GPRS模块—H7118 GPRSDTU向监控中心发送“指令请求”,并实时接收来自监控中心的控制指令和数据信息;DGPS接收机—JNS100 GG输出高精度定位信息给 UART1以传送至 S3C2410;MAX3232的作用是实现 TTL/CMOS与 RS-232电平信号之间的转换;音频输出用于语音告警,由 IIS信号连接音频解码芯片 UDA1341构成;显示屏与 LCD接口连接,显示电子地图;蜂鸣器由 PWM信号进行驱动,发出指定频率的提示音;按键作为外部中断源与 S3C2410连接,实现地图缩放等功能.

3 车载终端的软件设计

3.1 Linux操作系统以及 Qt/Embedded Linux

终端软件的嵌入式操作系统选择 Linux,一方面是因为其可以稳定运行在 ARM微处理器上,并为 ARM直接提供网络支持和典型的串口驱动;另一方面 Linux开放源代码,系统具有可裁剪性,可以极大的降低对系统资源的使用,从而满足低成本、高性能的要求[3].见图2.

图2 车载终端的硬件结构图

GUI(图形用户界面)开发平台采用由挪威TrollTech公司出品 Qt/Embedded Linux(也称 Qtopia Core).它是一个跨平台的 C++图形用户界面库,是该公司为嵌入式优化过的 Qt版本,加入了嵌入式编程所需的类和工具,具有丰富的 API,可以稳定的运行在 Linux的任何硬件上,包括 ARM.Qt/Embedded Linux不同于其他的嵌入式 Linux GUI开发平台,它实现的是自己的窗口系统,可裁剪,为嵌入式系统设计大大节省了存储和内存.其提供的多线程技术以及 signal/slot(信号/槽)事件信号传递机制为嵌入式编程提供了很大的方便[4].

3.2 应用程序设计

终端应用程序采用模块化设计,包括屏幕显示模块、音频告警模块、数据处理模块、告警算法模块、按键中断接收模块、按键中断处理模块、GPS数据接收模块以及 GPRS数据收发模块.各个模块之间的关系如图3.

图3 应用程序结构图

3.3 电子地图

在整个系统中,司乘人员根据车载电子地图显示的机场场面道路情况以及告警信息,作出相应的反应操作.因此,车载电子地图是司乘人员与系统进行交互的重要工具.

3.3.1 地图数据的来源

绘制电子地图的首要条件是获取相关的地图数据.其来源是通过 DGPS接收机静态测量,表示为经纬度坐标.由于 GPS卫星定位系统的坐标系基准为 WGS-84坐标系,而该坐标系是一种地心坐标系,因此需要将测得的经纬度坐标转换为平面直角坐标系下的坐标[5].本设计首先采用 UTM(U-niversal Transverse Mercator,通用墨卡托)投影将经纬度坐标转换为平面直角坐标,再根据显示屏的窗口范围将平面直角坐标转换为屏幕坐标,从而获得绘制电子地图所需的地图数据.

3.3.2 电子地图的绘制

基于车载终端性能的考虑,车载电子地图不同于监控中心的电子地图,为简单的道路地图.其中道路由折线表示,因此车载电子地图的绘制实际为折线的绘制.在 Qt/Embedded Linux中,QPainter-Path类可以通过连接基本的图形元素来确定任意的矢量形状:直线、椭圆、多边形、弧形、贝塞尔曲线和其它的绘制路径[6-7],所以可以方便地实现电子地图中道路的绘制.过程如下:首先,使用绘图路径(QPainterPath)绘制折线,然后使用画笔(QPen)设置折线(即道路)的宽度以及颜色.基于机场附近的地理数据比较敏感,在实验初期不方便架设仪器进行测量等原因,以校园为例进行实验,绘制生成的电子地图如图4.

图4 电子地图

3.4 告警算法

车载终端的一个重要作用是给司乘人员提供提示或告警,以避免冲突事件的发生.因此,告警算法显得至关重要.

3.4.1 沿路径的告警算法

在以往使用过的告警算法中,存在司乘人员对冲突事件无反应时间以及对告警距离发生误判等问题.为了解决上述问题,本设计提出了沿路径的告警算法.

在监控区域内,车辆按照指定路径行驶,而在电子地图上指定路径的每条道路用折线表示.为了便于判断,将指定路径的每个路段,即折线的每个线段,按行驶方向进行编号.如图5所示,指定路径为 P0到 Pn的一段道路,道路的端点 Pi(0≤i≤n)按照行驶方向排列,线段 Pi-1Pi为 i号路段.如果点 P位于 (Pi-1,Pi■(0≤i≤n)区域内,那么 P所在的路段号为 i.

图5 指定路径分段示意图

经过上述对指定路径的处理,沿路径告警算法的步骤如下:

1)根据车辆的位置点 a判断车辆是否位于指定路径上.如果是,转入 2);否则,发出车辆偏离指定路径告警,程序结束.

2)根据冲突区域(冲突点、停止线或禁行区)的参数,判断其与指定路径的相对位置.如果冲突区域与制定路径无相交区域,程序结束;否则,转入3).

3)判断车辆是否位于冲突区域,如果是,发出车辆进入冲突区域告警,程序结束;否则,转入 4).

4)计算告警点 b(冲突点、停止线的中心点或禁行区沿指定路径方向的进入点).

5)计算车辆的位置点 a和告警点 b所在的路段号,分别为 i和 c.

6)通过比较 i和 c,判断车辆位置与冲突区域的相对位置.i=c,转入 7);i<c,如图6(A)所示,说明车辆未进入冲突区域,转入 8);i>c,如图6(B)所示,说明车辆已越过冲突区域,无需告警,程序结束.

7)进一步判断车辆与告警点的位置关系.如果 a到 Pi的距离 DaPi大于 b到 Pi的距离 DbPi,如图6(C)所示,说明车辆未进入冲突区域,转入 8);否则,DaPi<DbPi,如图6(D)所示,无需告警,程序结束.

8)计算车辆沿路径到达告警点 b的距离 D,并与阈值D0进行比较;如果 D≤D0,发出即将进入冲突区域告警;否则,程序结束.

3.4.2 测试结果

本文采用 PC机模拟车载终端对提出的沿路径告警算法进行测试.测试中,车辆按照指定路径行驶,终端每隔 1 s计算一次车辆到达前方冲突区域的距离.当计算出的距离小于设定的阈值时,终端发出告警提示.因此,司乘人员对可能发生的冲突事件存在一定的反应时间,避免了冲突事件的发生.

图6 沿路径告警算法示意图(以禁行区为例)

4 结 语

随着机场流量的日益增加,机场场面的安全受到了严重的威胁.场面监视系统可以对机场场面的移动目标(飞机、车辆以及其他移动物体)进行监控和引导,提高车辆运行效率以及预防冲突事件的发生,有效的改善了机场场面的安全.

[1] [美]理查德·德·纽弗威尔,[美]阿米第 R.欧都尼.机场系统:规划、设计和管理[M].北京:中国民航出版社,2006:8.

[2] 机场场面监控管理系统方案建议书[Z].北京:北京合众思壮有限公司,2007.9.

[3] 郑灵翔.嵌入式Linux系统设计[M].北京:北京航空航天大学出版社,2008.3.

[4] BLANCHETT J,MARK S.C++GUI Programming with Qt4(Second Edition)[M].7版.北京:电子工业出版社,2008.

[5] 孙 达,蒲英霞.地图投影[M].南京:南京大学出版社,2005.

[6] 怯肇乾.嵌入式图形系统设计[M].北京:北京航空航天大学出版社,2009.

[7] 孟凡金,刘嵩岩,来逢昌,等 .嵌入式车载导航系统的地图数据库设计与实现[J].哈尔滨商业大学学报:自然科学版,2007,23(4):472-475.

猜你喜欢
电子地图车载嵌入式
一种车载可折叠宿营住房
基于灵活编组的互联互通车载电子地图设计及动态加载
高速磁浮车载运行控制系统综述
搭建基于Qt的嵌入式开发平台
基于Mapserver的增强现实电子地图的设计与实现
智能互联势不可挡 车载存储需求爆发
嵌入式软PLC在电镀生产流程控制系统中的应用
基于ZVS-PWM的车载隔离DC-DC的研究
电子地图在初中地理教学中的应用实践
Altera加入嵌入式视觉联盟