CN114918912A - 一种机械臂的控制方法、装置、电子设备以及存储介质 - Google Patents
一种机械臂的控制方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN114918912A CN114918912A CN202210225857.8A CN202210225857A CN114918912A CN 114918912 A CN114918912 A CN 114918912A CN 202210225857 A CN202210225857 A CN 202210225857A CN 114918912 A CN114918912 A CN 114918912A
- Authority
- CN
- China
- Prior art keywords
- control signal
- state
- signal sequence
- time step
- mechanical arm
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 108010076504 Protein Sorting Signals Proteins 0.000 claims abstract description 249
- 230000006870 function Effects 0.000 claims description 45
- 230000033001 locomotion Effects 0.000 claims description 25
- 238000005457 optimization Methods 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Images
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/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- 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/1679—Programme controls characterised by the tasks executed
-
- 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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Feedback Control In General (AREA)
Abstract
本申请公开了一种机械臂的控制方法、装置、电子设备以及存储介质,所述机械臂的控制方法,包括:获取机械臂在当前时间步对应的第一状态和第一控制信号序列,第一控制信号序列中的各控制信号用于驱动机械臂在多个时间步的运动;基于第一状态,将第一控制信号序列中的各个控制信号依次输入用于预测下一时间步机械臂状态的状态预测模型,获得机械臂在各时间步的预测状态;根据机械臂在各时间步的预测状态和预设的目标状态,对第一控制信号序列进行优化,获得第二控制信号序列;根据第二控制信号序列,控制机械臂运动,获得机械臂在当前时间步的下一时间步的第二状态;根据第二状态更新第一状态,以及根据第二控制信号序列更新第一控制信号序列。
Description
技术领域
本申请涉及自动控制领域,具体涉及一种机械臂的控制方法、装置、电子设备以及计算机存储介质。
背景技术
随着工业技术和人工智能的发展,机械臂在越来越多的领域得到了应用,例如:在施工方面,对挖掘机的挖掘机械臂的应用,或者在机器人领域,对机器人的四肢控制的应用。
目前,对于不同领域的机械臂存在多种不同的控制当时,比如:在施工方面,对于挖掘机的控制多依赖与操作人员的实际操作经验以及针对挖掘机设置的PID控制算法;在机器人领域,对于由机器人四肢组成的机械臂的控制则依赖于计算机控制软件和人为的控制指令。然而,现有技术中存在的控制方法虽然能够使机械臂完成预定的运动,但由于其控制精度较低无法对机械臂的运动过程中的控制信息进行有效的约束。
因此,如何对机械臂进行精准有效的控制成为本领域技术人员亟需解决的问题。
发明内容
本申请实施例提供一种机械臂的控制方法、装置、电子设备以及计算机存储介质,以解决现有技术中存在的上述问题。
本申请实施例提供的机械臂的控制方法,包括:
获取待控制的机械臂在当前时间步对应的第一状态和第一控制信号序列,所述第一控制信号序列中的各控制信号用于驱动所述机械臂在多个时间步的运动;
基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态;
根据所述第二状态更新所述第一状态,以及根据所述第二控制信号序列更新所述第一控制信号序列。
可选的,所述方法还包括:
基于更新后的所述第一状态,将更新后的所述第一控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态。
可选的,所述基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态,包括:
将所述第一状态和所述第一控制信号序列中的第一个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第一个时间步的预测状态;
针对所述当前时间步后的第i个时间步,将所述当前时间步后的第i-1个时间步的预测状态和所述第一控制信号序列中的第i个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第i个时间步的预测状态,其中,所述i为大于1的整数。
可选的,所述根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列,包括:
将所述目标状态与所述各时间步的预测状态输入预设的损失函数,获得所述损失函数输出的损失值,其中,所述预设的损失函数基于所述目标状态与所述各时间步的预测状态之间的差值生成;
基于所述损失值对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
可选的,根据所述第二控制信号序列,控制所述机械臂运动,包括:
获取所述第二控制信号序列中的第一个控制信号;
基于所述第二控制信号序列中的第一个控制信号控制所述机械臂运动。
可选的,所述根据所述第二控制信号序列更新所述第一控制信号序列,包括:
获取所述第二控制信号序列中除第一个控制信号外的其余控制信号;
生成一随机控制信号;
将所述第二控制信号序列中除第一个控制信号外的其余控制信号与所述随机控制信号进行组合,获得目标控制信号序列;
将所述目标控制信号序列替换所述第一控制信号序列,获得更新后的第一控制信号序列。
可选的,所述机械臂的状态包括:机械臂关节的角度和机械臂关节运动的角速度,所述角度和所述角速度分别配置对应的权重;
所述将所述目标状态与所述各时间步的预测状态输入预设的损失函数,获得所述损失函数输出的损失值,包括:
通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角度与所述目标状态中的目标角度之间的第一差值之和;以及,
通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角速度与所述目标状态中的目标角速度之间的第二差值之和;
根据所述角度对应的权重、所述角速度对应的权重、所述第一差值之和以及所述第二差值之和,获得所述损失函数输出的对所述机械臂关节的预测角度和预测角速度的损失值。
可选的,所述基于所述损失值对所述第一控制信号序列进行优化,获得所述第二控制信号序列,包括:
在所述损失值大于预设的损失阈值时,根据所述损失函数的导数梯度变化,对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
可选的,还包括:
获取各时间步对应的第一状态和第一控制信号序列;
将所述第一状态和第一控制信号序列作为所述状态预测模型的训练样本;
基于所述训练样本对所述状态预测模型进行迭代训练,获得训练后的状态预测模型;
基于所述训练后的状态预测模型对所述状态预测模型进行更新。
本申请同时提供一种机械臂的控制装置,包括:
获取单元,用于获取待控制的机械臂在当前时间步对应的第一状态和第一控制信号序列,所述第一控制信号序列中的各控制信号用于驱动所述机械臂在多个时间步的运动;
预测单元,用于基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
优化单元,用于根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
控制单元,用于根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态;
更新单元,用于根据所述第二状态更新所述第一状态,以及根据所述第二控制信号序列更新所述第一控制信号序列。
本申请同时提供一种电子设备,包括:
处理器;
存储器,用于存储方法的程序,所述程序在被处理器读取运行时,执行上述方法。
本申请同时提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述程序在被执行时执行上述方法。
与现有技术相比,本申请具有以下优点:
本申请提供的机械臂的控制方法,通过机械臂状态预测模型,结合待控制的机械臂在当前时间步的第一状态和第一控制信号序列,对机械臂的多个时间步的状态进行预测,获得机械臂在各时间步的预测状态;之后,通过所述各时间步的预测状态和针对所述机械臂预设的目标状态对所述第一控制信号序列进行优化,获得优化后的第二控制信号序列,并通过所述第二控制信号序列控制所述机械臂进行运动,获得机械臂的第二状态;最后,通过第二状态对机械臂在当前时间步的第一状态进行更新,并通过第二控制信号序列对所述第一控制信号序列进行更新,以便于使所述重复上述过程对所述机械臂的状态做进一步控制。该方法能够使所述机械臂能够平稳的由当前状态朝向预设的目标状态运动,实现了对机械臂运动精准有效的控制。
附图说明
图1a为本申请一实施例提供的挖掘机机械臂的控制流程图;
图1为本申请另一实施例提供的机械臂控制方法流程图;
图2为本申请另一实施例提供的挖掘机的机械结构示意图;
图3为本申请另一实施例提供PWM信号示意图;
图4为本申请另一实施例提供的各时间步对应的机械臂子状态获得方法流程图;
图5为本申请另一实施例提供的机械臂的控制装置结构示意图;
图6为本申请另一实施例提供的电子设备的结构示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
本申请提供一种机械臂的控制方法,其核心在于:通过用于预测下一时间步机械臂状态的状态预测模型,并结合机械臂在当前时间步的第一状态对用于驱动所述机械臂在多个时间步运动的第一控制信号序列进行优化,获得第二控制信号序列,进一步,通过所述第二控制信号序列控制所述所述机械臂由当前时间步运动到下一时间步,获得所述下一时间步的第二状态;进一步的,通过第二状态对当前时间步的第一状态进行更新,并根据所述第二控制信号序列对所述第一控制信号序列进行更新,以便于循环上述过程,使所述机械臂继续运动,进而完成控制流程。
为了便于理解本申请,首先,结合具体的使用场景对所述机械臂的控制方法进行介绍。
本申请实施例提供的机械臂的具体使用场景为挖掘机机械臂的使用。请参考图1a,图1a为本申请一实施例提供的挖掘机机械臂的控制流程图。
如图1a所示,对所述挖掘机机械臂的控制流程中包括:挖掘机机械臂关节控制模块101a、模型预测优化模块102a,其中,模型预测优化模块102a中包括:模型预测子模块102-1a、控制信号优化模块102-2a。
首先,为了实现对挖掘机机械臂的精准控制,首先,为所述模型预测优化模块102a提供一个预设的第一控制信号序列,所述第一控制信号序列中的各控制信号用于驱动所述机械臂在多个时间步的运动。
模型预测优化模块102a接收所述第一控制信号序列后,首先将该模拟控制序列输入模型预测子单元102-1a,模型预测子模块102-1a中存储有用于根据所述机械臂在当前时间步的第一状态和所述第一控制信号序列,预测所述机械臂在未来的多个时间步的运动状态的状态预测模型。
模拟预测子模块102-1a接收所述第一控制信号序列后,会得到以下信息:根据所述第一控制信号序列中的各控制信号控制所述机械臂的情况下,则所述机械臂在各时间步的预测状态,比如说,假设所述第一控制信号序列的控制信号依次包括:控制信号1、控制信号2以及控制信号3,则所述机械臂在各时间步的预测状态包括:在所述第一控制信号序列的控制下,所述机械臂由当前时间步运动到当前时间步后的第一个时间步的预测状态1、所述机械臂由当前时间步运动到当前时间步后的第二个时间步的预测状态2,以及所述机械臂由当前时间步运动到当前时间步后的第三个时间步的预测状态3。
进一步的,在获得上述对所述机械臂在各个时间步的预测状态之后,模拟预测子模块102-1a将上述预测状态发送给控制信号优化模块102-2a,控制信号优化模块102-2a根据所述状态预测模型预测得到的各时间步的预测状态和针对所述机械臂预设的目标状态对所述第一控制信号序列进行优化,获得优化后的第二控制信号序列,其中,所述第二控制信号序列中的第一个控制信号用于控制所述机械臂运动一个时间步。
通过所述第二控制信号序列中的第一个控制信号控制所述机械臂运动一个时间步后,获得所述机械臂的第二状态,并通过所述第二状态更新所述当前时间步对应的第一状态,之后将更新后的第一状态再次输入模拟预测优化模块102a;并且再生成一随机控制信号,与所述第二控制信号序列中除第一个控制信号之外的其余控制信号进行组合,获得一目标控制信号序列,通过所述目标控制信号序列对第一控制信号序列进行更新,并将更新后的第一控制信号序列输入模拟预测优化模块102a。
模拟预测优化模块102a在接收到更新后的第一状态和更新后的第一控制信号序列后,通过模拟预测优化模块102a中的模型预测子模块102-1a和控制信息优化模块102-2a对更新后的第一控制信号序列进行优化,并通过优化后的控制信号序列中的第一个控制信号控制所述机械臂运动一个时间步。
按照上述方法,在控制所述机械臂运动一个时间步后,不断的更新优化机械臂在当前时间步的第一状态和第一控制信号序列,直至所述机械臂运动若干时间步,使所述机械臂在当前时间步的第一状态尽可能的趋近于预测的目标状态。
可以理解的,上述对本申请提供的机械臂控制方法的使用场景的介绍只是为了便于理解本申请,本申请提供的机械臂的控制方法也可以应用于其他场景,例如,用于机器人领域以控制机器人手臂的运动等。对此,本申请不作限制。
本申请另一实施例提供一种机械臂的控制方法,请参考图1,图1为本申请另一实施例提供的机械臂控制方法流程图。
如图1所示,该方法包括以下步骤S101至步骤S105。
步骤S101,获取待控制的机械臂在当前时间步对应的第一状态和第一控制信号序列,所述第一控制信号序列中的各控制信号用于驱动所述机械臂在多个时间步的运动。
在本申请实施例中,所述机械臂可以是应用于不同领域的机械臂,例如:在工业上,所述机械臂可以是安装在挖掘机本体上依次相连的动臂、斗杆和铲斗;在人工智能领域,所述机械臂可以是智能机器人的机械手臂等等。对此,本申请不做限制。
所述机械臂在当前时间步对应的第一状态,可以理解为所述机械臂在所述当前时间步的当前状态,比如说,在控制机械臂运动之前,所述机械臂的初始状态,或者是机械臂在运动过程到当前时刻的运动状态。
在本申请实施例的一种可选实施方式中,所述机械臂的状态包括机械臂关节处的角度和角速度。为了便于理解所述机械臂的状态,以下结合图2对所述机械臂的角度和角速度进行介绍。
请参考图2,图2为本申请另一实施例提供的挖掘机的机械结构示意图。
图2中,包括:挖掘机本体201、安装在挖掘机本体201上依次相连的动臂202、斗杆203以及铲斗204。其中,动臂202、斗杆203以及铲斗204共同组成了该挖掘机的机械臂。
如图2所示,该挖掘机机械臂的角度包括:动臂202与挖掘机本体201之间所呈的夹角α、斗杆203与动臂202之间所呈的夹角β以及铲斗204与斗杆203之间所呈的夹角θ,该挖掘机机械臂角速度也即上述夹角在机械臂每个时间步的运动过程中的角速度。
根据图2可知,在机械臂的固定位置确定的情况下,已知所述各关节的角度和角速度实际上就是已知该机械臂的位置和运动方向。
进一步的,在本申请的一种可选实施方式中,所述机械臂在当某个时间步对应的状态(包括所述当前时间步对应的第一状态)可以通过安装在所述机械臂上的传感器获得,例如:可以通过安装在机械臂上的角位移传感器、光电角度传感器获得。
在本申请的另一种可选实施方式中,所述机械臂的状态也可以采用机械臂的位姿信息,进一步的,所述位姿信息可以通过安装在所述机械臂中的IMU(InertialMeasurement Unit,惯性测量单元)以及机械臂图像感测设备检测获得。具体的,可以通过IMU对所述机械臂的各关节的速度、方向、旋转角度、加速度、重力等参数进行测量,之后结合所述图像感测设备捕获的机械臂的图像,确定所述机械臂各关节的位姿信息;所述图像感测设备可以时2D/3D摄像机,也可以是其他光学图像捕获设备。
步骤S101中的第一控制信号序列用于驱动所述机械臂运动,具体的,所述第一控制信号序列中包括若干个相邻时间步的控制信号,其中,每个控制信号用于控制所述机械臂由一个时间步对应的状态运动到下一个时间步对应的状态。比如说,假设所述机械臂为某一机器人的手臂,该手臂在当前时间步处于平举状态(第一状态),那么如果通过该手臂完成由平举状态到举手状态需要n个时间步,那么该手臂由所述平举状态到举手状态所需的控制信号序列中包括n个控制信号,进一步的,假设控制信号为u,则对应的控制信号序列则为(u0,u1,u2,u3…,un-1)。
在本申请的一种可选实施方式中,可以采用PWM(Pluse width modulation,脉宽调制信号)作为所述第一控制信号序列中的各控制信号。
具体的,PWM是一种对模拟信号电平进行数字编码的方法,其通过高分辨率计数器以及方波的占空比对一个具体的模拟信号的电平进行编码。在实际应用中,PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。
请参考图3,其为本申请另一实施例提供PWM信号示意图。
图3显示了三种不同的PWM信号。图3中的(a)是一个占空比为10%的PWM输出,即在信号周期中,10%的时间通,其余90%的时间断;图3中的(b)和(c)显示的分别是占空比为50%和90%的PWM输出。上述三种PWM输出编码的分别是强度为满度值的10%、50%和90%的三种不同模拟信号值。例如,假设供电电源为9V,占空比为10%,则对应的是一个幅度为0.9V的模拟信号。
在实际应用过程中,为了控制机械臂的运动,通常将代表一定幅值的PWM信号输入用于控制机械臂运动的电机中,进而启动电机控制所述机械臂在一定程度上运动。需要说明的是,为了实现对机械臂的安全控制,即,将机械臂运动的角速度控制在一定的安全范围之内,所述第一控制信号序列中的各个控制信号需要在一个稳定的PWM信号范围之内,可选的,在本申请实施例中,所述第一控制信号序列中的各控制信号的PWM的信号范围处于-100到+100之间。
在本申请实施例中,所述机械臂的控制方法的目的在于,在所述第一控制信号序列和所述第一状态的基础上,对机械臂的在不同时间步的状态进行预测,进而基于预测得到的机械臂的状态和针对所述机械臂预设的目标状态,对所述第一控制信号序列进行优化更新,使所述机械臂在实际运动的过程中,能够平稳的从当前时间步的第一状态尽可能的运动到所述预设的目标状态。因此,在已知机械臂的当前时间步的第一状态和所述第一控制信号序列的基础上,还需要进一步预测,在所述第一控制信号序列的控制下,所述机械臂在各个时间步的预测状态。
步骤S102,基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态。
在本申请实施例中,所述状态预测模型是一种采用机器学习(MachineLearning,ML)训练获得的神经网络,机器学习(是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科)专门用于研究计算机如何模拟或实现人类的学习行为,以获得新的知识或技能,重新组织已有知识结构使之不断改善自身新能。机器学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。而机器学习属于人工智能(Artificial Intelligence,AI)技术的一个分支。
在本申请实施例中,所述状态预测模型用于根据机械臂在一个时间步的状态以及所述控制信号,预测所述机械臂在所述一个时间步后的下一时间步的状态,即,所述机械臂状态预测模型的输入数据是机械臂各关节的角度和角速度,以及PWM控制信号,输出数据是机械臂未来各关节的角度和角速度的预测值。
具体的,通过上述方式获得的状态预测模型可以通过公式x’=f(ζ,x,u)表示,其中,ζ代表模型参数,其决定了模型预测的准确度;x代表所述机械臂的第一状态,即,所述机械臂在当前时间步的各关节的角度和角速度;x’则为预测的、所述机械臂在当前时间步后的下一时间步的状态,即所述机械臂在当前时间步后的下一时间步各关节的角度和角速度。
进一步的,在获得所述状态预测模型后,基于机械臂的当前状态和所述第一控制信号序列,就能预测得到所述机械臂在各时间步的预测状态。
在具体应用的过程中,上述步骤S102包括以下步骤S102-1和步骤S102-2:
步骤S102-1,将所述第一状态和所述第一控制信号序列中的第一个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第一个时间步的预测状态;
步骤S102-2,针对所述当前时间步后的第i个时间步,将所述当前时间步后的第i-1个时间步的预测状态和所述第一控制信号序列中的第i个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第i个时间步的预测状态,其中i为大于1的整数。
请参考图4,其为本申请另一实施例提供的各时间步对应的机械臂子状态获得方法流程图。
即,若所述机械臂的在当前时间步对应的第一状态为x0,所述第一控制信号序列为(u0,u1,u2,u3…,un-1),则所述状态预测模型可以根据所述第一状态x0和所述控制信息u0,预测在当前时间步后的第一个时间步所述机械臂的预测状态x1;
进一步的,所述状态预测模型可以根据所述当前时间步后的第1个时间步对应的预测状态x1和所述第一控制信号序列中的第二个控制信息u1,预测在当前时间步后的第二个时间步所述机械臂的预测状态x2;
依次类推,直至所述状态预测模型遍历所述第一控制信号序列中的所有控制信息,获得所述状态预测模型对机械臂在多个时间步中状态的预测结果。
步骤S103,根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列。
所述步骤S103的目的在于,通过对所述第一控制信号序列的优化,找到用于控制所述机械臂运动一个时间步的控制信号。
具体的,所述对所述机械臂的初始化控制序列进行优化的过程包括以下步骤S103-1至步骤S103-2:
步骤S103-1,将所述目标状态与所述各时间步的预测状态输入预设的损失函数,获得所述损失函数输出的损失值,其中,所述预设的损失函数基于所述目标状态与所述各时间步的预测状态之间的差值生成;
所述损失函数用于衡量所述状态预测模型的预测状态与所述目标状态之间的差异程度,在本申请实施例中,所述损失函数通过f=f(u)表示,其中,f为所述损失值,u表示所述第一控制信号序列。
为了便于理解本申请实施例提供的所述预设的损失函数,以下对所述预设的损失函数和所述损失函数计算损失值的过程进行介绍:
此处,所述机械臂的状态包括:所述机械臂关节的角度和所述机械臂关节运动的角速度,并且所述角度和所述角速度分别配置有对应的权重。
进一步的,上述步骤S103-1以下步骤1至步骤3。
步骤1,通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角度与所述目标状态中的目标角度之间的第一差值之和;以及,
步骤2,通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角速度与所述目标状态中的目标角速度之间的第二差值之和;
步骤3,根据所述角度对应的权重、所述角速度对应的权重、所述第一差值之和以及所述第二差值之和,获得所述损失函数输出的对所述机械臂关节的预测角度和预测角速度的损失值。
例如:假设通过所述状态预测模型,预测得到的所述机械臂在各时间步的预测状态分别为(x1,y1)、(x2,y2)、(x3,y3),……,(xn,yn),其中,n为大于1的整数;所述预设的目标状态为(X,Y)。
进一步的,假设为角度分配的权重为q1,为角速度分配的权重为q2,则所述预设的损失函数可以写为以下公式(1):
进一步的,由于所述机械臂的一个时间步的状态由与所述一个时间步的前一时间步一同输入所述机械臂的控制信号决定,所以上述公式(1)本质上是一个以机械臂控制信息为自变量,以损失值为因变量的损失函数,即f=f(u)。
步骤S103-2,基于所述损失值对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
步骤S103-2的目的在于调整优化机械臂各个时间步状态,使所述机械臂由当前状态运动到目标状态的过程中产生的损失值变小。由于所述机械臂各时间步的状态是由所述第一控制信号序列决定的,所以,其本质是对所述第一控制信号序列的优化。
具体的,所述步骤S103-2包括:在所述损失值大于预设的损失阈值时,根据所述损失函数的导数梯度变化,对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
步骤S104,根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态。
在本申请实施例中,认为所述第二控制信号序列中的第一个控制信号可以用来控制所述机械臂运动到下一时间步。
基于此,上述步骤S104包括以下步骤S5和步骤S6:
步骤5,获取所述第二控制信号序列中的第一个控制信号;
步骤6,基于所述第二控制信号序列中的第一个控制信号控制所述机械臂运动。
具体的,通过所述第二控制信号序列中的第一个控制信号控制所述机械臂运动一个时间步后,可以通过所述机械臂上安装的传感器或感测装置,获得所述机械臂在所述当前时间步的下一时间步的第二状态。
步骤S105,根据所述第二状态更新所述第一状态,以及根据所述第二控制信号序列更新所述第一控制信号序列。
进一步的,在所述机械臂由当前时间步运动到下一时间步后,为了使所述机械臂完整的执行预期的运动过程,从所述第一状态运动多个时间步后能够平稳的接近所述预设的目标状态,还需要对所述当前时间步的第一状态进行更新(即,将所述第二状态作为新的所述第一状态),同时还需要基于已优化的所述第二控制信号序列更新所述第一控制信号序列。
在本申请的一种可选实施方式中,所述根据所述第二控制序列更新所述第一控制信号序列,包括以下步骤S7至步骤S10:
步骤7,获取所述第二控制信号序列中除第一个控制信号外的其余控制信号;
步骤8,生成一随机控制信号;
步骤9,将所述第二控制信号序列中除第一个控制信号外的其余控制信号与所述随机控制信号进行组合,获得目标控制信号序列;
步骤10,将所述目标控制信号序列替换所述第一控制信号序列,获得更新后的第一控制信号序列。
比如说,假设所述第二控制信号序列为(k1、k2、……、kn-1),则选择除k1之外的其他控制信号组成的控制信号序列(k2、k3……、kn-1),之后,在随机生成一随机控制信号k’,将k’放到与控制信号序列(k2、k3……、kn-1)的末尾,获得目标控制信号序列(k2、k3……、kn-1、k’),将所述目标控制信号作为新的第一控制信号序列。
在本申请的另一中可选实施方式中,所述根据所述第二控制序列更新所述第一控制信号序列的实现方式可以不局限于上述步骤7至步骤10提供的方法,比如说,也可以省去上述生成一随机控制信号的步骤,选择所述第二控制信号序列中除第一个控制信号外的其余控制信号作为所述目标控制信号序列;或者,再生成一随机控制信号序列,将所述随机控制信号序列作为所述目标控制信号序列等等,对此,本申请不做限制。
进一步的,在执行完上述步骤S101至步骤S105后,即完成了所述机械臂在一个时间步内的运动,为了使所述机械臂朝向所述预设的目标状态运动,所述方法还进一步包括以下步骤S11至步骤S13:
步骤S11,基于更新后的第一状态,将更新后的所述第一控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
步骤S12,根据所述机械臂子所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
步骤S13,根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂再所述当前时间步的下一时间步的第二状态。
也就是说,在对所述第一状态和所述第一控制信号序列进行更新后,基于更新后的第一状态和更新后的第一控制信号序列返回执行步骤S101至步骤S105所述的方法,使得所述机械臂在所述更新后的第一状态和更新后的第一控制信号序列的基础上,相对于当前时间步继续运动,直至所述机械臂完成根据第二控制信号序列由当前时间步运动到当前时间步的下一时间步的运动过程,以此类推,直至所述机械臂运动预设个时间步。
进一步的,为了便于理解本申请提供的所述机械臂的控制方法,以下该方法的一具体应用对该控制方法进行详细说明。
首先,假设所述第一控制信号序列为us=(u0,u1,…,u9),所述当前时间步的第一状态x0,所述预设的目标状态为xn;
则将所述第一控制信号序列us和所述第一状态x0输入用于预测下一步所述机械臂状态的状态预测模型后,所述状态预测模型通过以下方式获得所述机械臂各时间步的预测状态:
x0+u0→x1,即,所述状态预测模型根据第一状态x0和第一控制信号序列中的第一个控制信号u0,预测所述当前时间步后的第一个时间步的预测状态x1;
x1+u1→x2,即,所述状态预测模型根据状态x1和第一控制信号序列中的第二个控制信号u1,预测所述当前时间步后的第二个时间步的预测状态x2;
以此类推,直至获得所述当前时间步后的第十个时间步的预测状态x10,即x9+u9→x10。
通过以上方式,可以获得所述状态预测模型输出的用于标识所述机械臂在各时间步的预测状态的预测状态序列xs=(x1,x2,…,x10)。
进一步的,将上述预测状态序列xs和预设的目标状态xn输入预设的损失函数,如果所述预设的损失函数输出的损失值大于预设的损失阈值,则说明需要对所述第一控制信号序列进行优化,具体的,其优化过程为根据所述损失函数的导数梯度变化对所述第一控制信号序列进行优化,获得第二控制信号序列;
此处,假设对所述第一控制信号序列进行优化后,所述第二控制信号序列为u’s=(u’0,u’1,…,u’9)。
此处,选择u’0作为所述机械臂在当前时间步后的第一个时间步的控制信号,进而控制所述机械臂由当前时间步运动到所述当前时间步后的下一个时间步,此处,进一步假设所述机械臂由当前时间步运动到所述当前时间步后的下一时间步时所述机械臂的状态为第二状态x’1。
由于所述机械臂的状态已经发生了变化,因此,此处,通过第二状态x’1对所述机械臂的第一状态进行更新,将所述当前时间步的第二状态作为所述第一状态,此时,所述第一状态被更新为x0=x’1;
进一步的,还需要对所述第一控制信号序列us进行更新;
在本申请的一种可选实施方式中,对所述第一控制信号us进行更新的过程中需要采用所述第二控制信号序列u’s中的u’1至u’9,以及一随机控制信号u10。并通过上述控制信号对所述第一控制信号进行更新,更新后的第一控制信号序列us=(u’1,u’2,…,u’9,u10)。
进一步的,将所述更新后的第一状态x0以及更新后的第一控制信号us输入状态预测模型,通过所述状态预测模型在对各个所述机械臂在之后的10个时间步的状态进行预测,并获得各时间步的预测状态,并重复上述通过损失函数对第一控制信号序列进行优化的过程,第二次获得第二控制信号序列u’s。
通过所述第二控制信号序列u’s中的第一个控制信号控制所述机械臂运动到所述当前时间步的下一个时间步。
按照上述方法类推,直至所述机械臂运动10个时间步,按照本申请提供的上述机械臂的控制方法,在所述机械臂运动上述时间步后,所述机械臂的最终状态基于与所述预设的目标状态xn相同,且所述机械臂运动过程也是平稳的。
在本申请的一种可选实施例中,为了确保所述状态预测模型对机械臂状态预测的精准度,本申请提供的所述机械臂的控制方法还包括对所述状态预测模型的训练过程,具体的,所述机械臂的控制方法还包括以下步骤S14至步骤S17。
步骤S14,获取各时间步对应的第一状态和第一控制信号序列;
步骤S15,将所述第一状态和第一控制信号序列作为所述状态预测模型的训练样本;
步骤S16,基于所述训练样本对所述状态预测模型进行迭代训练,获得训练后的状态预测模型;
步骤S17,基于所述训练后的状态预测模型对所述状态预测模型进行更新。
在具体应用过程中,可以通过对机械臂的改造获得所述样本数据,比如说,所述各时间步的第一状态可以通过机械臂上安装的角度传感器获得,所述各时间步的对应的第一控制信号序列则可以通过机械臂上安装的脉宽调制信号传感器获得。
综上所述,本申请提供的机械臂的控制方法,通过机械臂状态预测模型,结合待控制的机械臂在当前时间步的第一状态和第一控制信号序列,对机械臂的多个时间步的状态进行预测,获得机械臂在各时间步的预测状态;之后,通过所述各时间步的预测状态和针对所述机械臂预设的目标状态对所述第一控制信号序列进行优化,获得优化后的第二控制信号序列,并通过所述第二控制信号序列控制所述机械臂进行运动,获得机械臂的第二状态;最后,通过第二状态对机械臂在当前时间步的第一状态进行更新,并通过第二控制信号序列对所述第一控制信号序列进行更新,以便于所述重复上述过程进而对所述机械臂的运动做进一步控制。该方法能够使所述机械臂能够平稳的由当前状态朝向预设的目标状态运动,实现了对机械臂运动精准有效的控制。
本申请另一实施例提供一种机械臂的控制装置,参考图5,图5为本申请另一实施例提供的机械臂的控制装置结构示意图。由于该装置实施例基本相似与上述方法实施例,所以描述的比较简单,相关之处请参见上述方法实施例的部分说明即可。
如图5所示,本申请实施例提供的机械臂的控制装置,包括:
获取单元501,用于获取待控制的机械臂在当前时间步对应的第一状态和第一控制信号序列,所述第一控制信号序列中的各控制信号用于驱动所述机械臂在多个时间步的运动;
预测单元502,用于基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
优化单元503,用于根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
控制单元504,用于根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态;
更新单元505,用于根据所述第二状态更新所述第一状态,以及根据所述第二控制信号序列更新所述第一控制信号序列。
可选的,所述装置还用于:
基于更新后的所述第一状态,将更新后的所述第一控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态。
可选的,所述基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态,包括:
将所述第一状态和所述第一控制信号序列中的第一个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第一个时间步的预测状态;
针对所述当前时间步后的第i个时间步,将所述当前时间步后的第i-1个时间步的预测状态和所述第一控制信号序列中的第i个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第i个时间步的预测状态,其中,所述i为大于1的整数。
可选的,所述根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列,包括:
将所述目标状态与所述各时间步的预测状态输入预设的损失函数,获得所述损失函数输出的损失值,其中,所述预设的损失函数基于所述目标状态与所述各时间步的预测状态之间的差值生成;
基于所述损失值对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
可选的,所述根据所述第二控制信号序列,控制所述机械臂运动,包括:
获取所述第二控制信号序列中的第一个控制信号;
基于所述第二控制信号序列中的第一个控制信号控制所述机械臂运动。
可选的,所述根据所述第二控制信号序列更新所述第一控制信号序列,包括:
获取所述第二控制信号序列中除第一个控制信号外的其余控制信号;
生成一随机控制信号;
将所述第二控制信号序列中除第一个控制信号外的其余控制信号与所述随机控制信号进行组合,获得目标控制信号序列;
将所述目标控制信号序列替换所述第一控制信号序列,获得更新后的第一控制信号序列。
可选的,所述机械臂的状态包括:机械臂关节的角度和机械臂关节运动的角速度,所述角度和所述角速度分别配置对应的权重;
所述将所述目标状态与所述各时间步的预测状态输入预设的损失函数,获得所述损失函数输出的损失值,包括:
通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角度与所述目标状态中的目标角度之间的第一差值之和;以及,
通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角速度与所述目标状态中的目标角速度之间的第二差值之和;
根据所述角度对应的权重、所述角速度对应的权重、所述第一差值之和以及所述第二差值之和,获得所述损失函数输出的对所述机械臂关节的预测角度和预测角速度的损失值。
可选的,所述基于所述损失值对所述第一控制信号序列进行优化,获得所述第二控制信号序列,包括:
在所述损失值大于预设的损失阈值时,根据所述损失函数的导数梯度变化,对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
可选的,所述装置还用于:
获取各时间步对应的第一状态和第一控制信号序列;
将所述第一状态和第一控制信号序列作为所述状态预测模型的训练样本;
基于所述训练样本对所述状态预测模型进行迭代训练,获得训练后的状态预测模型;
基于所述训练后的状态预测模型对所述状态预测模型进行更新。
本申请实施例同时提供一种电子设备,请参考图6,图6为本申请另一实施例提供的电子设备的结构示意图,由于该电子设备实施例基本相似与上述方法实施例和装置实施例所以描述的比较简单,相关之处请参考上述方法实施例和装置实施例的部分说明即可。
所述电子设备,包括:处理器601;
存储器602,用于存储方法的程序,所述程序被处理器601读取执行时执行上述任意一种方法。
本申请实施例还同时提供一种计算机存储介质,所述计算机存储有计算机程序,所述程序在被执行时执行述实施例的任意一种方法。
需要说明的是,本市内情提供的计算机存储介质的详细描述同样可以参考上述方法实施例的相关描述,这里不再赘述。
本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitor7media),如调制的数据信号和载波。
2、本领域技术人员应明白,本申请的实施例可提供为***或电子设备。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
Claims (12)
1.一种机械臂的控制方法,其特征在于,包括:
获取待控制的机械臂在当前时间步对应的第一状态和第一控制信号序列,所述第一控制信号序列中的各控制信号用于驱动所述机械臂在多个时间步的运动;
基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态;
根据所述第二状态更新所述第一状态,以及根据所述第二控制信号序列更新所述第一控制信号序列。
2.根据权利要求1所述的控制方法,其特征在于,所述方法还包括:
基于更新后的所述第一状态,将更新后的所述第一控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态。
3.根据权利要求1所述的控制方法,其特征在于,所述基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态,包括:
将所述第一状态和所述第一控制信号序列中的第一个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第一个时间步的预测状态;
针对所述当前时间步后的第i个时间步,将所述当前时间步后的第i-1个时间步的预测状态和所述第一控制信号序列中的第i个控制信号输入所述状态预测模型,获得所述状态预测模型输出的所述机械臂在所述当前时间步后的第i个时间步的预测状态,其中,所述i为大于1的整数。
4.根据权利要求1所述的控制方法,其特征在于,所述根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列,包括:
将所述目标状态与所述各时间步的预测状态输入预设的损失函数,获得所述损失函数输出的损失值,其中,所述预设的损失函数基于所述目标状态与所述各时间步的预测状态之间的差值生成;
基于所述损失值对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
5.根据权利要求1所述的控制方法,其特征在于,所述根据所述第二控制信号序列,控制所述机械臂运动,包括:
获取所述第二控制信号序列中的第一个控制信号;
基于所述第二控制信号序列中的第一个控制信号控制所述机械臂运动。
6.根据权利要求5所述的控制方法,其特征在于,所述根据所述第二控制信号序列更新所述第一控制信号序列,包括:
获取所述第二控制信号序列中除第一个控制信号外的其余控制信号;
生成一随机控制信号;
将所述第二控制信号序列中除第一个控制信号外的其余控制信号与所述随机控制信号进行组合,获得目标控制信号序列;
将所述目标控制信号序列替换所述第一控制信号序列,获得更新后的第一控制信号序列。
7.根据权利要求4所述的控制方法,其特征在于,所述机械臂的状态包括:机械臂关节的角度和机械臂关节运动的角速度,所述角度和所述角速度分别配置对应的权重;
所述将所述目标状态与所述各时间步的预测状态输入预设的损失函数,获得所述损失函数输出的损失值,包括:
通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角度与所述目标状态中的目标角度之间的第一差值之和;以及,
通过所述预设的损失函数,确定各时间步的预测状态中的所述机械臂关节的预测角速度与所述目标状态中的目标角速度之间的第二差值之和;
根据所述角度对应的权重、所述角速度对应的权重、所述第一差值之和以及所述第二差值之和,获得所述损失函数输出的对所述机械臂关节的预测角度和预测角速度的损失值。
8.根据权利要求4所述的控制方法,其特征在于,所述基于所述损失值对所述第一控制信号序列进行优化,获得所述第二控制信号序列,包括:
在所述损失值大于预设的损失阈值时,根据所述损失函数的导数梯度变化,对所述第一控制信号序列进行优化,获得所述第二控制信号序列。
9.根据权利要求1所述的控制方法,其特征在于,还包括:
获取各时间步对应的第一状态和第一控制信号序列;
将所述第一状态和第一控制信号序列作为所述状态预测模型的训练样本;
基于所述训练样本对所述状态预测模型进行迭代训练,获得训练后的状态预测模型;
基于所述训练后的状态预测模型对所述状态预测模型进行更新。
10.一种机械臂的控制装置,其特征在于,包括:
获取单元,用于获取待控制的机械臂在当前时间步对应的第一状态和第一控制信号序列,所述第一控制信号序列中的各控制信号用于驱动所述机械臂在多个时间步的运动;
预测单元,用于基于所述第一状态,将所述第一控制信号序列中的各个控制信号依次输入用于预测下一时间步所述机械臂状态的状态预测模型,获得所述机械臂在各时间步的预测状态;
优化单元,用于根据所述机械臂在所述各时间步的预测状态和预设的目标状态,对所述第一控制信号序列进行优化,获得第二控制信号序列;
控制单元,用于根据所述第二控制信号序列,控制所述机械臂运动,获得所述机械臂在所述当前时间步的下一时间步的第二状态;
更新单元,用于根据所述第二状态更新所述第一状态,以及根据所述第二控制信号序列更新所述第一控制信号序列。
11.一种电子设备,其特征在于,包括:
处理器;
存储器,用于存储方法的程序,所述程序在被处理器读取运行时,执行权利要求1-9任意一项所述的方法。
12.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述程序在被执行时执行权利要求1-9任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210225857.8A CN114918912A (zh) | 2022-03-07 | 2022-03-07 | 一种机械臂的控制方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210225857.8A CN114918912A (zh) | 2022-03-07 | 2022-03-07 | 一种机械臂的控制方法、装置、电子设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114918912A true CN114918912A (zh) | 2022-08-19 |
Family
ID=82805070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210225857.8A Pending CN114918912A (zh) | 2022-03-07 | 2022-03-07 | 一种机械臂的控制方法、装置、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114918912A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109551485A (zh) * | 2019-01-21 | 2019-04-02 | 北京镁伽机器人科技有限公司 | 运动控制方法、装置和***及存储介质 |
US20190321974A1 (en) * | 2019-06-27 | 2019-10-24 | Intel Corporation | Apparatus and methods for object manipulation via action sequence optimization |
CN112135717A (zh) * | 2018-05-18 | 2020-12-25 | 谷歌有限责任公司 | 基于像素的模型预测控制的***和方法 |
WO2021171357A1 (ja) * | 2020-02-25 | 2021-09-02 | 日本電気株式会社 | 制御装置、制御方法及び記録媒体 |
US20210302926A1 (en) * | 2018-12-12 | 2021-09-30 | Preferred Networks, Inc. | Inferring device, training device, inferring method, and training method |
-
2022
- 2022-03-07 CN CN202210225857.8A patent/CN114918912A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112135717A (zh) * | 2018-05-18 | 2020-12-25 | 谷歌有限责任公司 | 基于像素的模型预测控制的***和方法 |
US20210302926A1 (en) * | 2018-12-12 | 2021-09-30 | Preferred Networks, Inc. | Inferring device, training device, inferring method, and training method |
CN109551485A (zh) * | 2019-01-21 | 2019-04-02 | 北京镁伽机器人科技有限公司 | 运动控制方法、装置和***及存储介质 |
US20190321974A1 (en) * | 2019-06-27 | 2019-10-24 | Intel Corporation | Apparatus and methods for object manipulation via action sequence optimization |
WO2021171357A1 (ja) * | 2020-02-25 | 2021-09-02 | 日本電気株式会社 | 制御装置、制御方法及び記録媒体 |
Non-Patent Citations (2)
Title |
---|
张爱华;魏浩;马晶;白忠领;: "基于时间序列深度学习的超窄间隙焊接质量预测方法", 电焊机, no. 08, 20 August 2020 (2020-08-20), pages 50 - 54 * |
李虹;张韵悦;孙志毅;孙前来;: "挖掘机分段多项式的时间最优轨迹规划", 中国工程机械学报, no. 01, 15 February 2020 (2020-02-15), pages 11 - 17 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110799309B (zh) | 具有配置相关动力学的***的振动控制 | |
Boone | Efficient reinforcement learning: Model-based acrobot control | |
JP7291185B2 (ja) | 力及びトルク誘導ロボット組立のための技術 | |
US20240173854A1 (en) | System and methods for pixel based model predictive control | |
KR20220155921A (ko) | 로봇 디바이스를 제어하기 위한 방법 | |
US11759947B2 (en) | Method for controlling a robot device and robot device controller | |
CN112720504B (zh) | 从rgbd视频中学习手与物体交互运动控制方法和装置 | |
CN115990875B (zh) | 一种基于隐空间插值的柔性线缆状态预测与控制*** | |
Li et al. | Online learning for behavior switching in a soft robotic arm | |
Traub et al. | Many-joint robot arm control with recurrent spiking neural networks | |
CN114918912A (zh) | 一种机械臂的控制方法、装置、电子设备以及存储介质 | |
CN116100539A (zh) | 基于深度强化学习的机械臂自主动态避障方法及*** | |
Null et al. | Development of a modular and submersible soft robotic arm and corresponding learned kinematics models | |
Su et al. | Nonlinear visual mapping model for 3-D visual tracking with uncalibrated eye-in-hand robotic system | |
Bonsignorio et al. | An imitation learning approach for the control of a low-cost low-accuracy robotic arm for unstructured environments | |
Jin et al. | Shared Control With Efficient Subgoal Identification and Adjustment for Human–Robot Collaborative Tasks | |
Null et al. | Automatically-Tuned Model Predictive Control for an Underwater Soft Robot | |
KR102673389B1 (ko) | 데이터 기반 로봇 회화 작업을 자동화하기 위한 방법, 컴퓨터 시스템, 및 컴퓨터 프로그램 | |
WO2024084992A1 (ja) | 量子駆動制御部を備えたアクチュエータ | |
Xiao et al. | One-shot sim-to-real transfer policy for robotic assembly via reinforcement learning with visual demonstration | |
Kasaei et al. | A Data-efficient Neural ODE Framework for Optimal Control of Soft Manipulators | |
CN118355336A (zh) | 学习过程中鲁棒反馈控制的多面体策略优化的***和方法 | |
Hoang et al. | Ball-and-socket joint pose estimation using magnetic field | |
Luz et al. | Model Predictive Control for Assistive Robotics Manipulation | |
Apolloni et al. | A hybrid symbolic subsymbolic controller for complex dynamic systems |
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 |