




已阅读5页,还剩69页未读, 继续免费阅读
(控制科学与工程专业论文)某型无人机地面导航站系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西北t 业人牛顿 擘位论文摘要 摘要 本文主要研究某型无人机地面导航站系统的设计,负责完成导航站系统软 件编程及功能实现工作。该软件为无人机系统提供航迹显示,航迹规划等导航 服务;具备管理导航数据库、估算地表高程的功能;还对模式识别技术进行了 初步的工程化应用研究。论文的课题研究主要涉及到g i s ,数据库,局域网,和 算法实现等计算机应用技术。 地面导航站以电子地图作为航迹显示的载体,用数据库存储导航信息,通 过以太网通信链路和地面控制站进行通信。围绕导航站软件的实现,论文研究 解决了五个关键技术问题:( 1 ) 提出了电子地图的自动漫游方法,以便在长期 无人看照的情况下追踪无人机的飞行位鹭,使之总是位于窗口的中央;并绘制 客户图层使航迹得以长期存在,克服了旧版导航站因为使用g d i 方式绘制航迹 而不能稳定显示的缺点。( 2 ) 在管理导航信息方面,使用d a o 方式访问数据库 作为对旧版软件文本存储方式的改进,不仅提高了数据的安全性,而且为查询 操作带来便利,提高了航迹回放的效率:还解决了时间查询歧义问题和a c c c s s 语言格式兼容性问题,使读写导航数据库的操作能够正常进行。( 3 ) 通信功能 得以完善,能够适应链路的异常中断;还对网络结构和通信内容提出并实现了 部分扩展,尝试使用星形网络拓扑结构,并将图像等信息也列入网络传输。( 4 ) 结合m a p i n f j 和a r c g i s 的优势为导航电子地图增加了反映地形变化情况的栅格 图层,设计了等高线插值算法,建立了跨g i s 平台开发的数字高程模型( d i g i t a l e l e v a t i o n m o d a l ,d e m ) ( 5 ) 用c + + 语言实现了基于h o u g i l 变换的模式识别。 解决了上述技术问题之后进行的测试表明,地面导航站能准确的跟踪飞机 位置,稳定的显示航迹;还能从数据库存取导航信息;通信链路也更加可靠; 新加入的数字高程模型还能确定飞机的安全飞行高度。本论文的工作使导航站 的功能得以进一步完善和提高,达到了实时跟踪飞机航迹的目的。 关键词:无人机,电子地图,数据库,高程,模式识别 西北工业大学硕l 学位论文 a b s t r a c t a b s t r a c t t i l i sp 印c rm a i n l y 佗s e a r c h e st h er c a l i z a t i o no f t h eg r o u n d1 1 a v i g a t i o ns t a t i o n s y s t e mo f 加u n i n a 肋e da e r i a lv c h i c l e ( u a v ) a n dp r o g 舢t l l es 0 触a r eo f t l l i s s y s t e m t h i ss t a t i o no 觑r sn a v i g a t i o ns e n ,i c e ss u c ha sd i 印l a y i n g ,a l l dm 缸k i n go u t t h e 仃a c ko f u a v b e s i d e s ,t h i ss y s t e mc a na l s om a s t e rt l l en a v i g a t i o n 龇b 嬲e ,鲫d c a l c u l a i et l l ee l “a t i o no f t h eg r o u n d i na d d i t i o n ,s o m ep r i m a f yr c s e a r c hf o rt h e 助g i n e e r i n ga p p l i c a t i o no f m o d ef e c o 朗i z eh a db e e i ld o n e t h i sr e s e a r c ht a s k1 1 a d d e a lw i i hs e v c r a lc o m p u t e rt e c h n i q u e ss u c h 船g i s ,d a 油a ,u 澍,a r i 岫n e t i c r e a l i z a t i o n a n ds 0 1 1 1 eg m u i l dn a v i g a t i o ns t a t i o nd i s p l a yt h et r a c ko nt 1 1 ed i g i 协lm 印,a n ds t o r a g e n a v i g a t i o ni n f o 姗a t i o ni nt h e 砌曲a s e ,锄dc o m m u n i c a t e 、i t hm e 伊o u n dc o n t r o i s t a t i o n 伽o u g l lt h ee t h e m e t t l l i sa n i c l eh a ds 0 1 v e d5i m p o n 觚tt c c l l i l i q u ep r o b l e m s i l lo r d e ft o 代a l i z et 1 1 ev 出o i es y s t e m f i r s t ,p u tf o n v a r dt l l em e m o dt 0 跚t o m a t i c c r u i s et 1 1 ed i g i t a lm a na n dd r a wt r a c k so nt h ec l l s t o m e r i a y e ro f t l l ed i g i t a lm a p t h a tt h e 仃a c k sc a l lb ek 印t 辩c u l a n y - s e c o n d ,a c c e s st h ed a 协硒ew i mt h ed a l 组 a c c e 鲻o b j e c t ( d a o ) m o d e 鹳a m e l i o r a t i o nf o rt h e o l dv e r s i o ns o r w a r ew h i c h a c c e 鼹d a t at h m u 曲t e x tf i l e s t h ep r o b l e m s s u c h 髂t i m e - q u e r yd i 仃b r c n tm e a l l i n g s , t h ed i 靠b r e n tc o m m a n df o n n a tb e t 、e e na c c e s sa n ds o lh a db e e ns o l v e d ,t h i r d ,吐l e c o m m l l i l i c a t i o nf i i n c t i o nh a db np e r f c c t ,鲫dt h es y s t e mc o u l da d a p tt h ei m 删p to f t 1 1 en c t w o r k s e v e r a l 跚e l i o r a t i o n sa b o u tt l l es t m c t i i r eo f n e t w o r k 柚dt h ec o n t c n t h a db e e ng i v e n 卸ds o m eo f m e mh a db e e nr e a l i z e d f o u 胁,e s 诎d i s h c dn l ed i g i t a l e l “a t i o nm o d a l ( d e m ) 蜘u g l ld i 侬= r e mg l sd e v e l 叩p l a tr o o f :m a p i l 怕,a r c g i s f i 觚,r e a i i z e dm o d er e c o g n i z c 晰t hc + + l a n g u a g eb a s e do nh o u g h t r a n s f o n l l t h et c s l 世e rs o l v i n gp r o b l e m sf o r v 蒯h a dw o r k e do u tt h a tt h eg m u n d i l a v i g a t i o ns t a t i o nc o u l d t a i lt h e 仃a c ke x a c t l y 锄dd i s p l a yt l l et r a c kw e l l ,t h ea c c e s so f m e 幽衄b 嬲e 啪sc o n v e n i e n t l y ,a 1 1 dl h ec o m m u n i c a t ec h a 衄e lw 弱m o 豫r e l i a b l e ,柚d m ed e mc o u l dh c l pt oc o n f i 吼鼢f ea v i a t i o nh e i g h to fm eu a v a l lt h e 豫s e a r c h w o f kh a dm a d em e 鼬c t i o no f m e 船v i g a t i o ns t a t i o nm o f ep e r f e c t ,i tc a n 、o r kw e l l 嘶t l lg o o dr e a l t i m ep e r f b n 】帕n c e 壬( e yw o r d s :u n m a n d a i rv e h i c l e d i g 蹦m a p d a 协b a s 峨e i e v a t j o n 。m o d er e c o g l l 协 n 西北工业人学硕。i 学位论文绪论 第一章绪论 无人机( u 啪蝴e d a e r i a lv e h i c l e ,u a v ) 是一类由动力驱动、无人驾驶、 可重复使用的航空器简称1 2 】1 4 】,其体积小、成本低,可装配制导系统,机载雷达 系统、传感器、摄像机等设备,用途广泛并且不易造成人员伤亡。根据机载设 备装配不同,可分别用于执行空中侦察、无线电电子战、打击敌军纵深配置重 要目标等任务。 自1 9 1 7 年第一架无人机问世以来,各国对开发无人机技术的重视程度越来 越高。现在很多国家都在大力发展各种用途的无人飞行器,已有3 2 个国家研制 出了5 0 多种无人机;而装备了无入机的国家已经达到5 5 个。目前,小型化、多 用途已成为国内外无人机发展趋势。 1 1 无人机发展概况 1 1 1 无人机发展简史 无人机先后历了无人靶机、预编程序控制无人侦察机、指令遥控无人侦察 机和复合控制的多用途无人机等发展阶段。现代战争中,无人机可以执行多种 军事任务:照相侦察、播撒传单、搜集信号情报、布撒雷达干扰箔条、防空火 力诱饵、防空阵地位置标识、直升机航路侦察;还能为武器系统提供目标定位、 目标指示、目标动态监视和目标毁伤评估的实时情报1 3 】。 世界各国已对无人机的作用、地位及其潜在的军事价值给予充分的重视, 无人机技术也因此取得了迅猛的发展。冷战结束后各国削减军费、裁减军队编 制,促使军方努力寻求既能完成特定任务,又能节约经费的飞行器,这无疑给 无人机的发展提供了机遇。从军事侦察使用角度来看,无人侦察机是对侦察卫 星和有人侦察机的重要补充和增强手段:它与侦察卫星相比,具有成本低、侦 察地域控制灵活、地面目标分辨率高等特点;与有人侦察机相比,具有可昼夜 持续侦察的能力,不必考虑飞行员的疲劳和伤亡问题。2 0 世纪电子技术和航空 航天技术的发展进步,也为无人机满足军事需求在技术上提供了条件p j 。上述 西北_ c 业人学颀 学位论文绪论 因素推动无人机技术的发展又进人了一个崭新的时代。此静,无人机技术已经 在2 0 世纪经历了三个发展高潮。 第一个高潮是在海湾战争之后,师级战术无人机系统的发展。典型的机型有: 以色列的“侦察兵”( s c o u t ) 、“先锋”( p i o n e e r ) 、“搜索者”( s e a r c h e r ) ;美国的“猎 人( h u n t e r ) 、“先驱者”( o u t r i d e r ) ;法国的玛尔特( m a n ) 、“红隼”( c r e c e r c l l e ) 、德 国的布雷维尔( b r e 、,e 1 ) ;加拿大的c l _ q 8 9 :英国的“不死鸟”( p h o e i l i x ) ;意大利 的米拉奇( m i r a c h ) 2 6 ;南非的“探索者”( s e e k e r ) 、“秃鹫”( v u l t u r e ) 和俄罗斯的“熊 蜂”( s h m e 】) 2 等等。 第二个高潮是自从美国的“捕食者”( p r c d a t o r ) ( 蒂尔一h ) 中空长航时无人机 在波黑和科索沃战场试用获得成功之后,出现了中高空长航时无人机。典型的 机型有:美国的“捕食者”( p r e d a t o r ) ( 蒂尔i i ) 、“全球鹰,( c l o b a l h a w k ) ( 蒂尔i i + ) 、 “暗星( d a r k s t 砌( 蒂尔i ) ;以色列的“苍鹭”( h e r o n ) 、赫尔姆斯( h e m e s ) ;和法 国的“鹰”( e a g l e ) 、萨若海尔( s a r o h a l e ) 等。 第三个高潮是2 0 世纪未出现了固定翼和旋翼旅团级战术无人机系统。典 型的机型有:美国的“影子”( s h a d o w ) 2 0 0 、“火线侦察兵”( f i r es c o u t ) 和奥地利的 坎姆考普特( c 姗c o p t e r ) 等。 我国对无人机的研究予6 0 年代起步,起仞主要是小型靶机和民用无人机。 1 9 7 2 年,我军在境内击落了美瑞安a q m 3 4 无人机,从此对无人机技术的研究开 始深入进行。从事研究的机构以高校为主,如西工大,南航,北航。南航利用 退役的歼6 喷气发动机研制出“长空”系列靶机。西工大无人机研究所从6 0 年代即 开始研制小型无人机,并取得了丰硕的成果,其无人机主要有靶机、地质勘探 无人机、无人侦察机等。近年研制的小型通用无人机,机载任务设备有摄像机、 照相机、红外、电子干扰、电子侦察等多种设备,可以完成多种任务并已装备 部队。 1 1 2 无人机的发展趋势 无人机的主要发展趋势有:l 小型化、智能化、隐形化;2 高升限、长航 时:3 高生存率、低造价、低损耗;4 任务设备向高分辨率、实时化、小型化 西北工业大学硕= p 学位论文结论 方向发展;5 涮控技术向远距离、通用化、数字化、网络化方向发展【2 0 】。 1 1 3 无人机系统的组成 无人机系统包括空中和地面两大组成部分。空中部分包括无人机机体、自 动驾驶仪、机载电子设备和任务设备等;地面部分包括地面控制站、地面导航 站和数据链等。 1 2 地面导航站的研究概况 1 2 1 地面导航站在无人机系统中发挥的作用 作为无入机系统的地面组成部分,地面导航站和地面控制站分别为无人机 的地面控制人员提供导航和控制平台。其中地面导航站担负着回放、规划飞行 航迹【i j 估算地表高程、存储和回放航迹等重要的导航任务。这些功能主要通 过借助m a p j n f b 等地理信息系统开发软件,对电子地图进行二次开发等手段来实 现。 为了回放航迹以及对飞行状态进行离线分析。很多重要的飞行数据记录也 要进行存储;每次的航迹规划也要连同本次规划的发送时刻一起被存入导航数 据库。与之相关的导航数据库由地面导航站的应用程序负责管理。可见,地面 导航站还发挥着管理实时飞行数据和航迹规划信息的重要任务,同时也对改进 系统性能、查找试飞中的问题和故障发挥着重要的作用。 作为整个无人机通信系统的末端组成部分,地面导航站和外界的联系主要 是通过以太网和地面控制站之间进行通信,因此地面导航站还承担着维护通信 链路的任务。目前的网络拓扑结构是最基本的点对点型,今后可以根据需要扩 展成星型拓扑结构的局域网。完成这种扩展的主要技术难点是在不同节点之间 进行通信的时候要识别接收方。这只需在现有的协议基础上加入节点的j d 信息, 进行相应修改就能实现。 为了确保无人机能够避开障碍,还在地面导航站中加入了数字高程模型, 用以实时取得任意经纬坐标处的地表高程信息。最后,在地面导航站实现了基 于h o u 曲变换的模式识别功能,作为对后续研究工作的尝试和评估。加入这些新 两北丁业人学硕卜学位论文 绪论 功能,无疑会大大改善整体系统的导航性能,对实现无人机的精确导航、安全 飞行都有重要意义。 1 2 2 论文的创新和扩展 无人机地面导航站的研究工作早在2 0 0 5 年4 月就已经由上一届的同学最先 展开。本文所讨论的地面导航站则是通过总结过去研究中出现的问题和不足, 在此基础上对系统进行了重新设计。新的地面导航站主要在下列方向进行了改 进和创新。 1 2 2 1 航逊绘制和数字高程模型 过去的航迹是直接以g d i 方式绘制在屏幕上的,但这样的航迹不能稳定存 在,窗口的遮掩或者抖动都会造成航迹及航点标号消失。 针对这个问题提出的解决方案是在电子地图的客户图层绘制航迹。另一个 涉及地理信息系统二次开发的创新点是数字高程模型。除了等高线插值算法可 以用以估算高程之外,自主刨新的跨平台开发方法还为导航地图增加了一个反 映地面高程分布情况的新图层。 1 2 2 2 读写导航数据库 旧版的导航站虽然也能存储导航信息,但是存储方式是将导航信息记录在 文本文件的。这种方法不仅可读性差,而且不便于对导航数据进行查询。 新的导航站则是把这些信息存储到a c c e s s 数据库中,利用d a o 方式在s i l a l c + + 环境下访问数据库。这样,数据的安全性、读写便利性都有了很大的提高。 1 2 2 3 以太网通信功能的改进 旧版的导航站也采用了以太网通信,而且具有比较可靠的性能。 新的导航站主要是针对通信的效率,对通信协议进行了改进,使得编码变 得更加简洁有效;对链路进行有效的维护,使之能适应异常的和主动的中断并 继续稳定工作。此外还尝试着对通信内容和网络的拓扑结构进行了扩展。 4 西北工业大学硕l 学位论文绪论 1 2 2 4 在导航站实现模式识别功能 模式识别是旧版导航站不具备的功能。作为尝试,这里的模式识别对给定 的位图进行了h o u 曲变换,从中识别出两条平行直线。 和以往不同,这里的识别算法主要是为了对该算法进行工程化应用。从这 个意义上讲,以c 或者c + + 代码实现的h o u 曲变换比用m a t l a b 实现更有意义,当 然难度也要大一些。所以,直接在导航站实现模式识别也是新版导航站的个 创新点。 1 3 本文的主要研究内容及结构 1 3 1 论文所涉及的研究内容 本论文研究课题来源于中航二集团某厂重点项目“某型无人机系统研审俨, 属于无入机系统的一个子系统。地面导航站主要包括v i s i i a lc + + 程序设计、数据 库、地理信息系统开发以及局域网通信等技术,还涉及数字高程模型、模式识 别等理论的应用,属于综合性软件开发项目,有着很强的实际应用背景。 1 3 2 论文结构 本文结合实际需要,通过总结在无人机地面导航站设计任务过程中遇到的 主要技术难点,依次展开研究,分析问题、解决问题,安排各章节的内容。论 文分为六个章节,各章主要内容如下: 第一章简要介绍有关无人机的背景知识及发展概况,接下来对地面导航站 在整个系统中的作用做了简要说明,最后扼要介绍了全文的结构安排。 第二章阐述了根据导航需要而进行的电子地图的一些二次歹f 发方法,分别 通过实时改变地图中心坐标、绘制客户图层的手段解决了电子地图自动漫游、 保持航迹稳定存在等具体技术问题,为地面导航站基本功能的实现创造了条件, 同时还介绍了航迹规划功能的实现方法。 第三章讲述了如何在s m lc + + 下以d a 0 访问方式在地面导航站实现访问 导航数据库的功能。针对测试中发现的查询跨越一天的时间段存在歧义的问题, 西北工业人学顽r 学位论文绪论 提出了避免歧义的算法;解决了a c c e s s 数据库不同于标准s q l 语句的时间记录格 式问题。 第四章主要讨论以太网通信功能模块的设计和实现。解决的主要问题是: 制订并实现高效而可靠的通信协议、维护通信链路以便对通信链路的各种异常 中断能做出正确反应。此外,还分别从扩展通信内容和升级网络拓扑结构的角 度对以太网通信功能模块提出改进方案。 第五章的内容属于功能扩展。为了使无人机能准确地规避障碍,在地面导 航站加入了数字高程模型。通过实践和探索,总结出了等高线插值算法和跨平 台g i s 开发方法,研究结果表明,本论文提出的方案可以有效解决障碍规避问题。 第六章涉及模式识别功能工程化的探索性尝试。通过用s u a lc + + 代码以 h o u g i i 变换从给定的位图中识别出2 条平行直线,评估模式识别技术在地面导航 站系统实用化的难度和前景,作为对后续研究工作的初步探索。 本章小结 本章首先介绍了无人机的背景知识及发展概况,然后说明了她面导航站在 无人机系统中的作用,接下来提出了在新版地面导航站的实现的主要改进和创 新点,最后阐述了全文的主要研究内容和论文的结构编排。 6 西北工业大学硬t 学位论文 电子地图矗地面导航站的应月i 第二章电子地图在地面导航站的应用 2 1 地理信息系统及其二次开发 2 1 1 地理信息系统简介 地理信息系统( g e o g r 印l l i c a li n f o n n a t i o ns y s t e m ,简称g i s ) 是管理地理信 息的计算机应用技术分支,具备地理信息的采集、存储、管理、查询、分析和 显示等功能【刀。g i s 以数字化的形式反映各种地理空间数据以及描述这些空间数 据特征的属性;以模型化的方法来模拟这些地球空间对象的行为。g i s 能用特定 的格式支持输入输出、存储、显示地理信息;还能实现地理信息的查询、综合 分析、辅助决策等功能。图2 1 显示了g i s 应用模型的组成结构。 图2 1 地理信息系统的麻用模型 从图2 i 可以看到,g i s 支持用户通过图形界面访问空间数据库,进而完成 对地理信息的检索和应用;而空间数据由相应的软件系统管理,构成空间数据 库管理系统( d a t a b 船em 锄a g es y s t c m ,简称d b m s ) ,并由硬件系统负责空间数 据源的采集和存储这些组成部分的有机结合就构成了g i s 的应用模型唧。 7 西北工业大学硕j 。学位论文 电子地图在地面导航站的应用 g i s 是将图形学、数据库等技术综合应用的软件平台。g i s 的上述特点,适 合采用组件式刀:发方法编写应用程序。这种开发技术是把地理信息系统的底层 操作以接口函数的形式封装在二次开发软件( 或组件) 中,由用户访问这些接 口,以便高效、快捷地进行开发。这种开发模式使得地理信息系统的应用取得 了长足的进步。m a p i n f o 公司的m a p x 是一种被广泛使用的组件式二次开发工具, 也是本文所讨论的地面导航站的主要开发工具。 2 1 2 开发工具简介 地面导航站主要以m a p i n f 0p r o f e s s i o n a l7 o 为地图制作工具,以m a p x 4 0 作 为电子地图的二次开发软件。这些都是m a p i n f 0 公司的产品,因此具有一致的数 据格式和开发标准。 2 1 2 1 地图制作工具m a p i n f op f o f e s s i o m l 嗍 m a p i n f | o 是美国m a p i n f 0 公司的桌面地理信息系统软件,是一种数掘可视化、 信息地图化的桌面解决方案。m a p i r i f o 的含义是“m a p p i n g + i n f o m a t i o n ( 地图+ 信息) ”即:地图对象十属性数据。 图层在m a p h f op r o f e s s i o 豫l 是一个重要概念。一幅完整的地图,通常由若干 图层构成( 二次开发的时候还经常加入客户图层、动画图层等供用户操作的临 时图层) ,每个图层都反映一组属性相近的地理信息。电子地图把各个图层叠加 起来,就可以表达丰富的地理信息了。 用户还可以根据需要,借助m a p i n f op m f c s s i o m l 增减显示在地图中的图层以 便更好的观察感兴趣的图层,这是常规地图无法做到的。图2 - 2 示意了各个图层 是如何构成一幅地图的。 西北工业大学颀上学位论文电子地幽在地面导航站的应用 图2 2 多图层叠加示意图 从图2 2 可以看到,最上面是两个点图元层,通常表示建筑、地面标志等对 象;第三层是一个表示区域划分的面图元层,一般用以反映行政区域划分等等; 最下面的是一个线图元层,一般表示边界、道路、等高线等。这幅示意图的图 层次序接近于一般的图层次序安排规律:点图元层线图元层面图元层。 这样安排地图图层的依据是:上层的图元会遮挡下层图元。面图元最容易遮挡 其他图元。因此通常置于底层位置;而点图元最不容易遮挡其他图元,所以簧 于最上层。 m a p i n f op r o f e s s i o n a j 是基于w i n d o w s 平台的g i s 开发软件,能准确而快捷的 反映数据和地理信息之间的关系。其强大的数据分析能力有助于用户结合地理 特征的理解与之相关的其他信息。 m a p i n 如以表的形式组织信息。每个表都是一组用来在地图中创建图层的 m a p i n f o 文件。通常情况下表包括下列文件; a ) t a b :描述m a p i n f 0 表的结构。是描述包含数据的文件的格 式的文本文件; b ) d a t :这些文件含有表格格式数据; c ) m a p :描述图形对象( 如果表没有地图对象则不存在该文 件) : m i d :是链接对象和数据的交叉引用文件( 如果表没有地图对 象则不存在该文件) ; e ) i n d :索引文件。索引文件允许使用f i n d 对象来查找地图 对象。 9 西北工业大学项上学位论文电了:地j ! f i 在地面导航站的应用 每次绘制退出m a p i n f 0 ,都要生成后缀为w o r 的工作区文件,以便保存地图 的绘制进度,这样的工作区文件发挥着类似于v i s u a lc + + 的d s w 文件的作用。 地图绘制任务彻底完成之后,应该导出g s t 文件。这是供地图浏览工具访问 的文件,包含了全部图层的所有图元及其地理编码。而且,程序员对电子地图 的所有二次开发都是通过g s t 文件进行的。s u a lc + + 能够访问的电子地图也是 这种g s t 文件。 2 1 2 2 电子地图二次开发软件m a p x 【1 0 】 m a p x 是供应用程序开发人员使用的组件式二次开发工具,用于将地图及相 应的操作功能嵌入到应用程序中。m a p x 属于o c x 组件,可以被快速集成到使用 v i s u a lc + + 等面向对象程序设计语言编写的应用程序中。程序员可选择自己所擅 长的程序语言访问地图数据,还能对地图进行二次开发。这种软件开发不仅方 便灵活,而且兼容性好。 m a p x 虽然支持用户以加载a c t i v e x 控件的方式将接口函数加载到应用程 序,但根据对不同加载方式效果的对比来看,这样的载入方法并不好。主要原 因是: a ) 这种做法不仅使得m 印x 组件的类视图显得很零乱,而且经常会缺 失一部分组件,类的数量很多功能却并不齐全,不利于m 印x 发挥 完整的功能; b ) 软件的可移植性不好,即使编译器或者开发环境的微小改变也很容 易导致原本可以正常运行的程序出现问题。 可靠的加载方法是:直接把包含了所有组件接口定义及其实现代码的驱动 文件m a p x h 和m 印x c p p 复制到工程目录下并加载到工作区即可。 m a p x 支持用户在应用程序中加入对地图的各种操作。例如,用户能按照专 题渲染区域,以专题图的方式形象的反映和地理信息相关的数据:m a p x 的分析 功能支持分组和组织数据,还能在一定的区域内选择和查找地图图元。地面导 航站使用最多的功能是绘制客户图层,航迹的规划和回放、飞机图标的显示都 要借助这项功能才能实现。 西北工业大学硕士学位论文电子地图布地面导航站的应用 2 2 导航电子地图的基本操作 这里所述的电子地图基本操作包括应用程序对地图的载入、缩放、漫游等。 g i s 应用程序经常涉及这些基本操作。下砸介绍用s u a lc + + 6 0 结合m a p x 4 0 实 现上述功能的方法。 2 2 1 载入地图 m a p x 的地图对象来自类c m 印x 的实体r n _ c t r l m a p x ,所有对地图的操作都 要直接或间接的通过这个对象完成。下面的代码是把导航电子地图加载到应用 程序视图窗口的实现过程,来自消息w m _ _ c r e a t e 的处理函数: m r 1 m a p x c r e a t e ( n u l l ,w 叉v i s i b l e ,c r e c t ( o ,o ,5 0 0 0 ,5 0 0 0 ) ,t h i s ,1 ) ; ! b _ c t r l m a p x s e t g e o s e t ( ”m 印s 、西安g 掣) ;载入地图的函数 l n - c 伽a p x s c t m a p u n i t ( m i u n i t k f i o m e t e r ) ; r n c t d m a p x g 色t l a y e r s ( ) a d d u s e r d 馏w l a y e r ( 规划层”,1 ) ; 以上语句依次完成:将地图属性设髯为可见,指定初始显示范围在视图对 象( o ,o ) 至( 5 0 0 0 ,5 0 0 0 ) 的矩形区域。指定当前视图窗口为父窗口,地图编号为l : 加载可执行文件所在目录下的m a p s 西安g s t 地图工作区文件。至此。视图窗口 已被加入了一个电子地图对象。后两行代码表示,设置长度单位为千米;在地 图中添加客户图层并命名为“规划层”,在该层可以绘制飞机标志、n a v t o 标志以 及航迹,下一节对这些功能有详细的阐述。 仅仅载入地图是不够的。因为视图窗口经常被用户拖拽、缩放,这要求地 图对象也能适应这些变化。所以要针对视图尺寸改变的消息w m s i z e 定义消息 处理函数,并在这个函数内部调整地图尺寸,从而使地图始终能够以符合视图 窗口的大小显示出来,不仅界面更加友好,而且大大方便了用户的使用。这种 调整只需在0 n s i z e 函数执行下面的代码就能实现: i f ( c x ! ;0 & & c y f _ 0 ) n l - c l m 印x m o v e w i n d o w ( o ,o ,c x ,c y ,t r u e ) ; 上述代码在判别窗口面积非零之后,就把地图对象的范围调整为从窗口的 左上角延伸到右下角,保证地图始终可以占满这个视图客户区。这样地图就能 西北工业丈学硕士学位论文电子地图在地由i 导航站的应用 适应窗口的尺寸变化。 2 2 2 操作地图 像使用常规的纸质地图一样,用户不可能在一幅地图前立即观察到所有信 息,所以需要移动地图以便进行更为全面的观察;有时候用户希望能够近距离、 仔细的观察某些重要位置;另一些情况下用户为了对整幅地图有一个全面的了 解即获得对该图的全局认识,希望尽可能把比较大的地理范围收入眼底。这些 要求在地面导航站的电子地图中分别是以漫游、放大和缩小来实现的。 假如完全由程序员实现上述功能,不仅要涉及大量的绘图操作,而且软件 的可移植性差,重复工作多。地面导航站是用接口函数实现这些功能的。程序 员只需调用接口函数,并确定相应的参数就能达到操作地图的目的。例如,地 图的漫游指令:1 1 1 _ c t r l m a p x s e t c u n e n f r o o l ( m i p 锄t 0 0 1 ) ;放大指令: 删m a p x s e t c u n c n t t o o l ( r n i z o o m i n l 曲1 ) ;缩小指令: m l m a p x s e t c u r 咒n t t o o l ( m i z o o m i r f r 0 0 1 ) 。其中,括号内的参数都是m a p x 定 义的枚举变量,代表不同的操作命令,可以看到这些枚举变量的命名规律是统 一的。 上述功能都被安排到地面导航站应用程序的“地图操作”菜单下,可以借助 这些命令执行各种操作。更简便的操作方法是单击应用程序“地图操作”菜单下 方的工具栏按钮,这样可以更快捷的触发指令。图2 - 3 是将要执行缩小命令时的 截图。 西北工业大学硕七学位论文电子地图在地面导航站的应用 2 3 绘制客户图层 图2 3 执行缩小地图的命令 用于导航的电子地图要执行航迹的显示和规划、飞机位置的显示以及临时 航点位置的标定等图像显示任务,所以必然要进行一些绘图操作。 为了达到这个目的,最容易想到的办法是直接进行w i n d o w s 的g d i ( 0 m p i l i c d e v i c e h l t e m ,图形设备接口) 绘图,旧版导航站也是采用了这种方法。然而 这是一种不成熟的绘图方法。实践证明,直接使用g d i 方法绘制的图像虽然也 能被显示出来,但是因为附着在视图上的电子地图经常要被刷新,这就使得直 接以g d i 方法绘制的图像不能稳定存在,电子地图的自动漫游、视图窗口的最 大化、最小化、抖动或被其他窗口遮盖都会造成图像残缺或消失,这在导航应 用中是不能接受的。图2 4 和图2 5 反映了旧版导航站在这种绘图模式下航点标示 被其他窗口遮挡之后不能稳定存在的情况。 西北工业大学硕上学位论文电子地图在地面导航站的应用 图2 _ 4 航点规划的初始状态 图2 4 表示规划了7 个航点的期望航迹,航点标号和航点之间的连线都用g d i 方式绘制在屏幕上,但是这些图像都不是电子地图的组成部分。地图所在的视 图窗口如果抖动、被遮挡或者缩放等都会触发视图窗口的自动刷新,之后这些 绘制在屏幕上的图像就会被破坏。 图2 5 窗口遮挡之后的状态 图2 5 是旧版导航站视窗被其他应用程序的窗口遮挡之后的状态,这时候航 点标号已经残缺不全,仅有2 号和3 号航点的标号还残存一部分,其他的已经完 1 4 西北- 业大学硕七学位论文电了地图在地面导航站的应用 全被刷新掉了。这样就存在很多,甚至全部航点都无法被辨别的问题。 借助绘制客户图层的功能可以克服上述问题。其解决思路是:既然直接的 g d i 绘图与电子地图存在于同一视图会带来不便,不如为程序员开辟一个客户 图层,允许把程序员绘制的图像作为地图的一部分,这样客户图层的内容就能 稳定存在,于是原有的矛盾就被化解了。 不仅如此,把程序员绘制的图像作为地图的一层还有另一个好处,那就是 图像可以很容易的被进行地理编码,至少可以与其他图层进行同比例的缩放, 这在绝大多数情况下是合理而且必要的。 绘制客户图层,除了需要定义一个客户图层对象之外,还要在 e v e n t s i n km a p 宏声明和映射m a p x 的消息。然后才是编写具体的绘图函数。 类似的还要映射鼠标移动、鼠标弹起等事件并实现映射函数。绘制客户图层的 图像与直接的g d i 绘图基本相同,只要有g d i 绘图基础的程序员就能胜任这样的 工作。不过,一个绘制客户图层的消息只能对一个客户图层进行操作。这个不 足是能够用下面方法弥补的。 导航地图主要有航迹规划、航迹回放和绘制临时航点三个绘图任务。但是 它们共享同一个客户图层。不妨定义一个标志变量s h o r tm s 1 砸k ,其取值由地 图操作人员执行菜单命令决定。每当执行到客户图层绘制消息函数 0 1 1 d r a 、v i i s e r l a y e r 的时候,都要先对m s t a s k 进行s 、v i t c h 语句的判别。例如判另i j 的结果是航迹规划,就在o n d r a 、v u s e r l a y e r 函数结束后执行航迹规划绘图函数; 要是ms 1 缸k 的取值不是上述三者中的任何一个任务,就在0 n d r a w u s 盯l a y e r 结 束后直接跳出,不对客户图层进行任何绘制。这样的处理效果已经和允许在多 个客户图层绘图基本一致了。 图2 6 反映了无人机在飞行状态下进行航迹规划的情况。此时的电子地图处 于自动漫游状态,可以看到航逊连线仍然能够稳定存在。其中,准星表示飞机 当前位置( 自动漫游时,总是位于视图中央) ;准星附近的细实线代表航点连线 即操作者规划的航迹;航点用数字表示,编号从o 开始。 西北丁业大学硕t 学位论文电子地图在地面岢航站的应用 2 4 自动漫游 图2 6 导航状态下稳定存在的航迹和各种幽标 这也是在旧版导航站没有解决的一个问题。导航地图要长时日j 跟踪航迹, 必须确保飞机的位置总是在视图窗口的可见范围之内,这就要求导航站所使用 的电子地图必须具备自动漫游功能。常规的地图漫游是用m 印x 函数 s e t c 眦e r “t o o l 设置地图漫游工具之后出用户拖拽鼠标完成的,但是这种方法显 然需要有人操作,不适于长时间无人照料的导航状态。所以为了实现这个功能 还必须寻找其他方法。 注意到c m a p x :s e t c c n t 盯( d o u b l ex ) ,c m a p x :s e t c e n t e f ( d o u b l ey ) 等函 数能够分别指定地图中心的经纬坐标1 2 0 l ,这就为借助指令而不是用鼠标移动地 图提供了可能;更容易解决问题的函数是c m a p x :z o o n l t b ( d o u b l ez o o m ,d o u b l e x ,d o u b l ey ) ,其功能是把地图按照指定的缩放水平z o o m ,将地理坐标( x ,y ) 移动到当前视图的中心位蜀。这个函数已经实现了以指令移动地图的功能,为 实现自动漫游提供了可能。需要留意的一个细节就是地图的缩放水平,如果采 用缺省的数值将会导致地图缩放度不符合要求,不利于正常的读图。所以采用 当前缩放度移动地图,获取当前缩放度的函数是c m a p x :g e t z o o m ( ) 。 解决思路的问题已经清晰了:实现这个功能的核心思想是借助z o o m t o 的地 6 西北t 业大学硕十学位论文电子地匿在地面 手航站的应j 毳 图对中方法利用通信链路实时传来的飞行位置经纬度坐标,把地图以当前 缩放度对中到该坐标处,从而保证这样的坐标总是处于视图窗口的中心位置。 随着新坐标不断传来,地图的中心也在持续改变,于是就顺利的实现了自动漫 游功能。 2 5 航迹规划 导航站的航迹规划、回放功能能够直观的反映飞行状态。与之相关的命令 都被安排在应用程序的“导航任务”菜单下,用户只需直接点击菜单命令就能进 行相应操作。下面对航迹规划功能进行简要说明。 在用户单击“航点规划”命令之后,控制客户图层绘葡j 的标志量 c a 芦s v l 6 j e w :m s 协k 被赋予相应的数值,然后立即刷新客户图层,准备接 收用户用鼠标点击的航点坐标。 接下来在m a p x 的鼠标弹起消息处理函数进行下面的操作:鼠标左键每弹起 一次,就代表一个航点被确定下来,记录本次规划航点数目的变量 c 气g 曙v 1 6 6 v i e w :m n p o i n t 也要被自增一次,同时把新规划好的航点坐标分别存 储到经纬度数组c a g r s v l 6 _ 6 e w :m j c o o r d x 和c a g r s v l 6 _ 6 e w :m - d c o o r d y 的 第c a 伊s v l 6 j v i e w :u _ l p o i n t 个存储单元。鼠标移动的同时,指针所指位置的经 纬度被实时的显示在状态栏,以便查看。图2 6 显示了上述操作。 每次确定了新航点之后,都要立即刷新客户图层,并将当前所有的航点按 编号次序连接成一个闭合的多边形,以便让操作人员参考这样的航迹是否符合 其规划意图。如果希望完成本次规划,只需单击“规划完毕”菜单,航点就能立 即被编码、发送:假如希望放弃本次规划,单击“取消规划”菜单即可;如果要 对已经规划的某个航点的位簧进行修改,单击“修改航点”,用户可以在对话框 中输入需要修改的航点的编号,再次点击电子地图就能把指定的航点坐标修改 过来,而且不会影响用户继续选择新的航点。 规划大量的航点难免有一些被放在不满意的位置,有必要调整。为此,设 计了通过对话框完成和操作者交互,确定修改哪个航点的修改机制。图2 7 是修 改航点的对话框。 西北工业大学倾b 学位论文 电子地图卉地由导航站的应用 图2 7 修改航点 在修改的时候,当前已经规划好的航点数目是一个必须考虑的问题。否则 会造成软件b u g 。很显然,导航站不允许操作者对还没有规划过的航点进行修改。 为了确保修改航点的操作能够j 下确进行。首先应当对用户输入的航点编号进行 合法性检验:航点编号从0 开始。小于0 的编号应当被视为非法;读取当前的航 点数变量mi l p o i n t ,超出这个值的编号也是非法的。除此以外,其他的编号可 以被视为合法。对于试图修改编号为非法值的航点的操作,导航站不做出任何 反应,也不给出任何提示信息。 航迹规划功能,是一个基于绘制客户图层、以开关变量i n j k 控制不同任 务的重要导航子系统,在实际应用中发挥着重要作用。 2 6 扩展功能 为了改善性能,有必要在满足基本导航功能之后对软件的部分功能进行适 当
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 租房协议范本模板一2篇
- 口腔中心劳动合同范本5篇
- 新解读《GB-T 31029-2014飞机垃圾接收车》
- 朝阳辅警合同范本
- 服装铺面转让合同范本
- 酒店绿化合同范本
- 2025年电力安装工程技术人员劳动合同3篇
- 家政保姆合同范本购买
- 委托加工熟食合同范本
- 工程挂靠合同范本简单
- 工程缺陷责任期终止证书版本
- GB/T 45356-2025无压埋地排污、排水用聚丙烯(PP)管道系统
- 石墨产品的国际市场推广策略
- ktv店长合同范本
- 科技辅导员培训课件
- 小学生爱国主义教育工作计划
- 电子政务教程(第三版)课件全套 赵国俊 第1-12章 电子政务概要-中国电子政务的发展基础
- 乡镇卫生院医用耗材监管制度
- 语言学概论-第三章-语义
- 2024-2025学年广东省深圳实验学校初中部九年级上学期开学考英语试题及答案
- 健康与社会照护第三届全省职业技能大赛健康与社会照护项目技术文件
评论
0/150
提交评论