飞行器、跟随飞行的飞行系统以及控制方法与流程

文档序号:14910492发布日期:2018-07-10 23:16阅读:286来源:国知局

本申请涉及飞行器领域,具体而言,涉及一种飞行器、跟随飞行的飞行系统以及控制方法。



背景技术:

现有技术中对飞行器的飞行控制,常基于预设的飞行路线或者规则,不与外部物体发生动作交互。在某些飞行器飞行表演中,看似存在人机互动,但实际上还是控制者与飞行器按照预定的时间同时动作,并不是真正的人机互动。

因此,目前飞行器的飞行表演过程缺少互动性和趣味性。



技术实现要素:

有鉴于此,本申请实施例提供了一种飞行器、跟随飞行的飞行系统以及控制方法,以改善上述飞行器在飞行表演过程中缺少互动性和趣味性的问题。

为了实现上述目的,本申请采用的技术方案如下:

一种飞行器,包括接收器及飞行控制器,所述接收器,用于接收一个跟随物体在不同时刻的定位数据;所述飞行控制器,用于从所述不同时刻的定位数据中选择飞行目标数据,并控制所述飞行器飞行到所述飞行目标数据的位置。

一种跟随飞行的飞行系统,包括一个跟随物体、一个飞行器,一个用于发送所述跟随物体运动轨迹信息的定位系统,所述飞行器具有:一个接收器及一个飞行控制器,所述定位系统,用于定时获取并发送所述跟随物体的运动轨迹信息,所述运动轨迹信息中包括所述跟随物体的定位数据;所述接收器,用于接收所述跟随物体在不同时刻的定位数据;所述飞行控制器,用于从所述不同时刻的定位数据中选择飞行目标数据,并控制所述飞行器飞行到所述飞行目标数据的位置。

一种跟随飞行的飞行控制方法,用于上述飞行器,所述飞行器包括:接收器及飞行控制器,所述方法包括如下步骤:接收一个跟随物体在不同时刻的定位数据;从所述不同时刻的定位数据中选择飞行目标数据,并控制所述飞行器飞行到所述飞行目标数据的位置。

本申请实施例提供的飞行器、跟随飞行的飞行系统以及控制方法中,通过获取跟随物体在不同时刻的定位数据,并从该不同时刻的定位数据中选择飞行目标数据,以控制飞行器飞行到所选择的飞行目标数据的位置。由于飞行器所确定的飞行目标数据为跟随物体实际运动轨迹中的一定位数据,因此能够实现飞行器沿着跟随物体的运动轨迹跟随着跟随物体运动,实现了飞行器与跟随物体的真正互动,增强了飞行器飞行表演的趣味性。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

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

图1示出了本申请实施例提供的跟随飞行的飞行系统;

图2示出了本申请实施例提供的飞行器一种结构示意图;

图3示出了本申请实施例提供的一种跟随物体的多个定位数据对应的位置关系示意图;

图4示出了本申请实施例提供的一种飞行器跟随示意图;

图5示出了本申请实施例提供的飞行器的跟随飞行的飞行控制方法流程图。

具体实施方式

下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

本申请实施例提供了一种跟随飞行的飞行系统400,在该系统400中,包括一个跟随物体200、一个飞行器100,一个用于发送所述跟随物体运动轨迹信息的定位系统300,如图1所示。在图1中,跟随物体200、飞行器100以及定位系统300的形态仅仅用于示意,并不一定表示其实际形态。

具体的,跟随物体200以及飞行器100均位于该定位系统300的定位区域范围内,定位系统300可以获得位于其定位区域范围内的飞行器100以及跟随物体200的运动轨迹信息,定位区域范围如图1中区域410所示。其中,跟随物体200的运动轨迹信息中包括跟随物体200在不同时刻的定位数据,该定位数据可以表示跟随物体200所处的空间位置,可用三维坐标数据(x,y,z)进行表示。飞行器100的运动轨迹信息中包括飞行器100的定位数据,表示飞行器100所处的空间位置,也可用三维坐标数据进行表示。在本实施例中,定位系统300可以是光学动捕系统(OptiTrack),对运动物体进行稳定的高帧率位置采样,当然,也可以是其他可以获取所述跟随物体200及飞行器100定位数据的定位系统。

在该跟随飞行的飞行系统400中,定位系统300用于定时获取并发送所述跟随物体200的运动轨迹信息。

定位系统300对跟随物体200的运动轨迹信息的定时获取可以是按一定频率进行,并且定位系统300将获得的运动轨迹信息发送给跟随该跟随物体200的飞行器100。定位系统300将运动轨迹信息发送给飞行器100的方式可以是,直接发送给飞行器100,也可以是通过其他设备,如地面控制中心,发送给飞行器100。在本实施例中,定位系统300获取并发送的运动轨迹信息中包括跟随物体200在不同时刻的定位数据。

本实施例提供的飞行器100具有一个接收器101及一个飞行控制器102,如图2所示,接收器101与飞行控制器102之间电性连接。其中,接收器101用于接收所述跟随物体200在不同时刻的定位数据,飞行控制器102用于从所述不同时刻的定位数据中选择飞行目标数据,并控制所述飞行器100飞行到所述飞行目标数据的位置。

所述接收器101可以按照固定频率接收所述定位数据,每次接收的定位数据均为跟随物体200在当前时刻的定位数据,通过按照固定频率接收该定位数据,即可获得跟随物体在不同时刻的定位数据。该固定频率与定位系统300获取跟随物体200的轨迹信息的频率可以一致,也可以不一致,由用户根据实际需要确定。优选的,定位系统300获取跟随物体200的轨迹信息的频率大于该固定频率,使定位系统300可以在获得多个定位数据并进行滤波处理后发送一个更加准确的定位数据给飞行器100。在本实施例中,对接收器101接收定位数据的固定频率并不作为限定,可以根据实际飞行控制需求确定。优选的,该固定频率可以为5-30fps,优选地为20fps。

在本实施例中,该飞行器100还包括存储器103,如图2所示。接收器101接收不同时刻的定位数据,并将其进行存储于存储器103,存储的定位数据可以为多个。其中,接收并存储的定位数据的个数并不作为本实施例的限定,可以根据实际需要或者存储容量确定。并且,该存储的多个定位数据实时进行更新,不断加入接收时间最新的定位数据,同时剔除时间较早的定位数据,保持存储的不同时刻的定位数据均为最近的时刻的定位数据。飞行控制器102从该多个不同时刻的定位数据中选择一个作为飞行目标数据。

其中,所述飞行控制器102从所述不同时刻的定位数据中选择飞行目标数据可以按照预设频率执行,也就是飞行控制器102按照预设频率从当前存储的不同时刻的定位数据中进行一次选择。该预设频率可以与接收器101接收定位数据的固定频率一致,每接收一个定位数据,进行一次飞行目标数据的选择。当然,该预设频率也可以不与接收器101接收定位数据的固定频率一致,预设频率的具体值可以根据实际需要确定。

所述飞行控制器102可以采用多种不同的选择方式,不论采用哪种选择方式,其均需保证与所述跟随物体200当前定位数据距离满足安全距离,这样避免飞行器与跟随物体太近发生碰撞。具体的,所述飞行控制器102可以按照预设频率从所述根据物体200的不同时刻的定位数据中选择任一定位数据作为飞行目标数据。具体包括如下至少一种:

其一,从所述跟随物体200的不同时刻的定位数据中选择与所述跟随物体200当前定位数据距离满足安全距离、且最近时刻的定位数据作为当前时刻的飞行目标数据。该选择方式可以保证飞行器在保证与跟随物体安全距离的情况下紧密跟随跟随物体,而不会距离跟随物体太远,也就是跟不上跟随物体的情况。

其二,可以从不同时刻的定位数据中按照时间由早到晚的顺序采用间隔选择方式,每次选择的定位数据之间间隔N(N为自然数)个定位数据。此种选择方式通过设置所述间隔的数值大小来控制飞行器与跟随物体运动轨迹的接近程度,可见间隔越小,则与跟随物体的运动轨迹越接近。

其三,可以从不同时刻的定位数据中采用随机选择的方式。

所述飞行控制器102在选择定位数据时,为保证所选择的定位数据与所述跟随物体200当前定位数据的距离满足安全距离,可以采用如下方式:分别计算跟随物体200的当前定位数据与不同时刻的定位数据之间的距离,选取其中距离大于或等于安全距离,且满足上述选择规则的定位数据作为当前时刻的飞行目标数据,例如选择最靠近当前时刻的定位数据作为当前时刻的飞行目标数据。该安全距离预先设定,可以保证飞行器100飞行到飞行目标数据时与跟随物体200之间不会产生碰撞,其具体数值并不作为限定,可以根据飞行器100的大小或者需要的跟随效果确定。

以选择最近时刻的定位数据作为当前时刻的飞行目标数据为例,具体计算方法可以是,以接收到的不同时刻的定位数据中最近时刻的定位数据作为跟随物体200的当前定位数据,依次计算跟随物体200的当前定位数据与时间由近到远的其他定位数据之间的距离,当计算到距离满足安全距离的定位数据时,以该定位数据作为选择的飞行目标数据,不再计算时间更远的定位数据与当前定位数据之间的距离。可以理解的,定位数据之间的距离,即为定位数据对应的位置之间的距离。

以图3所示的P1至P5对应的跟随物体200的5个位置的定位数据为例。P5至P1为与当前时刻时间关系由近到远的5个定位数据,P5为跟随物体200的当前时刻的定位数据,首先计算P5与P4之间的距离,判断该距离不满足安全距离R,于是再计算P5与P3之间的距离,由于该距离满足安全距离R,则以定位数据P3作为飞行目标数据,不再计算P5与其他定位数据之间的距离。

也可以是,计算跟随物体200的当前定位数据与存储的所有不同时刻的定位数据之间的距离,再选取距离满足安全距离的定位数据中最近时刻的定位数据作为当前时刻的飞行目标数据。

仍然以如图3所示的P1至P5对应的跟随物体200的5个定位数据为例。其中,P5至P1为与当前时刻时间关系由近到远的5个定位数据,P5为跟随物体200的当前时刻的定位数据,分别计算P5与P4、P3、P2以及P1之间的距离。如图3所示,其中P3、P2以及P1与P5之间的距离均满足安全距离R,但是P3、P2以及P1中P3为与当前时刻最近的定位数据,则以P3作为飞行目标数据。

选择飞行目标数据后,飞行控制器102即可控制飞行器100飞行到该飞行目标数据的位置。本实施例提供的一种控制飞行器飞行到飞行目标数据的位置的方案如下所述,本领域技术人员可以理解的是,该飞行方式并不局限于此。本实施例具体的飞行控制器102控制飞行器飞行到飞行目标数据的位置的方案包括:定位系统300还用于定时获取飞行器100的定位数据并发送给飞行器100,飞行器100可以利用PID控制算法,根据自身当前定位数据与飞行目标数据之间的差值对飞行器100的飞行速度进行控制,从而飞行到飞行目标数据的位置。

具体的,飞行器100根据自身当前定位数据与飞行目标数据之间的差值以及预先设定的飞行时间确定飞行速度和飞行方向。例如,飞行器100当前定位数据为(x1,y1,z1),飞行目标数据为(x2,y2,z2),预先设定的飞行时间为t,则可以计算获得飞行速度(Vx,Vy,Vz)为:Vx=(x2-x1)/t,Vy=(y2-y1)/t,Vz=(z2-z1)/t。由于获得的飞行速度为具有方向的矢量,则根据该飞行速度(Vx,Vy,Vz)可以确定飞行器100的飞行速度大小和方向。

当然,也可以按照预设速度飞行到所述飞行目标数据的位置。或者按照到达所述飞行目标数据的距离确定飞行速度,也就是预先确定飞行速度与到达飞行目标数据的距离的函数关系,从而在选择完飞行目标数据后,即可计算获得到达飞行目标数据的距离,从而根据该预先确定的函数关系确定飞行速度。

另外,若飞行控制器102未成功从不同时刻的定位数据中选择到飞行目标数据,如接收的不同时刻的定位数据均不满足与跟随物体200当前定位数据的安全距离,则控制飞行器100悬停在当前飞行器100所处的位置。

由于飞行目标数据为跟随物体200在某一时刻的定位数据,则飞行目标数据的位置为跟随物体200运动轨迹上的位置。跟随物体200持续运动形成运动轨迹,飞行器100的接收器101按照固定频率持续接收跟随物体200不同时刻的定位数据,飞行控制器102按照预设频率不断从不同时刻的定位数据中选择飞行目标数据,并控制飞行器100飞行到飞行目标数据的位置,使飞行器100的飞行轨迹跟随跟随物体200的运动轨迹,实现飞行器100对跟随物体200的跟随,直到跟随终止。

飞行器100对跟随物体200的跟随终止,可以由终止命令控制。该终止命令可以是用户通过与飞行器100信号连接的控制设备或者地面控制中心发送,也可以是飞行器100在检测到自身状态不满足飞行条件时产生,如飞行器100电量不足。当跟随终止时,飞行器100可以原地降落,跟随飞行结束。

在本实施例中,跟随物体200可以是指挥棒或者其他飞行器。该指挥棒可以是能主动或被动地做出各种动作的物体,例如人体、机器人、可运动的其他智能设备或者非智能的各种形态的物体。当指挥棒为机器人等智能运动设备时,使用者可以向该指挥棒发出运动控制命令控制该指挥棒运动,该指挥棒也可以根据预设的运动控制命令运动。当指挥棒为非智能的物体时,使用者也可以直接握持该指挥棒,控制该指挥棒运动。

当跟随物体200为指挥棒时,控制指挥棒运动形成运动轨迹,飞行器100飞行轨迹重复指挥棒的运动轨迹,跟随指挥棒的运动并与指挥棒保持安全距离。当跟随物体200为其他飞行器时,飞行器100跟随该其他飞行器的飞行轨迹。

当具有多个飞行器时,该多个飞行器可以依次跟随,实现飞行器的接龙飞行,其中一个飞行器可以跟随用户握持的指挥棒,其他飞行器跟随前一飞行器飞行。于是,当用户握持指挥棒挥舞出一段轨迹线条,跟随该指挥棒的飞行器逐次响应轨迹线条信息对应的定位数据,跟随指挥棒飞行,同时,跟随该飞行器的飞行器再响应该飞行器的运动轨迹,跟随该飞行器运动,从而可以实现多个飞行器依次跟随其跟随的飞行器,响应指挥棒挥舞出的运动轨迹接龙飞行,良好地实现飞行器与外部指挥棒的互动,如图4所示。

在图4中,虚线表示用户握持的指挥棒110挥舞形成的运动轨迹,111、112、113以及114表示飞行器,其中,飞行器111跟随指挥棒110,飞行器112跟随飞行器111,飞行器113跟随飞行器112,飞行器114跟随飞行器113。由于114、113、112以及111依次跟随,最后111跟随指挥棒,使飞行器111至飞行器114在指挥棒形成的运动轨迹上接龙飞行。

当具有多个飞行器以及指挥棒时,每个飞行器可以接收指挥棒以及所有飞行器的定位数据,从中选取其跟随的跟随物体200的定位数据。当然,飞行器100接收的定位数据也可以只是其跟随的跟随物体200的定位数据。另外,可以对指挥棒以及每个飞行器进行编号,如有一个指挥棒以及n-1个飞行器,依次编号为0#、1#、…直到n-1#,并且设置每个飞行器跟随的跟随物体200的编号,如设置1#跟随0#,2#跟随1#,直到 n-1#跟随n-2#。定位系统300发送给飞行器100的定位数据中,包括每个定位数据对应的编号,以使飞行器100只接收其跟随的跟随物体200的定位数据,或者从接收到的所有定位数据中确定其跟随的跟随物体200的定位数据。

本申请实施例还提供了一种跟随飞行的飞行控制方法,用于前述的飞行器100,具体的,如图5所示,该方法包括:

步骤S310:接收一个跟随物体200在不同时刻的定位数据。

定位系统300获取跟随物体200的运动轨迹信息,并发送给飞行器100。该运动轨迹信息中包括定位数据,飞行器100的接收器101接收该跟随物体200在不同时刻的定位数据。具体的,飞行器100可以按照固定频率接收所述定位数据,该固定频率在本实施例中并不作为限制,优选的,可以为5-30fps,优选地为20fps。

步骤S320:从所述不同时刻的定位数据中选择飞行目标数据,并控制所述飞行器100飞行到所述飞行目标数据的位置。

飞行器100的飞行控制器102从接收的不同时刻的多个定位数据中选择一个作为飞行目标数据,并控制飞行器100飞行到该飞行目标数据的位置。

具体的,在本步骤中,飞行器100可以按照预设频率从所述跟随物体200的不同时刻的定位数据中选择与所述跟随物体200当前定位数据距离满足安全距离、且最近时刻的定位数据作为当前时刻的飞行目标数据。因此,飞行器100可以以预设频率更新自身位置,飞行到跟随物体200的运动轨迹上的位置,对跟随物体200进行跟随。

在本实施例提供的飞行器、跟随飞行的飞行系统以及控制方法中,定位系统300获得跟随物体200的轨迹信息并发送给飞行器,该轨迹信息中包括跟随物体200的定位数据飞行器100的接收器接收到跟随物体200不同时刻的定位数据后,飞行控制器从中选择飞行目标数据,控制飞行器100飞行到该飞行目标数据。由于该飞行目标数据为跟随物体200的定位数据,实现了飞行器100对跟随物体200的跟随。

当在本实施例提供的飞行器、跟随飞行的飞行系统以及控制方法用于飞行表演时,跟随物体200位置不断发生变化过程中,飞行器100可以在跟随物体200的运动轨迹上跟随该跟随物体200的位置发生变化,与跟随物体200实现良好的互动性。在飞行表演中,以指挥棒作为跟随物体200时,并且有多依次跟随的飞行器100,则当使用者挥动指挥棒,一个飞行器100跟随指挥棒的运动轨迹飞行,其他飞行器依次跟随,良好地实现了飞行表演过程中飞行器100与外部的互动性,增加了飞行表演中的趣味性。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

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