论文部分内容阅读
无人机项目是一项涉及多学科交叉的复杂的研究课题,其应用范围十分广泛。作为无人机控制系统的重要组成部分,地面控制站的开发越来越受到国内外相关科研机构的重视。本文主要研究小型无人机地面控制站系统的设计与实现,并负责完成控制站系统的软件编程及功能实现工作。该软件为无人机系统提供飞行数据显示、航迹规划、数据存储等功能,具备管理数据库的能力。本论文的研究课题主要涉及到的应用技术有UDP网络通信,定时器,数据库,Linux GUI界面编程等。论文首先介绍小型无人直升机的研究课题和无人机地面站的设计背景,在此基础上介绍了Linux GUI设计的主要开发工具及其工作原理,给出地面站的设计思路及模块化实现。接着,详细论述界面开发过程中使用的关键技术:linux下的socket网络通信和多线程技术。并使用linux下的定时器功能模拟多线程的实现,从而更加清晰地阐明了地面站的工作机制。然后,论文对地面站将要用到的嵌入式数据库进行充分的论证和选择;论述使用数据库的原因,对常见的几款数据库进行仔细的比较分析,选择适合本试验需要的数据库类型,并对其特性、优缺点、内部结构体系和操作接口应用等一一进行介绍,为在实际中使用数据库完成数据存储查询比较分析等操作奠定了扎实的基础。作为对地面站功能的重要扩展,Sqlite数据库的使用成为地面站的一大功能特色。最后,根据前期的设计架构,完成从构思设计到实现的过程,给出具体开发过程中的关键处理代码,并得到了相应的设计结果。本地面控制平台主要由四个功能模块构成,分别实现无人机上对地面站的基本要求,能够在跟机上的飞行数据通信的同时,实现参数显示、任务规划及数据存储功能。论文详细陈述了地面站的开发过程,对其中的关键环节做出分析,为以后地面站功能进一步的扩展开发也提供了有力的借鉴作用。