一种无人机控制方法及装置与流程

文档序号:18211094发布日期:2019-07-19 22:18阅读:283来源:国知局
一种无人机控制方法及装置与流程

本公开涉及无人机领域,尤其涉及一种无人机控制方法及装置。



背景技术:

随着无人机技术的发展,无人机在很多领域得到了广泛应用。例如,利用无人机进行航拍、测绘、新闻报道、电力巡检等。在无人机的飞行过程中,用户可以通过如遥控器、遥感等控制器对无人机进行控制。但是,在利用控制器对无人机进行控制时,控制器输入的键值与控制输出的映射是固定的比例关系。用户期望控制输出变大时,只能不断提高输入才能达到预期,反之,用户期望控制输出变小甚至为零时,也只能降低输入或者回复到最低输入才能达到预期。例如,用户希望无人机迅速提高速度,或者,迅速降低速度,只能不断进行输入,无人机响应太慢,使得用户对无人机的控制不够便捷。



技术实现要素:

本公开实施例提供一种无人机控制方法及装置,能够解决无人机在飞行过程中,响应用户控制太慢的问题。所述技术方案如下:

根据本公开实施例的第一方面,提供一种无人机控制方法,该方法包括:

获取当前输入键值,当前输入键值是根据无人机的遥控器发送的当前控制信号生成的;

判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值;

在变化量大于或等于预设阈值时,增大无人机的加速度控制模型中前馈响应值的权重因子,在变化量小于预设阈值时,减小权重因子;

根据调整后的加速度控制模型以及当前输入键值对无人机的加速度进行控制。

因为根据当前输入键值相比于上一周期输入键值的变化量,调整了加速度控制模型中前馈响应值的权重因子,使得控制加速度的响应更加灵活,能够适应用户需求,响应速度更快。

在一个实施例中,判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值之前,该方法还包括:

根据公式p=(rcin-lastrcin)/rcin计算变化量;

其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设百分比。

按照当前输入键值与上一周期输入键值差值所占的百分比计算的变化量,更能反映键值变化的相对情况。

在一个实施例中,判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值之前,该方法还包括:

根据公式p=rcin-lastrcin计算变化量;

其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设差值。

按照当前输入键值与上一周期输入键值的差值计算的变化量,更能反映键值实际的变化大小。

在一个实施例中,根据调整后的加速度控制模型以及当前输入键值对无人机的加速度进行控制,包括:

根据公式ctar=kp×verr+ki∫verrdt+kd×(verr-lastverr)dt+kf×cff计算无人机的目标加速度值;

其中,ctar表示目标加速度值,kp为比例因子,ki为积分因子,kd为微分因子,verr为当前控制的速度误差,lastverr为上一周期控制的速度误差,cff为前馈响应值,kf为权重因子;

根据无人机的目标加速度值调整无人机的加速度。

在一个实施例中,该方法还包括:

根据公式verr=vtar-v0计算当前控制的速度误差,verr为当前控制的速度误差,vtar为目标速度值,v0为当前速度值。

根据本公开实施例的第二方面,提供一种无人机控制装置,包括:获取模块、判断模块、调整模块和控制模块;

其中,获取模块,用于获取当前输入键值,当前输入键值是根据无人机的遥控器发送的当前控制信号生成的;

判断模块,用于判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值;

调整模块,用于在变化量大于或等于预设阈值时,增大无人机的加速度控制模型中前馈响应值的权重因子,在变化量小于预设阈值时,减小权重因子;

控制模块,用于根据调整后的加速度控制模型以及当前输入键值对无人机的加速度进行控制。

在一个实施例中,无人机控制装置还包括第一变化模块;

第一变化模块,用于根据公式p=(rcin-lastrcin)/rcin计算变化量;

其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设百分比。

在一个实施例中,无人机控制装置还包括第二变化模块;

第二变化模块,用于根据公式p=rcin-lastrcin计算变化量;

其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设差值。

在一个实施例中,控制模块,还用于根据公式ctar=kp×verr+ki∫verrdt+kd×(verr-lastverr)dt+kf×cff计算无人机的目标加速度值;

其中,ctar表示目标加速度值,kp为比例因子,ki为积分因子,kd为微分因子,verr为当前控制的速度误差,lastverr为上一周期控制的速度误差,cff为前馈响应值,kf为权重因子;

根据无人机的目标加速度值调整无人机的加速度。

在一个实施例中,控制模块,还用于根据公式verr=vtar-v0计算当前控制的速度误差,verr为当前控制的速度误差,vtar为目标速度值,v0为当前速度值。

根据本公开实施例的第三方面,提供一种无人机,该无人机包括如本公开实施例的第二方面或第二方面的任意一个实施例中所描述的无人机控制装置。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是本公开实施例提供的一种无人机控制方法流程示意图;

图2是本公开另一实施例提供的一种无人机控制方法流程示意图;

图3是本公开实施例提供的一种预设映射的函数曲线示意图;

图4是本公开实施例提供的一种无人机控制装置结构示意图;

图5是本公开实施例提供的一种无人机控制装置结构示意图;

图6是本公开实施例提供的一种无人机控制装置结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

本公开实施例提供一种无人机控制方法,应用于无人机领域,如图1所示,该无人机控制方法包括以下步骤:

101、获取当前输入键值。

当前输入键值是根据无人机的遥控器发送的当前控制信号生成的。

102、判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值。

此处,本实施例列举两个具体示例说明如何计算当前输入键值相比于上一周期输入键值的变化量:

在第一个示例中,判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值之前,该方法还包括:

根据公式p=(rcin-lastrcin)/rcin计算变化量;其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设百分比。

按照当前输入键值与上一周期输入键值差值所占的百分比计算的变化量,更能反映键值变化的相对情况。通常,无人机的遥控器的键值与无人机的飞行速度或加速度有一个映射关系,以无人机的飞行速度为例,键值的变化量就代表无人机飞行速度的变化量。在一些无人机速度较小的应用场景,例如,无人机在一个相对较小的区域内进行航拍,此时,无人机的飞行速度不是很快,速度的变化可能在很小的范围,例如,无人机飞行速度的变化范围在3m/s~10m/s之间,速度变化的差值在0m/s~7m/s之间,用户在控制无人机速度时,速度增加1和速度增加2无法体现出较为明显的区别,而按照百分比计算,例如当前速度是4m/s,速度增加1的变化量为25%,速度增加2的变化量为50%,更能区分无人机速度的变化情况。

在第二个示例中,判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值之前,该方法还包括:

根据公式p=rcin-lastrcin计算变化量;其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设差值。

按照当前输入键值与上一周期输入键值的差值计算的变化量,更能反映键值实际的变化大小。当然,以上两个示例中所描述的计算变化量的方式也可以结合使用,在不同的速度区间可以使用不同的变化量计算方式,此处只是示例性说明,并不代表本公开局限于此。

103、在变化量大于或等于预设阈值时,增大无人机的加速度控制模型中前馈响应值的权重因子,在变化量小于预设阈值时,减小权重因子。

需要说明的是,预设阈值可以有多个或者一个,例如,以变化量为当前输入键值与上一周期输入键值的差值为例,预设阈值可以是0,当前输入键值相比上一周期输入键值增大了,就说明变化量大于预设阈值,当前输入键值相比上一周期输入键值减小了,就说明变化量小于预设阈值。又如,预设阈值可以包括两个,第一阈值和第二阈值,当前输入键值减去上一周期输入键值的差值大于或等于第一阈值,变化量大于预设阈值,此时,增大权重因子,当前输入键值减去上一周期输入键值的差值的小于第二阈值,变化量小于预设阈值,此时,减小权重因子。当然,此处只是示例性说明。增加前馈响应值得权重因子,就会增加此次控制过程中加速度值的变化大小,减小权重因子,就会降低此次控制过程中加速度值的变化大小,这样在控制加速度时,能够使无人机响应更加灵活,更贴合用户期望。

需要说明的是,增大权重因子和减小权重因子的方式可以有多种,此处列举两种具体的方式进行说明:

在第一种方式中,可以按照预设步长对权重因子进行调整,在一个周期的控制过程中,如果变化量大于或等于预设阈值,将权重因子增加预设步长,如果变化量小于预设阈值,将权重因子减小预设步长。

在第二种方式中,可以根据变化量的大小及预设函数计算权重因子的数值,例如,kf=f(x)+kf0,其中,kf为调整后的权重因子,f(x)为预设函数,kf0为当前权重因子。

当然,以上只是示例性说明,并不代表本公开局限于此。

104、根据调整后的加速度控制模型以及当前输入键值对无人机的加速度进行控制。

此处,列举一个具体实施例说明如何控制加速度,当然,此处只是示例性说明,并不代表本公开局限于此。

在一个实施例中,根据调整后的加速度控制模型以及当前输入键值对无人机的加速度进行控制,包括:

根据公式ctar=kp×verr+ki∫verrdt+kd×(verr-lastverr)dt+kf×cff计算无人机的目标加速度值;其中,ctar表示目标加速度值,kp为比例因子,ki为积分因子,kd为微分因子,verr为当前控制的速度误差,lastverr为上一周期控制的速度误差,cff为前馈响应值,kf为权重因子;根据无人机的目标加速度值调整无人机的加速度。

在一个实施例中,该方法还包括:根据公式verr=vtar-v0计算当前控制的速度误差,verr为当前控制的速度误差,vtar为目标速度值,v0为当前速度值。

本公开实施例提供的无人机控制方法,因为根据当前输入键值相比于上一周期输入键值的变化量,调整了加速度控制模型中前馈响应值的权重因子,权重因子增大时,加速度增加幅度变大,响应的更快,权重因子减小时,加速度增加幅度变小,响应速度降低,响应更加平缓,使得控制加速度的响应更加灵活,能够适应用户需求。

基于上述图1对应的实施例,本公开另一实施例提供一种无人机控制方法,应用于通过无人机的遥控器对无人机进行控制的应用场景,该方法可以应用于无人机控制装置,无人机控制装置可以是飞行控制器,飞行控制器是无人机的一部分,安装在无人机上对无人机进行控制,本实施例中,以遥控器和飞行控制器为例进行说明,参照图2所示,该无人机控制方法包括以下步骤:

201、遥控器根据用户操作获取当前输入键值。

遥控器可以是摇杆遥控器,例如,用户将遥感向前推表示加速,向后推表示减速,用户推动的幅度对应不同的键值。或者,遥控器也可以是按键遥控器,例如,用户按下加速键表示加速,用户按下减速键表示减速,用户按下按键的时间长短对应不同的键值。当然,此处只是示例性说明,并不代表本公开局限于此。

202、遥控器根据当前输入键值生成控制信号,并将控制信号发送至飞行控制器。

203、飞行控制器根据当前输入键值及预设映射得到当前控制位置误差。

在一个实施例中,飞行控制器根据当前输入键值以及预设映射得到预期控制位置,位置表示无人机此次飞行的飞行距离,即无人机从起点开始到当前位置的飞行路径的长度,预期控制位置即无人机在当前控制下预期达到的飞行距离,当前控制位置为不考虑当前控制,无人机在保持上一次控制不变的情况下达到的飞行距离,用预期控制位置减去当前控制位置即为当前控制位置误差,因为加速减速的情况不同,当前控制位置误差的数值是有正负的,例如,加速时,控制误差为正,减速时,控制误差为负。

如图3所示,图3是本公开实施例提供的一种预设映射的函数曲线示意图,以摇杆遥控器为例,图3中,横坐标从起点开始,遥控器每个周期输入的键值的总和,纵坐标表示飞行距离,如果用户控制遥感保持不动,则键值的总和会每周期增长相同的数值,飞行距离也会每周期增长相同的数值,此时,无人机处于匀速飞行的状态,当用户改变摇杆的位置时,键值的总和就会发生变化。比如,图3中,用户每个周期输入的键值为100,一个周期可以是1秒,此时无人机以2.5m/s的速度匀速飞行,当前飞行距离为30m,当用户把遥感向前推,使得当前输入键值变为200,则预期控制位置为35m,当前控制位置为32.5m,二者相减即可得到当前控制位置误差为2.5m。

204、飞行控制器计算目标速度值。

在一个实施例中,根据公式:

vtar=kp×perr+ki∫perrdt+kd×(perr-lastperr)dt计算目标速度值;

其中,vtar为目标速度值,kp为比例因子,ki为积分因子,kd为微分因子,perr为当前控制位置误差,lastperr为上一周期控制位置误差。

205、飞行控制器计算当前控制的速度误差。

在一个实施例中,可以根据公式verr=vtar-v0计算当前控制的速度误差,verr为当前控制的速度误差,vtar为目标速度值,v0为当前速度值。

206、飞行控制器计算当前输入键值相比于上一周期输入键值的变化量。

207、飞行控制器根据变化量计算权重因子。

在变化量大于或等于预设阈值时,增大无人机的加速度控制模型中前馈响应值的权重因子,在变化量小于预设阈值时,减小权重因子。

208、飞行控制器将权重因子及当前控制的速度误差代入加速度模型计算目标加速度值。

209、飞行控制器根据无人机的目标加速度值调整无人机的加速度。

飞行控制器可以按照预先设定的方式将无人机的加速度调整为目标加速度值,本公开对此不做限制。

本公开实施例提供的无人机控制方法,因为根据当前输入键值相比于上一周期输入键值的变化量,调整了加速度控制模型中前馈响应值的权重因子,权重因子增大时,加速度增加幅度变大,响应的更快,权重因子减小时,加速度增加幅度变小,响应速度降低,响应更加平缓,使得控制加速度的响应更加灵活,能够适应用户需求。

基于上述图1和图2对应的实施例中所描述的无人机控制方法,下述为本公开装置实施例,可以用于执行本公开方法实施例。

本公开实施例提供一种无人机控制装置,如图4所示,该无人机控制装置40包括:获取模块401、判断模块402、调整模块403和控制模块404;

其中,获取模块401,用于获取当前输入键值,当前输入键值是根据无人机的遥控器发送的当前控制信号生成的;

判断模块402,用于判断当前输入键值相比于上一周期输入键值的变化量是否大于或等于预设阈值;

调整模块403,用于在变化量大于或等于预设阈值时,增大无人机的加速度控制模型中前馈响应值的权重因子,在变化量小于预设阈值时,减小权重因子;

控制模块404,用于根据调整后的加速度控制模型以及当前输入键值对无人机的加速度进行控制。

在一个实施例中,如图5所示,无人机控制装置40还包括第一变化模块405;

第一变化模块405,用于根据公式p=(rcin-lastrcin)/rcin计算变化量;

其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设百分比。

在一个实施例中,如图6所示,无人机控制装置40还包括第二变化模块406;

第二变化模块406,用于根据公式p=rcin-lastrcin计算变化量;

其中,p为变化量,rcin为当前输入键值,lastrcin为上一周期输入键值,预设阈值为预设差值。

在一个实施例中,控制模块404,还用于根据公式ctar=kp×verr+ki∫verrdt+kd×(verr-lastverr)dt+kf×cff计算无人机的目标加速度值;

其中,ctar表示目标加速度值,kp为比例因子,ki为积分因子,kd为微分因子,verr为当前控制的速度误差,lastverr为上一周期控制的速度误差,cff为前馈响应值,kf为权重因子;

根据无人机的目标加速度值调整无人机的加速度。

在一个实施例中,控制模块404,还用于根据公式verr=vtar-v0计算当前控制的速度误差,verr为当前控制的速度误差,vtar为目标速度值,v0为当前速度值。

本公开实施例提供的无人机控制装置,因为根据当前输入键值相比于上一周期输入键值的变化量,调整了加速度控制模型中前馈响应值的权重因子,权重因子增大时,加速度增加幅度变大,响应的更快,权重因子减小时,加速度增加幅度变小,响应速度降低,响应更加平缓,使得控制加速度的响应更加灵活,能够适应用户需求。

基于上述图1和图2对应的实施例中所描述的无人机控制方法,以及上述图4对应的实施例中所描述的无人机控制装置,本公开实施例提供一种无人机,该无人机包括如上述图4-图6对应的实施例中所描述的无人机控制装置40。需要说明的是,该无人机控制装置40也可以是无人机的飞行控制器或者是飞行控制器的一部分。

基于上述图1和图2对应的实施例中所描述的无人机控制方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:readonlymemory,rom)、随机存取存储器(英文:randomaccessmemory,ram)、cd-rom、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图1和图2对应的实施例中所描述的数据传输方法,此处不再赘述。

本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

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