关节外力力矩的计算方法及装置、机器人与流程

文档序号:11624652阅读:1447来源:国知局
关节外力力矩的计算方法及装置、机器人与流程

本发明涉及机器人技术领域,特别是涉及关节外力矩的计算方法及装置、机器人。



背景技术:

随着机器人技术的迅速发展,机器人技术在工业生产中的应用也越来越广泛。其中,机器人示教技术是推广机器人技术的重要环节。目前,应用较为广泛的是机器人示教方法是拖动示教方法,具体地,拖动示教指的是操作者通过手动拖动的方式对机器人执行示教编程工作。由于机器人的关节处会受到重力和摩擦力等外力的影响,使得操作者无法拖动机器人或者拖动机器人非常困难。这样,就需要计算出机器人关节处的重力力矩、摩擦例力矩等外力力矩,进而对关节的外力力矩进行补偿,以帮助操作者顺利执行对机器人的拖动示教。

但是,现有的摩擦例力矩为固定值,没有考虑关节角速度和温度对摩擦力的影响,使得用于计算外力力矩的摩擦力力矩并不准确,造成补偿力矩与关节实际受到的外力力矩误差较大,进而导致操作者需要费很大劲才能拖动机器人,不仅影响机器人的示教结果,而且给操作者带来不良的使用体验。



技术实现要素:

本发明实施例的目的在于提供关节外力矩的计算方法及装置、机器人,能够准确计算机器人各关节对应的摩擦力力矩,以保证操作者能够顺利完成对机器人的拖动示教。具体技术方案如下:

本发明的一种实施例公开了一种关节外力力矩的计算方法,应用于机器人的各关节,所述各关节分别安装有电机,所述方法包括:获取待处理关节的当前数据;其中,所述当前数据包括待处理关节的角速度和温度;将所述当前数据输入预设的摩擦力力矩公式,计算得到所述待处理关节的摩擦力力矩;其中,所述摩擦力力矩公式为摩擦力矩与角速度和温度之间的数学关系式。

优选地,所述摩擦力力矩公式通过如下步骤预设:根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;根据所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述待处理关节对应的所述摩擦力力矩公式。

优选地,所述根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装的电机的力矩系数和所述电机的电枢电流的关系进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数的步骤,包括:获取待处理关节对应的至少一组数据;其中,所述数据包括所述待处理关节的角速度、以及所述待处理关节上安装电机的电枢电流值;根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数。

优选地,所述根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数的步骤,包括:根据如下公式,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;

其中,α为所述待处理关节的减速比,k为所述电机的力矩系数,i为所述电机的电枢电流值,为所述待处理关节的角速度,t为对应的温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数。

优选地,所述根据所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述待处理关节对应的所述摩擦力力矩公式的步骤,包括:根据已确定的所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述待处理关节对应的所述摩擦力力矩公式;其中,所述摩擦力力矩公式如下所示:

其中,f为所述待处理关节的摩擦力力矩,为所述待处理关节的角速度,t为对应的温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数,为所述待处理关节的库伦摩擦力力矩,为所述待处理关节的粘性摩擦力力矩,βt为所述待处理关节受温度影响的摩擦力力矩变化值。

优选地,所述机器人的各关节还安装有倾角传感器,所述方法还包括:通过所述待处理关节上安装的所述倾角传感器,确定所述机器人当前安装的姿态信息;根据所述姿态信息,计算待处理关节对应的重力力矩。

优选地,所述根据所述姿态信息,计算待处理关节对应的重力力矩的步骤,包括:根据所述机器人当前安装的姿态信息,确定以所述机器人为原点的机器人基坐标系中的重力方向;根据所述重力方向,计算待处理关节对应的重力力矩。

优选地,所述机器人的各关节还安装有光电编码器,所述获取待处理关节的当前数据;其中,所述当前数据包括待处理关节的角速度和温度的步骤,包括:通过待处理关节上安装的所述光电编码器,获取所述待处理关节的位置信息和温度;根据所述位置信息、以及所述待处理关节在前一个预设采样周期的位置信息,计算出所述待处理关节的角速度。

本发明的又一种实施例公开了一种关节外力力矩的计算装置,应用于机器人的各关节,所述各关节分别安装有电机,所述装置包括:获取单元,用于获取待处理关节的当前数据;其中,所述当前数据包括待处理关节的角速度和温度;第一计算单元,用于将所述当前数据输入预设的摩擦力力矩公式,计算得到所述待处理关节的摩擦力力矩;其中,所述摩擦力力矩公式为摩擦力矩与角速度和温度之间的数学关系式。

优选地,所述装置还包括:第一确定单元,用于根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;第二确定单元,用于根据所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述待处理关节对应的所述摩擦力力矩公式。

优选地,所述第一确定单元,包括:第一获取子单元和第一确定子单元;

所述第一获取子单元,用于获取待处理关节对应的至少一组数据;其中,所述数据包括所述待处理关节的角速度、以及所述待处理关节上安装电机的电枢电流值;

所述第一确定子单元,用于根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数。

优选地,所述第一确定子单元,具体用于根据如下公式,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;

其中,α为所述待处理关节的减速比,k为所述电机的力矩系数,i为所述电机的电枢电流值,为所述待处理关节的角速度,t为对应的温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数。

优选地,所述第二确定单元,具体用于根据已确定的所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述待处理关节对应的所述摩擦力力矩公式;其中,所述摩擦力力矩公式如下所示:

其中,f为所述待处理关节的摩擦力力矩,为所述待处理关节的角速度,t为对应的温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数,为所述待处理关节的库伦摩擦力力矩,为所述待处理关节的粘性摩擦力力矩,βt为所述待处理关节受温度影响的摩擦力力矩变化值。

优选地,所述机器人的各关节还安装有倾角传感器,所述装置还包括:

第三确定单元,用于通过所述待处理关节上安装的所述倾角传感器,确定所述机器人当前安装的姿态信息;

第二计算单元,用于根据所述姿态信息,计算待处理关节对应的重力力矩。

优选地,所述第二计算单元,包括:第二确定子单元和第一计算子单元;

所述第二确定子单元,用于根据所述机器人当前安装的姿态信息,确定以所述机器人为原点的机器人基坐标系中的重力方向;

所述第一计算子单元,用于根据所述重力方向,计算待处理关节对应的重力力矩。

优选地,所述机器人的各关节还安装有光电编码器,所述获取单元,包括:第二获取子单元和第二计算子单元;

所述第二获取子单元,用于通过待处理关节上安装的所述光电编码器,获取所述待处理关节的位置信息和温度;

所述第二计算子单元,用于根据所述位置信息、以及所述待处理关节在前一个预设采样周期的位置信息,计算出所述待处理关节的角速度。

本发明的另一种实施例公开了一种机器人,包括:如上述关节外力力矩的计算装置。

本发明实施例提供的关节外力矩的计算方法及装置、机器人,首先,获取待处理关节的角速度和温度;然后,将角速度和温度带入预设的摩擦力力矩公式,得到待处理关节的摩擦力力矩。这样计算出的摩擦力力矩考虑到了关节的角速度和温度对关节摩擦力的影响,保证了摩擦力力矩的准确性,进而减少最终得到的补偿力矩与关节实际受到的外力力矩的误差,使操作者能够轻松拖动机器人,保证机器人示教的顺利执行。

附图说明

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

图1为本发明实施例的外力力矩的计算方法的一种流程图;

图2为本发明实施例的外力力矩的计算方法的又一种流程图;

图3为本发明实施例的外力力矩的计算方法的另一种流程图;

图4为本发明实施例的斯特里贝克(stribeck)效应的曲线示意图;

图5为本发明实施例的状态转换(karnopp)摩擦模型的示意图;

图6为本发明实施例的外力力矩的计算方法的再一种流程图;

图7为本发明实施例的外力力矩的计算方法的再一种流程图;

图8为本发明实施例中的机器人基坐标系中的重力方向的示意图;

图9为本发明实施例中的外力力矩的计算装置的一种结构图;

图10为本发明实施例中的外力力矩的计算装置的又一种结构图;

图11为本发明实施例中的外力力矩的计算装置的另一种结构图。

具体实施方式

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

本发明实施例公开了一种外力力矩的计算方法,应用于机器人的各关节,各关节分别安装有电机。

参见图1,图1为本发明实施例的外力力矩的计算方法的一种流程图,包括如下步骤:

步骤101,获取待处理关节的当前数据;

其中,当前数据包括待处理关节的角速度和温度。

在本发明的一种优选实施例中,机器人的各关节分别安装有光电编码器,所述步骤101具体可以包括:

通过待处理关节上安装的所述光电编码器,获取所述待处理关节的位置信息和温度;

根据所述位置信息、以及所述待处理关节在前一个预设采样周期的位置信息,计算出所述待处理关节的角速度;

具体地,关节角速度的计算公式如公式(1)所示:

在公式(1)中,qi为关节在当前时刻i对应的位置,qi-1为关节在前一个预设采样周期对应的位置,为关节在当前时刻i对应的角速度,δt为预设采样周期的间隔;其中,qi和qi-1可以通过关节上安装的光电编码器获取到,预设采样周期具体可以是5ms。

在实际应用中,由于计算出的关节角速度可能受到光电编码器的精度和数据传输的噪声影响,需要使用卡尔曼滤波来消除这些不良影响,以提高关节角速度的准确性。在本发明实施例使用的卡尔曼滤波的方程组中,可以将系统噪声r设置为0.02,将位置变量的测量噪声q设置为1或者接近1,将速度变量的测量噪声q设置为10或者接近10,将加速度变量的测量噪声q设置为30或者接近30。

步骤102,将所述当前数据输入预设的摩擦力力矩公式,计算得到所述待处理关节的摩擦力力矩。

其中,摩擦力力矩公式为摩擦力矩与角速度和温度之间的数学关系式

具体地,可以将获取到的角速度和温度输入待处理关节对应的摩擦力力矩公式,得到待处理关节的摩擦力力矩。

可见,本发明实施例能够通过获取待处理关节的角速度和温度,再将角速度和温度带入预设的摩擦力力矩公式,得到待处理关节的摩擦力力矩。这样计算出的摩擦力力矩考虑到了关节的角速度和温度的影响,保证了摩擦力力矩的准确性,进而减少最终得到的补偿力矩与关节实际受到的外力力矩的误差,使操作者能够轻松拖动机器人,保证机器人示教的顺利执行。

在本发明的又一种优选实施例中,如图2所示,图2为本发明实施例的外力力矩的计算方法的又一种流程图,所述摩擦力力矩公式通过如下步骤预设:

步骤201,根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;

进一步地,在本发明的另一种优选实施例中,如图3所示,图3为本发明实施例的外力力矩的计算方法的另一种流程图,所述步骤201,具体可以包括:

子步骤11,获取待处理关节对应的至少一组数据;

其中,所述数据包括所述待处理关节的角速度、以及所述待处理关节上安装电机的电枢电流值。

需要说明的是,获取到的待处理关节对应的数据的组数越多,最终得到待处理关节的摩擦力力矩公式就越准确。为了保证摩擦力力矩公式的准确性,在实际应用中,最好使用至少20组的角速度以及角速度对应的电枢电流值的数据。

子步骤12,根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数。

在实际应用中,可以预设一个包括预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数、待处理关节的减速比、待处理关节上安装电机的力矩系数和电机的电枢电流的待求解公式,使用所述待求解公式这些参数之间的关系。

具体地,在本发明的再一种优选实施例中,所述子步骤12具体可以包括:

根据如下公式,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;

其中,α为所述待处理关节的减速比,k为所述电机的力矩系数,i为所述电机的电枢电流值,为所述待处理关节的角速度,t为对应的温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数。

具体地,待求解公式如公式(2)所示,可以基于stribeck效应和简化的karnopp摩擦模型来建立,能够考虑角速度和温度对关节摩擦力的影响。

其中,stribeck效应的曲线示意图如图4所示,在图4中,用两段曲线拟合处于临界速度前后的摩擦力的规律曲线,纵坐标f表示摩擦力,横坐标表示角速度,可以看出,摩擦力开始会随着关节角速度的增大而减小,而当关节角速度达到阈值v1时,摩擦力又会随着关节角速度的增大而增大。karnopp摩擦模型的示意图如图5所示,在图5中,纵坐标f表示摩擦力,横坐标v表示角速度;当|v|<dv时,认为v=0,摩擦力f与其他作用力相平衡,当|v|≥dv时,进入滑动阶段,摩擦力f是角速度v的函数。

此外,由于温度的变化也会影响关节电机的润滑程度,从而影响机器人关节内部的摩擦力。为了清晰说明摩擦力受温度影响的变化规律,因此,待求解公式是在假设关节角速度为恒速运动的前提下建立的。

虽然摩擦力受温度的影响比较复杂,但可以认为摩擦力随温度变化的总体规律是温度越高,摩擦力就越小,因此,可以用线性项βt近似代替摩擦力随温度变化的总体规律。

在实际应用中,可以根据由子步骤11得到的至少一组数据,使用最小二乘算法,求解出如公式(2)的待求解公式中的库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数系数β。

下面举例对求解库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数β的具体过程进行详细说明:

第一步:获取待处理关节的n个角速度值和对应的n个电机的电枢电流值i1,i2,...,in,记为并且,预设待求解公式如公式(2)所示;其中,关节的减速比α、电机的力矩系数k、温度t均为已知参数。

带入待求解公式,可得:

其中,公式(3)可以写为矩阵形式,如公式(4)所示:

ax=b(4)

在公式(4)中,矩阵a为由…组成的n×3矩阵,矩阵x为由fs、fv和β组成的3×1矩阵,矩阵b为[αki1…αkin]t

第二步:使用最小二乘法求解公式(4),可得:

x=(ata)-1atb(5)

在公式(5)中,x即为公式(4)的最小二乘解;由矩阵at为矩阵a的转置矩阵,矩阵(ata)-1为矩阵ata的逆矩阵,可得(ata)-1at为对矩阵a的求伪逆后的值。

第三步:由于公式(5)解出的矩阵x为fs、fv和β组成的3×1矩阵,因此,可以计算出待求解公式中的库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数β。

这样,将包括大量的关节角速度以及对应的电机的电枢电流值的数据作为待处理数据,考虑温度和关节角速度对摩擦力的影响,使用最小二乘法对所述待处理数据进行拟合处理,求解出待处理关节对应的库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数β,以确定待处理关节的摩擦力力矩公式。

需要说明的是,其中,库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数β只适用于待处理关节,也就是说,如果需要计算其他关节的摩擦力力矩,则需要计算出其他关节对应的库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数β。

步骤202,根据所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述摩擦力力矩公式。

具体地,在本发明的再一种优选实施例中,可以根据步骤201得到的待处理关节对应的库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数β,确定待处理关节对应的摩擦力力矩公式;其中,所述摩擦力力矩公式如公式(6)所示:

其中,f为所述待处理关节的摩擦力力矩,为所述待处理关节的角速度,t为对应的温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数,为所述待处理关节的库伦摩擦力力矩,为所述待处理关节的粘性摩擦力力矩,βt为所述待处理关节受温度影响的摩擦力力矩变化值。

可以理解的,摩擦力力矩公式不是各关节通用的,需要先求解出各关节分别对应的库伦摩擦力系数fs、粘性摩擦力系数fv和温度系数β,进而才能求解出各关节分别对应的摩擦力力矩公式。

可见,本发明实施例中的摩擦力力矩公式是基于stribeck效应和简化的karnopp摩擦模型建立的,且摩擦力力矩公式中的库伦摩擦力系数、粘性摩擦力系数、温度系数可以基于包括关节角速度和对应的电机电枢电流值的大量数据求解得到。这样根据摩擦力力矩公式计算出的摩擦力力矩考虑到了关节的角速度和温度的影响,保证了摩擦力力矩的准确性,进而减少最终得到的补偿力矩与关节实际受到的外力力矩的误差,使操作者能够轻松拖动机器人,保证机器人示教的顺利执行。

需要说明的是,目前计算机器人各关节的补偿力矩的基础原理是机器人的动力学方程,如公式(7)所示:

在公式(7)中,假设机器人的关节数量为n;τ为各关节所需的补偿力矩;q,分别为表示n个关节的位置、角速度和角加速度向量的n×1向量;b(q)为惯量矩阵,具体为n×n阶的对称矩阵;为科氏力和离心力矩阵,具体为n×n阶的对称矩阵;fs为库伦摩擦力系数矩阵,具体为n×n的对称矩阵;为以为自变量的符号函数;fv为粘性摩擦力系数矩阵,具体为n×n的对称矩阵;g(q)为重力向量,具体为n×1的矩阵。

可知,在公式(7)所示的动力学方程中的补偿力矩,不仅包括重力力矩和摩擦力力矩,还包括动力力矩,其中,动力力矩包括惯量力矩、科氏力力矩和离心力力矩。由于本发明实施例只涉及了对摩擦力力矩和重力力矩的改进,且在对计算精度没有特殊要求的情况下,可以认为机器人关节受到的外力力矩只包括重力力矩和摩擦力力矩。

接下来,针对计算待处理关节的重力力矩,本发明实施例又公开了一种外力力矩的计算方法,应用于机器人的各关节,机器人的各关节还安装有倾角传感器,如图6所示,图6为本发明实施例的外力力矩的计算方法的再一种流程图,所述方法还可以包括:

步骤601,通过所述待处理关节上安装的所述倾角传感器,确定所述机器人当前安装的姿态信息;

其中,姿态信息包括机器人的当前安装位置与水平面或者垂直面的角度,可以根据姿态信息确定以机器人为原点的机器人基坐标系;可以通过待处理关节上安装的倾角传感器来测量待处理关节与水平面或者垂直面的倾角。

由于通过如公式(7)所示的机器人动力学方程计算重力力矩时,使用到的重力方向需要是机器人基坐标系的重力方向,而不是世界坐标系中的重力方向。比如,在机器人的底座被安装在斜面上时,机器人基坐标系中的重力方向为垂直于斜面向下,而世界坐标系中的重力方向为垂直于大地向下。为了使计算出的重力力矩更加准确,当机器人的底座被安放在非水平面上时,需要对根据机器人的姿态信息对重力方向进行转换。

在本发明实施例中,考虑在机器人处于不同姿态时,对机器人各关节受到的重力作用的影响。这样,不论机器人是正装,比如机器人的底座固定在水平台上,还是挂装,比如机器人的底座固定在梁或者墙臂上,或者是吊装,比如底座倒置装置天花板上,都能够得到机器人的姿态信息,以生成在以机器人基坐标系中的重力方向,以计算出准确的重力力矩,保证补偿力矩的可靠性。

在实际应用中,在倾角传感器使用前需对倾角传感器进行参数标定,以保证测量数据的准确性。

步骤602,根据所述姿态信息,计算待处理关节对应的重力力矩。

在本发明的一种优选实施例中,如图7所示,图7为本发明实施例的外力力矩的计算方法的再一种流程图,所述步骤602具体可以包括:

子步骤31,根据所述机器人当前安装的姿态信息,确定以所述机器人为原点的机器人基坐标系中的重力方向;

可以理解的,随着机器人安装姿态的变化,机器人基坐标也会发生变化,而直接获取到的重力方向是垂直于地面的,因此,需要根据机器人的当前安装的姿态信息,得到机器人基坐标系中的重力方向。

具体地,首先,可以根据通过待处理过节上安装的倾角传感器,测量得到待处理关节与水平面或者垂直面的倾角,确定机器人的姿态信息;进而根据机器人的姿态信息,确定机器人的基坐标系;接下来,得到世界坐标系与机器人极坐标系之间的转换关系,具体可以是世界坐标系与机器人极坐标系之间的旋转矩阵;这样,就可以根据世界坐标系与机器人极坐标系之间的旋转矩阵,将世界坐标系中的重力方向转换为机器人基坐标系中的重力方向。

如图8所示,图8为本发明实施例中的机器人基坐标系中的重力方向的示意图,在图8的左边,机器人a的底座被放置在水平面上,x轴、y轴和z轴组成的坐标系为世界坐标系,因此,机器人a所在的机器人基坐标系与世界坐标系重合,g为机器人a所在的机器人基坐标系中的重力方向,也就是世界坐标系中的重力方向;在图8的右边,机器人b的底座被放置在斜面上,机器人b的关节通过倾角传感器测量得到斜面的倾角为30°,进而确定由x1轴、y1轴和z1轴组成的机器人b所在的机器人基坐标系,根据机器人b的机器人坐标系与世界坐标系之间的转换关系,可以得到机器人b所在的机器人基坐标系中的重力方向为g’。可见,世界坐标系中的重力方向与底座被放置在非水平面的机器人所在的机器人基坐标系中的重力方向是不同的,并且可以通过关节上安装的倾角传感器确定机器人基坐标系中的重力方向。

需要说明的是,由于根据机器人的姿态信息确定机器人基坐标系,进而确定机器人基坐标系与世界坐标系之间的转换关系,再根据所述转换关系将世界坐标系中的重力方向转换为机器人基坐标系中的重力方向均属于现有技术,在此不再赘述。

子步骤32,根据所述重力方向,计算待处理关节对应的重力力矩。

由于根据机器人基坐标系中的重力方向,使用如公式(7)所示的动力学方程计算重力力矩属于现有技术,在此不再赘述。

此外,实际应用中,由于计算出的待处理关节的角速度经过卡尔曼滤波后的信号仍会有一定噪音,因此可以对步骤102得到的待处理关节对应的摩擦力力矩和步骤602得到的重力力矩进行平滑滤波,保证控制关节运动的电机输出的补偿力矩指令尽量平滑;其中,平滑滤波可以包括通过卡尔曼滤波器进行滤波。

具体地,卡尔曼滤波器采用了一种反馈的形式来估计状态,卡尔曼滤波器的方程可以分为时间更新方程和测量更新方程;其中,时间更新方程如公式(8)所示,测量更新方程如公式(9)所示:

在公式(8)中,q为系统噪声;a为系统结构确定的系数,可以令a=1。时间更新方程用于获得当前时刻状态的先验估计,以及下一时刻的误差协方差估计。

在公式(9)中,r为测量误差的协方差;kk为增益;c为观测器系数,可以令c=1。测量更新方程用于将先验估计和新的测量值结合起来获得校正后的后验估计。具体地,先计算卡尔曼增益kk,接下来,通过实际的测量得到yk,然后,获得系统状态的后验估计最后,更新后验估计误差协方差pk。

需要说明的是,在机器人存在负载的情况下,可以将负载固定在机器人机械臂的末端连杆上,因此,在本发明实施例中,可以将负载和末端连杆作为一个整体,计算整体对应的摩擦力力矩和重力力矩,以准确求出待处理关节所需的补偿力矩。

还需要说明的是,在实际应用中,在对机器人关节的补偿力矩的精度要求较高的场景下,可以根据机器人的动力学方程,如公式(7)所示,求出包括惯量力矩、科氏力力矩和离心力力矩等动力力矩的关节补偿力矩。其中,使用机器人的动力学方程求解动力力矩需要使用关节的角加速度,本发明实施例可以根据关节角速度计算出关节角加速度

角加速度计算公式如公式(10)所示:

在公式(10)中,为待处理关节在当前时刻i对应的角速度,为待处理关节在前一个预设采样周期对应的角速度,为待处理关节在当前时刻i对应的角加速度,δt为预设采样周期的间隔。

由于根据关节的角速度和角加速度,使用机器人的动力学方程求解动力力矩属于现有技术,因此本发明动力力矩的求解方法不再赘述。

可见,本发明实施例能够通过倾角传感器得到机器人基坐标系中的重力方向,进而保证计算出的重力力矩的准确性。

本发明实施例又另公开了一种关节外力力矩的计算装置,应用于机器人的各关节,所述各关节分别安装有电机,如图9所示,图9为本发明实施例的外力力矩的计算装置的一种结构图,所述装置包括:

获取单元901,用于获取待处理关节的当前数据;其中,所述当前数据包括待处理关节的角速度和温度;

第一计算单元902,用于将所述当前数据输入预设的摩擦力力矩公式,计算得到所述待处理关节的摩擦力力矩;所述摩擦力力矩公式为摩擦力矩与角速度和温度之间的数学关系式。

在本发明实施例的一种优选实施例中,所述机器人的各关节还安装有光电编码器,所述获取单元,包括:第二获取子单元和第二计算子单元;

所述第二获取子单元,用于通过待处理关节上安装的所述光电编码器,获取所述待处理关节的位置信息和温度;

所述第二计算子单元,用于根据所述位置信息、以及所述待处理关节在前一个预设采样周期的位置信息,计算出所述待处理关节的角速度。

在本发明实施例的又一种优选实施例中,所述各关节分别安装有电机,如图10所示,图10为本发明实施例的外力力矩的计算装置的又一种结构图,所述摩擦力力矩公式通过如下步骤预设:

第一确定单元1001,用于根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;

第二确定单元1002,用于根据所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述待处理关节对应的所述摩擦力力矩公式。

在本发明实施例的另一种优选实施例中,所述第一确定单元1001,包括:第一获取子单元和第一确定子单元;

所述第一获取子单元,用于获取待处理关节对应的至少一组数据;其中,所述数据包括所述待处理关节的角速度、以及所述待处理关节上安装电机的电枢电流值;

所述第一确定子单元,用于根据预设的库伦摩擦力系数、预设的粘性摩擦力系数和预设的温度系数与所述待处理关节的减速比、所述待处理关节上安装电机的力矩系数和所述电机的电枢电流的关系,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数。

在本发明实施例的再一种优选实施例中,所述第一确定子单元,具体用于根据如下公式,使用最小二乘法对所述数据进行计算,确定所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数;

其中,α为所述待处理关节的减速比,k为所述电机的力矩系数,i为所述电机的电枢电流值,为所述待处理关节的角速度,t为对应的温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数。

在本发明实施例的再一种优选实施例中,所述第二确定单元,具体用于根据已确定的所述待处理关节对应的所述库伦摩擦力系数、所述粘性摩擦力系数和所述温度系数,确定所述待处理关节对应的所述摩擦力力矩公式;其中,所述摩擦力力矩公式如下所示:

其中,f为所述待处理关节的摩擦力力矩,为所述待处理关节的角速度,t为温度,fs为所述库伦摩擦力系数,fv为所述粘性摩擦力系数,β为所述温度系数,为所述待处理关节的库伦摩擦力力矩,为所述待处理关节的粘性摩擦力力矩,βt为所述待处理关节受温度影响的摩擦力力矩变化值。

可见,本发明装置实施例能够通过获取待处理关节的角速度和温度,再将角速度和温度带入预设的摩擦力力矩公式,得到待处理关节的摩擦力力矩;其中,摩擦力力矩公式是基于stribeck效应和简化的karnopp摩擦模型建立的,且摩擦力力矩公式中的库伦摩擦力系数、粘性摩擦力系数、温度系数可以基于包括关节角速度和对应的电机电枢电流值的大量数据求解得到。这样计算出的摩擦力力矩考虑到了关节的角速度和温度的影响,保证了摩擦力力矩的准确性,进而减少最终得到的补偿力矩与关节实际受到的外力力矩的误差,使操作者能够轻松拖动机器人,保证机器人示教的顺利执行。

本发明实施例再公开了一种关节外力力矩的计算装置,所述机器人的各关节还安装有倾角传感器,如图11所示,图11为本发明实施例的外力力矩的计算装置的另一种结构图,所述装置还包括:

第三确定单元1101,用于通过所述待处理关节上安装的所述倾角传感器,确定所述机器人当前安装的姿态信息;

第二计算单元1102,用于根据所述姿态信息,计算待处理关节对应的重力力矩。

在本发明实施例的一种优选实施例中,所述第二计算单元1102,包括:第二确定子单元和第一计算子单元;

所述第二确定子单元,用于根据所述机器人当前安装的姿态信息,确定以所述机器人为原点的机器人基坐标系中的重力方向;

所述第一计算子单元,用于根据所述重力方向,计算待处理关节对应的重力力矩。

可见,本发明装置实施例能够通过倾角传感器得到机器人基坐标系中的重力方向,进而保证计算出的重力力矩的准确性。

本发明实施例还公开了一种机器人,包括:如上述关节外力力矩的计算装置。

需要说明的是,本发明实施例所述的一种机器人是应用上述关节外力力矩的计算装置的机器人,则上述关节外力力矩的计算装置的所有实施例均适用于该机器人,且均能达到相同或相似的有益效果。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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