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

一种姿态控制方法、多旋翼飞行器及可读存储介质

文献发布时间:2023-06-19 10:06:57


一种姿态控制方法、多旋翼飞行器及可读存储介质

技术领域

本公开实施例涉及无人机领域,具体涉及一种姿态控制的方法、多旋翼飞行器及可读存储介质。

背景技术

随着无人机技术的飞速发展,四旋翼飞行器逐渐受到了越来越多的关注,广泛的应用在军事领域、航拍领域和快递领域。

四旋翼飞行器通过双闭环控制进行姿态控制以适应不同的场景的飞行需求,然而现有的双闭环控制只能适用于固定载重或者四旋翼飞行器自身没有损坏的情况下,当四旋翼飞行器的载重发生变化或者旋翼机发生变化时,四旋翼飞行器的姿态控制将会出现崩溃,存在四旋翼飞行器的姿态控制稳定差的问题。

发明内容

本公开实施例期望提供一种姿态控制方法、多旋翼飞行器及可读存储介质,能够灵活的控制多旋翼飞行器的飞行姿态,提高了姿态控制的稳定性。

本公开实施例的技术方案是这样实现的:

第一方面,本公开实施例提供一种姿态控制方法,所述方法包括:

获取所述多旋翼飞行器的第一姿态数据和所述多旋翼飞行器的偏差参数,所述偏差参数用于表征所述多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值;

对所述第一姿态数据进行姿态解算,得到所述多旋翼飞行器的第二姿态数据;

当所述第二姿态数据表征所述多旋翼飞行器处于异常状态时,根据所述偏差参数和预设模糊控制规则表,确定所述多旋翼飞行器的调节系数,所述异常状态用于表征所述多旋翼飞行器处于载体发生变化或者螺旋桨发生损坏的状态;所述预设模糊控制规则表用于表征所述偏差参数与所述调节系数的映射关系;

根据所述调节系数、所述偏差参数和预设姿态控制模型,对所述多旋翼飞行器的姿态进行控制,所述预设姿态控制模型用于减小所述多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值。

第二方面,本公开实施例提供一种多旋翼飞行器,所述多旋翼飞行器包括获取单元、解算单元和控制单元,其中,

所述获取单元,用于获取所述多旋翼飞行器的第一姿态数据和所述多旋翼飞行器的偏差参数,所述偏差参数用于表征所述多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值;

所述解算单元,用于对所述第一姿态数据进行姿态解算,得到所述多旋翼飞行器的第二姿态数据;所述获取单元,还用于当所述第二姿态数据表征所述多旋翼飞行器处于异常状态时,根据所述偏差参数和预设模糊控制规则表,确定所述多旋翼飞行器的调节系数,所述异常状态用于表征所述多旋翼飞行器处于载体发生变化或者螺旋桨发生损坏的状态;所述预设模糊控制规则表用于表征所述偏差参数与所述调节系数的映射关系;

所述控制单元,用于根据所述调节系数、所述偏差参数和预设姿态控制模型,对所述多旋翼飞行器的姿态进行控制,所述预设姿态控制模型用于减小所述多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值。

第三方面,本公开实施例提供一种多旋翼飞行器,所述多旋翼飞行器至少包括处理器、通信总线、存储器及通信接口,其中,所述通信总线用于实现所述处理器、所述通信接口和所述存储器之间的连接通信;所述通信接口用于获取采集第一姿态数据;所述处理器用于执行所述存储器中存储的可执行指令,当所述可执行指令被执行时,所述处理器执行时实现上述实施例提供的姿态控制方法。

第四方面,本公开实施例提供一种计算机可读存储介质,其上存储可执行指令,所述可执行指令被处理器执行时实现上述姿态控制方法中的步骤。

本公开实施例提供了一种姿态控制方法、多旋翼飞行器及可读存储介质,该姿态控制方法应用于多旋翼飞行器中,包括:获取多旋翼飞行器的第一姿态数据和多旋翼飞行器的偏差参数,偏差参数用于表征多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值;对第一姿态数据进行姿态解算,得到多旋翼飞行器的第二姿态数据;当第二姿态数据表征多旋翼飞行器处于异常状态时,根据偏差参数和预设模糊控制规则表,确定多旋翼飞行器的调节系数,异常状态用于表征多旋翼飞行器处于载体发生变化或者螺旋桨发生损坏的状态;预设模糊控制规则表用于表征偏差参数与调节系数的映射关系;根据调节系数、偏差参数和预设姿态控制模型,对多旋翼飞行器的姿态进行控制。也就是说,当多旋翼飞行器处于异常状态时,能够获取异常状态下的调节系数,并根据异常状态下的调节系数来控制多旋翼飞行器的姿态,使得多旋翼飞行器能够平稳飞回预设位置,提高了姿态控制稳定性。

附图说明

图1为本公开实施例提供的示例性地多旋翼飞行器中的四旋翼飞行器的示意图;

图2为本公开实施例提出的无刷电机的示意图;

图3为本公开实施例提出的无刷电机的驱动电调的示意图;

图4为本公开实施例提出的主控制系统的电路图;

图5为本公开实施例提出的姿态解算模块的电路图;

图6为本公开实施例提出的姿态解算模块的三轴电子罗盘的示意图;

图7为本公开实施例提出的姿态解算模块的气压传感器模块的示意图;

图8为本公开实施例提出的电源供电模块的示意图;

图9为本公开实施例示例性地四旋翼飞行器的控制器的进程管理块设计示意图;

图10为本公开实施例中提供一种姿态控制方法的实现流程示意图;

图11为本公开实施例提供的互补滤波器的结构图;

图12为本公开实施例示例性地四旋翼飞行器的姿态控制仿真示意图;

图13为本公开实施例提供的一种多旋翼飞行器的组成结构示意图一;

图14为本公开实施例提供的一种多旋翼飞行器的组成结构示意图二。

具体实施方式

为了使本公开实施例的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施例作进一步地详细描述,所描述的实施例不应视为对本公开实施例的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开实施例保护的范围。

目前飞行控制技术通常是在飞行控制系统中做一系列的串行控制,即采用角度和角速度以级联的控制方式构成整个串级控制,其中,飞行控制系统包括内环控制和外环控制,内环控制是通过精确地控制角速度以利于飞行稳定性,外环控制是控制多旋翼飞行器的姿态角。在载重不变或者多旋翼飞行器自身没有损坏的情况下,通过双闭环比例-积分-微分(Proportion-Integral-Differential,PID)控制器能够实现稳定地控制多旋翼飞行器的姿态,但在飞行控制系统自身载重发生变化,如应用于快递运输的多旋翼飞行控制器;或者旋翼自身的损坏,如四个旋翼中的一个螺旋桨因外力作用而发生损坏时,如果仍然采用双闭环PID控制将会出现多旋翼飞行器并不能按照预期的姿态进行飞行,导致飞行控制系统崩溃,造成多旋翼飞行器的损坏。

由上所述,本公开实施例基于多旋翼飞行器的底层硬件,在飞行控制系统自身载重发生明显变化或者螺旋桨发生损坏的异常状况下,采用双闭环模糊PID控制实现对多旋翼飞行器的飞行姿态的控制,使多旋翼飞行器在异常状态下仍然能够稳定的飞行。

图1为本公开实施例提供的示例性地多旋翼飞行器中的四旋翼飞行器的示意图,如图1所示,四旋翼飞行器主要包括控制器11、电机12、机架13和螺旋桨14构成的动力系统。其中,

(1)电机12,用于提供驱动以驱动螺旋桨14转动,实现多旋翼飞行器的飞行。通常多旋翼飞行器的电机可以采用无刷电机,图2为本公开实施例提出的无刷电机的示意图,如图2所示,该无刷电机的中间的转轴21用于连接螺旋桨,尾部的三个接口22,用于连接驱动电调。图3为本公开实施例提出的无刷电机的驱动电调的示意图,如图3所示,该驱动电调的接口31与无刷电机的接口22相连,其主要由mos管和单片机构成,其内部集成了零检测模块电路,用于对无刷电机的转速进行控制。

示例性地,无刷电机可以选用Angle系列型号为A2208-15、KV:1260的无刷电机,该A2208-15表示无刷电机直径为22毫米,转子的高度为8毫米,该KV:1260表示无刷电机的绕线匝数为1260,且输入电压增加1伏特,无刷电机空转时转速提高每分钟1260转。

(2)控制器11,是四旋翼飞行器的控制中心,用于控制四旋翼飞行器实现各种飞行功能,该控制器主要包括:主控制系统、姿态解算模块、电源供电模块和气压传感器,其中,

主控制系统,可以用于接收姿态解算模块发送的姿态数据,并基于姿态数据控制四旋翼飞行器进行各种姿态飞行。该主控制系统可以选用arm Cortex-M4系列的STM32F407,该STM32F407具有高性能的浮点运算能力和数字信号处理(Digital SignalProcessing,DSP)处理,内置1M的固态存储器与动画编辑器(FLASH)和128K的随机存取存储器(Random Access Memory,RAM),运行频率最大可以达到168MHz,具有更高的运行能力和采样频率。图4为本公开实施例提出的主控制系统的电路图,如图4所示,其中,STM32F407主要包括PA0至PA15、PB0至PB15、PC0至PC15、PD0至PD15和PE0至PE15,其中,PA0至PA15主要用于提供输入输出以及串口、仿真调试接口,PB0至PB15主要用于与姿态解算模块的MPU6050进行数据传输,PC0至PC15主要用于提供数据传输接口,PD0至PD15以及PE0至PE15主要用于数据总线和地址总线进行连接通信,VSS系列的引脚用于接地,VDD系列的引脚分别用于连接电源供电模块以得到3.3V电压。

姿态解算模块,可以用于采集多旋翼飞行器的姿态数据,并将姿态数据转化为数字量输入到主控制系统中;姿态解算模块可以选用IIC接口的MPU6050,其内部集成了三轴加速度计、三轴陀螺仪、三轴电子罗盘和具有扩展功能的数据管理平台(Digital MotionProcess,DMP),姿态解算模块通过加速度计和陀螺仪以及电子罗盘采集姿态数据进行处理,转化为高精度的数字量,并输入到主控系统中。

图5为本公开实施例提出的姿态解算模块的电路图,如图5所示,引脚1连接到地;引脚6为I2C主串行数据;引脚7为I2C主串行时钟;引脚8连接数字I/O供电电压;引脚9和引脚10连接到地;引脚11为帧同步数字输入;引脚12为中断数字输出;引脚13连接电源电压;引脚18连接地;引脚19、21和22为预留的,不接;引脚20与电荷泵电容连接;引脚23为I2C主串行时钟;引脚24为I2C主串行数据;除上述引脚的其他引脚为预留引脚;其中可以通过引脚6和引脚7将采集数据传输给控制器。

姿态解算模块中的三轴电子罗盘可以采用AK8975型号的三轴电子罗盘,通过三轴电子罗盘可以检测多旋翼飞行器的x轴、y轴和z轴的磁感。图6为本公开实施例提出的姿态解算模块的三轴电子罗盘的示意图,如图6所示,引脚2为片选的4线串行外设接口;引脚4为控制数据时钟输入引脚;引脚5为串行数据的输入引脚;引脚10为数据就绪信号的输出引脚;引脚7为数字接口电源正极引脚;引脚16为电源引脚;引脚13至15为接地引脚,除上述引脚的其他的引脚为非接触引脚。

姿态解算模块中的气压传感器模块可以采用MS5611,用于提供一个精确的24位数字压力值和温度值。图7为本公开实施例提出的姿态解算模块的气压传感器模块的示意图,如图7所示,引脚1和引脚2连接对地电容,引脚3、引脚4和引脚8连接地,引脚5传输串行时钟,引脚6传输串行数据,引脚7为非接触引脚。

控制器的电源供电模块可以采用AMS1117-33的正向低压降稳压器,其为主控制控制提供3.3V的正向电压,图8为本公开实施例提出的电源供电模块的示意图,如图8所示,VCC50电压输入口,输入5V的电压,VCC33为电压输出口,输出3.3V的电压。

需要说明的是,多旋翼飞行器的控制器在进程管理块(Process Control Block,PCB)绘制的过程中,需要将核心元器件进行综合考量以进行合理的布局,其布局的主要原则是核心元器件的位置要尽量均匀平整,重心要尽量位于PCB板子的中心位置;预留的接口电路安放在PCB板子的边缘位置;易于发热的元器件要尽量安放在易于散热的位置;易于受震荡影响的元器件要放在相对靠近PCB板子的相对中央的位置,减少振动对采集的姿态数据造成的影响。

图9为本公开实施例示例性地四旋翼飞行器的控制器的进程管理块设计示意图,如图9所示,将主控制系统对应的芯片放置在该PCB板子相对中心的位置即标号91的位置,将易于受到震荡影响的姿态解算模块对应的芯片放置在标号92的位置,将姿态解算模块中的三轴电子罗盘对应的芯片放置在标号93的位置,将姿态解算模块中的气压传感器模块对应的芯片放置在标号94的位置。

基于上述多旋翼飞行器的底层硬件,图10为本公开实施例中提供一种姿态控制方法的实现流程示意图,应用于多旋翼飞行器中,如图10所示,多旋翼飞行器实现姿态控制方法包括:

S101、获取多旋翼飞行器的第一姿态数据和多旋翼飞行器的偏差参数。

本公开实施例中,多旋翼飞行器在姿态控制的过程,需要获取多旋翼飞行器的第一姿态数据和多旋翼飞行器的偏差,以便于控制多旋翼飞行器的姿态。

需要说明的是,多旋翼飞行器可以为两个或者两个以上旋翼的飞行器,其是通过调节多个电机的转速来改变螺旋桨转速,以实现升力变化,进而达到飞行姿态控制的目的。

示例性地,多旋翼飞行器包括:四旋翼飞行器、六旋翼飞行器和八旋翼飞行器,本公开实施例这里不做限制。

需要说明的是,第一姿态数据包括三个维度的加速度和三个维度的角速度,该第一姿态数据可以通过姿态解算模块中的多个姿态传感器测量得到的。

示例性地,上述多个姿态传感器可以包括三轴加速度计、三轴陀螺仪和三轴电子罗盘,本公开实施例这里不做限制。

本公开实施例中,多旋翼飞行器的偏差参数用于表征多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值。其中,姿态输入参数可以为当前多旋翼飞行器的飞行姿态参数,姿态输出参数可以为用户期望多旋翼飞行器的飞行姿态参数。

需要说明的是,多旋翼飞行器的飞行姿态包括6个自由度的姿态,如可以为垂直运动的姿态、俯仰运动的姿态、滚转运动的姿态、偏航运动的姿态、前后运动的姿态和倾向运动的姿态。

S102、对第一姿态数据进行姿态解算,得到多旋翼飞行器的第二姿态数据。

本公开实施例中,多旋翼飞行器在获取第一姿态数据之后,还需要对第一姿态数据进行姿态解算,得到多旋翼飞行器的第二姿态数据。

需要说明的是,第二姿态数据用于表征多旋翼飞行器的姿态角,该多旋翼飞行器的姿态角为机体坐标系与地面惯性坐标系之间的夹角。

示例性地,多旋翼飞行器姿态角可以包括横滚角、俯仰角和偏航角。

本公开实施例中,多旋翼飞行器对第一姿态数据进行姿态计算,得到多旋翼飞行器的第二姿态数据的过程为:对第一姿态数据进行滤波处理,得到中间姿态数据;对中间姿态数据进行姿态角处理,得到多旋翼飞行器的第二姿态数据。

需要说明的是,第一姿态数据是通过多个姿态传感器测量的独立姿态数据,为了避免误差干扰,需要对多个姿态传感器采集的独立姿态数据进行融合,即需要对第一姿态数据进行滤波处理,得到中间姿态数据。

示例性地,本公开实施例可以采用互补滤波算法或者卡尔曼滤波算法对第一姿态数据进行滤波处理。

下面以互补滤波算法为例,说明本公开实施例采用互补滤波算法设计互补滤波器的过程。

设两个姿态传感器测量得到的第一姿态数据分别为(1)和(2),其中,x为姿态传感器采集姿态数据,y

y

y

姿态传感器采集姿态数据x的估计传递函数

通常互补滤波可以应用于融合低频率带宽的位置以及高频率带宽的速度测量的一阶动态解算系统,对姿态传感器实际采集的姿态数据进行一阶动态解算变换,可得公式(4),其中,

对速度姿态值进行积分运算,可得对应的位置值为公式(5),其中,C(s)为复变函数转换相关值,s为参考复变函数。

通过公式(3)、(4)和(5),可得估计传递函数

通过公式(6)可知,F

取C(s)=k

由公式(8)可以得到两个不同的滤波器函数分别为公式(9)和公式(10)。

F

F

假设速度测量值中的b(t)=b

由公式(7)至公式(11),可得,互补滤波器的条件为公式(12)和(13),其中

由此可知,在互补滤波器中引入积分器,能够用

假设用

通过公式(15)可以推导出李雅普诺夫函数γ的导数是小于0的,进而可以看出互补滤波算法具有很好的数据滤波效果。

本公开实施例中,多旋翼飞行器在获取中间数据之后,需要对中间姿态数据进行姿态角处理,得到多旋翼飞行器的第二姿态数据,该姿态角处理过程是将滤波处理得到的中间姿态数据转化为多旋翼飞行器的姿态角。需要说明的是,姿态角包括横滚角、俯仰角和偏航角,上述中间姿态数据可以用四元数来表示。

示例性地,假设中间姿态数据表示为四元数Q,Q的表达是可以为公式(16),其中,q

Q=q

则对应的多旋翼飞行器的横滚角θ为公式(17)。

对应的多旋翼飞行器的俯仰角

对应的多旋翼飞行器的偏航角ψ为公式(19)。

S103、当第二姿态数据表征多旋翼飞行器处于异常状态时,根据偏差参数和预设模糊控制规则表,确定多旋翼飞行器的调节系数。

本公开实施例中,多旋翼飞行器在获取第二姿态数据和偏差参数之后,需要判断第二姿态数据是否表征多旋翼飞行器处于异常状态。当第二姿态数据表征多旋翼飞行器处于异常状态时,需要根据偏差参数和预设模糊控制规则表,确定多旋翼飞行器的调节系数;当第二姿态数据表征多旋翼飞行器处于非异常状态时,需要根据预设姿态控制模型和偏差参数,对多旋翼飞行器的姿态进行控制。

需要说明的是,异常状态用于表征旋翼飞行器处于载体发生变化或者螺旋桨发生损坏的状态,当多旋翼飞行器处于异常状态时,如果仍然采用双闭环PID控制即通过预设姿态控制模型和偏差参数对多旋翼飞行器的姿态进行控制,则会出现飞行控制稳定差的问题,基于此,本公开实施例分两种情况分别对多旋翼飞行器进行控制,一种是多旋翼飞行器处于非异常状态,则仍然采用双闭环PID控制来保证飞行稳定,另一种是多旋翼飞行器处于异常状态,则需要进一步获取多旋翼飞行器的调节系数。

本公开实施例中,调节系数是用于调节预设姿态控制模型中的控制系数,可以理解的是,通过判断第二姿态数据是否表征多旋翼飞行器处于异常状态,以通过两种不同的控制方式实现姿态数据的控制,能够更好的保证飞行控制的稳定性。

可以理解的是,当多旋翼飞行器的螺旋桨发生损坏时,可以及时通过偏差参数和预设模糊控制规则表,确定多旋翼飞行器的调节系数,以使得多旋翼飞行器平稳的飞回到地面,及时更换螺旋桨,从而防止了主控制器的损坏,减少了维修成本;当多旋翼飞行器应用在快递行业的时候,可以实时的获取调节系数,用于调节多旋翼飞行器的姿态,保持多旋翼飞行器的稳定飞行。

本公开实施例中,多旋翼飞行器通过对第二姿态数据进行异常判断后,确定第二姿态数据表征多旋翼飞行器处于异常状态时,根据偏差参数和预设模糊控制规则表,确定多旋翼飞行器的调节系数的过程为:当第二姿态数据表征多旋翼飞行器处理异常状态时,根据偏差参数和预设比例调节控制规则表,确定多旋翼飞行器的比例调节系数;根据偏差参数和预设微分调节控制规则表,确定多旋翼飞行器的微分调节系数;根据偏差参数和预设积分调节控制规则表,确定多旋翼飞行器的积分调节系数。

需要说明的是,预设模糊控制规则表用于表征偏差参数与调节系数的映射关系,因此,可以通过获取得到的偏差参数和预设模糊控制规则表,来确定异常状态下的多旋翼飞行器的调节系数。

本公开实施例中,预设模糊控制规则表包括:预设比例调节控制规则表、预设微分调节控制规则表和预设积分调节控制规则表,调节系数包括:比例调节系数、微分调节系数和积分调节系数,每种调节系数对应各自不同的预设模糊控制规则表。

需要说明的是,比例调节系数用于调节异常状态下的姿态控制模型中的比例系数;积分调节系数用于调节异常状态下的姿态控制模型中的积分系数;微分调节系数用于调节异常状态下的姿态控制模型中的微分系数。

S104、根据调节系数、偏差参数和预设姿态控制模型,对多旋翼飞行器的姿态进行控制。

本公开实施例中,多旋翼飞行器在获取调节系数之后,需要根据调节系数、偏差参数和预设姿态控制模型,对多旋翼飞行器的姿态进行控制。

需要说明的是,预设姿态控制模型用于减小所述多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值。

示例性地,姿态控制模型可以为公式(20),其中,u(t)为输出姿态,Kp为比例系数,Ti为积分时间,Td为微分时间,e(t)为偏差参数。

本公开实施例中,多旋翼飞行器在获取调节系数之后,根据调节系数、偏差参数和预设姿态控制模型,对多旋翼飞行器的姿态进行控制的过程为:通过调节系数,调节预设姿态控制模型中的控制系数,获取调节后的姿态控制模型;根据偏差参数和调节后的姿态控制模型,对多旋翼飞行器的姿态进行控制。

需要说明的是,调节系数用于调节姿态控制模型中的控制系数,可以理解的是,在多旋翼飞行器处于异常状态时,多旋翼飞行器不再是直接采用姿态控制模型进行姿态控制,即双闭环串级PID控制,而是通过获取得到的调节系数重新调节姿态控制模型,以利用调节后的姿态控制模型进行姿态控制,即采用双闭环串级模糊PID控制,如此,能够灵活地控制多旋翼飞行器的姿态,保证了姿态控制的稳定性。

示例性地,以多旋翼飞行器为四旋翼飞行器为例,对姿态控制进行MATLAB仿真,图12为本公开实施例示例性地四旋翼飞行器的姿态控制仿真示意图,如图12所示,标号121对应地虚线框为双闭环串级模糊PID控制,标号122对应的虚线框为双闭环串级PID控制,在第二姿态表征多旋翼飞行器处于异常状态时,通过双闭环串级模糊PID控制对多旋翼飞行器进行控制,即通过调节系数对姿态控制模型进行实时的姿态调节;在第二姿态表征多旋翼飞行器处于非异常状态时,通过双闭环串级PID控制对多旋翼飞行器进行控制,如此,将双闭环串级模糊PID控制和双闭环串级PID控制相结合,能够灵活的控制多旋翼飞行器的姿态,提高了四旋翼飞行器姿态控制的稳定性,避免了异常状态下的飞行失控造成的损失。

本公开实施例中,多旋翼飞行器在获取调节系数之后,通过调节系数,调节预设姿态控制模型中的控制系数,获取调节后的姿态控制模型的过程为:通过比例调节系数对预设姿态控制模型中的比例系数进行调节,获取调节后的比例系数;通过微分调节系数对预设姿态控制模型中的微分系数进行调节,获取调节后的微分系数;通过积分调节系数对预设姿态控制模型中的积分系数进行调节,获取调节后的积分系数;根据调节后的比例系数、调节后的微分系数和调节后的积分系数,对预设姿态控制模型进行调节,获取调节后的姿态控制模型。

需要说明的是,调节系数包括:比例调节系数、微分调节系数和积分调节系数,对应的控制系数包括:比例系数、微分系数和积分系数。其中,比例系数用于按照比例反映多旋翼飞行器的偏差;积分系数用于通过积分作用消除多旋翼飞行器的偏差;微分系数用于通过微分作用反映多旋翼飞行器的偏差的变化率。

本公开实施例中,多旋翼飞行器根据调节后的比例系数、调节后的微分系数和调节后的积分系数,对预设姿态控制模型进行调节,可以为将姿态控制模型中的比例系数、微分系数和积分系数,替换为调节后的比例系数、调节后的微分系数和调节后的积分系数,以得到调节后的姿态控制模型。

可以理解的是,由于本公开实施例中的调节系数是通过多旋翼飞行器在异常状态下获取的,因此,通过该调节系数得到调节后的姿态控制模型,能够适应异常状态的多旋翼飞行器的飞行控制,使得多旋翼飞行器不会出现崩溃,提高了多旋翼飞行器的飞行控制的稳定性。

在其他实施例中,多旋翼飞行器在当第二姿态数据表征多旋翼飞行器处于异常状态时,根据偏差参数和预设模糊控制规则表,确定多旋翼飞行器的调节系数之前,多旋翼飞行器确定预设模糊控制规则表的过程为:根据预设整定原则对偏差参数、预设姿态控制模型中的控制系数进行整定,获取偏差参数与调节系数的映射关系;根据偏差参数与调节系数的映射关系,确定预设模糊控制规则表。

本公开实施例中,偏差参数包括姿态偏差和姿态偏差变化率,该偏差参数与调节系数的映射关系为姿态偏差、姿态偏差变化率和调节系数的映射关系整定原则用于表征偏差参数与调节系数的映射关系。

需要说明的是,调节系数用于调节控制系数,其包括微分调节系数、比例调节系数和微分调节系数,对应地,根据偏差参数与调节系数的映射关系确定的预设模糊控制规则表包括:比例调节控制规则表、微分调节控制规则表和积分调节控制规则表。

也就是说,根据偏差参数与调节系数的映射关系,确定预设模糊控制规则表的过程为:通过姿态偏差、姿态偏差变化率和比例调节系数的映射关系,确定比例调节控制规则表;通过姿态偏差、姿态偏差变化率和微分调节系数的映射关系,确定微分调节控制规则表;通过姿态偏差、姿态偏差变化率和积分调节系数的映射关系,确定积分调节控制规则表。

示例性地,假定比例调节系数为△Kp,微分调节系数为△Kd,积分调节系数为△Ki,姿态偏差E和姿态偏差变化率Ec均可以用{NL,NM,NS,Z,PS,PM,PL}来表示,则比例调节控制规则表可以为表1-1,微分调节控制规则表可以为表1-2,积分调节控制规则表可以为表1-3。其中,NL可以取值为负1,NM可以取值为负0.66,NS可以取值为负0.33,NL可以取值为负1,Z可以取值为0,PS可以取值为正0.33,PM可以取值为正0.66,PM可以取值为正1。

表1-1

表1-2

表1-3

在其他实施例中,多旋翼飞行器在根据预设整定原则对偏差参数、预设姿态控制模型中的控制系数进行整定,获取偏差参数与调节系数的映射关系之前,所述方法包括:获取预设整定原则。

需要说明的是,多旋翼飞行器获取预设整定原则的过程为:获取预设比例系数的整定原则;获取预设微分系数的整定原则;获取预设积分系数的整定原则。具体地:

多旋翼飞行器获取预设比例系数的整定原则的过程为:获取姿态偏差与比例系数的映射关系;通过姿态偏差与比例系数的映射关系,确定预设比例系数的整定原则,其中,姿态偏差与比例系数的映射关系用于表征当姿态偏差小于预设第一阈值时,比例系数大于预设第三阈值;或者,当姿态偏差与预设第二阈值的差值小于预设偏差值时,比例系数大于预设第三阈值;或者,当姿态偏差和姿态偏差变化率均为预设第二阈值时,比例系数为预设第二阈值;或者,当姿态偏差大于预设第三阈值时,比例系数大于预设第三阈值。

也就是说,为了确保多旋翼飞行器的稳定性,当姿态偏差较小时,比例系数的值应该取较大的值;当姿态偏差接近0时,比例系数的值应该取较大的值;当姿态偏差以及姿态偏差变化率的值都为中等值时,比例系数的取值要适中;当姿态偏差值比较大时,比例系数应该选取较大的值。

需要说明的是,预设第一阈值、预设第二阈值以及预设第三阈值可以根据实际需求进行设置,只要维持预设第一阈值小于预设第二阈值,预设第二阈值小于预设第三阈值即可。

示例性地,预设第一阈值可以设置为-1,预设第二阈值可以设置为0,预设第三阈值可以设置为1,本公开实施例不作限制。

多旋翼飞行器获取预设积分系数的整定原则的过程为:获取姿态偏差与积分系数的映射关系;通过姿态偏差与积分系数的映射关系,确定预设积分系数的整定原则,其中,姿态偏差与积分系数的映射关系用于表征当姿态偏差和姿态偏差变化率均为预设第二阈值时,获取积分系数小于预设第一阈值;或者,当姿态偏差大于所述预设第三阈值时,获取所述积分系数为所述预设第二阈值。

也就是说,当姿态偏差和姿态偏差变化率及的值都为中等值时,为减少超量,积分系数的值取小些;当姿态偏差比较大时,为了防止出现积分饱和,积分系数应取值为零。

多旋翼飞行器获取预设微分系数的整定原则的过程为:获取姿态偏差与微分系数的映射关系;通过姿态偏差与微分系数的映射关系,确定预设微分系数的整定原则,其中,姿态偏差与微分系数的映射关系用于表征当姿态偏差小于所述预设第一阈值,微分系数为所述预设第二阈值;或者,当姿态偏差与预设第二阈值的差值小于预设偏差值时,获取微分系数为预设第二阈值;或者,当姿态偏差变化大于预设第三阈值时,获取微分系数小于预设第一阈值;或者,当姿态偏差变化率小于预设第一阈值时,获取微分调节系数为预设第二阈值;或者,当姿态偏差和姿态偏差变化率均为预设第二阈值,获取微分系数为预设第二阈值。

也就是说,当姿态偏差较小时,微分系数的值应该取适中;当姿态偏差接近0时,微分系数的值应该取适中;当姿态偏差变化率的值较大些时,微分系数的值取小些;当姿态偏差变化率的值较小些时,微分系数的值取中等大小;当姿态偏差和姿态偏差变化率的值都为中等值时,为减少超量,微分系数的取值要适中。

可以理解的是,通过预设比例系数的整定原则、预设微分系数的整定原则和设积分调节的整定原则进行整定,能够获取预设模糊控制规则表,以便于通过预设模糊控制规则表可以获取调节系数,在多旋翼飞行器异常时,对多旋翼飞行器的飞行姿态进行及时调整,使得该多旋翼飞行器的飞行姿态维持在稳定的状态。

通过本公开实施例,当多旋翼飞行器处于异常状态时,能够获取异常状态下的调节系数,并根据异常状态下的调节系数来控制多旋翼飞行器的姿态,使得多旋翼飞行器能够平稳飞回预设位置,提高了姿态控制稳定性。

基于上述实施例的同一发明构思,本公开实施例提供一种多旋翼飞行器,图13为本公开实施例提供的一种多旋翼飞行器的组成结构示意图一,如图13所示,多旋翼飞行器1000包括获取单元1001、解算单元1002和控制单元1003,其中,

所述获取单元1001,用于获取所述多旋翼飞行器的第一姿态数据和所述多旋翼飞行器的偏差参数,所述偏差参数用于表征所述多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值;

所述解算单元1002,用于对所述第一姿态数据进行姿态解算,得到所述多旋翼飞行器的第二姿态数据;

所述获取单元1001,还用于当所述第二姿态数据表征所述多旋翼飞行器处于异常状态时,根据所述偏差参数和预设模糊控制规则表,确定所述多旋翼飞行器的调节系数,所述异常状态用于表征所述多旋翼飞行器处于载体发生变化或者螺旋桨发生损坏的状态;所述预设模糊控制规则表用于表征所述偏差参数与所述调节系数的映射关系;

所述控制单元1003,用于根据所述调节系数、所述偏差参数和预设姿态控制模型,对所述多旋翼飞行器的姿态进行控制,所述预设姿态控制模型用于减小所述多旋翼飞行器的姿态输入参数与姿态输出参数之间的差值。

在其他实施例中,解算单元1002,具体用于对所述第一姿态数据进行互补滤波处理,得到中间姿态数据;对所述中间姿态数据进行姿态角处理,得到所述多旋翼飞行器的所述第二姿态数据。

在其他实施例中,获取单元1001,具体用于当所述第二姿态数据表征所述多旋翼飞行器处理异常状态时,根据所述偏差参数和所述预设比例调节控制规则表,确定所述多旋翼飞行器的所述比例调节系数;根据所述偏差参数和所述预设微分调节控制规则表,确定所述多旋翼飞行器的所述微分调节系数;根据所述偏差参数和所述预设积分调节控制规则表,确定所述多旋翼飞行器的所述积分调节系数。

在其他实施例中,控制单元1003,包括:

调节单元1004,用于通过所述调节系数,调节所述预设姿态控制模型中的控制系数,获取调节后的姿态控制模型;

第一控制单元1005,用于根据所述偏差参数和所述调节后的姿态控制模型,对所述多旋翼飞行器的姿态进行控制。

在其他实施例中,调节单元1004,具体用于通过所述比例调节系数对所述预设姿态控制模型中的所述比例系数进行调节,获取调节后的比例系数;通过所述微分调节系数对所述预设姿态控制模型中的所述微分系数进行调节,获取调节后的微分系数;通过所述积分调节系数对所述预设姿态控制模型中的所述积分系数进行调节,获取调节后的积分系数;根据所述调节后的比例系数、所述调节后的微分系数和所述调节后的积分系数,对所述预设姿态控制模型进行调节,获取调节后的姿态控制模型。

在其他实施例中,所述多旋翼飞行器1000还包括:

第二控制单元1006,用于当所述第二姿态数据表征所述多旋翼飞行器处于非异常状态时,根据所述预设姿态控制模型和所述偏差参数,对所述多旋翼飞行器的姿态进行控制。

在其他实施例中,所述多旋翼飞行器1000还包括:

第一获取单元1007,用于根据预设整定原则,对所述偏差参数、和所述预设姿态控制模型中的控制系数进行整定,获取所述偏差参数与所述调节系数的映射关系,所述调节系数用于调节所述控制系数,所述预设整定原则用于表征所述偏差参数与所述调节系数的映射关系;根据所述偏差参数与所述调节系数的映射关系,确定所述预设模糊控制规则表。

在其他实施例中,所述多旋翼飞行器1000还包括:

第二获取单元1008,用于获取所述预设整定原则。

在其他实施例中,第二获取单元1008,具体用于获取姿态偏差与比例系数的映射关系;通过所述姿态偏差与比例系数的映射关系,确定所述预设比例系数的整定原则,其中,所述姿态偏差与比例系数的映射关系用于表征当所述姿态偏差小于预设第一阈值时,所述比例系数大于预设第三阈值;或者,当所述姿态偏差与预设第二阈值的差值小于预设偏差值时,所述比例系数大于所述预设第三阈值;或者,当所述姿态偏差和所述姿态偏差变化率均为所述预设第二阈值时,所述比例系数为所述预设第二阈值;当所述姿态偏差大于所述预设第三阈值时,所述比例系数大于所述预设第三阈值,所述预设第一阈值小于所述预设第二阈值,所述预设第二阈值小于所述预设第三阈值。

在其他实施例中,所述第二获取单元1008,具体用于获取姿态偏差与积分系数的映射关系;通过所述姿态偏差与积分系数的映射关系,确定所述预设积分系数的整定原则,其中,所述姿态偏差与积分系数的映射关系用于表征当所述姿态偏差和所述姿态偏差变化率均为所述预设第二阈值时,所述积分系数小于所述预设第一阈值;或者,当所述姿态偏差大于所述预设第三阈值时,所述积分系数为所述预设第二阈值。

在其他实施例中,所述第二获取单元1008,具体用于获取姿态偏差与微分系数的映射关系;通过所述姿态偏差与微分系数的映射关系,确定所述预设微分系数的整定原则,其中,所述姿态偏差与微分系数的映射关系用于表征当所述姿态偏差小于所述预设第一阈值,所述微分系数为所述预设第二阈值;或者,当所述姿态偏差与所述预设第二阈值的差值小于所述预设偏差值时,所述微分系数为所述预设第二阈值;或者,当所述姿态偏差变化率大于所述预设第三阈值时,所述微分系数小于所述预设第一阈值;或者,当所述姿态偏差变化率小于所述预设第一阈值时,所述微分系数为所述预设第二阈值;或者,当所述姿态偏差和所述姿态偏差变化率均为所述预设第二阈值,所述微分系数为所述预设第二阈值。

通过本公开实施例提供的多旋翼飞行器,当多旋翼飞行器处于异常状态时,能够获取异常状态下的调节系数,并根据异常状态下的调节系数来控制多旋翼飞行器的姿态,使得多旋翼飞行器能够平稳飞回预设位置,提高了姿态控制稳定性。

基于上述实施例的同一发明构思,本公开实施例提供一种多旋翼飞行器,图14为本公开实施例提供的多旋翼飞行器的组成结构示意图二,如图14所示,多旋翼飞行器还少包括处理器01、存储器02、通信接口03和通信总线04,其中,通信总线04用于实现处理器01、存储器02和通信接口03之间的连接通信;通信接口03用于采集第一姿态数据;处理器01用于执行存储器02中存储的可执行指令,以实现上述实施例提供的姿态控制方法中的步骤。

另外,在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:磁性随机存取存储器(FRAM,ferromagnetic random access memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、快闪存储器(FlashMemory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory)等各种可以存储程序代码的介质,本公开实施例不作限制。

基于前述实施例,本公开实施例提供了一种计算机可读存储介质,其上存储有可执行指令,该可执行指令被上述处理器执行时实现上述实施例中的姿态控制方法中步骤。

本领域内的技术人员应明白,本公开实施例可提供为方法、系统、或计算机程序产品。因此,本公开实施例可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本公开实施例是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本公开实施例中的较佳实施例而已,并非用于限定本公开实施例的保护范围。

相关技术
  • 一种姿态控制方法、多旋翼飞行器及可读存储介质
  • 一种飞行器姿态角控制方法、控制装置及存储介质
技术分类

06120112423412