基于云计算的无人机监控系统及监控方法与流程

文档序号:11411036阅读:464来源:国知局
基于云计算的无人机监控系统及监控方法与流程

本发明涉及无人机控制技术领域,特别是涉及一种基于云计算的无人机监控系统及监控方法。



背景技术:

无人驾驶飞机简称“无人机”,是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机。机上无驾驶舱,但安装有自动驾驶仪、程序控制装置等设备。地面、舰艇上或母机遥控站人员通过雷达等设备,对其进行跟踪、定位、遥控、遥测和数字传输。可在无线电遥控下像普通飞机一样起飞或用助推火箭发射升空,也可由母机带到空中投放飞行。回收时,可用与普通飞机着陆过程一样的方式自动着陆,也可通过遥控用降落伞或拦网回收。可反覆使用多次。广泛用于空中侦察、监视、通信、反潜、电子干扰等。

近几年国内外的无人机市场有了高速的发展,国内外已经有公司利用无人机进行物流等方面的应用,而无人机的管理却相对比较缺乏和混乱。如,目前随着农业航空技术革新,植保无人机相对其它植保器械优势明显,无人机开始在农业植保领域迅速发展。据统计,2014年我国植保无人机保有量为695架,总作业面积426万亩;2015年我国植保无人机保有量为2324架(31个省统计),总作业面积1152.8万亩,增长幅度分别为234%、170.6%。有专家预计到2020年,中国植保无人机需求量是10万架,无人机植保从业人员需求量是40万人。

但是,目前国内植保无人机技术和产品性能参差不齐,众多产品中绝少有能够满足大面积高强度植保喷洒要求,与此同时,国内并没有功能完备的监控管理系统。总的来说,由于国内尚未形成标准统一、功能一体化的无人机监控管理领域的相关技术,缺少对植保无人机的大业务量、大作业范围、长时间、自主化等特性进行综合、全面、有效的作业监控、告警管理与决策分析的完善方案。

同时针对如何从大规模的无人机数据中快速地搜索满足用户要求的数据是当前无人机监控处理系统亟待解决的问题,因此有必要建立一种数据搜索的缓存方法解决该瓶颈问题。



技术实现要素:

本发明的目的是针对现有技术中存在的技术缺陷,而提供一种基于云计算的无人机监控系统及监控方法。

为实现本发明的目的所采用的技术方案是:

一种基于云计算的无人机监控系统,

数据展示层,其包括人机信息交互模块和作业信息交互模块,

数据采集层,其用以采集无人机的数据并发送作业指令,

数据管理层,其用以收集并分析处理作业信息、无人机的数据并转发或生成所述的作业指令。

所述的人机信息交互模块为web浏览器,所述的信息交互模块为app应用或客户端。

所述的数据管理层采用mysql+hbase+redis+ram多级缓存存储方式进行数据的存储和查询,redis构成二级缓存,mysql和hbase构成三层数据存储。

数据采集层通过负载均衡的方式部署多套并行的采集接口,对应的redis集群构成二级缓存,对应的mysql和hbase构成三级数据存储。

所述的数据采集层为tcp服务接口,所述的tcp服务接口用以实现数据管理层和数据展示层及无人机的通讯。

一种监控方法,包括以下步骤,

1)作业信息交互模块接收输入指令并发送至数据管理层,

2)数据管理层查询受控无人机的状态数据并对指令进行解析,若指令不正确,则将无效指令存储,若指令正确则将指令发送至无人机;

3)无人机收到指令并进行相应指令操作,同时将数据反馈至数据采集层,所述的数据包括飞行数据、基础任务数据和作业任务数据;

4)数据管理层接收数据并对采集后的大规模海量数据的存储、查询和管理分析。

所述的数据管理层采用mysql+hbase+redis+ram多级缓存存储方式进行数据的存储和查询,redis构成二级缓存,mysql和hbase构成三层数据存储,当写入数据的时候首先删除redis相同数据缓存,然后采用直接写入到三层存储系统;当读取数据的时候首先逐级查看数据是否在内存和缓存到redis中,如果没有,则从三级缓存mysql或hbase中读取数据到redis上,然后再进行处理返回结果给用户。

将提取后的数据保存到redis数据库,如果失败,则将数据先保存至缓存队列重新保存直至数据库成功。

与现有技术相比,本发明的有益效果是:

(1)高可靠性。基于云计算的无人机监控处理平台提供了最可靠、最安全的数据存储中心,用户不用再担心数据丢失等麻烦。

(2)通用性。基于云计算的无人机监控处理平台支持多种异构无人机产品的接入,能做到统一规范的管理。

(3)超强的计算能力。基于云计算的无人机监控处理平台利用云计算的集群能力,将复杂繁琐的处理过程分解,从而实现提高整体计算能力的目的。

(4)数据共享。采用云计算的无人机监控平台,可以实现接入数据的按需共享,为农业植保大数据提供有力支撑。

(5)快速访问。采用多层缓存机制,针对无人机数据读多写少的特点,充分利用了redis内存数据库本身的特点,从而加快数据访问速度。

附图说明

图1为存储架构图;

图2为基于云计算的无人机监控处理架构图;

图3app发送自主指令数据到无人机;

图4无人机发送数据到监控平台的流程。

具体实施方式

以下结合附图和具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图所示,本发明公开了一种基于云计算的无人机监控系统,其基于linux系统,包括,数据展示层,其包括人机信息交互模块和作业信息交互模块;数据采集层,其用以采集无人机的数据并发送作业指令;数据管理层,其用以收集并分析处理作业信息、无人机的数据并转发或生成所述的作业指令。

其中,数据采集层包括对无人机飞行状态数据、无人机作业任务数据和无人机基础数据信息的监测采集,并将采集的数据保存进数据管理层的数据库中,以提供给上层各个管理模块进行调用与分析管理,数据采集层主要通过负载均衡的方式部署多套采集接口,形成多个并行的采集数据入口。数据管理层负责对数据进行缓存归档、分析处理得出统计结果、提供告警、运行监控的管理操作,如通过角点和经纬度坐标预判是否进入限制区域,从而自动发送返航和禁飞指令;数据展现层能够让用户查看了解无人机的运行状况,并进行适当的远程控制。

其中,所述的人机信息交互模块为web浏览器,数据展现层即监控平台上层的展示界面,由于系统基于b/s模式实现,展示界面直接基于浏览器页面的形式展现系统中所有无人机的运行状态,进而能够调控和管理无人机,展示界面包括位置监控、作业管理、地块管理、无人机设备管理、用户权限管理、统计分析。同时,所述的信息交互模块为app应用或客户端,用户使用app登录后,绑定飞机通过app发送一键起飞、一键降落、一键作业等全自主指令。

其中,所述的数据管理层采用mysql+hbase+redis+ram多级缓存存储方式进行数据的存储和查询,redis构成二级缓存,mysql和hbase构成三层数据存储,进一步地,数据采集层通过负载均衡的方式部署多套并行的采集接口,对应的redis集群构成二级缓存,对应的mysql和hbase集群构成三级数据存储。无人机不同类型数据信息在数据结构上并不相同,二级缓存分流存放,三级缓存中mysql和hbase分类存储信息,分类存储可以解决读取数据时,结构相对一致,不需要进行适配过程,从而提高速度。其中,所述的数据采集层为tcp服务接口,所述的tcp服务接口用以实现数据管理层和数据展示层及无人机的通讯,如,无人机定时反馈位置信息及飞行状态等,实现基于云端的计算和控制。

具体来说,redis是内存级数据库,mysql是结构性数据库,hbase是非结构性数据库。根据各数据库特点,mysql一般存储包含属性信息的基本信息数据,使用数据时更方便。而hbase存储类似日志、图片、视频等文件数据,三者并不是简单的并存,采用分层设计,因为redis的读取速度明显快于后两者,充当缓存区使用,后两者主要做数据的持久化保存。hbase目前有备份数据和日志存储两种功能,后期增加无人机视觉功能,所以需要保存图片和视频数据,而系统需要计算和分析的数据主要存放在mysql中。

本发明基于云计算的无人机监控处理采用分布式形式部署,同时采用“mysql+hbase+redis+ram(内存)”多级缓存存储方式进行数据的存储和查询,非常适合要求较快响应时间和每秒读写次数高的请求操作和统计分析需求。

关于hbase中的几个重要说明:

(1)hbase组件:在hbase存储系统中包括hmaster,hregionserver和client。其中hmaster负责hbase系统中数据表的创建、删除等操作。hregionserver上存储具体表的数据,包括表的多个hregion。

(2)hregion:每个表分成多个hregion,每个hregion包含多个store,每个store对应于一个列簇(columnfamily),每个store包含一个memstore和多个storefile。

(3)compact和split:在hbase系统运行过程中,会产生多个hfile文件,当hfile文件个数超过一定数目的时候,hbase集群会执行compact。当hfile文件大小超过一定的阀值时执行split操作。

关于hbase一个重要的特性就是一旦hfile写入hdfs集群中时,hfile文件不再改变。

采用redis作为二级缓存,当读取数据的时候首先查看数据是否在内存,如无再查看缓存到redis中,如果没有,则从三级缓存mysql或hbase集群中读取数据到redis上,然后再进行处理返回结果给用户;当再次读取相同数据时,会减少下一级的查询过程,数据访问速度明显提升。当写入数据的时候首先会根据特别字段,比如id等主键,删除redis相同数据缓存,然后采用直接写入到三层存储系统。通过采用该存储方案可以有效的减少读取数据读取i/o数目,从而有效的提高系统的性能。

本发明采用上述结构后,结构合理,使用方便,监控平台采用基于分布式的监控管理架构,实现监控系统的负载均衡,便于监控系统的规模扩展。

基于上述监控系统,本发明的监控方法,包括以下步骤,

1、用户通过作业信息交互模块,如app发送一键起飞、一键降落、一键作业等全自主指令,通过tcp方式建立连接,将指令发送到tcp服务接口,数据采集层接收输入指令并发送至数据管理层,

2、数据管理层查询受控无人机的状态数据并对指令进行解析,若指令不正确,则执行无效协议持久化,将无效指令存储方便以后查看,若指令正确则将指令将协议数据通过移动网络的4g模块转发给指定的无人机;

3、无人机收到指令并进行相应指令操作,同时将数据通过移动网络的4g模块反馈至数据采集层,所述的数据包括飞行数据、基础任务数据和作业任务数据;发送过程为通过tcp方式建立连接,将飞行数据发送到监控平台tcp数据服务接口,

4、数据管理层接收数据并对采集后的大规模海量数据的存储、查询和管理分析。其中,数据管理层收到飞行数据后按照定义规则进行解析,如果飞行数据格式不正确,则执行无效协议持久化,将无效协议保存,方便后期查看;否则提取协议中的数据信息,将提取后的数据保存到数据库,如果失败,则将数据先保存至缓存队列,再次保存直至保存到数据库成功。其中,飞行数据格式的判断和对数据格式及内容的翻译,如格式不正确则不做处理仅做存档,如指令内容为无效指令,同样做存储处理而不执行。

其中,所述的数据管理层采用mysql+hbase+redis+ram多级缓存存储方式进行数据的存储和查询,redis构成二级缓存,mysql+hbase构成三级数据存储,当写入数据的时候首先删除redis相同数据缓存,然后采用直接写入到三级数据存储系统;通过采用该存储方案可以有效的减少读取数据读取i/o数目,从而有效的提高系统的性能。查询步骤为:客户端发送查询请求,系统获取查询请求并判断数据是否在ram中,如果在ram中则返回数据,否则判断数据是否缓存到redis中,如果没有,则根据数据类型从三级缓存mysql或hbase集群中读取数据到redis上,然后再进行处理返回结果给用户;当再次读取相同数据时,数据访问速度明显提升。

以上所述仅是本发明的优选实施方式,应当指出的是,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1