CN117506935B - 基于动力学补偿的机器人控制方法、系统、设备及介质 - Google Patents
基于动力学补偿的机器人控制方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN117506935B CN117506935B CN202410006217.7A CN202410006217A CN117506935B CN 117506935 B CN117506935 B CN 117506935B CN 202410006217 A CN202410006217 A CN 202410006217A CN 117506935 B CN117506935 B CN 117506935B
- Authority
- CN
- China
- Prior art keywords
- robot
- motion
- duration
- track
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000033001 locomotion Effects 0.000 claims abstract description 130
- 230000008859 change Effects 0.000 claims abstract description 74
- 230000001133 acceleration Effects 0.000 claims description 60
- 230000015654 memory Effects 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 23
- 238000011156 evaluation Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 6
- 230000002035 prolonged effect Effects 0.000 claims description 3
- 238000004904 shortening Methods 0.000 claims description 2
- 230000006978 adaptation Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1605—Simulation of manipulator lay-out, design, modelling of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Numerical Control (AREA)
Abstract
本发明公开了基于动力学补偿的机器人控制方法、系统、设备及介质,涉及机器人技术领域,其方法包括:控制机器人在包含多个轨迹段的预设轨迹上进行示教运动,采集机器人在示教运动时产生的反馈电流曲线和指令电流曲线;根据反馈电流曲线和指令电流曲线,构建动力学误差模型;根据机器人的运动约束条件,构建机器人的运动学模型,同时确定机器人在每个轨迹段的运动时长,运动时长包括变速时长;根据运动学模型和动力学误差模型,对机器人在每个轨迹段的变速时长进行适应性调整;根据运动学模型和适应性调整后的机器人在每个轨迹段的运动时长,控制机器人在预设轨迹上运动。本发明可以提高机器人的节拍,并且使得机器人的电机发挥充分稳定的性能。
Description
技术领域
本发明涉及机器人技术领域,具体是涉及基于动力学补偿的机器人控制方法、系统、设备及介质。
背景技术
为了提升机器人的现场应用效能,大多数智能制造场景对于机器人的节拍要求较高,即要求机器人能够高速运动。机器人制造厂商在考虑到成本的情况下通常不会使用特别昂贵的电机、减速器等硬件设备,也就要求使用者通过设计相关算法来控制电机在机器人处于不同工况下能够输出持续稳定且安全的电流,以充分发挥机器人的电机性能。
为了提升机器人的节拍且控制电机发挥充分稳定的性能,通常在机器人的速度规划中引入动力学约束,然而对机器人进行动力学逆解得到的力矩值与机器人在实际运动过程中产生的实际反馈力矩值可能出现较大偏差,使得机器人在运动过程中的电机电流超出给定电流阈值,导致出现报警停机现象,从而损耗生产时间,即目前针对机器人的动力学偏差问题并没有较好的解决方法。
发明内容
本发明提供基于动力学补偿的机器人控制方法、系统、设备及介质,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
第一方面,提供一种基于动力学补偿的机器人控制方法,所述方法包括:
控制机器人在预设轨迹上进行示教运动,同时采集所述机器人在示教运动时产生的反馈电流曲线和指令电流曲线,所述预设轨迹包含多个轨迹段,所述机器人在每个轨迹段上进行匀速运动和变速运动;
根据所述反馈电流曲线和所述指令电流曲线,构建动力学误差模型,所述动力学误差模型用于表征变速时长与电流误差倍率之间的函数关系,所述电流误差倍率与反馈电流峰值和指令电流峰值相关;
根据给定的所述机器人的运动约束条件,构建所述机器人的运动学模型,同时确定所述机器人在每个轨迹段的运动时长,所述运动时长包括变速时长;
根据所述运动学模型和所述动力学误差模型,对所述机器人在每个轨迹段的变速时长进行适应性调整;
根据所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上运动。
进一步地,所述根据所述反馈电流曲线和所述指令电流曲线,构建动力学误差模型包括:
获取所述机器人在示教运动时出现的所有变速时间段;
从所述反馈电流曲线中提取在所述所有变速时间段下的所有反馈电流峰值,以及从所述指令电流曲线中提取在所述所有变速时间段下的所有指令电流峰值,进而确定在所述所有变速时间段下的所有电流误差倍率;
根据在所述所有变速时间段下的所有电流误差倍率,构建动力学误差模型。
进一步地,所述根据在所述所有变速时间段下的所有电流误差倍率,构建动力学误差模型包括:
根据所述所有变速时间段,确定所有变速时长;
对所述所有变速时长及其关联的所述所有电流误差倍率进行从一阶到N阶的多项式拟合,对应得到N个函数模型,N为大于1的正整数;
定义模型评价指标,从所述N个函数模型中获取使得所述模型评价指标达到最优的函数模型并作为动力学误差模型。
进一步地,所述根据所述运动学模型和所述动力学误差模型,对所述机器人在每个轨迹段的变速时长进行适应性调整包括:
对于所述多个轨迹段中的任一轨迹段,根据所述运动学模型和所述机器人在该轨迹段的变速时长,确定所述机器人在该轨迹段上进行变速运动时达到的最大加速度及其关联的速度;
根据预先构建的所述机器人的动力学模型、所述最大加速度和所述速度,确定所述机器人在该轨迹段上进行变速运动时产生的第一指令电流峰值;
根据所述动力学误差模型和所述机器人在该轨迹段的变速时长,确定所述机器人在该轨迹段上进行变速运动时产生的第一电流误差倍率;
根据所述第一指令电流峰值和所述第一电流误差倍率,确定所述机器人在该轨迹段上进行变速运动时产生的第一预测反馈电流峰值;
根据给定的反馈电流阈值和所述第一预测反馈电流峰值,对所述机器人在该轨迹段的变速时长进行适应性调整。
进一步地,所述根据给定的反馈电流阈值和所述第一预测反馈电流峰值,对所述机器人在该轨迹段的变速时长进行适应性调整包括:
判断所述反馈电流阈值和所述第一预测反馈电流峰值的差值绝对值是否小于给定的电流误差阈值;
若是,则保持所述机器人在该轨迹段的变速时长不变;
若否,则根据所述第一预测反馈电流峰值和所述反馈电流阈值之间的关系,对所述机器人在该轨迹段的变速时长进行调整,再返回根据所述运动学模型和所述机器人在该轨迹段的变速时长,确定所述机器人在该轨迹段上进行变速运动时达到的最大加速度及其关联的速度的步骤。
进一步地,所述根据所述第一预测反馈电流峰值和所述反馈电流阈值之间的关系,对所述机器人在该轨迹段的变速时长进行调整包括:
当所述第一预测反馈电流峰值大于所述反馈电流阈值时,延长所述机器人在该轨迹段的变速时长;
当所述第一预测反馈电流峰值小于所述反馈电流阈值时,缩短所述机器人在该轨迹段的变速时长。
进一步地,所述根据所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上运动包括:
利用所述运动学模型对适应性调整后的所述机器人在每个轨迹段的运动时长进行处理,得到所述机器人在不同时间下的运动参数;
根据所述机器人在不同时间下的运动参数,控制所述机器人在所述预设轨迹上运动。
第二方面,提供一种基于动力学补偿的机器人控制系统,所述系统包括:
第一模块,用于控制机器人在预设轨迹上进行示教运动,同时采集所述机器人在示教运动时产生的反馈电流曲线和指令电流曲线,所述预设轨迹包含多个轨迹段,所述机器人在每个轨迹段上进行匀速运动和变速运动;
第二模块,用于根据所述反馈电流曲线和所述指令电流曲线,构建动力学误差模型,所述动力学误差模型用于表征变速时长与电流误差倍率之间的函数关系,所述电流误差倍率与反馈电流峰值和指令电流峰值相关;
第三模块,用于根据给定的所述机器人的运动约束条件,构建所述机器人的运动学模型,同时确定所述机器人在每个轨迹段的运动时长,所述运动时长包括变速时长;
第四模块,用于根据所述运动学模型和所述动力学误差模型,对所述机器人在每个轨迹段的变速时长进行适应性调整;
第五模块,用于根据所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上运动。
第三方面,提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序以实现如第一方面所述的基于动力学补偿的机器人控制方法。
第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的基于动力学补偿的机器人控制方法。
本发明至少具有以下有益效果:通过获取机器人在示教运动过程中所生成的指令电流曲线和反馈电流曲线,以构建出用于表征电流误差倍率与变速时长之间的函数关系的动力学误差模型,再将该动力学误差模型应用到机器人在预设轨迹上的运动学规划过程中,以给定的反馈电流阈值作为控制条件,对原先规划好的机器人在该预设轨迹上的相关变速时长进行优化调整,进而对机器人在该预设轨迹上的相关运动参数作出同步优化调整,由此可以提高机器人的节拍,使得机器人的电机发挥充分稳定的性能,极大程度地减少超电流停机现象的发生,有助于提高机器人的工作效率。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1是本发明实施例中的一种基于动力学补偿的机器人控制方法的流程示意图;
图2是本发明实施例中的一种基于动力学补偿的机器人控制系统的组成示意图;
图3是本发明实施例中的计算机设备的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明的是,虽然在系统示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于系统中的模块划分,或流程图中的顺序执行所示出或描述的步骤。本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序,应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如包含了一系列步骤或单元的过程、方法、系统、产品或装置不必限定于清楚列出的那些步骤或单元,而是可以包含没有清楚列出的对于这些过程、方法、产品或装置固有的其他步骤或单元。
请参考图1,图1是本发明实施例提供的一种基于动力学补偿的机器人控制方法的流程示意图,所述机器人优选为工业机器人,所述方法包括如下:
步骤S110、控制机器人在预设轨迹上进行示教运动,同时采集所述机器人在示教运动时产生的反馈电流曲线和指令电流曲线,所述预设轨迹包含多个轨迹段,所述机器人在每个轨迹段上进行匀速运动和变速运动;
步骤S120、根据所述反馈电流曲线和所述指令电流曲线,构建动力学误差模型,所述动力学误差模型用于表征变速时长与电流误差倍率之间的函数关系,所述电流误差倍率与反馈电流峰值和指令电流峰值相关;
步骤S130、根据给定的所述机器人的运动约束条件,构建所述机器人的运动学模型,同时确定所述机器人在每个轨迹段的运动时长,所述运动时长包括变速时长;
步骤S140、根据所述运动学模型和所述动力学误差模型,对所述机器人在每个轨迹段的变速时长进行适应性调整;
步骤S150、根据所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上运动。
在上述步骤S110中,当所述机器人沿着所述预设轨迹进行示教运动时,限定所述机器人在每个轨迹上运动时仅经历一个匀速阶段、一个加速阶段和一个减速阶段,将所述加速阶段和所述减速阶段均称为变速阶段,并且限定所述机器人在每个轨迹段上运动时的速度不得超过给定的最大速度,所述机器人在每个加速阶段运动时的加速度不得超过给定的第一最大加速度,所述机器人在每个减速阶段运动时的加速度不得超过给定的第二最大加速度。
在本发明实施例中,假设所述预设轨迹是由M个轨迹段进行连接组成的,M为正整数且M>1,上述步骤S120的具体实施过程包括但不仅限于如下:
步骤S121、获取所述机器人在示教运动过程中所出现的所有变速时间段;
具体的,对于所述M个轨迹段中的任意一个轨迹段,获取所述机器人在该轨迹段进行示教运动时所出现的单个加速时间段和单个减速时间段;按照这一实施方式,可以获取所述机器人在所述M个轨迹段上进行示教运动时所出现的M个加速时间段和M个减速时间段;此处将加速时间段和减速时间段均称为变速时间段,即所述机器人在所述预设轨迹上进行示教运动时出现2M个变速时间段。
步骤S122、从所述反馈电流曲线中获取在所述所有变速时间段下的所有反馈电流峰值;
具体的,所述反馈电流曲线记载所述机器人在不同时间下进行示教运动时所产生的反馈电流,对于所述2M个变速时间段中的任意一个变速时间段,从所述反馈电流曲线中获取落在该变速时间段内的所有反馈电流,再将所述所有反馈电流中的最大值作为在该变速时间段下的反馈电流峰值;按照这一实施方式,可从所述反馈电流曲线中获取在所述2M个变速时间段下的2M个反馈电流峰值。
步骤S123、从所述指令电流曲线中提取出在所述所有变速时间段下的所有指令电流峰值;
具体的,所述指令电流曲线记载所述机器人在不同时间下进行示教运动时所产生的指令电流,对于所述2M个变速时间段中的任意一个变速时间段,从所述指令电流曲线中获取落在该变速时间段内的所有指令电流,再将所述所有指令电流中的最大值作为在该变速时间段下的指令电流峰值;按照这一实施方式,可从所述指令电流曲线中获取在所述2M个变速时间段下的2M个指令电流峰值。
步骤S124、基于在所述所有变速时间段下的所有反馈电流峰值和所有指令电流峰值,确定在所述所有变速时间段下的所有电流误差倍率;
具体的,对于所述2M个变速时间段中的任意一个变速时间段,将在该变速时间段下的反馈电流峰值除以在该变速时间段下的指令电流峰值,得到商值并将其作为在该变速时间段下的电流误差倍率;按照这一实施方式,可以获取在所述2M个变速时间段下的2M个电流误差倍率。
步骤S125、基于在所述所有变速时间段下的所有电流误差倍率,构建出动力学误差模型,相应的构建过程包括如下:
(1)基于所述所有变速时间段,确定所有变速时长;
具体的,对于所述2M个变速时间段中的任意一个变速时间段,该变速时间段包括起始时间和结束时间,将该结束时间减去该起始时间,得到差值并将其作为该变速时间段所对应的变速时长;按照这一实施方式,可以获取所述2M个变速时间段所对应的2M个变速时长,并且所述2M个变速时长与所述2M个电流误差倍率存在一一对应关系。
(2)对所述所有电流误差倍率和所述所有变速时长进行从一阶到N阶的多项式拟合,以获取对应的N个函数模型,并且其中的每个函数模型是以变速时长为自变量、以电流误差倍率为因变量,N为正整数且N>1;
具体的,本发明优选设置N=3,利用现有的最小二乘法对所述2M个电流误差倍率和所述2M个变速时长进行一阶多项式拟合,以获取一阶函数模型;利用现有的最小二乘法对所述2M个电流误差倍率和所述2M个变速时长进行二阶多项式拟合,以获取二阶函数模型;利用现有的最小二乘法对所述2M个电流误差倍率和所述2M个变速时长进行三阶多项式拟合,以获取三阶函数模型。
(3)定义模型评价指标,相应的数学表达式为:
其中:
式中,为模型评价指标值,为关于模型预测值的标准差,为关于模型预测误差的平均值,为模型运算次数,为模型在执行第i次运算之后得到的预测值,为与预测值相对应的实际值,为模型在执行n次运算之后对应得到的n个预测值的平均值。
(4)对所述N个函数模型进行优劣判断,以从中筛选出能够使得所述模型评价指标达到最优的单个函数模型,再将其作为动力学误差模型输出;
具体的,将所述2M个电流误差倍率定义为2M个实际电流误差倍率;
将所述2M个变速时长输入至所述一阶函数模型进行运算,得到对应的2M个第一预测电流误差倍率,再将所述2M个实际电流误差倍率和所述2M个第一预测电流误差倍率代入到关于所述模型评价指标的数学表达式中进行运算,得到第一模型评价指标值;
将所述2M个变速时长输入至所述二阶函数模型进行运算,得到对应的2M个第二预测电流误差倍率,再将所述2M个实际电流误差倍率和所述2M个第二预测电流误差倍率代入到关于所述模型评价指标的数学表达式中进行运算,得到第二模型评价指标值;
将所述2M个变速时长输入至所述三阶函数模型进行运算,得到对应的2M个第三预测电流误差倍率,再将所述2M个实际电流误差倍率和所述2M个第三预测电流误差倍率代入到关于所述模型评价指标的数学表达式中进行运算,得到第三模型评价指标值;
从所述第一模型评价指标值、所述第二模型评价指标值和所述第三模型评价指标值中筛选出最小值,再将所述最小值所关联的函数模型作为动力学误差模型输出。
在本发明实施例中,上述步骤S130的具体实施过程包括但不仅限于如下:
步骤S131、获取技术人员预先给定的所述机器人的运动约束条件,包括所述机器人在每个轨迹段上发生加速运动时的最大加速度、所述机器人在每个轨迹段上发生减速运动时的最大加速度以及所述机器人在每个轨迹段上发生匀速运动时的最佳速度。
步骤S132、基于所述机器人在每个轨迹段上发生匀速运动时的最佳速度,构建出所述机器人的运动学模型,相应的构建过程如下:
首先说明的是,由于所述M个轨迹段中的每个轨迹段包括加速段、减速段和匀速段,所述机器人的运动学模型包括所述机器人在加速段的运动学模型、所述机器人在减速段的运动学模型和所述机器人在匀速段的运动学模型,所述机器人在每个轨迹段的运动时长包括匀速时长、加速时长和减速时长,将所述加速时长和所述减速时长均称为变速时长;
(1)所述机器人在加速段的运动学模型的数学表达式为:
其中:
式中,为所述机器人在第i个轨迹段中的加速段上运动时的位置,为所述机器人在第i个轨迹段中的加速段上运动时的速度,为所述机器人在第i个轨迹段中的加速段上运动时的加速度,为所述机器人在第i个轨迹段中的加速段上运动时当前耗费的运行时长,且,为所述机器人在第i个轨迹段的加速时长,和均为出于简化表达式的目的而设置的指代参数,;
(2)所述机器人在减速段的运动学模型的数学表达式为:
其中:
式中,为所述机器人在第i个轨迹段中的减速段上运动时的位置,为所述机器人在第i个轨迹段中的减速段上运动时的速度,为所述机器人在第i个轨迹段中的减速段上运动时的加速度,为所述机器人在第i个轨迹段中的减速段上运动时当前耗费的运行时长,且,为所述机器人在第i个轨迹段的减速时长,为所述机器人在第i个轨迹段的匀速时长,和均为出于简化表达式的目的而设置的指代参数;
(3)所述机器人在匀速段的运动学模型的数学表达式为:
式中,为所述机器人在第i个轨迹段中的匀速段上运动时的位置,为所述机器人在第i个轨迹段中的匀速段上运动时的速度,为所述机器人在第i个轨迹段中的匀速段上运动时当前耗费的运行时长,且。
步骤S133、基于所述运动约束条件,计算出所述机器人在每个轨迹段的运动时长,相应的计算公式分别如下:
其中,为第i个轨迹段的总长度。
在本发明实施例中,以所述M个轨迹段中的第i个轨迹段为例进行说明,上述步骤S140的具体实施过程包括但不仅限于如下:
步骤S141、基于所述机器人在第i个轨迹段的变速时长和所述运动学模型,确定所述机器人在第i个轨迹段上发生变速运动时可以取得的最大加速度及其关联的速度,相应的确定过程如下:
(1)当所述机器人在第i个轨迹段上发生加速运动时,设置所述机器人在第i个轨迹段上运动至第一特定位置处时所耗费的运动时长为,再将其连同所述机器人在第i个轨迹段的加速时长输入至所述机器人在加速段的运动学模型中进行求解,以获取所述机器人在第i个轨迹段上运动至第一特定位置处的运动参数,分别如下:
其中,为所述机器人在第i个轨迹段上运动至第一特定位置处时取得的最大加速度,第一特定位置落在第i个轨迹段中的加速段,为所述机器人在第i个轨迹段上运动至第一特定位置处的速度,其与所述最大加速度相关;
(2)当所述机器人在第i个轨迹段上发生减速运动时,设置所述机器人在第i个轨迹段上运动至第二特定位置处时所耗费的运动时长为,再将其连同所述机器人在第i个轨迹段的减速时长输入至所述机器人在减速段的运动学模型中进行求解,以获取所述机器人在第i个轨迹段上运动至第二特定位置处的运动参数,分别如下:
其中,为所述机器人在第i个轨迹段上运动至第二特定位置处时取得的最大加速度,第二特定位置落在第i个轨迹段中的减速段,为所述机器人在第i个轨迹段上运动至第二特定位置处的速度,其与所述最大加速度相关。
步骤S142、获取技术人员提前构建好的所述机器人的动力学模型,相应的数学表达式如下:
式中,为所述机器人的惯性矩阵,为所述机器人的离心力和哥氏力矩阵,为所述机器人的重力矢量,为所述机器人的摩擦矢量,以上四个参量可以通过对所述机器人进行动力学辨识得到,为所述机器人的电机转矩常数矩阵,其记载在所述机器人使用到的电机的供应商所提供的产品手册中,为所述机器人的最大加速度,为所述机器人的速度,其与所述最大加速度相关,为所述机器人运动时所生成的指令电流峰值。
步骤S143、基于所述机器人在第i个轨迹段上发生变速运动时可以取得的最大加速度及其关联的速度和所述动力学模型,确定所述机器人在第i个轨迹段上发生变速运动时所生成的第一指令电流峰值,相应的确定过程如下:
(1)将所述机器人在第i个轨迹段上运动至第一特定位置处时取得的所述最大加速度和所述速度输入至所述动力学模型中进行求解,以获取所述机器人在第i个轨迹段上发生加速运动时所生成的第一指令电流峰值;
(2)将所述机器人在第i个轨迹段上运动至第二特定位置处时取得的所述最大加速度和所述速度输入至所述动力学模型中进行求解,以获取所述机器人在第i个轨迹段上发生减速运动时所生成的第一指令电流峰值。
步骤S144、基于所述机器人在第i个轨迹段的变速时长和所述动力学误差模型,确定所述机器人在第i个轨迹段上发生变速运动时所生成的第一电流误差倍率,相应的确定过程如下:
(1)将所述机器人在第i个轨迹段的加速时长输入至所述动力学误差模型中进行求解,以获取所述机器人在第i个轨迹段发生加速运动时所生成的第一电流误差倍率;
(2)将所述机器人在第i个轨迹段的减速时长输入至所述动力学误差模型中进行求解,以获取所述机器人在第i个轨迹段发生减速运动时所生成的第一电流误差倍率。
步骤S145、基于所述机器人在第i个轨迹段发生变速运动时所生成的第一电流误差倍率和第一指令电流峰值,确定所述机器人在第i个轨迹段发生变速运动时所生成的第一预测反馈电流峰值,相应的确定过程如下:
(1)将所述机器人在第i个轨迹段发生加速运动时所生成的第一电流误差倍率和第一指令电流峰值进行相乘,得到所述机器人在第i个轨迹段发生加速运动时所生成的第一预测反馈电流峰值;
(2)将所述机器人在第i个轨迹段发生减速运动时所生成的第一电流误差倍率和第一指令电流峰值进行相乘,得到所述机器人在第i个轨迹段发生减速运动时所生成的第一预测反馈电流峰值。
步骤S146、获取技术人员预先给定的反馈电流阈值,其记载在所述机器人使用到的电机的供应商所提供的产品手册中,一般情况下在范围内进行取值,为所述电机的额定电流。
步骤S147、基于所述机器人在第i个轨迹段发生变速运动时所生成的第一预测反馈电流峰值和所述反馈电流阈值,对所述机器人在第i个轨迹段的变速时长进行适应性调整。
更为具体的,上述步骤S147的实施过程包括但不仅限于如下:
步骤S147.1、获取技术人员预先给定的电流误差阈值,且;
步骤S147.2、判断所述反馈电流阈值与所述机器人在第i个轨迹段发生变速运动时所生成的第一预测反馈电流峰值之间的差值绝对值是否小于所述电流误差阈值;若小于,则保持所述机器人在第i个轨迹段的变速时长不变;若大于等于,则执行以下步骤S147.3;
步骤S147.3、基于所述反馈电流阈值与所述机器人在第i个轨迹段发生变速运动时所生成的第一预测反馈电流峰值之间的关系,对所述机器人在第i个轨迹段的变速时长作出调整,再返回执行以上步骤S141,主要分为以下两种调整情况:
第一种调整情况,当所述机器人在第i个轨迹段发生变速运动时所生成的第一预测反馈电流峰值大于所述反馈电流阈值时,对所述机器人在第i个轨迹段的变速时长进行延长,这一实施过程所采用的数学表达式为:
第二种调整情况,当所述机器人在第i个轨迹段发生变速运动时所生成的第一预测反馈电流峰值小于所述反馈电流阈值时,对所述机器人在第i个轨迹段的变速时长进行缩短,这一实施过程所采用的数学表达式为:
式中,为调整后的所述机器人在第i个轨迹段的变速时长,为未调整的所述机器人在第i个轨迹段的变速时长,为所述机器人在第i个轨迹段发生变速运动时所生成的第一预测反馈电流峰值,为给定的时间调整量,其与所述机器人的电机特性相关。
此处,针对上述步骤S147.2的具体实施方式作出进一步说明如下:
(1)计算出所述反馈电流阈值与所述机器人在第i个轨迹段发生加速运动时所生成的第一预测反馈电流峰值之间的差值绝对值,再判断所述差值绝对值是否小于所述电流误差阈值;若小于,则保持所述机器人在第i个轨迹段的加速时长不变;若大于等于,则执行以下步骤S147.3;
(2)计算出所述反馈电流阈值与所述机器人在第i个轨迹段发生减速运动时所生成的第一预测反馈电流峰值之间的差值绝对值,再判断所述差值绝对值是否小于所述电流误差阈值;若小于,则保持所述机器人在第i个轨迹段的减速时长不变;若大于等于,则执行以下步骤S147.3;
此处,针对上述步骤S147.3的具体实施方式作出进一步说明如下:
(1)当所述机器人在第i个轨迹段发生加速运动时所生成的第一预测反馈电流峰值大于所述反馈电流阈值时,将所述机器人在第i个轨迹段的加速时长调整为:
当所述机器人在第i个轨迹段发生加速运动时所生成的第一预测反馈电流峰值小于所述反馈电流阈值时,将所述机器人在第i个轨迹段的加速时长调整为:
其中,为调整后的所述机器人在第i个轨迹段的加速时长,为未调整的所述机器人在第i个轨迹段的加速时长;
(2)当所述机器人在第i个轨迹段发生减速运动时所生成的第一预测反馈电流峰值大于所述反馈电流阈值时,将所述机器人在第i个轨迹段的减速时长调整为:
当所述机器人在第i个轨迹段发生减速运动时所生成的第一预测反馈电流峰值小于所述反馈电流阈值时,将所述机器人在第i个轨迹段的减速时长调整为:
其中,为调整后的所述机器人在第i个轨迹段的减速时长,为未调整的所述机器人在第i个轨迹段的减速时长。
在本发明实施例中,上述步骤S150的具体实施过程包括但不仅限于如下:
步骤S151、将适应性调整后的所述机器人在每个轨迹段的运动时长输入至所述运动学模型进行处理,以获取所述机器人在不同时间下的运动参数,所述运动参数包括位置、速度和加速度;
步骤S152、基于所述机器人在不同时间下的运动参数,控制所述机器人在所述预设轨迹上进行运动。
在本发明实施例中,通过获取机器人在示教运动过程中所生成的指令电流曲线和反馈电流曲线,以构建出用于表征电流误差倍率与变速时长之间的函数关系的动力学误差模型,再将该动力学误差模型应用到机器人在预设轨迹上的运动学规划过程中,以给定的反馈电流阈值作为控制条件,对原先规划好的机器人在该预设轨迹上的相关变速时长进行优化调整,进而对机器人在该预设轨迹上的相关运动参数作出同步优化调整,由此可以提高机器人的节拍,使得机器人的电机发挥充分稳定的性能,极大程度地减少超电流停机现象的发生,有助于提高机器人的工作效率。
请参考图2,图2是本发明实施例提供的一种基于动力学补偿的机器人控制系统的组成示意图,所述系统包括:
第一模块210,用于控制机器人在预设轨迹上进行示教运动,所述预设轨迹是由多个轨迹段所组成的,所述机器人在每个轨迹段上进行示教运动时经历匀速阶段和变速阶段,并且采集所述机器人在示教运动过程中所产生的指令电流曲线和反馈电流曲线;
第二模块220,用于基于所述指令电流曲线和所述反馈电流曲线,构建出动力学误差模型以限定电流误差倍率与变速时长之间的函数关系,其中所述电流误差倍率与指令电流峰值和反馈电流峰值有关;
第三模块230,用于根据给定的所述机器人的运动约束条件,确定所述机器人在每个轨迹段的运动时长,所述运动时长包括变速时长,同时构建所述机器人的运动学模型;
第四模块240,用于基于所述动力学误差模型和所述运动学模型,对所述机器人在每个轨迹段的变速时长作出适应性调整;
第五模块250,用于基于所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上进行运动。
上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所实现的功能与上述方法实施例相同,并且所达到的有益效果与上述方法实施例相同,在此不再赘述。
此外,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中的一种基于动力学补偿的机器人控制方法。其中,所述计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM (Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable Programmable Read-OnlyMemory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable ProgrammableRead-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是说,存储设备包括由设备(例如计算机、手机等)以可读的形式存储或传输信息的任何介质,可以是只读存储器、磁盘或光盘等。
此外,图3是本发明实施例提供的计算机设备的硬件结构示意图,所述计算机设备包括处理器320、存储器330、输入单元340和显示单元350等器件。本领域技术人员可以理解,图3示出的设备结构器件并不构成对所有设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件。存储器330可用于存储计算机程序310以及各功能模块,处理器320运行存储在存储器330的计算机程序 310,从而执行设备的各种功能应用以及数据处理。存储器可以是内存储器或外存储器,或者包括内存储器和外存储器。内存储器可以包括只读存储器(ROM)、可编程 ROM(PROM)、电可编程 ROM(EPROM)、电可擦写可编程 ROM(EEPROM)、快闪存储器或者随机存储器。外存储器可以包括硬盘、软盘、U 盘、磁带等。本发明实施例所公开的存储器330包括但不限于上述这些类型的存储器。本发明实施例所公开的存储器330只作为例子而非作为限定。
输入单元340用于接收信号的输入,以及接收用户输入的关键字。输入单元340可包括触控面板以及其它输入设备。触控面板可收集用户在其上或附近的触摸操作(比如用户利用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程序驱动相应的连接装置;其它输入设备可以包括但不限于物理键盘、功能键(比如播放控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元350可用于显示用户输入的信息或提供给用户的信息以及终端设备的各种菜单。显示单元350可采用液晶显示器、有机发光二极管等形式。处理器320是终端设备的控制中心,利用各种接口和线路连接整个设备的各个部分,通过运行或执行存储在存储器330内的软件程序和/或模块,以及调用存储在存储器330内的数据,执行各种功能和处理数据。
作为一个实施例,所述计算机设备包括处理器320、存储器 330和计算机程序310,其中所述计算机程序310被存储在所述存储器 330中并被配置为由所述处理器320所执行,所述计算机程序310被配置用于执行上述实施例中的一种基于动力学补偿的机器人控制方法。
尽管本申请的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,而是应当将其视作是通过参考所附权利要求,考虑到现有技术为这些权利要求提供广义的可能性解释,从而有效地涵盖本申请的预定范围。此外,上文以发明人可预见的实施例对本申请进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本申请的非实质性改动仍可代表本申请的等效改动。
Claims (10)
1.一种基于动力学补偿的机器人控制方法,其特征在于,所述方法包括:
控制机器人在预设轨迹上进行示教运动,同时采集所述机器人在示教运动时产生的反馈电流曲线和指令电流曲线,所述预设轨迹包含多个轨迹段,所述机器人在每个轨迹段上进行匀速运动和变速运动;
根据所述反馈电流曲线和所述指令电流曲线,构建动力学误差模型,所述动力学误差模型用于表征变速时长与电流误差倍率之间的函数关系,所述电流误差倍率与反馈电流峰值和指令电流峰值相关;
根据给定的所述机器人的运动约束条件,构建所述机器人的运动学模型,同时确定所述机器人在每个轨迹段的运动时长,所述运动时长包括变速时长;
根据所述运动学模型和所述动力学误差模型,对所述机器人在每个轨迹段的变速时长进行适应性调整;
根据所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上运动。
2.根据权利要求1所述的基于动力学补偿的机器人控制方法,其特征在于,所述根据所述反馈电流曲线和所述指令电流曲线,构建动力学误差模型包括:
获取所述机器人在示教运动时出现的所有变速时间段;
从所述反馈电流曲线中提取在所述所有变速时间段下的所有反馈电流峰值,以及从所述指令电流曲线中提取在所述所有变速时间段下的所有指令电流峰值,进而确定在所述所有变速时间段下的所有电流误差倍率;
根据在所述所有变速时间段下的所有电流误差倍率,构建动力学误差模型。
3.根据权利要求2所述的基于动力学补偿的机器人控制方法,其特征在于,所述根据在所述所有变速时间段下的所有电流误差倍率,构建动力学误差模型包括:
根据所述所有变速时间段,确定所有变速时长;
对所述所有变速时长及其关联的所述所有电流误差倍率进行从一阶到N阶的多项式拟合,对应得到N个函数模型,N为大于1的正整数;
定义模型评价指标,从所述N个函数模型中获取使得所述模型评价指标达到最优的函数模型并作为动力学误差模型。
4.根据权利要求1所述的基于动力学补偿的机器人控制方法,其特征在于,所述根据所述运动学模型和所述动力学误差模型,对所述机器人在每个轨迹段的变速时长进行适应性调整包括:
对于所述多个轨迹段中的任一轨迹段,根据所述运动学模型和所述机器人在该轨迹段的变速时长,确定所述机器人在该轨迹段上进行变速运动时达到的最大加速度及其关联的速度;
根据预先构建的所述机器人的动力学模型、所述最大加速度和所述速度,确定所述机器人在该轨迹段上进行变速运动时产生的第一指令电流峰值;
根据所述动力学误差模型和所述机器人在该轨迹段的变速时长,确定所述机器人在该轨迹段上进行变速运动时产生的第一电流误差倍率;
根据所述第一指令电流峰值和所述第一电流误差倍率,确定所述机器人在该轨迹段上进行变速运动时产生的第一预测反馈电流峰值;
根据给定的反馈电流阈值和所述第一预测反馈电流峰值,对所述机器人在该轨迹段的变速时长进行适应性调整。
5.根据权利要求4所述的基于动力学补偿的机器人控制方法,其特征在于,所述根据给定的反馈电流阈值和所述第一预测反馈电流峰值,对所述机器人在该轨迹段的变速时长进行适应性调整包括:
判断所述反馈电流阈值和所述第一预测反馈电流峰值的差值绝对值是否小于给定的电流误差阈值;
若是,则保持所述机器人在该轨迹段的变速时长不变;
若否,则根据所述第一预测反馈电流峰值和所述反馈电流阈值之间的关系,对所述机器人在该轨迹段的变速时长进行调整,再返回根据所述运动学模型和所述机器人在该轨迹段的变速时长,确定所述机器人在该轨迹段上进行变速运动时达到的最大加速度及其关联的速度的步骤。
6.根据权利要求5所述的基于动力学补偿的机器人控制方法,其特征在于,所述根据所述第一预测反馈电流峰值和所述反馈电流阈值之间的关系,对所述机器人在该轨迹段的变速时长进行调整包括:
当所述第一预测反馈电流峰值大于所述反馈电流阈值时,延长所述机器人在该轨迹段的变速时长;
当所述第一预测反馈电流峰值小于所述反馈电流阈值时,缩短所述机器人在该轨迹段的变速时长。
7.根据权利要求1所述的基于动力学补偿的机器人控制方法,其特征在于,所述根据所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上运动包括:
利用所述运动学模型对适应性调整后的所述机器人在每个轨迹段的运动时长进行处理,得到所述机器人在不同时间下的运动参数;
根据所述机器人在不同时间下的运动参数,控制所述机器人在所述预设轨迹上运动。
8.一种基于动力学补偿的机器人控制系统,其特征在于,所述系统包括:
第一模块,用于控制机器人在预设轨迹上进行示教运动,同时采集所述机器人在示教运动时产生的反馈电流曲线和指令电流曲线,所述预设轨迹包含多个轨迹段,所述机器人在每个轨迹段上进行匀速运动和变速运动;
第二模块,用于根据所述反馈电流曲线和所述指令电流曲线,构建动力学误差模型,所述动力学误差模型用于表征变速时长与电流误差倍率之间的函数关系,所述电流误差倍率与反馈电流峰值和指令电流峰值相关;
第三模块,用于根据给定的所述机器人的运动约束条件,构建所述机器人的运动学模型,同时确定所述机器人在每个轨迹段的运动时长,所述运动时长包括变速时长;
第四模块,用于根据所述运动学模型和所述动力学误差模型,对所述机器人在每个轨迹段的变速时长进行适应性调整;
第五模块,用于根据所述运动学模型和适应性调整后的所述机器人在每个轨迹段的运动时长,控制所述机器人在所述预设轨迹上运动。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序以实现如权利要求1至7任一项所述的基于动力学补偿的机器人控制方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的基于动力学补偿的机器人控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410006217.7A CN117506935B (zh) | 2024-01-03 | 2024-01-03 | 基于动力学补偿的机器人控制方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410006217.7A CN117506935B (zh) | 2024-01-03 | 2024-01-03 | 基于动力学补偿的机器人控制方法、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117506935A CN117506935A (zh) | 2024-02-06 |
CN117506935B true CN117506935B (zh) | 2024-03-26 |
Family
ID=89755273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410006217.7A Active CN117506935B (zh) | 2024-01-03 | 2024-01-03 | 基于动力学补偿的机器人控制方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117506935B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110394802A (zh) * | 2019-08-06 | 2019-11-01 | 前元运立(北京)机器人智能科技有限公司 | 一种打磨机器人及位置补偿方法 |
CN111546315A (zh) * | 2020-05-28 | 2020-08-18 | 济南大学 | 一种基于人机协作的机器人柔顺示教及再现方法 |
CN112192018A (zh) * | 2020-09-16 | 2021-01-08 | 北京工业大学 | 一种机器人搅拌摩擦焊的主动抑振方法 |
CN116690559A (zh) * | 2023-05-23 | 2023-09-05 | 上海交通大学 | 基于时空图卷积网络的工业机器人关节力矩补偿方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017127202A1 (en) * | 2016-01-20 | 2017-07-27 | Intuitive Surgical Operations, Inc. | System and method for rapid halt and recovery of motion deviations in medical device repositionable arms |
-
2024
- 2024-01-03 CN CN202410006217.7A patent/CN117506935B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110394802A (zh) * | 2019-08-06 | 2019-11-01 | 前元运立(北京)机器人智能科技有限公司 | 一种打磨机器人及位置补偿方法 |
CN111546315A (zh) * | 2020-05-28 | 2020-08-18 | 济南大学 | 一种基于人机协作的机器人柔顺示教及再现方法 |
CN112192018A (zh) * | 2020-09-16 | 2021-01-08 | 北京工业大学 | 一种机器人搅拌摩擦焊的主动抑振方法 |
CN116690559A (zh) * | 2023-05-23 | 2023-09-05 | 上海交通大学 | 基于时空图卷积网络的工业机器人关节力矩补偿方法 |
Non-Patent Citations (1)
Title |
---|
基于深度循环神经网络的协作机器人动力学误差补偿;徐征,等;《工程科学学报》;20210731;第43卷(第7期);第995-1001 * |
Also Published As
Publication number | Publication date |
---|---|
CN117506935A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5289608B2 (ja) | ロボット減速機寿命推定シミュレーション装置 | |
US20170308052A1 (en) | Cell controller for optimizing motion of production system including industrial machines | |
US10331104B2 (en) | Machine tool, simulation apparatus, and machine learning device | |
CN109116811B (zh) | 机器学习装置和方法、伺服控制装置、伺服控制系统 | |
JP7206874B2 (ja) | 制御装置、制御方法及びプログラム | |
EP2485875B1 (en) | A method for reducing the energy consumption of an industrial robot and an industrial robot system | |
US11640557B2 (en) | Machine learning device, numerical control system, and machine learning method | |
EP3379349A1 (en) | Control device, control program, and control system | |
US20170090452A1 (en) | Machine tool for generating speed distribution | |
JP6841852B2 (ja) | 制御装置及び制御方法 | |
CN104423303A (zh) | 最优化的运动控制部件和能量效率的估量和调节方法 | |
CN117097227B (zh) | 电机的调速控制方法及相关装置 | |
Suzuki et al. | Performance conditioning of time delayed bilateral teleoperation system by scaling down compensation value of communication disturbance observer | |
CN115946120A (zh) | 机械臂控制方法、装置、设备和介质 | |
CN117506935B (zh) | 基于动力学补偿的机器人控制方法、系统、设备及介质 | |
CN118327653A (zh) | 智能化采煤机控制方法及系统 | |
US9135563B2 (en) | Using cyclic Markov decision process to determine optimum policy | |
JP7505695B2 (ja) | モータ制御装置 | |
JP7060130B1 (ja) | 運用支援装置、運用支援方法及びプログラム | |
CN114619440B (zh) | 修正摩擦模型的方法、机器人及计算机可读存储介质 | |
JP2023157603A (ja) | 制御装置、制御方法及びプログラム | |
CN116415478A (zh) | 基于神经网络的转矩估测方法、装置、设备及存储介质 | |
US11022951B2 (en) | Information processing device and information processing method | |
CN115609343A (zh) | 一种运动倍率调节方法、装置、计算机设备和存储介质 | |
CN111185923A (zh) | 一种机器人控制装置及控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |