机器人负载转动惯量的标定方法、装置及存储介质与流程

文档序号:30388504发布日期:2022-06-11 12:37阅读:369来源:国知局
机器人负载转动惯量的标定方法、装置及存储介质与流程

1.本发明涉及机器人技术领域,特别是涉及一种机器人负载转动惯量的标定方法、装置及存储介质。


背景技术:

2.随着技术的进步和自动化的需求攀升,机器人已经在例如汽车零部件、金属加工、食品、医药等多个领域得到广泛应用。针对不同的应用场景,机器人末端可以安装不同的工具以执行相应工作。机器人末端的工具,作为机器人的负载又作为机器人本体的一部分,其重量、重心、转动惯量对机器人本体的性能,例如关节力矩输出,有较大的影响,且对于负载重量较大的情况下,对机器人运行的影响更为明显。因此,在机器人安装负载的场景下,需要确定负载的重量、质心、转动惯量等参数,以提升机器人的工作性能。
3.机器人能够处理各种场景的工作,因此,也具有各种各样的外形,其外形通常为不规则的形状,获取其转动惯量也较为不易。目前,很多机器人在进行机器人运动控制时不考虑负载的转动惯量,但是,对于负载较大的场景下,会较为明显的影响机器人的工作性能,不利于实现精确控制;个别机器人厂商,提供了用户输出转动惯量的方式,但是转动惯量的测定需要用户经过复杂的操作,或者需要专门的仪器,实现复杂,且测量过程一般需要二次装卡,容易造成测量不精准,用户很难输入准确的负载转动惯量,因此也难以保证机器人的工作性能,同时测量过程也增加了机器人的使用成本。


技术实现要素:

4.本发明的目的在于提供一种机器人负载转动惯量的标定方法、装置及存储介质,以解决现有技术中难以自动测试机器人负载转动惯量,以及测量精度低的问题,通过自动、准确的测量机器人负载转动惯量,机器人根据负载转动惯量执行运动规划和控制,以提升机器人工作性能。
5.为实现上述目标,本技术可采用如下技术方案:一种机器人负载转动惯量的标定方法,所述机器人被配置为根据负载转动惯量进行运动控制,机器人的末端可连接负载以执行工作任务,所述标定方法包括:s1、获取负载的重量和质心信息;s2、生成机器人的标定轨迹,所述标定轨迹根据机器人的工具中心点以转动参数绕负载质心转动生成,所述机器人可获取所述转动参数;s3、控制机器人根据标定轨迹运动,采集机器人运动过程中的实际轨迹数据和机器人末端的传感器数据;s4、根据机器人的实际轨迹数据和机器人末端的传感器数据计算机器人的负载转动惯量。
6.进一步的,所述s3控制机器人根据标定轨迹运动前还包括:s21、对机器人的标定轨迹做碰撞检测,判断负载和机器人的本体是否会发生碰撞,以及,判断机器人本体自身是否会发生碰撞,若判断为均不会发生碰撞,记录标定轨迹的起始位置,执行s3。
7.进一步的,所述标定方法包括:若判断为至少其一可能会发生碰撞,改变机器人标定轨迹的起始位置,再次执行s2。
8.进一步的,所述s21对机器人的标定轨迹做碰撞检测,判断负载和机器人的本体是否会发生碰撞包括:s211、将负载形状近似为标准几何体,获取标准几何体的体积数据,以使得所述负载被限定在所述标准几何体的内部;s212、对标定轨迹按照插补轨迹进行采样,对每个插补点进行标准几何体与机器人本体的碰撞检测,检测到至少存在一个插补点会发生碰撞时判断为负载和机器人本体间会发生碰撞。
9.进一步的,所述标定轨迹为周期性的关于时间轴对称的轨迹,所述转动参数包括转动幅值和转动速度。
10.进一步的,所述s4根据机器人的实际轨迹数据和机器人末端的传感器数据计算机器人的负载转动惯量前还包括:s31、对所述传感器数据进行去偏置处理,以使得处理后的传感器数据相对于时间轴对称分布。
11.进一步的,所述s4根据机器人的实际轨迹数据和机器人末端的传感器数据计算机器人的负载转动惯量前还包括:s32、对所述标定轨迹和传感器数据进行无相移的滤波处理。
12.进一步的,所述机器人的末端包括六维力传感器,所述传感器数据为六维力传感器数据。
13.本技术还可采用如下技术方案:一种机器人负载转动惯量的标定装置,机器人的末端可连接负载以执行工作任务,所述标定装置包括:获取模块,用于获取负载的重量和质心信息;生成模块,用于生成机器人的标定轨迹,所述标定轨迹根据机器人的工具中心点以转动参数绕负载质心转动生成,所述机器人可获取所述转动参数;采集模块,用于控制机器人根据标定轨迹运动,采集机器人运动过程中的实际轨迹数据和机器人末端的传感器数据;计算模块,用于根据机器人的实际轨迹数据和机器人末端的传感器数据计算机器人的负载转动惯量。
14.本技术还可采用如下技术方案:一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现前文中任一项所述的机器人负载转动惯量的标定方法。
15.与现有技术相比,本技术具体实施方式的有益效果在于:根据机器人标定轨迹和末端传感器数据计算负载转动惯量,机器人可以自动实现负载转动惯量的标定,无需使用额外的工具,操作易于实现且相对于不能准确确定负载转动惯量的机器人而言,运动控制的性能得到提升;通过设计标定轨迹为周期性的相对于时间轴对称的轨迹,同时辅以滤波和去偏置处理,能够有效去除实际轨迹数据和传感器数据的噪音,保证负载转动惯量的精度。
附图说明
16.图1是本发明一个实施例的标定方法的示意图
17.图2是本发明一个实施例的标定方法的流程示意图
18.图3是本发明一个实施例的标定装置的框图
具体实施方式
19.为使本发明的技术方案更加清楚明了,下面将结合附图来描述本发明的实施例。
应当理解的是,对实施方式的具体说明仅用于示教本领域技术人员如何实施本发明,而不是用于穷举本发明的所有可行方式,更不是用于限制本发明的具体实施范围。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
20.需要说明的是,术语“中心”、“上”、“下”、“前”、“后”、“左”、“右”、“水平”、“顶”、“底”、“竖直”、“水平”、“竖向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述或简化描述本发明,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造、安装及操作,因此不能理解为对本发明的限制。此外,在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
21.本发明保护一种负载转动惯量的标定方法,机器人末端可以连接负载以执行工作任务,执行不同的工作任务时,往往需要为机器人配备不同类型的负载,机器人的负载会对机器人的运行控制存在影响,当负载的重量较大时,影响较为明显,机器人被配置为根据负载转动惯量进行运动控制,优选的,所述机器人为机械臂类型的机器人,具体的,参图1-图2,所述标定方法包括:
22.s1、获取负载的重量和质心信息;
23.具体的,机器人负载的重量和质心有多种获取方式,例如,负载的重量可以通过称重获得,用户可以通过测量负载的重量,通过机器人的示教器或其他交互方式向机器人输入负载的重量信息,机器人获取负载的重量信息,负载的质心信息可以通过标定获得。在本实施例中,通过控制机器人运动到至少3个不同的位姿,每个位置下采集机器人工具中心点的姿态数据和传感器数据,据此可以计算负载的重量和质心信息。
24.s2、生成机器人的标定轨迹,所述标定轨迹根据机器人的工具中心点以转动参数绕负载质心转动生成,所述机器人可获取所述转动参数;
25.机器人连接工具时,工具的尖端点也即机器人的工具中心点,初始状态的工具中心点是工具坐标系的原点,当让机器人接近空间中的某一点时,本质上是让机器人的工具中心点去接近该点,机器人的轨迹运动,也就是工具中心点的运动。机器人被配置为可生成标定轨迹,机器人的工具中心点绕负载的质心转动,并且依据转动参数绕负载的质心转动,机器人转动的轨迹也即标定轨迹,该步骤中,根据已知的机器人的转动逻辑,也即机器人的工具中心点绕负载质心转动,结合机器人的转动参数,则可以规划以生成机器人的标定轨迹,此时,机器人生成标定轨迹但尚未根据标定轨迹运行。进一步的,根据已知的标定轨迹转动逻辑以及转动参数,结合机器人当前时刻的当前姿态,能够获得机器人下一时刻的期望姿态,根据机器人不同时刻姿态,能够获得机器人的标定轨迹,该标定轨迹是理论的运行轨迹。
26.s3、控制机器人根据标定轨迹运动,采集机器人运动过程中的实际轨迹数据和机器人末端的传感器数据;
27.在s2步骤中,可以得到机器人理论的标定轨迹,根据标定轨迹控制机器人运动,过程中采集机器人的实际轨迹数据和机器人末端的传感器数据。具体的,机器人的末端包括六维力传感器,通过六维力传感器可以检测机器人末端的六维力数据,所述传感器数据为六维力传感器数据。其中,机器人根据标定轨迹运动时,标定轨迹为理论的轨迹,根据标定轨迹采集的运动过程中的机器人的实际轨迹数据为机器人的真实运行数据。更进一步的,
所述控制机器人根据标定轨迹运动包括:控制机器人在空载时根据标定轨迹运动,以及,控制机器人在带负载时根据标定轨迹运动。在机器人空载运动时和机器人带负载运动时,分别采集机器人运动过程中的实际轨迹数据和机器人末端的传感器数据,并据此计算机器人的负载转动惯量,通过空载和带负载的状态下分别根据标定轨迹运行,能够进一步的提升负载转动惯量的检测精度。
28.s4、根据机器人的实际轨迹数据和机器人末端的传感器数据计算机器人的负载转动惯量。
29.在一个具体的实施例中,根据机器人力和运动轨迹的关系、力矩和运动轨迹的关系,可以得到:
[0030][0031]
其中,mb和fb是计算出的惯性力和力矩,ib、m、i、ωb和υb分别是负载转动惯量矩阵、负载质量、3*3单位矩阵、角加速度、线加速度、角速度和线速度。[
·
]表示将向量转换为反对称矩阵,如果υ=[ν
x
,vy,vz],那么:
[0032][0033]
引入函数:
[0034][0035]
由于负载转动惯量是对称举证,所以只有6个未知数,即i
xx
,i
xy
,i
xz
,i
yy
,i
yz
,i
zz

[0036]
公式(1.1)中力矩部分可以写为:
[0037]
其中,
[0038]
(1)
[0039][0040]
a可以通过对机器人工具中心点的姿态算出,mb可以通过机器人末端的传感器测出,解线性方程(1)即可计算出负载转动惯量。
[0041]
根据上述标定方法,机器人能够基于实际轨迹数据和末端传感器数据来自动计算负载转动惯量,避免了用户过多的参与负载转动惯量标定过程,仅通过用户启动标定负载转动惯量的过程,机器人即可自动实现负载转动惯量的标定,提升了机器人的人机交互使用体验。相较于不能准确确定负载转动惯量的机器人,自动的标定负载转动惯量,机器人能够根据负载转动惯量进行运动控制,进而提升了机器人的工作性能。此外,自动测量负载转动惯量的功能,使得机器人能够测量任意形状物体的转动惯量,能够搭建基于机械臂的负载转动惯量的测量平台。
[0042]
进一步的,参图2,图2示出了本技术一个实施例的标定方法的流程示意图,所述标定方法包括对于标定轨迹的碰撞检测,确认标定轨迹在无碰撞的状态下运行,所述s3控制机器人根据标定轨迹运动前还包括:
[0043]
s21、对机器人的标定轨迹做碰撞检测,判断负载和机器人的本体是否会发生碰撞,以及,判断机器人本体自身是否会发生碰撞,若判断为均不会发生碰撞,记录标定轨迹的起始位置,执行s3。
[0044]
也即,机器人包括本体,机器人的本体末端可连接负载,判断机器人所连接的负载是否可能与机器人的本体发生碰撞,即根据负载的形状,以及机器人的标定轨迹,计算机器人标定轨迹会经过的位置是否可能与负载发生碰撞;以及,判断机器人在根据标定轨迹运行的过程中,机器人本体自身是否会发生碰撞,若判断为均不会发生碰撞,说明当前的标定轨迹是安全的标定轨迹,可以运行,即记录当前标定轨迹的起始位置,执行s3,即控制机器人根据标定轨迹运动,并在运动过程中采集机器人的实际轨迹数据和机器人末端的传感器数据。具体的,根据机器人即将运行的点位信息和机器人自身的位姿信息,可以判断机器人是否会发生碰撞。
[0045]
反之,若判断为至少其一可能会发生碰撞,改变机器人标定轨迹的起始位置,重新生成标定轨迹,以及进一步的,进行标定轨迹的碰撞检测。若判断为会发生碰撞,说明当前的标定轨迹存在不安全因素,需要调整标定轨迹,通过改变标定轨迹的起始位置,执行s2,重新生成机器人的标定轨迹,进一步的,再次执行s21,对标定轨迹进行碰撞检测,若检测到均不会发生碰撞,则执行下一步骤,运行标定轨迹及采集实际轨迹数据和机器人末端传感器数据;若检测到至少其一可能会发生碰撞,则继续改变初始位置,重复执行s2生成标定轨迹和s21对标定轨迹的碰撞检测,直至找到不会发生碰撞的起始位置。通过碰撞检测保证根据标定轨迹运行的过程中不会发生碰撞,保证机器人负载转动惯量标定过程中机器人运行的安全性。
[0046]
具体的,所述标定方法包括生成标定轨迹,所述标定轨迹根据机器人的工具中心点以转动参数绕负载质心转动生成,所述标定轨迹由转动的线速度和角速度共同决定,在本实施例中,未使用标定轨迹的线速度,所以本实施例中标定轨迹只涉及角速度,所述标定轨迹为周期性的关于时间轴对称的轨迹,所述转动参数包括转动幅值和转动速度。通过选用标定轨迹为周期性的关于时间轴对称的轨迹,例如所述标定轨迹可以是sin轨迹、cos轨迹,在一个具体的实现方式中,所述标定轨迹为ω(t)=[asin(ft),asin(ft),asin(ft)],其中a为转动幅值,f可以控制转动频率,ft即为转动速度,通过设置关于时间轴对称的周期性的轨迹,能够保证实际轨迹数据噪声较少,有利于提升负载转动惯量标定的精度。通常来说,在保证机器人运行安全性的基础上,机器人的标定轨迹的转动参数较大时,更有利于获得精度较高的负载转动惯量。在确定转动参数时,需要综合考虑关节最大转速、负载重量等因素,以使得机器人能够满足安全性的要求,以及能够满足较大的转动参数的运行需求。
[0047]
进一步的,所述标定方法包括对实际轨迹数据和机器人末端的传感器数据提升精度的操作。所述s4根据机器人的实际轨迹数据和机器人末端的传感器数据计算机器人的负载转动惯量前还包括:s31、对所述传感器数据进行去偏置处理,以使得处理后的传感器数据相对于时间轴对称分布。具体的,所述标定轨迹优选的为周期性的关于时间轴对称的轨迹,因此,在理想状态下,机器人运行标定轨迹过程中,机器人末端的传感器数据应该相对于时间轴对称分布,但实际过程中的数据可能存在一些噪音,对传感器数据进行偏置处理,以对传感器数据去噪,使得传感器数据相对于时间轴对称,进而使得传感器数据的精度较好,以保证负载转动惯量的标定精度。
[0048]
进一步的,所述s4根据机器人的实际轨迹数据和机器人末端的传感器数据计算机器人的负载转动惯量前还包括:s32、对所述实际轨迹数据和传感器数据进行无相移的滤波处理。本实施例采用周期性的标定轨迹,对实际轨迹数据和传感器数据进行无相移的滤波处理,保证实际轨迹数据和传感器数据周期性分布,以提升机器人负载转动惯量的标定精度。
[0049]
在一个具体的实施例中,所述s21对机器人的标定轨迹做碰撞检测,判断负载和机器人的本体是否会发生碰撞包括:
[0050]
s211、将负载形状近似为标准几何体,获取标准几何体的体积数据,以使得所述负载被限定在所述标准几何体的内部。
[0051]
例如,机器人包括人机交互界面,机器人安装负载时,用户可以通过人机交互界面设置最接近负载形状的标准几何体,可以通过设置标准几何体的体积数据使得所述标准几何体能够涵盖所述负载的体积。例如,当所述负载为螺丝拧紧装置时,负载形成为长条形形状,通过将负载近似为长方体,设置长方体的长宽高数据,可以使得所述负载被限定在长方体的内部。标准几何体示例性的可以包括:长方体、球体、圆柱体、圆锥体等。又或者,负载可以近似为2个以上的标准几何体的组合,以通过标准几何体限定负载的形状,根据标准几何体更易确定与机器人本体的碰撞情况。又或者,机器人内置识别程序,可以通过视觉识别等方式识别负载的形状,进而自动将负载形状近似为标准几何体,并确认标准几何体的体积数据,机器人执行负载转动惯量标定时,可以获取标准几何体的类型和体积数据,进而根据标准几何体的形状和体积判断是否可能发生碰撞。
[0052]
s222、对标定轨迹按照插补轨迹进行采样,对每个插补点进行标准几何体与机器人本体的碰撞检测,检测到至少存在一个插补点会发生碰撞时判断为负载和机器人本体间会发生碰撞。
[0053]
也即,标定轨迹包括多个时刻下机器人的姿态,不同的时刻下,机器人的姿态不同,通过对标定轨迹的不同时刻进行插补,判断机器人处于每个插补点位处,标准几何体与机器人之间是否可能发生碰撞,若检测到至少存在一个插补点会发生碰撞时判断为负载和机器人本体间会发生碰撞,反之,若检测到所有的插补点处,机器人本体和负载都不不会发生碰撞,则确定为当前的标定轨迹下,机器人的本体和负载间不会发生碰撞,也即,标定轨迹运行在安全的状态下。
[0054]
以上本技术优选实施例的有益效果在于:根据机器人的标定轨迹和末端的传感器数据对负载转动惯量进行标定,实现了机器人负载转动惯量的自动标定,提升了人机交互体验和机器人运动控制的性能;同时,采用周期性的关于时间轴对称的标定轨迹,以及对实际轨迹数据和传感器数据进行无相移的滤波处理和偏置处理,使得实际轨迹数据和传感器数据分布较为理想,有效滤除数据噪音,保证负载转动惯量标定的精度。
[0055]
本技术还提供一种机器人负载转动惯量的标定装置,参图3,所述装置包括:
[0056]
获取模块10,用于获取负载的重量和质心信息;
[0057]
生成模块20,用于生成机器人的标定轨迹,所述标定轨迹根据机器人的工具中心点以转动参数绕负载质心转动生成,所述机器人可获取所述转动参数;
[0058]
采集模块30,用于控制机器人根据标定轨迹运动,采集机器人的实际轨迹数据和机器人末端的传感器数据;
[0059]
计算模块40,用于根据机器人的实际轨迹数据和机器人末端的传感器计算机器人的负载转动惯量。
[0060]
在一个可行的实现方式中,标定装置还包括:碰撞检测模块,用于对机器人的标定轨迹做碰撞检测,判断负载和机器人的本体是否会发生碰撞,以及,判断机器人本体自身是否会发生碰撞,若判断为均不会发生碰撞,记录标定轨迹的起始位置后由采集模块控制机器人从起始位置根据标定轨迹运动;以及,若判断为至少其一可能会发生碰撞,改变机器人标定轨迹的起始位置,重新对机器人的标定轨迹做碰撞检测。
[0061]
具体的,所述碰撞检测模块用于将负载形状近似为标准几何体,获取标准几何体的体积数据,以使得负载被限定在所述标准几何体的内部;对标定轨迹按照插补轨迹进行采样插补,对每个插补点进行标准几何体与机器人本体间的碰撞检测,检测到至少存在一个插补点可能发生碰撞时判断为负载和机器人的本体间会发生碰撞,改变标定轨迹的起始位置并重新进行碰撞检测;反之,检测到所有插补点都不会发生碰撞时,判断为负载和机器人的本体间不会发生碰撞,由插补模块控制机器人根据标定轨迹运动。具体的,机器人本体自身是否会发生碰撞,通过机器人在根据标定轨迹运行时机器人的位姿和机器人的采样点的坐标值可进行判断。
[0062]
具体的,所述生成模块20被配置为用于生成周期性的关于时间轴对称的轨迹。所述标定装置被配置为包括滤波模块和偏置模块,以使得机器人的标定轨迹和末端的传感器数据呈现出较好的精度,进而保证负载转动惯量的标定精度。
[0063]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0064]
在示例性实施例中,本技术还提供了一种存储有计算机程序的计算机可读存储介质,例如存储有计算机程序的存储器,所述计算机程序可由处理器执行以完成机械臂运动控制方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0065]
最后还需要指出,由于文字表达的有限性,上述说明仅是示例性的,并非穷尽性的,本发明并不限于所披露的各实施方式,在不偏离上述示例的范围和精神的情况下,对于本领域的技术人员来说还可以作若干改进和修饰,这些改进和修饰也应视为本发明的保护范围。因此本发明的保护范围应以权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1