一种多任务独立并行的无人机飞行控制方法技术

技术编号:13118110 阅读:68 留言:0更新日期:2016-04-06 08:52
本发明专利技术公开了一种多任务独立并行的无人机飞行控制方法,采用VxWorks操作系统实现,包括以下步骤:在VxWorks操作系统中加载多个并行执行的任务,将所有任务分为三类,其中,第一类任务是综合数据管理任务,第二类任务包括导航制导任务、控制解算任务和飞行任务管理任务,第三类任务包括传感器管理任务、执行机构管理任务和人机交互管理任务;系统启动后首先启动第一类任务,再启动第二类任务和第三类任务,三类任务启动后则统一根据综合数据管理任务发送的启动指令同时启动,并行运行,互不干扰。通过本发明专利技术可以实现无人机的多个任务独立并行工作,互不影响,执行效率高,并有利于全面的对飞行状态进行判断,数据利用率高。

【技术实现步骤摘要】

本专利技术涉及一种无人机飞行控制方法,尤其涉及一种基于VxWorks操作系统的多任务独立并行的无人机飞行控制方法
技术介绍
无人驾驶飞机简称“无人机”,英文缩写为“UAV”,是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机。目前,无人机在航拍、农业植保、测绘等领域的应用,大大拓展了无人机本身的用途。随着无人机飞行任务要求越来越多,其任务执行效率要求越来越高,也导致现代无人机飞行控制器越来越复杂,这对机载自动控制系统提出了更高的要求。目前很多无人机飞行控制器已采用通用处理芯片加多任务实时操作系统的结构。但目前的无人机飞行控制器中的软件架构大多移植自原基于前后台模式的系统架构,这种移植仍使用了原有系统的串行运行架构,并没有充分利用多任务实时操作系统的多任务并行特性,不能发挥系统的全部性能,反而由于操作系统的加入,增加了系统的复杂度和不稳定性。所以在可靠性要求高、延时容忍度低、质量要求严格的现代无人机飞行控制器上,传统的系统架构已不能满足需要,无法实现能够高效完成多个并行任务的控制方法。
技术实现思路
本专利技术的目的就在于为了解决上述问题而提供一种基于VxWorks操作系统的多任务独立并行的无人机飞行控制方法。本专利技术通过以下技术方案来实现上述目的:一种多任务独立并行的无人机飞行控制方法,采用VxWorks操作系统实现,包括以下步骤:(1)在VxWorks操作系统中加载多个并行执行的任务,将所有任务分为三类,其中,第一类任务是综合数据管理任务,第二类任务包括导航制导任务、控制解算任务和飞行任务管理任务,第三类任务包括传感器管理任务、执行机构管理任务和人机交互管理任务;(2)系统启动后首先启动第一类任务,再启动第二类任务和第三类任务,其中,第一类任务的处理步骤为:①创建主消息队列,队列的输入端是第二类和第三类任务,队列的输出端是第一类任务,队列为阻塞队列,先入先出辅以优先级;②针对第二类任务创建3个分任务消息队列,这些队列的输入端是第一类任务,输出端是分别是3个第二类任务,队列为阻塞队列,先入先出;③针对第三类任务创建3个分任务消息队列,这些队列的输入端是第一类任务,输出端是分别是3个第三类任务,队列为非阻塞队列,先入先出;④依次创建导航制导任务、控制解算任务、传感器管理任务、执行机构管理任务、人机交互管理任务和飞行任务管理任务并将创建的主消息队列和分任务消息队列的端口分别传入这些任务中,这些任务有相同的优先级,相同的处理时间片;⑤向所有6个分任务消息队列发送任务启动消息;⑥确认所有任务启动完成;⑦开始进入第一类任务主循环;⑧取出主消息队列中的一个消息,若没有消息则进入等待;⑨对取出的消息进行分析处理并对数据加盖时间戳;⑩按照设计将分析后的数据放入相应分任务消息队列;回到步骤⑦;第二类任务的处理步骤为:A、启动后进入等待状态,等待分任务信息队列传来的任务启动消息;B、确认启动消息;C、开始进入第二类任务主循环;D、取出分任务消息队列的一个消息,若没有消息则进入等待;E、按照预定算法进行处理,在导航解算任务中,将该消息用于导航解算算法,在控制解算任务中,将该消息用于控制解算,在飞行任务管理任务中,将该消息用于飞行任务规划算法;F、解算完成后,将解算数据输入主消息队列;G、回到步骤C;第三类任务的处理步骤为:a、启动后创建信号量;b、进入等待状态,等待分任务信息队列传来的任务启动消息;c、启动定时器,定时时间与该任务相关的机载设备通信相关;d、进入第三类任务的主循环;e、取出分任务消息队列的一个消息,无论是否存在消息均进入下一步骤;f、如果存在消息,则根据消息指令进行相应处理,如果不存在消息则进入下一步骤;g、等待信号量来临;h、当信号量来临,进入数据接收流程,如果是传感器管理任务,则依次读取机载各个传感器数据,如果是执行机构管理任务,则分别向执行机构送出控制指令并读取反馈,如果是人机交互管理任务则读取测控设备传来的数据,并将本机数据按约定送出;i、将读取到的数据送入主消息队列;j、回到步骤d;在定时器中,当定时时间到来时,则给出信号量,并启动下一次定时。上述三类任务启动时间不同,但是启动后则统一根据综合数据管理任务发送的启动指令同时启动,并行运行,互不干扰。本专利技术的有益效果在于:(1)各个任务可以独立并行工作,互不影响,执行效率高;(2)数据在综合数据管理中汇总、分发,每一个任务都可以全面的利用所有数据,有利于全面的对飞行状态进行判断,数据利用率高;(3)整个飞行控制器架构中各任务相对独立,对其它任务的数量、运行状态约束小;(4)接口任务、数据分析任务以及处理任务等不同层次的任务相互分离,拥有优异的可移植性能。附图说明图1是本专利技术所述多任务独立并行的无人机飞行控制方法采用的控制器的硬件结构框图;图2是本专利技术所述多任务独立并行的无人机飞行控制方法采用的控制器内的软件结构框图。具体实施方式下面结合附图对本专利技术作进一步说明:本专利技术所述多任务独立并行的无人机飞行控制方法,采用VxWorks操作系统实现,其采用的控制器的硬件结构如图1所示,由接口处理模块、电源模块以及核心处理模块构成,其中,电源模块负责给接口处理模块和核心处理模块供电,接口处理模块负责实现与外部其它机载设备的协议的物理层实现,并将有效数据传给核心处理模块,核心处理模块采用单板计算机,是整个飞行控制器的核心,完成了外部数据的分析,导航制导信息解算、控制率解算、执行机构控制解算、遥控遥测信息收集分析、以及接口模块控制等功能。本专利技术所述多任务独立并行的无人机飞行控制方法包括以下步骤:(1)在VxWorks操作系统中加载多个并行执行的任务,将所有任务分为三类,其中,第一类任务是综合数据管理任务,第二类任务包括导航制导任务、控制解算任务和飞行任务管理任务,第三类任务包括传感器管理任务、执行机构管理任务和人机交互管理任务,具体的并行任务和整体软件架构如图2所示;(2)系统启动后首先启动第一类任务,再启动第二类任务和第三类任务,其中,第一类任务的处理步骤为:①创建主消息队列,队列的输入端是第二类和第三类任务,队列的输出端是第一类任务,队列为阻塞队列,先入先出辅以优先级;②针对第二类任务创建3个分任务消息队列,这些队列的输入端是第一类任务,输出端是分别是3个第二类任务,队本文档来自技高网...
一种多任务独立并行的无人机飞行控制方法

【技术保护点】
一种多任务独立并行的无人机飞行控制方法,采用VxWorks操作系统实现,其特征在于:包括以下步骤:(1)在VxWorks操作系统中加载多个并行执行的任务,将所有任务分为三类,其中,第一类任务是综合数据管理任务,第二类任务包括导航制导任务、控制解算任务和飞行任务管理任务,第三类任务包括传感器管理任务、执行机构管理任务和人机交互管理任务;(2)系统启动后首先启动第一类任务,再启动第二类任务和第三类任务,其中,第一类任务的处理步骤为:①创建主消息队列,队列的输入端是第二类和第三类任务,队列的输出端是第一类任务,队列为阻塞队列,先入先出辅以优先级;②针对第二类任务创建3个分任务消息队列,这些队列的输入端是第一类任务,输出端是分别是3个第二类任务,队列为阻塞队列,先入先出;③针对第三类任务创建3个分任务消息队列,这些队列的输入端是第一类任务,输出端是分别是3个第三类任务,队列为非阻塞队列,先入先出;④依次创建导航制导任务、控制解算任务、传感器管理任务、执行机构管理任务、人机交互管理任务和飞行任务管理任务并将创建的主消息队列和分任务消息队列的端口分别传入这些任务中,这些任务有相同的优先级,相同的处理时间片;⑤向所有6个分任务消息队列发送任务启动消息;⑥确认所有任务启动完成;⑦开始进入第一类任务主循环;⑧取出主消息队列中的一个消息,若没有消息则进入等待;⑨对取出的消息进行分析处理并对数据加盖时间戳;⑩按照设计将分析后的数据放入相应分任务消息队列;回到步骤⑦;第二类任务的处理步骤为:A、启动后进入等待状态,等待分任务信息队列传来的任务启动消息;B、确认启动消息;C、开始进入第二类任务主循环;D、取出分任务消息队列的一个消息,若没有消息则进入等待;E、按照预定算法进行处理,在导航解算任务中,将该消息用于导航解算算法,在控制解算任务中,将该消息用于控制解算,在飞行任务管理任务中,将该消息用于飞行任务规划算法;F、解算完成后,将解算数据输入主消息队列;G、回到步骤C;第三类任务的处理步骤为:a、启动后创建信号量;b、进入等待状态,等待分任务信息队列传来的任务启动消息;c、启动定时器,定时时间与该任务相关的机载设备通信相关;d、进入第三类任务的主循环;e、取出分任务消息队列的一个消息,无论是否存在消息均进入下一步骤;f、如果存在消息,则根据消息指令进行相应处理,如果不存在消息则进入下一步骤;g、等待信号量来临;h、当信号量来临,进入数据接收流程,如果是传感器管理任务,则依次读取机载各个传感器数据,如果是执行机构管理任务,则分别向执行机构送出控制指令并读取反馈,如果是人机交互管理任务则读取测控设备传来的数据,并将本机数据按约定送出;i、将读取到的数据送入主消息队列;j、回到步骤d;k、在定时器中,当定时时间到来时,则给出信号量,并启动下一次定时。...

【技术特征摘要】
1.一种多任务独立并行的无人机飞行控制方法,采用VxWorks操作系统实现,其特征在
于:包括以下步骤:
(1)在VxWorks操作系统中加载多个并行执行的任务,将所有任务分为三类,其中,第一
类任务是综合数据管理任务,第二类任务包括导航制导任务、控制解算任务和飞行任务管
理任务,第三类任务包括传感器管理任务、执行机构管理任务和人机交互管理任务;
(2)系统启动后首先启动第一类任务,再启动第二类任务和第三类任务,
其中,第一类任务的处理步骤为:
①创建主消息队列,队列的输入端是第二类和第三类任务,队列的输出端是第一类任
务,队列为阻塞队列,先入先出辅以优先级;
②针对第二类任务创建3个分任务消息队列,这些队列的输入端是第一类任务,输出端
是分别是3个第二类任务,队列为阻塞队列,先入先出;
③针对第三类任务创建3个分任务消息队列,这些队列的输入端是第一类任务,输出端
是分别是3个第三类任务,队列为非阻塞队列,先入先出;
④依次创建导航制导任务、控制解算任务、传感器管理任务、执行机构管理任务、人机
交互管理任务和飞行任务管理任务并将创建的主消息队列和分任务消息队列的端口分别
传入这些任务中,这些任务有相同的优先级,相同的处理时间片;
⑤向所有6个分任务消息队列发送任务启动消息;
⑥确认所有任务启动完成;
⑦开始进入第一类任务主循环;
⑧取出主消息队列中的一个消息,若没有消息则进入等待;
⑨对取出的消息进行分析处理并对数据加盖时间戳;<...

【专利技术属性】
技术研发人员:李皓赵林东陈强洪苏秀红
申请(专利权)人:中国工程物理研究院总体工程研究所
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1