小型无人机地面站导航显示系统设计

http://www.ic72.com 发布时间:2009-2-18 9:04:39

1 引 言

小型无人机(Mini-UAV)通常指最大起飞重量小于10 kg的飞行器。由于Mini-UAV携带方便,操作简易,成本低廉,因而具有广泛的应用前景。小型无人机可以在多种气象条件下执行空中侦察、目标搜索、精确打击等任务。考虑到Mini-UAV军事应用上的隐蔽性及保密性,单纯采用人工遥控导航飞行是不够的。

本文针对小型无人机的特点,在阅读了有关GPS导航资料的基础上,设计开发了一个人工遥控导航与自主导航相结合的小型无人机地面站导航显示系统。该系统具有飞行监视、记录回放等功能。作为无人机地面站控制的一个重要组成部分,导航显示系统以其优越的性能(定位、显示、路线优化等)更具广泛的实用性。

2 系统构成

本地面站系统由地面站设备和导航显示软件两部分组成,如图1所示。其中地面站设备由视频接收机、视频眼罩、天线组成。

2.1导航显示软件

导航显示软件是运行在地面站计算机上的软件系统,他是无人机飞行控制和管理系统的核心部件,主要完成飞行任务管理、任务设备管理、地面通讯、系统自检等功能。飞行任务管理包括电子地图的配准、航线规划以及飞行状态监视等。任务设备管理包括任务设备控制和任务设备状态回送。

机载飞控系统首先将GPS接收信号中自主导航需要的数据(经度、纬度和高度)读取出来,然后根据用户数据所确定的Mini-UAV当前位置和飞控系统存储器中的预定航线自主导航飞行。同时,机载飞控系统需要将用户数据输入到机载发送器发送到地面,经由单片机接口电路输入到计算机中进行处理和显示,以便于地面人员观察Mini-UAV的自主导航飞行情况。

2.2视频接收

地面站视频接收机是本无人机地面站系统机载视频载荷与地面进行通讯的核心设备。他与飞机建立了两条单向的无线通信线路:机载视频信息和低速下行数据链。视频发射机将调制后的视频模拟信号发射至地面站。地面站的视频接收机经天线接收到视频信号,经网络伺服器将视频信号进行解调,最终在地面站显示器上显示出来。如图2所示。

3 通信服务程序

在地面站设计中,使用了一种具备路由能力的通讯服务程序--SRV100,该程序可以使无人机和地面站计算机之间实现组网功能。

地面站计算机和无人机之间通过无线数传进行通信。物理上,地面站计算机之间采用TCP/IP通讯(UDP协议),所以任意两个设备之间都具有数据联系的通路。逻辑上,分布于地面站计算机上的通讯服务程序将负责所有飞行数据帧转发,利用用户手动填写的路由表,实现任意两台飞控设备之间的点对点或广播式通讯。

4.GPS数据的采集与显示

4.1开发环境及方法

面向对象程序设计是软件系统设计和实现的新方法。利用Visual C++6.0可方便地生成各种菜单及美观大方的图形界面,软件质量高且开发周期短。在Windows环境下开发GPS应用软件,操作系统完全接管了各种硬件资源,不允许用户直接控制串行口的中断管理。以往,程序员只能通过数目繁多的API函数来控制串行口,此方法较复杂。Visual C++6.0为用户提供了一个Active x控件Microsoft Comm Control(MSComm),利用他可以很方便地进行计算机串行口的通讯管理。

4.2 GPS的数据格式

本文用的是瑞士u-blox公司研制开发的LEA系列GPS接收机。他采用的是NMEA-0183通信标准模式;输出数据采用ASCII字符码;GPS接收机的输入输出语句均按串行通信协议;数据格式设为8个数据位,1个起始位,1个停止位,无奇偶校验,波特率为9 600 b/s。GPS可输出多种不同功能的数据语句,其中我们所感兴趣的是GGA定位数据语句,其格式如下:

格式中的主要数据定义如下:

4.3数据的处理和显示

本导航显示软件的核心部分包括位置信息栏和电子地图两部分。

位置信息栏用于实时显示GPS接收机接收的数据,其中导航显示软件所需要的数据是GGA定位数据中的经度、纬度和高度,自定义发送/接收的数据如下:4020.736723N11647.862761E57.70。

电子地图中显示了用户飞行器的预定航点、预定航线、当前位置、实际航迹等。

4.4编程实现

(1)在程序中的某个窗体上,插入MSComm控件,设置其相应属性值。在该控件的OnComm事件中,读取接收缓冲区中的全部数据,并从读出的数据中截取出有用的字符串和所需的一帧完整数据,将其赋值给三个文本框(TextBox)控件进行显示和保存,并附加相应的按钮(Button)控件,用以使地面站更好地控制无人机的飞行姿态。利用保存下来的数据在必要时可以复现Mini-UAV某次自主导航飞行的情况,以便分析自主导航飞行的效果。

(2)根据已读取出的纬度、经度和高度的值,利用图片框(Picture Box)控件,将预先设定的飞行航线和自主导航的实际航线实时显示出来,以便地面人员实时了解和分析Mini-UAV的自主导航飞行情况,如图3所示。

(3)针对应用需求,在设计开发时附加两个复选框(Check Box),设置其相应属性值,分别定义为盘旋和回家。利用Windows API通信函数对控件进行串口编程。当无人机达到目标航点时,选中复选框(盘旋),无人机收到指令将在目标航点上空盘旋飞行。在初始化无人机时,选中复选框(回家),当无人机飞出遥控范围,失去所有指令时,无人机将自动执行预先在飞控系统中设置好的回家指令,朝着起飞地点自主飞行。

4.5 功能实现

通过试验仿真和实际飞行证明,该导航显示系统完成了如下功能:数据的实时传输显示,电子地图与实际航线的同步显示与配准,在功能模块上,开发了盘旋、回家功能,提高了无人机飞行的安全性与可靠性。

5 结 语

本文介绍了GPS的数据格式和自定义的发送/接收数据格式,主要讨论了在Windows环境下利用Visual C++6.0开发小型无人机自主导航系统的GPS定位数据处理和显示的方法。该方法具有简单实用、开发周期短、效果好等优点。

转自http://ic72.com/news/2009-02-18/131602.html

小型无人机地面站导航显示系统设计相关推荐

  1. qt做的接收串口数据并显示曲线_QT无人机地面站设计与制作

    近年来,无人机可谓是大火.无论是军事,还是民用,它的地位更是不用说.但,如何利用利用现有技术对无人机的信息进行操作,实现人.机合一呢?"无人机地面站"应运而生,结合仿真系统为地面工 ...

  2. carlife高速上显示服务器吗,如何把手机导航显示在汽车导航屏上?

    原标题:如何把手机导航显示在汽车导航屏上? "极客谈科技",全新视角.全新思路,伴您遨游神奇的科技世界. 手机导航与车载导航各有优缺点,前者使用起来更加灵活,不必局限于车内使用功能 ...

  3. QT无人机地面站设计与制作随笔总结

    自己不是专职地面站设计,这里简单将经验叙述下(另外把自己一直空缺着的QT分类补一篇文章). 无论是处于地面站学习的过程还是做项目进行重新整体设计,对于这种写代码的过程最好先在MindMaster中画好 ...

  4. 基于LiDAR的小型无人机的检测和跟踪

    文章目录 摘要 关键字: 介绍 2. 数据集 2.1传感器平台 2.2 现场试验 2.3 激光雷达截面测量 方法 3.1 单个360°扫描的分割 3.2 3D点云和3D群集的合并 3.3 追踪3D点云 ...

  5. global 仪表控件 无人机地面站_虚拟仪表在无人机地面站中的应用

    龙源期刊网 http://www.qikan.com.cn 虚拟仪表在无人机地面站中的应用 作者:冷晓春 来源:<中国科技博览> 2015 年第 15 期 [ 摘 要 ] 基于虚拟技术开发 ...

  6. h5 video 手机上无法显示_怎样把手机上的导航显示在汽车屏幕上

    目前安卓或者iOS都支持车载互联功能,如果车机支持相应的功能只需要通过有线或无线方式连接即可:此外,安卓还可以通过MHL线连接到车机的HDMI接口处实现投屏.具体地: 1.如果您的车机支持Androi ...

  7. 基于单片机超声波视力保护系统设计-基于51单片机8音键电子琴仿真设计-基于8086八路模拟信号采集均值显示系统设计-基于8086八路数据电压温度采集系统-基于8086波形发生器仿真设计【毕设课设分享】

    539基于单片机超声波视力保护系统设计-设计资料 硬件构成:单片机+最小系统+LCD1602液晶显示模块+超声波模块+DS18B20温度采集模块+光线检测模块+ADC0832模块+蜂鸣器模块+LED指 ...

  8. 【无人机】【2017.11】工程检查和地理空间制图用小型无人机系统

    本文为美国俄勒冈州立大学(作者:Farid Javadnejad)的博士论文,共168页. 携带消费级非测量相机的小型无人机系统(UAS)越来越多地被用来生成高分辨率的三维地理空间数据.无人机的低成本 ...

  9. 基于横向轨迹误差法(Cross-track Error)P 导航二维控制 实现无人机水平面导航控制

    基于横向轨迹误差法(Cross-track Error)P 导航二维控制 实现无人机水平面导航控制 算法核心思想 算法实现方法 实现无人机水平面导航控制 算法优化方向 算法核心思想 首先我们的目的是控 ...

最新文章

  1. 【机器视觉】 read_measure算子
  2. 【LeetCode】405 Convert a Number to Hexadecimal (java实现)
  3. 实践中的弹性基础架构
  4. SetProcessWorkingSetSize减少内存占用
  5. lisp将图元追加选择_DNF:哈林防具和海博伦如何选择首饰提升率最大?你选对了吗?...
  6. GPS NMEA0183协议解析(转载)
  7. mysql 创建utf-8数据库_mysql 创建utf-8数据库
  8. python使用execjs时,编码gdk报错
  9. Android学习日记(yzy):intent传递的多种数据类型
  10. 《2021中国开源发展蓝皮书》发布——中国开源接近世界先进水平
  11. 参考文献格式详细解释和引用(常见)
  12. Java实现-五子棋
  13. 给linux文件夹设置权限
  14. IM——基本系统架构
  15. FTP文件传输协议(英文:File Transfer Protocol,缩写:FTP)
  16. 07-ET框架的数据库连接
  17. C++ CMatrix类设计与实现
  18. 基于ADI-DSP-1452外挂flash模拟声浪功能调试
  19. the specified jre installation does not exist 不存在指定的JRE安装
  20. 99 埃及分数 c语言,埃及分数数学文化知识

热门文章

  1. Kohonen Self Organize Maps
  2. 微信公众号iframe嵌套页面js不执行
  3. 关于linux 上 svn 启动成功,端口已经暴露,阿里服务器的端口也成功暴露,防火墙全关,还是无法访问svn 端口 的 问题
  4. 驰骋工作流-流程发起-自动发起-定时启动-专题讲解
  5. 【科技百咖】安尼梅森:向阳而生 砥砺前行
  6. 用蜂鸣器实现伪和弦音(音量渐变)
  7. 单片机应用系统设计技术——红外遥控模拟
  8. iOS 请求头第二次cookie中获取不到PHPSESSID的问题
  9. Overleaf在线编辑论文时LaTeX错误:Missing \endcsname inserted.
  10. 期货交易 python_期的解释|期的意思|汉典“期”字的基本解释