云台控制方法、装置、云台和存储介质与流程

文档序号:23727893发布日期:2021-01-26 17:54阅读:125来源:国知局
云台控制方法、装置、云台和存储介质与流程

[0001]
本发明涉及控制领域,尤其涉及一种云台控制方法、装置、云台和存储介质。


背景技术:

[0002]
物理上把一个存在又不存在的点称为奇点(或奇异点)。在机械领域中,奇异点可以是指机械臂处于某一个特定的关节位置组合时,末端失去某个方向的自由度。
[0003]
目前,云台在奇异点及其邻域时,因为与云台相对应的雅克比矩阵奇异或者接近奇异,那么通过雅克比逆矩阵,把由末端惯性测量模块测量的速度映射到的关节角空间的角速度及其噪声将会非常大,进而会影响云台控制的稳定性,导致难以实现姿态的准确控制。


技术实现要素:

[0004]
本发明提供了一种云台控制方法、装置、云台和存储介质,用于解决现有技术中存在的因奇异点邻域而影响云台控制的稳定性,难以实现姿态准确控制的问题。
[0005]
本发明的第一方面是为了提供一种云台控制方法,所述云台至少包括依次连接的第一支架、第二支架和用于连接负载的第三支架;所述方法包括:
[0006]
检测所述云台是否位于预设的奇异点邻域;
[0007]
当所述云台位于奇异点邻域时,获取所述云台的目标末端姿态和测量末端姿态;
[0008]
根据所述目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量;其中,所述单轴控制分量与所述第一支架相关,所述双轴控制分量与所述第二支架和第三支架相关;
[0009]
根据所述单轴控制分量对所述第一支架进行控制,并根据所述双轴控制分量对所述第二支架和第三支架进行控制。
[0010]
本发明的第二方面是为了提供一种云台的控制装置,所述云台至少包括依次连接的第一支架、第二支架和用于连接负载的第三支架;所述控制装置包括:
[0011]
存储器,用于存储计算机程序;
[0012]
处理器,用于运行所述存储器中存储的计算机程序以实现:检测所述云台是否位于预设的奇异点邻域;当所述云台位于奇异点邻域时,获取所述云台的目标末端姿态和测量末端姿态;根据所述目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量;其中,所述单轴控制分量与所述第一支架相关,所述双轴控制分量与所述第二支架和第三支架相关;根据所述单轴控制分量对所述第一支架进行控制,并根据所述双轴控制分量对所述第二支架和第三支架进行控制。
[0013]
本发明的第三方面是为了提供一种云台控制设备,所述云台至少包括依次连接的第一支架、第二支架和用于连接负载的第三支架;所述控制设备包括:
[0014]
检测模块,用于检测所述云台是否位于预设的奇异点邻域;
[0015]
获取模块,用于当所述云台位于奇异点邻域时,获取所述云台的目标末端姿态和
测量末端姿态;
[0016]
计算模块,用于根据所述目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量;其中,所述单轴控制分量与所述第一支架相关,所述双轴控制分量与所述第二支架和第三支架相关;
[0017]
控制模块,用于根据所述单轴控制分量对所述第一支架进行控制,并根据所述双轴控制分量对所述第二支架和第三支架进行控制。
[0018]
本发明的第四方面是为了提供一种云台,其特征在于,至少包括:
[0019]
依次连接的第一支架、第二支架和用于连接负载的第三支架;
[0020]
上述第二方面所述的云台控制装置,所述控制装置用于对所述第一支架、第二支架和第三支架进行控制。
[0021]
本发明的第五方面是为了提供一种计算机可读存储介质,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于第一方面所述的云台控制方法。
[0022]
本发明提供的云台控制方法、装置、云台和存储介质,当所述云台位于奇异点邻域时,通过获取所述云台的目标末端姿态和测量末端姿态,根据所述目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量,实现了将三个支架的云台解耦成一个第一支架和一个双轴支架,其中,双轴支架包括第二支架和第三支架,并分别利用单轴控制分量和双轴控制分量对第一支架、第二支架和第三支架的运动进行解耦控制,不仅有效地实现了在云台位于奇异点邻域内时,能够保证云台姿态的稳定性,并且也扩大了对云台进行姿态控制的范围,进一步提高了该方法的实用性,有利于市场的推广与应用。
附图说明
[0023]
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0024]
图1为现有技术中提供的对云台进行控制的示意图;
[0025]
图2为本发明实施例提供的一种云台控制方法的流程示意图;
[0026]
图3为本发明实施例提供的一种云台未在奇异点邻域的示意图;
[0027]
图4为本发明实施例提供的一种云台位于奇异点邻域的示意图;
[0028]
图5为本发明实施例提供的根据所述目标末端姿态和测量末端姿态计算单轴控制分量的流程示意图;
[0029]
图6为本发明实施例提供的根据所述目标末端姿态和测量末端姿态计算单轴控制分量的算法示意图;
[0030]
图7为本发明实施例提供的将所述目标关节角度对第一支架进行控制的示意图;
[0031]
图8为本发明实施例提供的根据所述目标末端姿态和测量末端姿态计算双轴控制分量的流程示意图;
[0032]
图9为本发明实施例提供的根据所述目标末端姿态、测量末端姿态和末端角速度确定所述双轴控制分量的流程示意图;
[0033]
图10为本发明实施例提供的根据所述姿态控制误差和末端角速度确定所述双轴控制分量的流程示意图;
[0034]
图11为本发明实施例提供的针对所述姿态控制误差和末端角速度,去除所述姿态控制误差和末端角速度中与所述第一支架相关的分量,生成与所述第二支架和第三支架相关的局部姿态控制误差和局部末端角速度的流程示意图;
[0035]
图12为本发明实施例提供的根据所述双轴控制分量对所述第二支架和第三支架进行控制的示意图;
[0036]
图13为本发明实施例提供的检测所述云台是否位于奇异点邻域的流程示意图;
[0037]
图14为本发明实施例提供的另一种云台控制方法的流程示意图;
[0038]
图15为本发明实施例提供的又一种云台控制方法的流程示意图;
[0039]
图16为本发明实施例提供的根据所述第一驱动信号和所述第二驱动信号确定至少一个平滑过渡信号的流程示意图;
[0040]
图17为本发明实施例提供的获取与所述第一驱动信号相对应的加权系数的流程示意图;
[0041]
图18为本发明应用实施例提供的一种云台控制方法的流程示意图;
[0042]
图19为本发明实施例提供的一种云台控制设备的结构示意图;
[0043]
图20为本发明实施例提供的一种云台控制装置的结构示意图;
[0044]
图21为本发明实施例提供的一种云台的结构示意图一;
[0045]
图22为本发明实施例提供的一种云台的结构示意图二;
[0046]
图23为本发明实施例提供的一种可移动平台的结构示意图。
具体实施方式
[0047]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
[0049]
为了便于理解本申请的技术方案和技术效果,下面对现有技术进行简要说明:
[0050]
现有技术中,云台(例如:手持云台)的三轴姿态闭环控制器一般为位置环-速度环的双环控制器,如图1所示,r
tar
为末端(相机)目标姿态、r
eb
为末端(相机)测量(融合)姿态,δr为姿态控制误差,c
p
为位置环控制器,c
v
为速度环控制器,j-1
为雅克比逆矩阵,p为受控对象(电机),ω
b
为末端角速度,为关节角速度,fusion为惯性测量单元(inertial measurement unit,简称imu)进行数据融合;通过上述的末端目标姿态r
tar
和末端角速度可以实现对云台的双环闭环控制。其中,与云台相对应的雅克比矩阵描述了各关节角速度与云台末端体坐标系下速度的非线性映射关系。雅克比逆矩阵通常被用来把位置环误差和角速度映射到关节角空间,即满足公式从而把体坐标系下的控制量变成各个电机的控制量,经过速度环控制器后,各电机将分别得到实现姿态控制所需的输出力矩。
[0051]
反之,其中,j为雅克比矩阵。
[0052]
然而,当云台的关节角度处在奇异点邻域时,雅克比矩阵接近奇异(不可逆),此时,根据末端角速度ω
b
和关节角速度的关系可知,为了获得末端某些方向上的速度,所需的关节角速度将会非常大。与此同时,因为雅克比逆矩阵,某些元素的数值将会变得很大,末端惯性测量模块的测量噪声也会被雅克比逆矩阵放大。这样容易使得云台的控制难以稳定,从而难以实现姿态控制和增稳。
[0053]
为了解决上述问题,现有技术提出了以下几种解决方案:(a)在奇异点邻域设计结构限位。(b)在奇异点邻域设计软件限位,或设计规避轨迹绕开奇异点。(c)冗余连杆设计,把奇异点设计在非常用的区域。
[0054]
针对上述解决方案(a)和解决方案(b)而言,其主要是通过规避的方法来避免进入奇异点邻域的情况。然而,这些方法的限位一般都会设计的距离奇异点比较远(例如:一般在30度以上,主要由构型和传感器噪声决定),这样大大减小了云台的运动范围;尤其对于一些构型的云台而言,为满足某些使用需求而使得奇异点与正常工作空间更接近,如非正交构型的云台,在某个方向上的运动范围将会进一步减小。针对上述解决方案(c)而言,其并没有实际上解决奇异点邻域控制的问题,而且冗余设计增加了体积、重量与设计和物料成本等。
[0055]
下面结合附图,对本发明的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
[0056]
图2为本发明实施例提供的一种云台控制方法的流程示意图;为了解决现有技术中存在的因奇异点邻域而影响云台控制的稳定性,难以实现姿态准确控制的问题,参考附图2所示,本实施例提供了一种云台控制方法,其中,云台至少可以包括依次连接的第一支架、第二支架和用于连接负载的第三支架,上述负载可以为照相机、摄像机或者其他具有拍摄功能的任意设备。另外,该控制方法的执行主体是云台控制装置,可以理解的是,该控制装置可以实现为软件、或者软件和硬件的组合;在控制装置执行该控制方法时,可以实现在云台相对于奇异点邻域处于不同状态时,采用不同的控制策略对云台中的第一支架、第二支架和第三支架进行控制。具体的,该方法包括:
[0057]
s1:检测云台是否位于预设的奇异点邻域。
[0058]
当所述云台处在奇异点时,雅克比矩阵的奇异值最小值等于0或矩阵行列式等于零;而当所述云台位于奇异点邻域时,雅克比矩阵接近奇异,也就是雅克比矩阵的奇异值最小值在预设的第一范围内或矩阵行列式在预设的第二范围内。具体的,参考附图3-4所示,云台还包括第一电机107、第二电机108和第三电机109,第一电机107的一端通过转动件104连接于第一支架101上,该转动件104用于使得第一支架101能够相对于第一电机107进行转动,从而使得云台能够在收纳状态和使用状态之间进行切换;而第一电机107的另一端与载体10相连,用于驱动所述第一支架101相对于所述载体10转动;所述第二电机108设置于所述第一支架101上,用于驱动所述第二支架102相对于第一支架101进行转动;所述第三电机109设置于所述第二支架102上,用于驱动所述第三支架103相对于第二支架102进行转动。
[0059]
下面对云台是否位于奇异点邻域的状态进行简要说明:当所述云台处于奇异点时,第一电机107的轴线、第二电机108的轴线和第三电机109的轴线位于同一平面上,也即:云台的yaw轴、roll轴和pitch轴位于同一平面上,所述第二电机108位于预设的关节角度;
当所述云台处于奇异点邻域时,所述第一电机107的的轴线、第二电机108的轴线和第三电机109的轴线位于或接近位于同一平面上,也即:云台的yaw轴、roll轴和pitch轴位于或者接近位于同一平面上,所述第二电机108位于预设的关节角度范围内。需要说明的是,无论是正交云台还是非正交云台,只要第一电机107的轴线、第二电机108的轴线和第三电机109的轴线位于同一平面上,均可认为该云台处于奇异点。
[0060]
其中,奇异点邻域是指位于奇异点附近的角度区域,上述的奇异点可以针对云台进行计算获得,而邻域的具体范围可以根据用户的需求进行设置。另外,本实施例对于检测云台是否位于奇异点邻域的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,例如:可以获取与云台相对应的雅克比矩阵,通过雅克比矩阵判断奇异值是否小于预设阈值,或雅克比矩阵判断矩阵行列式是否小于预设阈值,在奇异值小于或等于预设阈值时,或者矩阵行列式小于或等于预设阈值时,则可以确定云台进入奇异点邻域。参考附图9所示,本实施例中的检测云台是否位于奇异点邻域可以包括:
[0061]
s11:获取第二电机的关节角度。
[0062]
s12:在第二电机的关节角度位于奇异点邻域所对应的角度范围内时,则确定云台位于奇异点邻域。或者,
[0063]
s13:在第二电机的关节角度位于奇异点邻域外所对应的角度范围内时,则确定云台位于奇异点邻域外。
[0064]
其中,对于包括第一支架、第二支架和第三支架的三轴云台而言,雅克比矩阵是否奇异只与第二电机的关节角度有关。因此,对于云台而言,更简单的奇异性判断的方法是,通过第二电机所对应的关节角度可以准确地检测云台是否位于奇异点邻域。具体的,可以通过角度传感器来获取第二电机的关节角度,在获取到第二电机的关节角度之后,可以将第二电机的关节角度与奇异点邻域所对应的角度范围进行比较,在第二电机的关节角度位于奇异点邻域所对应的角度范围内时,则可以确定云台位于奇异点邻域,其中,奇异点邻域所对应的角度范围包括:至少两个角度边界值和位于两个角度边界值之间的任意角度中间值;第二电机的关节角度位于奇异点邻域所对应的角度范围内包括以下两种情况:第二电机的关节角度等于奇异点邻域中的任意一个角度中间值,第二电机的关节角度等于奇异点邻域所对应的角度边界值。在第二电机的关节角度位于奇异点邻域所对应的角度范围外时,也即,第二电机的关节角度既不等于角度边界值,也不等于角度中间值,则可以确定云台位于奇异点邻域外。
[0065]
同理的,在云台包括多个支架时,可以通过位于中间部分的支架所对应的关节角度来检测云台是否位于奇异点邻域。举例来说:在云台包括依次连接的第一支架、第二支架、第三支架和用于连接负载的第四支架、以及用于驱动第一支架相对于载体进行转动的第一电机、用于驱动第二支架相对于第一支架进行转动的第二电机、用于驱动第三支架相对于第二支架进行转动的第三电机和用于驱动第四支架相对于负载进行转动的第四电机时,可以获取第二电机的第二关节角度和/或第三电机的第三关节角度,通过第二关节角度和/或第三关节角度来检测云台是否位于奇异点邻域中;具体的,在第二关节角度和/或第三关节角度位于奇异点邻域所对应的角度范围内时,则确定云台位于奇异点邻域。或者,在第二关节角度和/或第三关节角度位于奇异点邻域所对应的角度范围外时,则可以确定云台位于奇异点邻域外。
[0066]
通过获取第二电机的关节角度,而后基于第二电机的关节角度来检测云台是否位于奇异点邻域,不仅可以保证对云台是否位于奇异点邻域进行检测的准确性,并且还提高了数据处理的效率和质量,进而保证了对云台进行检测的质量和效率。
[0067]
s2:当云台位于奇异点邻域时,获取云台的目标末端姿态和测量末端姿态。
[0068]
在确定云台位于奇异点邻域时,则可以获取云台的目标末端姿态和测量末端姿态,其中,目标末端姿态可以是指云台上负载(相机)所需要达到的最终姿态,测量末端姿态可以是指针对云台上负载(相机)所测量的当前姿态。一般情况下,目标末端姿态可以是用户指定或者用户输入的,或者,可以通过对云台相关参数进行计算,获得目标末端姿态;而测量末端姿态可以通过检测装置对负载进行检测获得,或者,也可以根据末端的惯性测量单元(inertial measurement unit,简称imu)进行数据融合得到,具体的,一个imu可以包含三轴加速度计和三轴陀螺仪,融合三轴加速度计和三轴陀螺仪的数据,就能算出末端姿态。在另一实施例中,一个imu可以包括三轴加速度计、三轴陀螺仪以及三轴磁力计,通过融合三轴加速度计、三轴陀螺仪以及三轴磁力计,就可以算出末端姿态。
[0069]
s3:根据目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量;其中,单轴控制分量与第一支架相关,双轴控制分量与第二支架和第三支架相关。
[0070]
在获取到目标末端姿态和测量末端姿态之后,可以对目标末端姿态和测量末端姿态进行分析处理,从而可以获得与第一支架相关的单轴控制分量和与第二支架和第三支架相关的双轴控制分量。需要注意的是,针对第一支架、第二支架和第三支架而言,单轴控制分量仅与第一支架相关,其与第二支架和第三支架不相关;双轴控制分量仅与第二支架和第三支架相关,其与第一支架不相关。
[0071]
s4:根据单轴控制分量对第一支架进行控制,并根据双轴控制分量对第二支架和第三支架进行控制。
[0072]
在获取到单轴控制分量之后,可以根据单轴控制分量对第一支架进行控制,在获取到双轴控制分量之后,可以根据双轴控制分量对第二支架和第三支架进行控制。将现有的三轴姿态闭环控制器等效解耦成两个控制器,其中一个控制器用于对第一支架进行控制,另外一个控制器用于对第二支架和第三支架进行控制,这样,第二支架和第三支架可以等效为一个双轴云台,其对应的雅克比矩阵维度降阶为二维,解决了三维雅克比矩阵具有奇异性的问题,从而避免了云台因奇异点邻域而影响对云台进行控制的稳定性的情况,有效地保证了对云台姿态进行精确控制。
[0073]
本实施例提供的云台控制方法,通过检测云台是否位于奇异点邻域,当云台位于奇异点邻域时,获取云台的目标末端姿态和测量末端姿态,根据目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量,实现了将三个支架的云台解耦成一个第一支架和一个双轴支架,其中,双轴支架包括第二支架和第三支架,并分别利用单轴控制分量和双轴控制分量对第一支架、第二支架和第三支架的运动进行解耦控制,不仅有效地实现了在云台位于奇异点邻域内时,能够保证云台姿态的稳定性,并且也扩大了对云台进行姿态控制的范围,进一步提高了该方法的实用性,有利于市场的推广与应用。
[0074]
图5为本发明实施例提供的根据目标末端姿态和测量末端姿态计算单轴控制分量的流程示意图;图6为本发明实施例提供的根据目标末端姿态和测量末端姿态计算单轴控制分量的算法示意图;在上述实施例的基础上,继续参考附图5-图6所示,本实施例对于根
据目标末端姿态和测量末端姿态计算单轴控制分量的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,较为优选的,可以通过云台上的电机来获取单轴控制分量,此时,参考附图3所示,云台上的电机可以包括第一电机107、第二电机108和第三电机109,第一电机107的一端连接于第一支架101上,另一端与载体10相连,用于驱动所述第一支架101相对于所述载体10转动;所述第二电机108设置于所述第一支架101上,用于驱动所述第二支架102相对于第一支架101进行转动;所述第三电机109设置于所述第二支架102上,用于驱动所述第三支架103相对于第二支架102进行转动。
[0075]
具体的,根据目标末端姿态和测量末端姿态计算单轴控制分量可以包括:
[0076]
s31:分别获取与第一电机、第二电机和第三电机相对应的第一测量关节角度、第二测量关节角度和第三测量关节角度。
[0077]
具体的,可以通过角度检测装置对第一电机所在关节进行角度检测,从而可以获得与第一电机相对应的第一测量关节角度,相类似的,通过角度检测装置分别对第二电机所在关节和第三电机所在关节进行角度检测,从而可以获得与第二电机相对应的第二关节角度和与第三电机相对应的第三关节角度。
[0078]
s32:根据目标末端姿态、测量末端姿态、第一测量关节角度、第二测量关节角度和第三测量关节角度,利用牛顿迭代算法确定与第一电机相对应的目标关节角度。
[0079]
其中,牛顿迭代算法是逆运动学求解技术中采用数值计算求解的方法,而逆运动学求解用于计算末端姿态对应的关节角度。对于正交构型和一些简单的非正交构型,逆运动学有解析解,但对于复杂的非正交构型或考虑正交构型在装配时引入的非正交误差,一般性的连杆构型没有统一的逆运动学解析解。在没有逆运动学解析解的情况下,其求解通常可以采用数值计算的方法来计算,如牛顿迭代算法。
[0080]
在利用牛顿迭代算法确定与第一电机相对应的目标关节角度的过程中,因为牛顿迭代算法的初值必须在真值(所要求得的目标解)附近,也为了加快迭代初始阶段的迭代速度,可以把迭代关节角度的初值设置为进入奇异控制邻域瞬间的三个关节角度测量值,该三个关节角度测量可以分别是指与第一电机所在关节相对应的第一测量关节角度、与第二电机所在关节相对应的第二测量关节角度和与第三电机所在关节相对应的第三测量关节角度。
[0081]
此外,牛顿迭代算法用到了雅克比矩阵,由于除了奇异点邻域外,雅克比矩阵都是可逆的,所以在利用牛顿迭代算法确定与第一电机相对应的目标关节角度的过程中,可以通过调整进入奇异点邻域时的迭代步长λ,使得雅克比矩阵在除了奇异点邻域外的其他区域迭代总能收敛;其中,在对迭代步长λ进行调整时,可以按照越靠近奇异点时,迭代步长越小的规则对迭代步长进行调整。需要注意的是,无论对迭代步长进行何种调整,只需要限制迭代结果不能等于奇异点角度(考虑cpu计算精度,限制迭代结果不在奇异点极小的邻域内),便能得到逆运动学的解。
[0082]
具体的,在确定与第一电机相对应的目标关节角度时,参考附图6所示,包括以下步骤:
[0083]
(32.1)在获取到第一测量关节角度、第二测量关节角度和第三测量关节角度之后,可以获取第一电机、第二电机和第三电机在预设初始位置的第一轴向、第二轴向和第三轴向,其中,预设初始位置可以是指第一电机、第二电机和第三电机的电机关节角度为0
°

位置,另外,第一轴向、第二轴向和第三轴向均可以是向量表示信息。而后利用前向运动学公式和上述所获得的参数,计算测量关节角度θ对应的测量关节姿态。
[0084][0085]
其中,r
j
为与第一电机、第二电机和第三电机相对应的测量关节姿态,该测量关节姿态为末端姿态和手柄姿态的差,例如:测量关节姿态可以为末端姿态与手柄姿态的差值。另外,ξ1是第一电机在(体坐标系下)预设初始位置的轴向,ξ2是第二电机在(体坐标系下)预设初始位置的轴向,ξ3是第三电机在(体坐标系下)预设初始位置的轴向,为第一电机在(体坐标系下)预设初始位置的轴向的反对称矩阵,为第二电机在(体坐标系下)预设初始位置的轴向的反对称矩阵,为第三电机在(体坐标系下)预设初始位置的轴向的反对称矩阵;θ1、θ2和θ3分别为与第一电机、第二电机和第三电机相对应的第一测量关节角度、第二测量关节角度和第三测量关节角度;具体应用时,上述的θ1、θ2和θ3可以是指进入奇异点邻域瞬间的三个关节角度测量值(分别与第一电机、第二电机和第三电机相对应)。优选地,关节角度可通过霍尔传感器、磁编码器等传感器测量得到。
[0086]
(32.2)在获得测量关节姿态r
j
之后,可以利用测量关节姿态r
j
和测量末端姿态(测量相机姿态)r
eb
,计算手柄测量姿态r
h

[0087]
r
h
=r
eb
r
j-1
[0088]
其中,r
h
为手柄测量姿态,r
eb
为测量末端姿态,r
j-1
为测量关节姿态的逆矩阵。在另一实施例中,所述手柄测量姿态可由视觉传感器或imu和指南针融合计算得到。
[0089]
(32.3)利用前向运动学公式和牛顿迭代算法,计算第k次迭代的目标关节角度对应迭代的目标关节姿态
[0090][0091]
其中,为与第k次迭代的目标关节角度相对应的目标关节姿态,以及分别为第一电机、第二电机和第三电机在预设初始位置的第一轴向、第二轴向和第三轴向;和为在进行k次迭代时,分别与第一电机、第二电机和第三电机相对应的第一目标关节角度、第二目标关节角度和第三目标关节角度。
[0092]
(32.4)在获取到目标关节姿态之后,可以由手柄测量姿态rh和迭代的目标关节姿态计算迭代的目标末端姿态
[0093][0094]
其中,为在第k次迭代中的目标末端姿态,r
h
为手柄测量姿态,为与第k次迭代的目标关节角度相对应的目标关节姿态。
[0095]
(32.5)在获取目标末端姿态之后,可以计算迭代的目标末端姿态与目标末端姿态r
tar
的迭代姿态误差δr
(k)

[0096][0097]
其中,δr
(k)
为迭代姿态误差,为在第k次迭代过程中的目标末端姿态,r
tar
为目标末端姿态。
[0098]
(32.6)将迭代姿态误差δr
(k)
转换成轴角表示形式δθ
(k)

[0099]
(32.7)利用迭代的目标关节角度计算对应的雅克比矩阵
[0100][0101]
其中,为与k次迭代的目标关节角度相对应的雅克比矩阵,以及分别为第一电机、第二电机和第三电机在预设初始位置的第一轴向、第二轴向和第三轴向;和分别为在进行k次迭代时,与第一电机、第二电机和第三电机相对应的第一目标关节角度、第二目标关节角度和第三目标关节角度。
[0102]
(32.8)利用雅克比矩阵,计算目标关节角度的迭代关节角度误差δθ
(k)

[0103][0104]
其中,δθ
(k)
为与目标关节角度相对应的迭代关节角度误差,为雅克比矩阵的逆矩阵;δθ
(k)
为迭代姿态误差的轴角表示形式。
[0105]
(32.9)更新第k+1次的迭代目标关节角度。
[0106][0107]
其中,为进行第k+1次迭代的迭代目标关节角度,该迭代目标关节角度可以包括与第一电机相对应的第一目标关节角度与第二电机相对应的第二目标关节角度和与第三电机相对应的第三目标关节角度为进行第k次迭代的迭代目标关节角度,λ为迭代步长系数,δθ
(k)
为迭代关节角度误差。
[0108]
(32.10)判断迭代关节角度误差是否小于阈值,在迭代关节角度误差小于或等于阈值时,则停止迭代,输出从而实现了利用牛顿迭代算法确定与第一电机、第二电机和第三电机相对应的目标关节角度;在迭代关节角度误差大于阈值时,则重复步骤32.3-32.10,直至迭代关节角度误差小于或等于阈值时为止,输出中第一电机的目标关节角度θ
tar1

[0109]
在实际应用中,因为目标末端姿态的变化比较平滑,并且控制周期短(微秒级别),所以迭代收敛的速度快。通常情况下,每个控制周期里仅执行一次迭代即可获得与第一电机相对应的目标关节角度。
[0110]
s33:将目标关节角度确定为单轴控制分量。
[0111]
在获取到目标关节角度之后,可以将目标关节角度确定为单轴控制分量,从而可以根据该目标关节角度对第一支架进行闭环控制,如图7所示,在获取到目标关节角度θ
tar1
之后,可以将目标关节角度θ
tar1
输入到位置环控制器c
p
,从而可以获取与目标关节角度θ
tar1
相对应的位置信息d,而后利用位置信息d可以对受控对象p(第一电机)进行控制,从而可以获得第一电机所对应的测量关节角度θ1,而后再次利用测量关节角度θ1和目标关节角度θ
tar1
对第一电机进行控制,从而实现了利用目标关节角度通过第一电机对第一支架进行闭环控制。
[0112]
通过上述方式获得单轴控制分量,有效地保证了单轴控制分量获取的准确可靠性,进而提高了基于单轴控制分量对第一支架进行控制的稳定可靠性。
[0113]
图8为本发明实施例提供的根据目标末端姿态和测量末端姿态计算双轴控制分量的流程示意图;在上述实施例的基础上,继续参考附图8所示,本实施例对于根据目标末端姿态和测量末端姿态计算双轴控制分量的具体实现方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,较为优选的,本实施例中的根据目标末端姿态和测量末端姿态计算双轴控制分量可以包括:
[0114]
s34:获取云台的末端角速度。
[0115]
其中,可以通过角速度传感器对云台的末端(相机)进行角度检测,从而可以获取到云台的末端角速度。
[0116]
s35:根据目标末端姿态、测量末端姿态和末端角速度确定双轴控制分量。
[0117]
在获取到末端角速度之后,可以利用目标末端姿态、测量末端姿态和末端角速度来确定双轴控制分量,具体的,参考附图9所示,根据目标末端姿态、测量末端姿态和末端角速度确定双轴控制分量可以包括:
[0118]
s351:根据目标末端姿态和测量末端姿态确定云台的姿态控制误差。
[0119]
其中,在获取到目标末端姿态和测量末端姿态之后,可以将目标末端姿态和测量末端姿态进行比较,从而可以确定云台的姿态控制误差。举例来说:姿态控制误差可以为目标末端姿态与测量末端姿态的差值;或者,姿态控制误差也可以为测量末端姿态与目标末端姿态的比值;或者,姿态控制误差也可以为(目标末端姿态-测量末端姿态)与目标末端姿态的比值;具体的,本领域技术人员可以根据不同的设计需求采用不同的方式来确定云台的姿态控制误差,在此不再赘述。
[0120]
s352:根据姿态控制误差和末端角速度确定双轴控制分量。
[0121]
在获取到姿态控制误差之后,可以对姿态控制误差和末端角速度进行分析处理,根据分析处理结果可以确定双轴控制分量。具体的,参考附图10所示,本实施例中的根据姿态控制误差和末端角速度确定双轴控制分量可以包括:
[0122]
s3521:针对姿态控制误差和末端角速度,去除姿态控制误差和末端角速度中与第一支架相关的分量,生成与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度。
[0123]
具体的,参考附图11所示,针对姿态控制误差和末端角速度,去除姿态控制误差和末端角速度中与第一支架相关的分量,生成与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度可以包括:
[0124]
s35211:将姿态控制误差和末端角速度映射至关节角空间中,获得与第一电机、第二电机和第三电机相对应的关节角度控制误差和关节角速度。
[0125]
s35212:针对关节角度控制误差和关节角速度,将位于第一电机的轴向上的关节
角度控制误差和关节角速度置零,获得位于第二电机的轴向和第三电机的轴向上的局部关节角度控制误差和局部关节角速度。
[0126]
s35213:将局部关节角度控制误差和局部关节角速度映射回体坐标系,获得与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度。
[0127]
其中,在云台位于奇异点邻域内时,为了实现对第二支架和第三支架的姿态进行准确控制,需要将第一支架的运动与第二支架和第三支架的运动解耦,若将第一支架的运动、第二支架的运动和第三支架的运动看作为三维运动的话,则需要将第二支架的运动和第三支架的运动在三维运动中解耦出来。具体的,由雅克比逆矩阵j(θ)-1
,分别把姿态控制误差δr和末端角速度ω
b
映射到关节角空间,得到关节角度控制误差θ
e
和关节角速度
[0128]
θ
e
=j(θ)-1
δr
[0129][0130]
针对第一支架而言,需要将关节角度控制误差θ
e
和关节角速度位于第一电机的电机轴方向上的关节角度控制误差和关节角速度置零,从而可以获得位于第二电机的轴向和第三电机的轴向上的局部关节角度控制误差和局部关节角速度即:
[0131][0132][0133]
其中,
[0134]
而后,利用雅克比矩阵j(θ),把局部关节角度控制误差和局部关节角速度映射回体坐标系,从而可以获得与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度
[0135][0136][0137]
其中,针对第二支架和第三支架而言,可以将其结构看作为一个二连杆结构,三维姿态控制也随之变成了二维姿态控制,而对于上述二连杆结构而言,其雅克比矩阵也降阶成二维,不存在奇异点:
[0138][0139]
此时,当利用局部姿态控制误差和局部末端角速度对第二支架和第三支架控制时,在位置环输入为解耦后的姿态控制误差速度环反馈为解耦后的体角速度并且,体坐标系到关节角空间的映射关系改为二维雅克比逆矩阵
[0140]
通过上述方式获取到局部姿态控制误差和局部末端角速度,有效地实现了对第一支架的运动与第二支架的运动、第三支架的运动进行解耦,从而可以获得与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度,进而提高了对第二支架和第三支架的运动进行姿态控制的稳定可靠性。
[0141]
s3522:根据局部姿态控制误差与局部末端角速度确定双轴控制分量。
[0142]
在获取到局部姿态控制误差和局部末端角速度之后,可以根据局部姿态控制误差与局部末端角速度确定双轴控制分量,具体的,一种可实现的方式为:将局部姿态控制误差和局部末端角速度确定为双轴控制分量;或者,也可以对局部姿态控制误差和局部末端角速度进行分析处理,根据分析处理结果来确定双轴控制分量。
[0143]
其中,在将局部姿态控制误差和局部末端角速度直接确定为双轴控制分量时,则可以根据局部姿态控制误差和局部末端角速度对第二支架和第三支架进行控制。参考附图12所示,此时的根据双轴控制分量对第二支架和第三支架进行控制可以包括如下过程:(1)在获取到目标末端(相机)姿态r
tar
和测量(融合)末端(相机)姿态r
eb
之后,可以根据目标末端姿态r
tar
和测量末端姿态r
eb
获得姿态控制误差δr,而后针对姿态控制误差δr,获得局部姿态控制误差将局部姿态控制误差输入到位置环控制器c
p
,从而获取目标末端角速度,通过雅克比逆矩阵将所述目标末端角速度映射到关节角空间,获得目标关节角速度;
[0144]
(2)获取测量末端角速度ω
b
,而后对测量末端角速度ω
b
进行逆运动学解耦处理(kinematic decoupling),获得与第二电机和第三电机相对应的局部末端角速度通过雅克比逆矩阵将所述目标末端角速度映射到关节角空间,获得测量关节角速度;
[0145]
(3)计算所述目标关节角速度和所述测量关节角速度的差值,而后将差值输入到速度环控制器cv,,从而可以获得用于对受控对象p(第二电机和第三电机)进行控制的力矩,从而实现了利用局部姿态控制误差和局部末端角速度,通过第二电机和第三电机对第二支架和第三支架进行闭环控制。
[0146]
需要说明的是,本实施例中的步骤s34-s35与步骤s31-s33之间的执行顺序并不限于序号所显示的顺序,也即,步骤s34-s35也可以在步骤s31-s33之前执行,或者,步骤s34-s35也可以与步骤s31-s33同时执行。
[0147]
通过上述方式计算获得双轴控制分量(即局部姿态控制误差和局部末端角速度),有效地保证了双轴控制分量获取的准确可靠性,进而提高了基于双轴控制分量对第二支架和第三支架的运动姿态进行控制的稳定可靠性。
[0148]
图14为本发明实施例提供的另一种云台控制方法的流程示意图;在上述实施例的基础上,参考附图14所示,在确定云台位于奇异点邻域外之后,本实施例中的方法还可以包括:
[0149]
s201:根据负载的目标末端姿态和测量末端姿态计算三轴控制分量,其中,三轴控制分量与第一支架、第二支架和第三支架相关。
[0150]
s202:根据三轴控制分量对第一支架、第二支架和第三支架进行控制。
[0151]
具体的,当云台位于奇异点邻域外时,此时对云台的姿态控制不会存在奇异点邻域而影响云台控制稳定性的情况,因此,在获取到目标末端姿态和测量末端姿态之后,可以通过前述的三轴姿态闭环控制器对第一支架、第二支架和第三支架进行控制,具体的,参考附图1所示,根据三轴控制分量对第一支架、第二支架和第三支架进行控制可以包括如下过程:
[0152]
(1)在获取到目标末端(相机)姿态r
tar
和测量(融合)末端(相机)姿态r
eb
之后,可以根据目标末端姿态r
tar
和测量末端姿态r
eb
获得姿态控制误差δr,而后将姿态控制误差δr输
入到位置环控制器c
p
,从而获取目标末端角速度,通过雅克比逆矩阵将所述目标末端角速度映射到关节角空间,获得目标关节角速度;
[0153]
(2)获取测量末端角速度ω
b
,而后通过雅克比逆矩阵,将所述测量末端角速度ω
b
映射至关节角空间,获得测量关节角速度
[0154]
(3)计算所述目标关节角速度和所述测量关节角速度的差值,而后将差值输入到速度环控制器c
v
,从而可以获得用于对受控对象p(第一电机、第二电机和第三电机)进行控制的力矩,进而实现了通过第一电机、第二电机和第三电机分别带动第一支架、与第二支架和第三支架进行三轴闭环控制,有效地保证了对云台姿态进行精确控制。
[0155]
图15为本发明实施例提供的又一种云台控制方法的流程示意图;在上述任意一个实施例的基础上,参考附图15所示,本实施例中的方法还可以包括:
[0156]
s301:若云台在当前时刻位于奇异点邻域,在上一时刻位于奇异点邻域外;或者,若云台在当前时刻位于奇异点邻域外,在上一时刻位于奇异点邻域时,则获取云台在上一时刻的第一驱动信号和在当前时刻的第二驱动信号。
[0157]
为了便于描述,将云台位于奇异点邻域的状态称为云台处于奇异点控制模式,将云台位于奇异点邻域外的状态称为云台处于三轴控制模式;由此可知,在对云台进行控制时,云台可以处于不同的控制模式,并且云台的不同控制模式之间可以进行切换,例如:云台在当前时刻位于奇异点邻域,在上一时刻位于奇异点邻域外,即云台由上一时刻的三轴控制模式切换为当前时刻的奇异点控制模式;或者,云台在当前时刻位于奇异点邻域外,在上一时刻位于奇异点邻域,也即,云台由上一时刻的奇异点邻域模式切换为当前时刻的三轴控制模式。
[0158]
当云台在不同的控制模式之间进行切换时,为了保证云台以及位于云台上的负载工作的稳定性,可以获取云台在上一时刻的第一驱动信号和在当前时刻的第二驱动信号,其中,第一驱动信号和第二驱动信号可以是以下任意一种形式:控制力矩、转速信号、电压信号、电流信号等。
[0159]
s302:根据第一驱动信号和第二驱动信号确定至少一个平滑过渡信号。
[0160]
在获取到第一驱动信号和第二驱动信号之后,可以对第一驱动信号和第二驱动信号进行分析处理,从而可以确定至少一个平滑过渡信号,具体的,参考附图16所示,根据第一驱动信号和第二驱动信号确定至少一个平滑过渡信号可以包括:
[0161]
s3021:获取与第一驱动信号相对应的加权系数。
[0162]
其中,参考附图17所示,获取与第一驱动信号相对应的加权系数可以包括:
[0163]
s30211:获取预设的切换时间和进行切换操作的切换时刻。
[0164]
其中,切换时间为云台进行控制模式切换操作所需要的总时间,该切换时间可以是用户指定或者用户预先配置的。而切换时刻是指云台进行控制模式切换操作所历经的时刻。举例来说:切换时间为5min,切换开始时间为12:00,那么根据切换时间5min可以确定与切换开始时间12:00相对应的切换结束时间12:05,切换时刻则为切换开始时间12:00与切换结束时间12:05中的任意一个时间点。
[0165]
s30212:根据切换时间和切换时刻确定加权系数。
[0166]
其中,在获取到切换时间和切换时刻之后,可以利用以下公式确定加权系数:
[0167][0168]
其中,μ为加权系数,t0为切换时间,t为切换时刻。
[0169]
通过上述公式可知,加权系数与切换时刻满足线性关系,随着切换时刻的不断变化,加权系数也会发生变化。需要注意的是,本实施例中的加权系数与切换时间和切换时刻的关系并不限于上述所例举的公式,本领域技术人员还可以根据不同的应用场景、不同的控制参数和工况,将加权系数和切换时刻之间的对应关系确定为其他线性或非线性的映射关系,在此不再赘述。
[0170]
s3022:利用加权系数、第一驱动信号和第二驱动信号确定至少一个平滑过渡信号。
[0171]
在获取到加权系数、第一驱动信号和第二驱动信号之后,可以利用以下公式确定至少一个平滑过渡信号:
[0172]
t=μt
former
+(1-μ)t
latter
[0173]
其中,t为平滑过渡信号,μ为加权系数,t
former
为第一驱动信号,t
latter
为第二驱动信号。
[0174]
s303:基于平滑过渡信号驱动云台进行运动。
[0175]
在获取到平滑过渡信号之后,可以基于平滑过渡信号驱动云台进行运动,具体的,可以使得云台由第一驱动信号、平滑过渡信号调整至第二驱动信号,需要注意的是,在驱动云台进行运动的过程中,第一驱动信号和第二驱动信号是实时变化的,而在切换的过渡期间的驱动信号是由第一驱动信号和第二驱动信号共同确定;从而实现了在云台进行模式切换的过程中,云台的运动可以平滑进行过渡,进而保证了云台的稳定可靠性。
[0176]
通过上述过程,有效地实现了平滑地处理云台在三轴控制模式和奇异点控制模式之间进行来回切换,使得云台在切换过程中无抖动,从而保证了负载工作的稳定可靠性,同时也保证了云台工作的稳定可靠性,进一步提高了该方法的实用性。
[0177]
具体应用时,参考附图18所示,本应用实施例提供了一种云台控制方法,该云台控制方法可以在云台位于奇异点邻域内时,将用于对第一支架、第二支架和第三支架进行控制的第一电机、第二电机和第三电机解耦成一个第一电机和一个双轴稳定器(包括:用于对第二支架进行控制的第二电机和用于对第三支架进行控制的第三电机),相对应的,用于控制第一电机、第二电机和第三电机的三轴姿态闭环控制器也可以解耦成两个控制器来实现。
[0178]
其中,第一个控制器为用于控制第一电机的关节角度闭环控制器。具体的,在利用关节角度闭环控制器对第一电机进行控制时,需要先通过逆运动学求解,计算目标末端姿态对应的目标关节角度,再利用第一电机的目标关节角度和角度传感器的测量关节角度对第一电机进行关节角度闭环控制,具体的实现方式可参考上述实施例的陈述内容,在此不再赘述。
[0179]
另一个控制器为用于控制第二电机和第三电机的双轴姿态闭环控制器。在利用双轴姿态闭环控制器对第二电机和第三电机进行控制时,首先,需要把姿态控制误差和角速度在第一电机方向上的分量分离,保留姿态控制误差和角速度在第二电机和第三电机方向上的分量。这时,第二电机和第三电机的结构可以等效为一个双轴稳定器,从而把雅克比矩
阵的维度降阶成二维,解决了雅克比矩阵奇异性问题,进一步的,可以利用二维的位置环-速度环的姿态闭环控制器来控制第二电机和第三电机,具体的实现方式可参考上述实施例的陈述内容,在此不再赘述。
[0180]
具体的,该云台控制方法包括如下步骤:
[0181]
step1:针对云台进行奇异性判断,获取云台上第二电机的关节角度,根据第二电机的关节角度判断云台所处的控制模式。
[0182]
step2:在第二电机的关节角度位于奇异点邻域所对应的角度范围时,则确定云台处于奇异点控制模式;若第二电机的关节角度未在奇异点邻域所对应的角度范围内时,则确定云台处于三轴控制模式。
[0183]
step31:在云台处于三轴控制模式时,则可以获取到用于对第一支架、第二支架和第三支架进行控制的三轴控制量,根据三轴控制量,通过第一电机、第二电机和第三电机对第一支架、第二支架和第三支架进行控制。
[0184]
step32:在云台处于奇异点控制模式时,则通过逆运动学求解,计算目标末端姿态所对应的三个电机的目标关节角度,从该目标关节角度中获取第一电机的目标关节角度;同时,对第一电机的运动与第二电机和第三电机的运动进行解耦,获得用于对第二电机和第三电机进行控制的局部姿态控制误差与局部末端角速度。
[0185]
step4:根据目标关节角度,通过第一电机带动第一支架进行闭环控制;根据局部姿态控制误差、局部末端角速度,通过第二电机和第三电机分别带动第二支架和第三支架进行闭环控制。
[0186]
另外,在上述对云台进行控制的过程中,本实施例中的方法还可以包括:
[0187]
step11:检测云台的控制模式是否发生了切换,在确定云台的控制模式发生切换时,则可以对云台控制模式的切换过程进行平滑处理操作。
[0188]
通过上述云台控制方法对云台进行控制,不仅扩大云台姿态控制的范围;并且,在奇异点邻域内,能保证云台的稳定性能;具体的,可以使得云台在不同的运动工况下(如推动摇杆,手柄转动和推哪儿停哪儿等),实现运动解耦,进一步提高了云台和负载工作的稳定可靠性。
[0189]
图19为本发明实施例提供的一种云台控制设备的结构示意图;参考附图19所示,本实施例提供了一种云台控制设备,该云台控制设备可以执行上述的云台控制方法,其中,云台至少包括依次连接的第一支架、第二支架和用于连接负载的第三支架;具体的,云台控制设备包括:
[0190]
检测模块11,用于检测云台是否位于预设的奇异点邻域;
[0191]
获取模块12,用于当云台位于奇异点邻域时,获取云台的目标末端姿态和测量末端姿态;
[0192]
计算模块13,用于根据目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量;其中,单轴控制分量与第一支架相关,双轴控制分量与第二支架和第三支架相关;
[0193]
控制模块14,用于根据单轴控制分量对第一支架进行控制,并根据双轴控制分量对第二支架和第三支架进行控制。
[0194]
需要注意的是,图19所示装置还可以执行图1-图17所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图17所示实施例的相关说明。该技术方案的执行过程和
技术效果参见图1-图17所示实施例中的描述,在此不再赘述。
[0195]
在一个可能的设计中,图19所示云台控制设备的结构可实现为一电子设备,该电子设备可以是手机、平板电脑、服务器等各种设备。如图20所示,该电子设备可以包括:一个或多个处理器21和一个或多个存储器22。其中,存储器22用于存储支持电子设备执行上述图1-图17所示实施例中提供的云台控制方法的程序,云台至少包括依次连接的第一支架、第二支架和用于连接负载的第三支架;其中,负载包括以下至少之一:图像获取装置、热源探测装置、生命探测装置。处理器21被配置为用于执行存储器22中存储的程序。具体的,
[0196]
程序包括一条或多条计算机指令,其中,一条或多条计算机指令被处理器21执行时能够实现如下步骤:
[0197]
运行存储器中存储的计算机程序以实现:检测云台是否位于预设的奇异点邻域;当云台位于奇异点邻域时,获取云台的目标末端姿态和测量末端姿态;根据目标末端姿态和测量末端姿态计算单轴控制分量和双轴控制分量;其中,单轴控制分量与第一支架相关,双轴控制分量与第二支架和第三支架相关;根据单轴控制分量对第一支架进行控制,并根据双轴控制分量对第二支架和第三支架进行控制。
[0198]
其中,该云台控制装置的结构中还可以包括通信接口23,用于电子设备与其他设备或通信网络通信。
[0199]
进一步的,云台还包括:第一电机、第二电机和第三电机,所述第一电机的一端连接于所述第一支架上,另一端与载体相连,用于驱动所述第一支架相对于所述载体转动;所述第二电机设置于所述第一支架上,用于驱动所述第二支架相对于第一支架进行转动;所述第三电机设置于所述第二支架上,用于驱动所述第三支架相对于第二支架进行转动;在处理器21根据目标末端姿态和测量末端姿态计算单轴控制分量时,该处理器21可以用于执行:分别获取与第一电机、第二电机和第三电机相对应的第一测量关节角度、第二测量关节角度和第三测量关节角度;根据目标末端姿态、测量末端姿态、第一测量关节角度、第二测量关节角度和第三测量关节角度,利用牛顿迭代算法确定与第一电机相对应的目标关节角度;将目标关节角度确定为单轴控制分量。
[0200]
进一步的,在处理器21根据目标末端姿态和测量末端姿态计算双轴控制分量时,该处理器21可以用于执行:获取云台的末端角速度;根据目标末端姿态、测量末端姿态和末端角速度确定双轴控制分量。
[0201]
进一步的,在处理器21根据目标末端姿态、测量末端姿态和末端角速度确定双轴控制分量时,该处理器21可以用于执行:根据目标末端姿态和测量末端姿态确定云台的姿态控制误差;根据姿态控制误差和末端角速度确定双轴控制分量。
[0202]
进一步的,在处理器21根据姿态控制误差和末端角速度确定双轴控制分量时,该处理器21可以用于执行:针对姿态控制误差和末端角速度,去除姿态控制误差和末端角速度中与第一支架相关的分量,生成与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度;根据局部姿态控制误差与局部末端角速度确定双轴控制分量。
[0203]
进一步的,在处理器21针对姿态控制误差和末端角速度,去除姿态控制误差和末端角速度中与第一支架相关的分量,生成与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度时,该处理器21可以用于执行:将姿态控制误差和末端角速度映射至关节角空间中,获得与第一电机、第二电机和第三电机相对应的关节角度控制误差和关节角
速度;针对关节角度控制误差和关节角速度,将位于第一电机的轴向上的关节角度控制误差和关节角速度置零,获得位于第二电机的轴向和第三电机的轴向上的局部关节角度控制误差和局部关节角速度;将局部关节角度控制误差和局部关节角速度映射回体坐标系,获得与第二支架和第三支架相关的局部姿态控制误差和局部末端角速度。
[0204]
进一步的,在处理器21检测云台是否位于奇异点邻域时,该处理器21可以用于执行:获取第二电机的关节角度;在第二电机的关节角度位于奇异点邻域所对应的角度范围内时,则确定云台位于奇异点邻域;或者,在第二电机的关节角度位于奇异点邻域外所对应的角度范围内时,则确定云台位于奇异点邻域外。
[0205]
进一步的,在确定云台位于奇异点邻域外之后,该处理器21可以用于执行:根据负载的目标末端姿态和测量末端姿态计算三轴控制分量,其中,三轴控制分量与第一支架、第二支架和第三支架相关;根据三轴控制分量对第一支架、第二支架和第三支架进行控制。
[0206]
进一步的,处理器21还用于:若云台在当前时刻位于奇异点邻域,在上一时刻位于奇异点邻域外;或者,若云台在当前时刻位于奇异点邻域外,在上一时刻位于奇异点邻域时,则获取云台在上一时刻的第一驱动信号和在当前时刻的第二驱动信号;根据第一驱动信号和第二驱动信号确定至少一个平滑过渡信号;基于平滑过渡信号驱动云台进行运动。
[0207]
进一步的,在处理器21根据第一驱动信号和第二驱动信号确定至少一个平滑过渡信号时,该处理器21可以用于执行:获取与第一驱动信号相对应的加权系数;利用加权系数、第一驱动信号和第二驱动信号确定至少一个平滑过渡信号。
[0208]
进一步的,在处理器21获取与第一驱动信号相对应的加权系数时,该处理器21可以用于执行:获取预设的切换时间和进行切换操作的切换时刻;根据切换时间和切换时刻确定加权系数。
[0209]
图20所示装置可以执行图1-图17所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图17所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1-图17所示实施例中的描述,在此不再赘述。
[0210]
另外,本发明实施例提供了一种计算机可读存储介质,存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,程序指令用于实现上述图1-图17的云台控制方法。
[0211]
图21为本发明实施例提供的一种云台的结构示意图一;图22为本发明实施例提供的一种云台的结构示意图二,参考附图21-22所示,本实施例提供了一种云台100,该云台100至少包括
[0212]
依次连接的第一支架101、第二支架102和用于连接负载200的第三支架103;
[0213]
上述图20实施例所对应的云台控制装置,控制装置用于对第一支架101、第二支架102和第三支架103进行控制。
[0214]
进一步的,参考附图21-22所示,本实施例中的云台100具体包括用于承载负载200的支架部,该支架部用于将负载200装设于手持载体10上,以允许上述手持载体10搭载上述负载200进行作业。负载200可以为图像获取装置(例如,拍摄装置)、热源探测装置、生命探测装置等。
[0215]
其中,云台100的支架部可以包括多个支架,具体在图示的实施例中,支架部包括依次相连接的第一支架101、第二支架102及第三支架103;上述第一支架101用于能够转动
地连接手持载体10,使手持云台100能够通过第一支架101转动地连接于手持载体10上。云台100上还包括第一电机107、第二电机108和第三电机109,所述第一电机101的一端连接于所述第一支架101上,另一端与载体10相连,用于驱动所述第一支架101相对于所述载体10转动;所述第二电机108设置于所述第一支架101上,用于驱动所述第二支架102相对于第一支架101进行转动;所述第三电机109设置于所述第二支架102上,用于驱动所述第三支架103相对于第二支架102进行转动。上述第三支架103与夹持部105相连接,该夹持部105用于承载负载200;可以理解的是,在其他实施例中,支架部包括的支架的数量可以为一个、两个、四个或者更多。
[0216]
进一步的,在上述云台所述结构的基础上,所述处理器,还用于:分别获取与所述第一电机、第二电机和第三电机相对应的第一测量关节角度、第二测量关节角度和第三测量关节角度;根据所述目标末端姿态、测量末端姿态、第一测量关节角度、第二测量关节角度和第三测量关节角度,利用牛顿迭代算法确定与所述第一电机相对应的目标关节角度;将所述目标关节角度确定为所述单轴控制分量。
[0217]
进一步的,上述手持载体10用于供使用者进行把持。在本实施例中,上述负载200为拍摄装置,这里,拍摄装置可以为日常拍摄用的相机、摄像机、手机等。当然,在其他的实施例中,上述拍摄装置还可以为其他形式,例如超声波成像装置、红外成像装置等。使用者能够通过手持云台100搭载负载200进行拍摄作业。
[0218]
进一步的,所述处理器,还用于:获取所述云台的末端角速度;根据所述目标末端姿态、测量末端姿态和末端角速度确定所述双轴控制分量。
[0219]
进一步的,所述处理器,还用于:根据所述目标末端姿态和测量末端姿态确定所述云台的姿态控制误差;根据所述姿态控制误差和末端角速度确定所述双轴控制分量。
[0220]
进一步的,所述处理器,还用于:针对所述姿态控制误差和末端角速度,去除所述姿态控制误差和末端角速度中与所述第一支架相关的分量,生成与所述第二支架和第三支架相关的局部姿态控制误差和局部末端角速度;根据所述局部姿态控制误差与所述局部末端角速度确定所述双轴控制分量。
[0221]
进一步的,所述处理器,还用于:将所述姿态控制误差和所述末端角速度映射至关节角空间中,获得与第一电机、第二电机和第三电机相对应的关节角度控制误差和关节角速度;针对所述关节角度控制误差和关节角速度,将位于所述第一电机的轴向上的关节角度控制误差和关节角速度置零,获得位于所述第二电机的轴向和所述第三电机的轴向上的局部关节角度控制误差和局部关节角速度;将所述局部关节角度控制误差和局部关节角速度映射回体坐标系,获得与所述第二支架和第三支架相关的局部姿态控制误差和局部末端角速度。
[0222]
进一步的,所述处理器,还用于:获取第二电机的关节角度;在所述第二电机的关节角度位于奇异点邻域所对应的角度范围内时,则确定所述云台位于奇异点邻域;或者,在所述第二电机的关节角度位于奇异点邻域外所对应的角度范围内时,则确定所述云台位于奇异点邻域外。
[0223]
进一步的,在确定所述云台位于奇异点邻域外之后,所述处理器,还用于:根据所述负载的目标末端姿态和测量末端姿态计算三轴控制分量,其中,所述三轴控制分量与所述第一支架、第二支架和第三支架相关;根据所述三轴控制分量对所述第一支架、第二支架
和第三支架进行控制。
[0224]
进一步的,所述处理器,还用于:若所述云台在当前时刻位于奇异点邻域,在上一时刻位于奇异点邻域外;或者,若所述云台在当前时刻位于奇异点邻域外,在上一时刻位于奇异点邻域时,则获取所述云台在上一时刻的第一驱动信号和在当前时刻的第二驱动信号;根据所述第一驱动信号和所述第二驱动信号确定至少一个平滑过渡信号;基于所述平滑过渡信号驱动所述云台进行运动。
[0225]
进一步的,所述处理器,还用于:获取与所述第一驱动信号相对应的加权系数;利用所述加权系数、第一驱动信号和第二驱动信号确定至少一个平滑过渡信号。
[0226]
进一步的,所述处理器,还用于:获取预设的切换时间和进行切换操作的切换时刻;根据所述切换时间和切换时刻确定所述加权系数。
[0227]
本实施例提供的云台的具体实现原理和实现效果与图20所对应的云台控制装置相一致,具体可参考上述陈述内容,在这里不再赘述。
[0228]
图23为本发明实施例提供的一种可移动平台的结构示意图;参考附图23可知,本实施例的另一方面提供了一种可移动平台,该可移动平台为以下至少之一:无人飞行器、无人船、无人车;具体的,该可移动平台包括:
[0229]
机体301;
[0230]
动力系统302,设置于所述机体301上,用于为所述可移动平台提供动力;
[0231]
图21-图22所述的云台,所述云台303设置于机体301上。
[0232]
本实施例提供的可移动平台的具体实现原理和实现效果与图21-图22所对应的云台的具体实现原理和效果相一致,具体可参考上述陈述内容,在这里不再赘述。
[0233]
以上各个实施例中的技术方案、技术特征在与本相冲突的情况下均可以单独,或者进行组合,只要未超出本领域技术人员的认知范围,均属于本申请保护范围内的等同实施例。
[0234]
在本发明所提供的几个实施例中,应该理解到,所揭露的相关检测装置(例如:imu)和方法,可以通过其它的方式实现。例如,以上所描述的遥控装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,遥控装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0235]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0236]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0237]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式
体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得计算机处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁盘或者光盘等各种可以存储程序代码的介质。
[0238]
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
[0239]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1