掌桥专利:专业的专利平台
掌桥专利
首页

一种多机分布式协同仿真控制平台及控制方法

文献发布时间:2023-06-19 11:49:09


一种多机分布式协同仿真控制平台及控制方法

技术领域

本发明涉及多机协同控制,尤其涉及一种多机分布式协同仿真控制平台及控制方法。

背景技术

多无人机协同编队飞行,简称CFF(Coordinated Formation Flight),就是将具有自主控制能力的多架无人机按照指定的三维队形和结构进行排列,并通过设计编队控制器使得所有的无人机在飞行过程中不仅能够保持队形的稳定,协同完成各项任务,而且可以进行队形的实时调整。在通信机制上,无人机、机器人的编队控制主要分为以下三种类型:集中式控制、分散式控制以及分布式控制。

当前在多机分布式协同控制领域,尤其是多无人机协同的研究不断深入,涌现出各种各样的控制算法。尽管这些算法在数字模拟的软件仿真上都能呈现较好的效果,然而实际使用时难以保证与真实物理系统的一致性,缺乏对实际工程的指导意义。完全利用实物验证固然是对协同编队算法最直接有效的验证手段,但试验成本高,并且不同传感器存在量测性能差异,算法无法得到验证。

发明内容

本发明提供一种多机分布式协同仿真控制平台及控制方法,用以解决现有技术中软件仿真难以保证与真实物理系统一致性的问题,实现软件仿真与实物的结合,可验证多无人机协同编队算法的有效性。

本发明提供一种多机分布式协同仿真控制平台,包括数据处理系统和无人机系统,其中,

所述数据处理系统,用于对无人机的状态数据进行监测、显示及存储,所述状态数据包括位置、速度以及姿态数据;

所述无人机系统,用于将接收到无人机的位置、速度数据输入至预设无人机协同编队算法进行计算,得到导航指令,并根据所述导航指令计算出控制指令,再根据所述控制指令和当前时刻状态数据计算出下一时刻无人机的状态数据以输出无人机的期望姿态。

根据本发明所述的多机分布式协同仿真控制平台,所述无人机系统,包括作为实物部分的导航系统、通信系统和作为仿真部分的飞行控制系统、六自由度模型,其中,

所述通信系统,用于负责集群中各无人机之间的数据传递;

所述导航系统,用于根据所述通信系统获取的位置、速度数据,输入至预设无人机协同编队算法进行计算,得到导航指令;

所述飞行控制系统,用于根据所述导航指令计算出控制指令;

所述六自由度模型,用于根据所述控制指令和当前时刻状态数据计算出下一时刻无人机的状态数据,并将计算出的新状态数据发送至所述飞行控制系统和所述导航系统。

根据本发明所述的多机分布式协同仿真控制平台,所述数据处理系统,包括状态监控系统、实景显示系统以及数据存储系统,其中,

所述状态监控系统,用于对无人机的状态数据进行监测和显示;

所述实景显示系统,用于将无人机的数据信息转化为图像信息,并在三维场景中显示无人机集群编队的效果;

所述数据存储系统用于存储试验中各无人机的预设数据以便试验后进行数据分析。

根据本发明所述的多机分布式协同仿真控制平台,所述导航系统包括协同模块,所述协同模块包括:

算法单元,用于运行所述预设无人机协同编队算法;

检验单元,用于通过设定约束条件,对比系统内各无人机的传感器数据,并判断传感器导出数据的有效性。

本发明还提供一种多机分布式协同仿真控制方法,包括:

将获取到无人机自身的位置、速度数据以及预设距离内的其他无人机的位置、速度数据输入至预设无人机协同编队算法进行计算,得到导航指令;

根据所述导航指令计算出控制指令,并根据所述控制指令和当前时刻状态数据计算出下一时刻无人机自身的状态数据以输出无人机的期望状态。

根据本发明所述的多机分布式协同仿真控制方法,所述根据所述控制指令和当前时刻状态数据计算出下一时刻无人机自身的状态数据以输出无人机的期望状态之后,还包括:

将计算出的新状态数据发送至无人机自身的飞行控制系统和导航系统;

导航系统的协同模块将所述新状态数据传递给通信模块;

通过通信模块分发告知预设距离内的其他无人机内的通信模块,以作为其他无人机的协同输入量。

根据本发明所述的多机分布式协同仿真控制方法,所述六自由度模型根据所述控制指令和当前时刻状态数据计算出下一时刻无人机的状态数据,以输出无人机的期望状态之后,还包括:

将所述新状态数据传递给数据处理系统以实现数据监测、显示及存储。

根据本发明所述的多机分布式协同仿真控制方法,所述导航系统将通信系统接收到的无人机的位置、速度数据,包括:

通信系统将接收到本无人机的状态信息传递给周围邻近的无人机;以及

通讯系统接收其他无人机传递的状态信息,并将其传递至本无人机的导航系统

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述多机分布式协同仿真控制方法的步骤。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述多机分布式协同仿真控制方法的步骤。

本发明提供的多机分布式协同仿真控制平台及控制方法,基于预设无人机协同编队算法,通过仿真和实物相结合的无人机系统以验证无人机算法的有效性,降低了试验风险,并极大缩短试验周期、节约研制费用。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的多机分布式协同仿真控制平台的结构示意图;

图2是本发明提供的多个无人机的各子系统的结构示意图;

图3是本发明提供的各子系统数据流向示意图;

图4是本发明导航系统与通信系统的供电关系示意图;

图5是本发明协同模块运行的流程示意图之一;

图6是本发明协同模块运行的流程示意图之二;

图7是本发明协同模块运行的流程示意图之三;

图8是本发明飞行器仿真3D效果图;

图9是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。

下面结合图1-图9描述本发明的多机分布式协同仿真控制平台及控制方法。

图1是本发明提供的多机分布式协同仿真控制平台的结构示意图,如图所示。一种多机分布式协同仿真控制平台,包括数据处理系统和无人机系统,其中无人机系统的数量根据所试验的无人机的数量而定,一架无人机对应一个无人机系统,n架无人机对应n架无人机系统,即UAV1,...,UAVn。多架无人机可以在同一个多机分布式协同仿真控制平台上运行,并且这些无人机彼此之间相互通信、相互联系、相互制约。

本发明所述的分布式协同功能可理解为广义性概念,其可指凡是以分布式为控制方式的各类协同算法能实现的功能。因此,分布式协同功能包含许多类别,例如:一致性(Consensus)、簇拥(Flocking)、蜂群(Swarming)、队形控制(Formation control)等,这些类别都可以在本发明上进行验证实现。

所述的分布式协同控制,是与“一主多从”的传统集中式协同相反的一种控制方式,其最大特点为无中心节点,整个系统内任何单个无人机子系统地位均等,任何单个无人机子系统功能失效都不会影响整个系统的正常运行。

其中,数据处理系统,用于对无人机的状态数据进行监测、显示及存储,所述状态数据包括位置、速度以及姿态数据,包括状态监控系统、实景显示系统和数据存储系统,所述数据处理系统可通过软件实现。

所述状态监控系统的功能类似于地面站,用于对无人机的状态数据进行监测和显示。

所述实景显示系统,用于将无人机的数据信息转化为直观的图像信息,并在三维场景中显示无人机集群编队的效果。

所述数据存储系统,用于存储试验中各无人机的相关数据以便试验后进行数据分析。

其中,无人机系统,用于将接收到无人机的位置、速度数据输入至预设无人机协同编队算法进行计算,得到导航指令,并根据所述导航指令计算出控制指令,再根据所述控制指令和当前时刻状态数据计算出下一时刻无人机的状态数据及输出无人机的期望姿态,包括作为实物部分的导航系统、通信系统和作为仿真部分的飞行控制系统、六自由度模型。

需要说明的是,所述无人机系统接收无人机的位置、速度数据包括接收无人机自身的位置、速度数据和周围邻近的其他无人机的位置、速度数据。所述周围邻近可通过系统自定义设置预设距离来限定,比如以无人机自身为圆心的,半径为预设距离内的其他无人机定位为周围邻近的其他无人机。

所述通信系统,用于负责集群中各无人机之间的数据传递,可采用无线通信的方式进行数据传递。

优选的,通信系统可由具有无线传输功能的通信模块组成,模拟多无人机系统中个体之间的信息传递。

优选的,可在通信模块中设置“通信距离”的判断,且该判断机制始终运行。当距离大于某具体值时,子系统主动舍弃超出通信范围的其他子系统状态数据,且仿真任务规划本身不变;当距离小于等于该具体值时,其他子系统状态数据立刻被接收,从而实现系统分布式协同。

由于每架无人机单独设有通信系统,并且在导航系统内设有协同模块,在协同模块执行预设无人机协同编队算法时,可保证多架无人机涵盖的传感器性能一致性。通信系统完成多架无人机在仿真控制平台中彼此间相互通信功能,而协同模块只处理预设无人机协同编队算法,即只实现多架无人机协同功能。

所述导航系统,用于根据所述通信系统获取的位置、速度数据,输入至预设无人机协同编队算法进行计算,得到导航指令。

优选的,所述导航系统设有协同模块,所述协同模块用于运行预设无人机协同编队算法。所述预设无人机系统编队算法可根据实际试验需求单独进行修改,而无需对整个多机分布式协同仿真控制平台做过多改动,因此既能够模拟实际系统以验证算法的有效性,同时又降低了试验风险,极大地缩短试验周期、节约研制费用。

优选的,所述系统模块是由带浮点运算、且计算功能强大的处理器为核心构成,其作为一种协处理器独立于飞行控制系统处理器之外,只运行与无人机分布式协同相关的一系列算法,并根据算法计算出导航指令。

优选的,所述协同模块包括算法单元和检验单元。算法单元用于运行所述预设无人机协同编队算法;检验单元用于通过设定约束条件,对比系统内各无人机的传感器数据,并判断传感器导出数据的有效性。通过在协同模块设置传感器数据一致性校验单元,可解决多架无人机涵盖的传感器性能一致性问题,并且经过有效性检验的数据方可用于协同控制算法内。

优选的,所述协同模块可通过设置两块不同的处理区域,即第一处理单元和第二处理单元。第一处理单元用于将本无人机子系统所得数据的打包、解包及检验;第二处理单元负责其他无人机子系统其他无人机子系统状态数据的解包和检验。第一处理单元与第二处理单元这二者互无联系,共同作为预设无人机协同编队算法所需的数据源。

因此,本发明所述多机分布式协同仿真控制平台具有通用性和可拓展性。通用性体现在执行不同任务背景下不同编队算法应用本发明时,只需要调整协同通信的信息类别,并根据具体机型在实景显示系统中作必要参数设置即可;可拓展性体现在满足带宽限制情况下,可自由接入或离线子系统,可实现无人机集群协同效果,且对无人机机型无特别限制。

所述飞行控制系统,用于根据所述导航指令计算出控制指令,所述控制指令包括俯仰舵偏量、副翼舵偏量、方向舵偏量和推力等控制指令。

所述六自由度模型,用于根据所述控制指令和当前时刻状态数据计算出下一时刻无人机的状态数据,并进行状态更新,并将新状态数据发送至所述飞行控制系统和所述导航系统。

需要说明的是,不同的无人机个体之间通过无线传输的方式进行通信,一方面将导航系统接收到的无人机的状态信息传递给周围邻近无人机;另一方面接收其他邻近无人机传递的状态信息,并直接传递给本无人机的导航系统。所有这些状态信息数据,可通过软件的方式储存并传递给数据处理系统,以便进行数据分析、处理及显示。

综上所述,多机分布式协同仿真控制平台通过获取无人机自身的位置和速度信息以及获取其他邻近无人机的位置和速度信息,计算得到导航指令并传递给飞行控制系统作为系统输入,输出无人机的期望姿态。

图2是本发明提供的多个无人机的各子系统的结构示意图,如图所示。每个无人机系统均包括通信系统、导航系统、飞行控制系统以及六自由度模型,图2示出了n个无人机系统,即UAV1,.......,UAVn。数据监控系统、数据存储系统、飞行控制系统以及六自由度模型均设置在计算机PC0,n架无人机(UAV1,.......,UAVn),对应的n个实景显示系统设置在对应的n个计算机(PC1,.......,PCn)。

通信系统将接收到无人机的位置、速度数据输入至导航系统,并导航系统内的协同模块运行预设无人机协同编队算法进行计算,得到导航指令,并将导航指令输入至飞行控制系统进行计算,得到控制指令,六自由度模型根据所述控制指令和当前时刻状态数据计算出下一时刻无人机的状态数据,以输出无人机的期望状态。同时,六自由度模型将计算出的新状态数据发送至飞行控制系统和导航系统,并将所述新状态数据传递给数据处理系统以实现数据监测、显示及存储。

需要说明的是,导航系统包含的协同模块,是整个分布式协同仿真控制平台的核心部分,用户可根据自行需要编写预设无人机协同编队算法,并选择合适的核心板,在确定接口以后,本发明所述多机分布式协同仿真控制平台可满足任何无人机协同编队算法。

图3是本发明提供的各子系统数据流向示意图,如图所示。图中示出了多个无人机系统。

通信系统可通过无线通信的方式接收无人机的状态数据。导航系统根据通信系统将接收到无人机的位置、速度数据,运行导航系统中协调模块的预设无人机协同编队算法进行计算,得到导航指令,并将导航指令输入至飞行控制系统进行计算,得到控制指令,比如俯仰舵偏量、副翼舵偏量、方向舵偏量以及推力等控制指令,六自由度模型根据所述控制指令和当前时刻状态数据计算出下一时刻无人机的状态数据,以输出无人机的期望状态。

同时,六自由度模型将计算出的新状态数据(比如位置、姿态、速度数据)分别发送至数据处理系统中的数据监测系统、实景显示系统以及数据存储系统,并将新的姿态数据发送至飞行控制系统,以及将新的位置、速度数据发送至导航系统,并由导航系统发送至通信系统,通过通信系统分发告知邻近的其他无人机系统内的通信模块,以作为其他无人机的协同输入量。因此,所述飞行控制系统需要根据所述导航指令和飞机当前的姿态数据计算出舵偏量,而飞机的姿态调整可通过打舵实现。

需要说明的是,数据处理系统中的状态监控、实景显示以及数据存储所用到的数据均由上述所述六自由度模型计算得到,涉及的数据处理也是由上述所述六自由度模型计算得到。

另外,数据处理系统中的实景显示的目的是将数据展现的无人机飞行状态直观展示出来,同时也是人为观察协同效果的直接手段,为解决系统数据在传输至实景显示系统存在的延迟问题,在实景显示系统内设置了数据缓存区,并独立搭建了飞行器模型通用框架,针对不同机型设置了参数修改窗口,将六自由度模型计算所得状态信息直接导入实景显示系统,提高了系统实时性。

图4是本发明导航系统与通信系统的供电关系示意图,如图所示。在供电方面,由计算机PC0通过USB接口给导航系统的核心板供电,核心板可通过比如5V电源通过供电接口给通信系统的电源供电。数据传输方面,通信系统中的无线通信模块通过广播模式,进行多无人机系统中个体间的状态信息传递,个体上核心板的串口与计算机通过串口转USB连接进行数据交互,而核心板与通信系统的无线通信模块则直接通过串口进行数据传输。

优选的,导航系统的协同模块还设有用于选择串口发送状态数据或发送导航指令的定时器。

图5是本发明协同模块运行的流程示意图之一,如图所示。导航系统的协同模块主要是进行数据收发和算法计算。

步骤501,多机分布式协同仿真控制平台启动以后,初始化参数,平台内各系统运行。

步骤502,预设无人机协同编队算法中的编队算法函数主要进行数据计算。

步骤503,判断定时器是否达到设定计时时长。定时器函数负责计时,便于对应串口按照规定的频率发送信息。如果是,则执行步骤504,否则执行步骤505。

步骤504,定时器每达到计时时长,则发送一次数据或指令,从而实现按照设定频率发送数据,即导航模块通过串口2向通信系统的串口发送无人机的状态数据。

步骤505,判断定时器是否达到设定计时时长。如果是,则执行步骤506,否则返回步骤502,继续循环执行协同算法函数,。

步骤506,定时器每达到计时时长,则发送一次数据或指令,从而实现按照设定频率发送数据,即导航模块通过串口1进行串口转USB向计算机PC0的USB接口发送导航指令。

图6是本发明协同模块运行的流程示意图之二,如图所示。

步骤601,判断串口1是否进中断,如果否则结束,是则执行步骤602。

步骤602,接收本无人机数据。

图7是本发明协同模块运行的流程示意图之三,如图所示。

步骤701,判断串口2是否进中断,如果否则结束,是则执行步骤702。

步骤702,接收其他无人机数据。

上述图5~图7中,串口通信函数一方面将本无人机数据按照规定格式进行数据打包,通过串口发送给通信系统和计算机PC0;另一方面将通过通信系统接收到的其他无人机状态数据按照预设规则进行解包和检验,在数据校验正确的情况下提供给预设无人机协同编队算法进行计算。

图8是本发明飞行器仿真3D效果图,如图所示。图8示出了对多架无人机飞行包围编队进行仿真。

对于一个由多架无人机构成的集群系统,无需中心节点对系统内所有无人机进行调度,而仅依靠个体无人机相互之间传递状态信息,即分布式协作方式,可形成并维持编队队形。将预设无人机协同编队算法写入核心板,同时在软件里运行六自由度模型,经过六自由度模型计算,得到无人机新状态数据(如图3所示)。

新状态数据分别传输给子系统,用于监控、分析及处理。这里假设无人机个数为5架,所述预设无人机协同编队算法采用协同包围算法那。验证所述协同包围算法,即5架无人机中包含3架领导无人机和2架跟随无人机,3架领导无人机可以构成多边形区域,而2架跟随无人机始终飞行在该多边形区域内(如图8所示)。从图8中可以观察到5架无人机的飞行效果,该系统可验证多无人机协同编队算法的有效性。

所述预设无人机协同编队算法可在一个多机组成的集群系统中,为实现某种具体功能或任务,通过对每个个体实施控制,该控制式中主要包含个体本身状态信息和邻近其他个体状态信息,从而实现一种无中心式、个体级别均等的集群控制效果。

比如,为了实现如图8的效果,所述预设无人机协同编队算法可通过如下控制式对集群中的个体无人机进行控制:

其中,u表示控制输入,i,j,k均表示集群中个体的代号,i代表个体控制输入的个体本身,j,k代表集群中与个体i邻近的个体,x,v分别表示位置和速度,因此x

通过上述算法的输入,可实现图8的集群飞行效果,具体表现为集群中个体既能按照一定的任务目标协同飞行,又能够确保个体彼此间不发生碰撞。

上述控制式中,

图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行所述多机分布式协同仿真控制方法,所述控制方法包括:

将获取到无人机自身的位置、速度数据以及预设距离内的其他无人机的位置、速度数据输入至预设无人机协同编队算法进行计算,得到导航指令;

根据所述导航指令计算出控制指令,并根据所述控制指令和当前时刻状态数据计算出下一时刻无人机自身的状态数据以输出无人机的期望状态。

此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的所述多机分布式协同仿真控制方法,所述控制方法包括:

将获取到无人机自身的位置、速度数据以及预设距离内的其他无人机的位置、速度数据输入至预设无人机协同编队算法进行计算,得到导航指令;

根据所述导航指令计算出控制指令,并根据所述控制指令和当前时刻状态数据计算出下一时刻无人机自身的状态数据以输出无人机的期望状态。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的所述多机分布式协同仿真控制方法,所述控制方法包括:

将获取到无人机自身的位置、速度数据以及预设距离内的其他无人机的位置、速度数据输入至预设无人机协同编队算法进行计算,得到导航指令;

根据所述导航指令计算出控制指令,并根据所述控制指令和当前时刻状态数据计算出下一时刻无人机自身的状态数据以输出无人机的期望状态。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 一种多机分布式协同仿真控制平台及控制方法
  • 一种分布式网络下的多机器人同步随动控制方法
技术分类

06120113067315