CN114800525B - 机器人碰撞检测方法、系统、计算机及可读存储介质 - Google Patents
机器人碰撞检测方法、系统、计算机及可读存储介质 Download PDFInfo
- Publication number
- CN114800525B CN114800525B CN202210581657.6A CN202210581657A CN114800525B CN 114800525 B CN114800525 B CN 114800525B CN 202210581657 A CN202210581657 A CN 202210581657A CN 114800525 B CN114800525 B CN 114800525B
- Authority
- CN
- China
- Prior art keywords
- input data
- robot
- data set
- training
- neural network
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 32
- 238000003860 storage Methods 0.000 title claims abstract description 9
- 230000001133 acceleration Effects 0.000 claims abstract description 60
- 238000000034 method Methods 0.000 claims abstract description 49
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 37
- 238000012549 training Methods 0.000 claims description 104
- 230000033001 locomotion Effects 0.000 claims description 49
- 238000013528 artificial neural network Methods 0.000 claims description 43
- 238000003066 decision tree Methods 0.000 claims description 42
- 238000012706 support-vector machine Methods 0.000 claims description 39
- 238000013527 convolutional neural network Methods 0.000 claims description 37
- 230000006870 function Effects 0.000 claims description 24
- 230000005284 excitation Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000005484 gravity Effects 0.000 claims description 6
- 238000000429 assembly Methods 0.000 description 6
- 230000000712 assembly Effects 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 239000012636 effector Substances 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 241000282472 Canis lupus familiaris Species 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000002939 conjugate gradient method Methods 0.000 description 1
- 238000010924 continuous production Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000003466 welding 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
-
- 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
- B25J9/1666—Avoiding collision or forbidden zones
Abstract
本发明提供了一种机器人碰撞检测方法、系统计算机及可读存储介质,该方法包括根据动力学模型以及动力学参数辨识算法采集当前机器人的无扰动输入数据集;根据动力学模型以及动力学参数辨识算法分别采集当前机器人的扰动输入数据集;通过动力学模型分别计算出与角速度、角加速度对应的理论角速度以及理论角加速度,并收集理论角速度以及理论角加速度作为理论输入数据集;基于无扰动输入数据集、扰动输入数据集、理论输入数据集以及预设判别模型判断当前机器人是否发生碰撞。通过上述方式能够对不同情况产生的跳变碰撞或者柔性碰撞均能够以较高的准确率判别出来,同时不需要加装额外的力矩传感器,节约了机器人的使用成本。
Description
技术领域
本发明涉及机器人技术领域,特别涉及一种机器人碰撞检测方法、系统、计算机及可读存储介质。
背景技术
机器人是自动控制机器(Robot)的俗称,自动控制机器包括一切模拟人类行为或思想与模拟其他生物的机械(如机器狗,机器猫等)。在当代工业中,机器人指能自动执行任务的人造机器装置,用以取代或协助人类工作。比如在目前热门的焊接领域及人机协作领域,机械臂的安全性尤为重要,当机械臂与外界产生碰撞的时候需要及时的做出判断并停止。
现有技术对机械臂碰撞的检测大部分采用传统的阈值判断法,即通过理论计算与实际力矩的差值进行判断,当计算出的差值超过所设阈值时即判断为碰撞,然而,此种方法容易受到机械臂本体及外界环境的影响,从而容易导致碰撞的误判,无法保证判断的准确性,存在一定的隐患。
发明内容
基于此,本发明的目的是提供一种机器人碰撞检测方法、系统、计算机及可读存储介质,以解决现有技术容易受到机械臂本体及外界环境的影响,从而容易导致碰撞的误判,使得无法保证判断准确性的问题。
本发明实施例第一方面提出了一种机器人碰撞检测方法,所述方法包括:
获取当前机器人对应的动力学模型以及动力学参数辨识算法,并根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;
根据所述动力学模型以及所述动力学参数辨识算法分别采集当前所述机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,其中,所述无扰动输入数据集和所述扰动输入数据集均包括角速度、角加速度、力矩以及电流值;
通过所述动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集;
基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞。
本发明的有益效果是:通过首先获取到当前机器人对应的动力学模型以及动力学参数辨识算法,并根据动力学模型以及动力学参数辨识算法采集当前机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;进一步的,再根据上述动力学模型以及上述动力学参数辨识算法分别采集到当前机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,与此同时,通过上述动力学模型分别计算出与角速度、角加速度对应的理论角速度以及理论角加速度,并收集理论角速度以及理论角加速度作为理论输入数据集;最后只需基于无扰动输入数据集、扰动输入数据集、理论输入数据集以及预设判别模型判断当前机器人是否发生碰撞。通过上述方式能够对不同情况产生的跳变碰撞或者柔性碰撞均能够以较高的准确率判别出来,同时不需要加装额外的力矩传感器,节约了机器人的使用成本,并且本方法适用于不同种类的机械臂,因此本方法适用于大范围的推广与使用。
优选的,所述根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集的步骤包括:
设定当前所述机器人的运动周期,并在所述运动周期内控制当前所述机器人按照预设激励轨迹进行运动,所述预设激励轨迹包括傅里叶级数型的轨迹:
其中qi表示关节转角,qi0表示关节转角常量,al、bl表示轨迹的常系数,ωf为轨迹的基频,ωfl表示第l阶的频率,N为阶数,t为时间;
在所述运动周期内每隔预设时间采集一次当前所述机器人的第一运动参数,并将采集到的若干所述第一运动参数集合为所述无扰动输入数据集,所述第一运动参数包括所述角速度、所述角加速度、所述力矩以及所述电流值。
优选的,所述动力学模型为:
τ=τf+τd
其中,τ为关节驱动力矩,τf为关节摩擦力矩,τd为关节动态力矩,q、 依次为关节的角度、角速度、角加速度,D(q)为惯性项,/>为科式力及离心力项,G(q)为重力项;所述D(q)、所述/>以及所述G(q)均为机器人惯性参数与关节运动参数的函数。
优选的,所述预设判别模型包括BP神经网络、SVM支持向量机、决策树以及卷积神经网络,所述基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞的步骤包括:
将所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及时间变量分别输入至所述BP神经网络、所述SVM支持向量机、所述决策树以及所述卷积神经网络中,以分别获取到训练BP神经网络、训练SVM支持向量机、训练决策树以及训练卷积神经网络;
分别向所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络添加对应的权重;
基于所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树、所述训练卷积神经网络以及所述权重计算出当前所述机器人的得分值,并判断所述得分值是否大于预设值;
若是,则确定当前所述机器人已发生碰撞。
优选的,所述基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞的步骤之后,所述方法还包括:
根据所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络对不同碰撞场景的判断准确值分别设置不同的动态权重,并依据所述准确值和所述动态权重推算出整体训练模型;
根据所述整体训练模型判断当前所述机器人是否发生碰撞。
本发明实施例第二方面提出了一种机器人碰撞检测系统,所述系统包括:
获取模块,用于获取当前机器人对应的动力学模型以及动力学参数辨识算法,并根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;
采集模块,用于根据所述动力学模型以及所述动力学参数辨识算法分别采集当前所述机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,其中,所述无扰动输入数据集和所述扰动输入数据集均包括角速度、角加速度、力矩以及电流值;
计算模块,用于通过所述动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集;
判断模块,用于基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞。
其中,上述机器人碰撞检测系统中,所述获取模块具体用于:
设定当前所述机器人的运动周期,并在所述运动周期内控制当前所述机器人按照预设激励轨迹进行运动,所述预设激励轨迹包括傅里叶级数型的轨迹:
其中,qi表示关节转角,qi0表示关节转角常量,al、bl表示轨迹的常系数,ωf为轨迹的基频,ωfl表示第l阶的频率,N为阶数,t为时间;
在所述运动周期内每隔预设时间采集一次当前所述机器人的第一运动参数,并将采集到的若干所述第一运动参数集合为所述无扰动输入数据集,所述第一运动参数包括所述角速度、所述角加速度、所述力矩以及所述电流值。
其中,上述机器人碰撞检测系统中,所述动力学模型为:
τ=τf+τd
其中,τ为关节驱动力矩,τf为关节摩擦力矩,τd为关节动态力矩,q、 依次为关节的角度、角速度、角加速度,D(q)为惯性项,/>为科式力及离心力项,G(q)为重力项;所述D(q)、所述/>以及所述G(q)均为机器人惯性参数与关节运动参数的函数。
其中,上述机器人碰撞检测系统中,所述预设判别模型包括BP神经网络、SVM支持向量机、决策树以及卷积神经网络,所述判断模块具体用于:
将所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及时间变量分别输入至所述BP神经网络、所述SVM支持向量机、所述决策树以及所述卷积神经网络中,以分别获取到训练BP神经网络、训练SVM支持向量机、训练决策树以及训练卷积神经网络;
分别向所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络添加对应的权重;
基于所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树、所述训练卷积神经网络以及所述权重计算出当前所述机器人的得分值,并判断所述得分值是否大于预设值;
若是,则确定当前所述机器人已发生碰撞。
其中,上述机器人碰撞检测系统中,所述机器人碰撞检测系统还包括设定模块,所述设定模块具体用于:
根据所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络对不同碰撞场景的判断准确值分别设置不同的动态权重,并依据所述准确值和所述动态权重推算出整体训练模型;
根据所述整体训练模型判断当前所述机器人是否发生碰撞。
本发明实施例第三方面提出了一种计算机,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上面所述的机器人碰撞检测方法。
本发明实施例第四方面提出了一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上面所述的机器人碰撞检测方法。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1为本发明第一实施例提供的机器人碰撞检测方法的流程图;
图2为本发明第三实施例提供的机器人碰撞检测系统的结构框图。
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
请参阅图1,所示为本发明第一实施例提供的机器人碰撞检测方法,本实施例提供的机器人碰撞检测方法能够对不同情况产生的跳变碰撞或者柔性碰撞均能够以较高的准确率判别出来,同时不需要加装额外的力矩传感器,节约了机器人的使用成本,并且本方法适用于不同种类的机械臂,因此本方法适用于大范围的推广与使用。
具体的,本实施例提供的机器人碰撞检测方法具体包括以下步骤:
步骤S10,获取当前机器人对应的动力学模型以及动力学参数辨识算法,并根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;
具体的,在本实施例中,首先需要说明的是,本实施例提供的机器人碰撞检测方法具体应用在协作机器人上,该协作机器人在工作的过程中会执行多种不同的动作,因此,需要预防甚至消除机器人碰撞现象的发生。
针对于此,本步骤会首先获取到应用有该机器人碰撞检测方法的机器人对应的动力学模型以及动力学参数辨识算法。
进一步的,本步骤还会根据当前获取到的动力学模型以及动力学参数辨识算法采集当前机器人在未发生碰撞的前提下,以及按照预设时间内生成的无扰动输入数据集。
步骤S20,根据所述动力学模型以及所述动力学参数辨识算法分别采集当前所述机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,其中,所述无扰动输入数据集和所述扰动输入数据集均包括角速度、角加速度、力矩以及电流值;
进一步的,在本步骤中,需要说明的是,本步骤会基于上述步骤S10获取到的动力学模型以及动力学参数辨识算法对当前机器人进行二次处理,具体的,本步骤会在当前机器人发生跳变碰撞或者柔性碰撞的前提下,以及按照预设时间内生成的扰动输入数据集。
其中,在本步骤中,需要指出的是,上述无扰动输入数据集和扰动输入数据集均包括角速度、角加速度、力矩以及电流值。
步骤S30,通过所述动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集;
更进一步的,在本步骤中,需要说明的是,在通过上述步骤分别获取到无扰动输入数据集和扰动输入数据集之后,本步骤会同时对该无扰动输入数据集和扰动输入数据集内部的角速度和角加速度进行处理,具体的,本步骤通过上述动力学模型分别计算出与当前采集到的角速度和角加速度对应的理论角速度以及理论角加速度。
在此基础之上,本步骤还会分别收集计算出的理论角速度以及理论角加速度,并最终形成理论输入数据集。
步骤S40,基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞。
最后,在本步骤中,需要说明的是,当通过上述步骤分别获取到需要的无扰动输入数据集、扰动输入数据集以及理论输入数据集之后,本步骤会将上述无扰动输入数据集、扰动输入数据集以及理论输入数据集分别导入至上述预设判别模型中,以最终根据该判别模型判断当前机器人是否发生了碰撞。
使用时,通过首先获取到当前机器人对应的动力学模型以及动力学参数辨识算法,并根据动力学模型以及动力学参数辨识算法采集当前机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;进一步的,再根据上述动力学模型以及上述动力学参数辨识算法分别采集到当前机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,与此同时,通过上述动力学模型分别计算出与角速度、角加速度对应的理论角速度以及理论角加速度,并收集理论角速度以及理论角加速度作为理论输入数据集;最后只需基于无扰动输入数据集、扰动输入数据集、理论输入数据集以及预设判别模型判断当前机器人是否发生碰撞。通过上述方式能够对不同情况产生的跳变碰撞或者柔性碰撞均能够以较高的准确率判别出来,同时不需要加装额外的力矩传感器,节约了机器人的使用成本,并且本方法适用于不同种类的机械臂,因此本方法适用于大范围的推广与使用。
需要说明的是,上述的实施过程只是为了说明本申请的可实施性,但这并不代表本申请的机器人碰撞检测方法只有上述唯一一种实施流程,相反的,只要能够将本申请的机器人碰撞检测方法实施起来,都可以被纳入本申请的可行实施方案。
综上,本发明上述实施例当提供的机器人碰撞检测方法能够对不同情况产生的跳变碰撞或者柔性碰撞均能够以较高的准确率判别出来,同时不需要加装额外的力矩传感器,节约了机器人的使用成本,并且本方法适用于不同种类的机械臂,因此本方法适用于大范围的推广与使用。
本发明第二实施例也提供了一种机器人碰撞检测方法,本实施例提供的机器人碰撞检测方法具体包括以下步骤:
步骤S11,获取当前机器人对应的动力学模型以及动力学参数辨识算法;
具体的,在本实施例中,需要说明的是,本步骤会根据牛顿-欧拉方程或者拉格朗日方程对当前机器人进行动力学建模,其中,不论是牛顿-欧拉方程还是拉格朗日方程进行动力学建模,协作机器人的动力学模型为:
τ=τf+τd
其中,τ为关节驱动力矩,τf为关节摩擦力矩,τd为关节动态力矩,q、 依次为关节的角度、角速度、角加速度,D(q)为惯性项,/>为科式力及离心力项,G(q)为重力项;所述D(q)、所述/>以及所述G(q)均为机器人惯性参数与关节运动参数的函数。
具体的,牛顿欧拉法推导机械臂的动力学,需要两个步骤:首先是“正向传递速度及加速度(forward propagation)”:从基座开始,依次计算每一个连杆的速度、加速度,一直到末端执行器;其次是“反向传递力(backward propagation)”:从末端执行器所受的外力开始依次算回来求出每个关节的扭矩/力。推导机械臂动力学的牛顿欧拉法是一个递归算法。
每一根连杆的角速度都等于上一根连杆的角速度加上它的关节转动带来的角速度(对平移关节此项为0);由此得到连杆角速度的传递公式。公式两边求导,则可以进一步得到,角加速度的传递公式为:
其中θ是关节位置(旋转关节的角度),Z是关节的转轴,需要利用旋转矩阵把不同参照系的向量映射到同一个参照系中。
对于线速度,每个连杆的线速度等于上一根连杆(质心)的线速度、上一根连杆转动造成的线速度以及平移关节的线速度之和,等式两边求导可以得到线性加速度的传递公式为:
vi+1=vi+1+vi+1×vi+1+vi+1Zi+1
其中,d是关节位置(平移关节的平移位置),Z是关节平移方向,p是上一个连杆质心到当前连杆的位置向量。
另外,上述动力学参数辨识算法具体包括:通过将关节锁定,无论当前机器人的关节数目是多少,每次的辨识对象都相当于2关节机器人,每次仅有两关节运动,因此仅需要优化两关节的轨迹参数,优化计算量大大减小;每次辨识相互独立,无需将辨识结果带入到其他次辨识,因此误差累积大大减小,参数辨识精度提高,尤其是靠近基座的关节;每次的辨识对象都相当于最末机械臂,最末机械臂的参数不会与其他机械臂的参数组合,这样可以辨识出所有连接组合体的惯性参数的独立值,通过惯性参数递推公式,可根据相邻连接组合体的参数独立值,求出机器人所有关节的最小参数集参数值。由于所有连接组合体均相当于机器人的最末机械臂,负载可以看作其一部分,当负载改变时,可计算出负载改变后连接组合体参数的新值,进而求出关节最小参数集参数的新值,无需重新辨识。
将串联机器人的第i+1~n关节锁定(关节无运动),这样i~n机械臂都可以看作一个整体,即连接组合体I(I为标号)。同理,i~n关节锁定对应连接组合体I-1,依此类推。左上标大写(I)表示连接组合体的参数,小写(i)表示单个机械臂的参数,I与i是同一个关节的两种不同表示。
采用连接组合体方法时i+1~n关节处于锁定状态,因此此时的连接组合体l相当于最末机械臂,最末机械臂的参数辨识值不会组合其他机械臂的参数,因此可以辨识出每一个连接组合体I的参数独立值。
将第i关节的独立参数记为:ipb=(iIxx-iIyy,iIxy,iIxz,iIzy,iIzz,iHx,iHy),将剩余的参数记为:ipr=(iHz,im,iIyy),相应的连杆组合体的参数记为:
Ipb=(IIxx-IIyy,IIxy,IIxz,IIzy,IIzz,IHx,IHy),Ipr=(IHz,Im,IIyy)。Ipb可由第i关节力矩iτ辨识,而剩余参数Ipr必须通过其他关节力矩辨识,可通过第1、第i-1及第i关节加速运动,通过i-1关节力矩i-1τ辨识Ipr。在i-1τ中,参数Ipr与i-1pb不满足相互独立,二者组合为最小参数集,而最小参数集可由相邻连接组合体的参数表示。
辨识可分为两步:
(1)由iτ辨识连接组合体I的参数Ipb及关节i的摩擦参数ipfri;
(2)由连接组合体参数Ipb、I+1pb辨识第i关节的最小参数集参数ip'b。
其中,第一步为:
驱动第1、第i关节进行预先优化好的轨迹运动,运动过程中对第1、第i关节的转角及第i关节的驱动电流进行采样,将m次采样值循环带入到递推最小二乘法的递推式,经过一定次数(运算次数取决于设定的精度以及最大循环次数)的辨识运算,即可辨识出Ipb的值,由于连接组合体I相当于最末机械臂,因此得到的Ipb=(IIxx-IIyy,IIxy,IIxz,IIzy,IIzz,IHx,IHy)中的所有参数都不会与其他参数相互组合,均是独立值,所有连接组合体参数Ipb(i=1~n)的辨识过程见下图所示。
第(1)辨识步结束后,所有关节所对应的连接组合体参数Ipb及所有关节的摩擦参数ipfri(i=1~n)均已辩识出,可通过相邻连接组合体的参数I+1pb、Ipb求出单个机械臂的参数ipb,求解公式为:
i-1H=I-1H-I-1H-ImPi-1,i
i-1m=I-1m-Im
其中,Ipb中参数IHx,IHy为IH的两个分量,参数IIxx-IIyy,IIxy,IIxz,IIzy,IIzz为II中的分量。上述求解公式中,参数I-1H、IH、I-1I及II均已辩识出;Pi-1,i为结构的几何参数,是已知值;Im是Ipr中的参数,此时是未知的,也是待辨识的,另外,当相邻两关节不平行时,需要进行旋转变换将参数变换到同一个坐标系下运算,可能出现同一类型参数不相互对应的情况,比如i-1Izz需要由I-1Izz,IIyy来求,而门i-1Hx需要由I-1Hx,IHz来求,而此时IIyy、IHz是待辨识的,因此此时无法求出i-1pb具体数值大小,只能将i-1H、i-1I即参数i-1pb表示为待辨识参数Ipr的函数。i-1pb各参数与Ipr中3个参数的关系为:
i-1Ixy=I-1Ixy-aidi sinαi·Im-αisinαi·IHz+fi(2)(Ipb)
i-1Ixz=I-1Ixz+aidicosαi·Im+aicosαi·IHz+fi(3)(Ipb)
i-1Hx=I-1Hx-ai·Im+fi(7)(Ipb)
i-1Hy=I-1Hy+sinαi(IHz+di·Im)+fi(8)(Ipb)
i-1Hz=I-1Hz-cosαi(IHz+di·Im)+fi(9)(Ipb)
i-1m=I-1m+Im+fi(10)(Ipb)
f()是关于连接组合体I的参数Ipb以及第i关节结构参数αi、di、ai的函数,由于Ipb、αi、di、ai均已知,因此f()相当于常数。不同参数对应的f()的具体表达式不同,但都为常数。
第二步为:
利用i-1τ辨识连接组合体I的参数Ipr对于Ipr中的3个参数IHz,Im,IIyy,在机器人的第1、第i-1及第i关节加速运动的情况下,由第i-1关节力矩τi-1辨识。由动力学的逆向递推特点知,此时机械臂i-1的参数i-1pb=(i-1Ixx-i-1Iyy,i-1Ixy,i-1Ixz,i-1Izy,i-1Izz,i-1Hx,i-1Hy),关节i-1的摩擦参数i-1Pfri,连接组合体I的参数Ipb=(IIxx-IIyy,IIxy,IIxz,IIzy,IIzz,IHx,IHy)以及连接组合体I剩余的参数Ipr=(IHz,Im,IIyy)均对关节i-1的力矩i-1τ有影响,其中参数i- 1Pfri、Ipb均已在第一辨识步辨识出,另外,参数i-1pb可由Ipb、I-1pb通过式(3)表示为待辨识参数Ipr的函数形式,这样此时的力矩方程可写为:
其中,参数(iHz,im,iIyy)与i-1pb中的参数相互组合的一般递推式为:
i-1Ib xy=i-1Ixy+ai sinαi(iHb z+di imb)
i-1Ib xz=i-1Ixz-aicosαi(iHb z+di imb)
i-1Ib yz=i-1Iyz+cosαisinαi(2di iHb z+di 2imb+iIb yy)
i-1Hb x=i-1Hx+ai imb
i-1Hb y=i-1Hy-sinαi(iHb z+di imb)
i-1Hb z=i-1Hz+cosαi(iHb z+di imb)
i-1mb=i-1m+imb
将i-1pb关于Ipr的表达式带入上述公式,就可以使力矩方程右边仅包含未知数Ipr。在带入过程中会发现,IHz,Im,IIyy在的各表达式中的系数与在相应表达式的系数互为相反数,这样,将i-1pb关于Ipr的表达式带入递推公式后,整个力矩方程就既不包含i-1pb又不包含Ipr,此时无法辨识Ipr的值,也就无法求出i-1pb的值,这是由于串联机器人动力学的耦合性造成的,此时只能辨识出组合值。虽然无法辨识出Ipr的独立值,但这也说明第i-1关节的最小参数集可直接由两个相邻连杆组合体的已辨识参数Ipb、I-1pb表示,与未知参数Ipr无关。下面来推导由连接组合体参数辨识值,求解任意关节最小参数集参数值的递推公式。次末关节的最小参数集为;
n-1p表示第n-1机械臂的参数(组合之前的原始值),函数()为(5)中相应参数对应的项,在这一部分所用到的所有的/>()在形式上都是相同的,只须将其中的结构参数替换为本关节相应参数即可。利用公式(3)将n-1pb用连接组合体的参数Npb、N-1pb表示为:
n-1pb=N-1pb+fn(Npb)
此处的函数fn()与上述公式中的相应参数的fi(i)(i=1~7)形式相同,只需将fi(i)中第i关节的结构参数αi、di、ai换为第n关节的结构参数即可。此时参数i-1Hz,i-1m,i-1Iyy也对应一个组合值n-1pr,表示为:
n-1pr=N-1pr+fn′(Npb)
此处的函数fn′()对应公式中相应参数的函数fi(i)()(i=8~10),由(5)的递推关系知第n-2关节的最小参数集n-2pb应为:
n-2p为第n-2关节参数的原始值(组合前的值),此处的函数()可由(5)求出。将参数表达式代入上述公式中,可得:
(10)中的前两项形式上与上述公式中的部分内容完全相同,因此可相应的将其写为:
这样就可写为:
同理,对于第i关节的最小参数集ipb有按照上述递推可得:
ip为第i关节的参数初始值,由(13)可以看出,对于任何一个关节的最小参数集参数ipb均可表示为各连接组合体参数Ipb、I+1pb、…Npb的函数的形式。
由于每个关节的最小参数集参数均可由连接组合体参数Ipb、I+1pb、…Npb表示,而参数Ipb、I+1pb、…Npb在第一辨识步已辨识出,因此接下来只需通过(13)计算即可辨识出各关节的最小参数集参数。
步骤S21,设定当前所述机器人的运动周期,并在所述运动周期内控制当前所述机器人按照预设激励轨迹进行运动,所述预设激励轨迹包括傅里叶级数型的轨迹:
其中,qi表示关节转角,qi0表示关节转角常量,al、bl表示轨迹的常系数,ωf为轨迹的基频,ωfl表示第l阶的频率,N为阶数,t为时间;
在所述运动周期内每隔预设时间采集一次当前所述机器人的第一运动参数,并将采集到的若干所述第一运动参数集合为所述无扰动输入数据集,所述第一运动参数包括所述角速度、所述角加速度、所述力矩以及所述电流值。
进一步的,在本步骤中,需要说明的是,本步骤会先设定一个机器人的运动周期,并在该运动周期内使当前机器人采用上述傅里叶级数型轨迹进行运动。
进一步的,本步骤还会实时在该运动周期内每隔预设时间采集一次当前机器人的第一运动参数,并将采集到的若干第一运动参数集合为需要的无扰动输入数据集。例如:设定当前机器人的运动周期为60秒,并设定每隔1秒采集一次当前机器人的第一运动参数,因此,当每一运动周期完成时,都会采集60次当前机器人的第一运动参数,并将60次的第一运动参数集合为上述无扰动输入数据集。
其中,在数据采集过程中采用卡尔曼滤波处理,同时需要采用最小二乘法进行推导得到机器人动力学模型。
步骤S31,根据所述动力学模型以及所述动力学参数辨识算法分别采集当前所述机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集;
根据上述步骤S11至步骤S21相同的工作原理,在本步骤中,需要说明的是,本步骤会进一步根据上述动力学模型以及动力学参数辨识算法分别采集当前机器人在发生跳变碰撞或者柔性碰撞以及在预设时间内生成的扰动输入数据集。
步骤S41,通过所述动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集;
进一步的,在本步骤中,需要说明的是,本步骤会进一步通过上述创建好的动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集。
另外,在本实施例中,需要指出的是,上述预设判别模型包括BP神经网络、SVM支持向量机、决策树以及卷积神经网络,基于此,上述基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞的步骤包括:
步骤S51,将所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及时间变量分别输入至所述BP神经网络、所述SVM支持向量机、所述决策树以及所述卷积神经网络中,以分别获取到训练BP神经网络、训练SVM支持向量机、训练决策树以及训练卷积神经网络;分别向所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络添加对应的权重;基于所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树、所述训练卷积神经网络以及所述权重计算出当前所述机器人的得分值,并判断所述得分值是否大于预设值;若是,则确定当前所述机器人已发生碰撞。
进一步的,在本步骤中,需要说明的是,本步骤会分别使用上述BP神经网络、SVM支持向量机、决策树以及卷积神经网络四种模型基于上述无扰动输入数据集、上述扰动输入数据集、上述理论输入数据集以及时间变量进行预测:
(1)使用高斯核函数这一局部性强的核函数,能够对数据中存在的噪声具备较好的抗干扰能力:
(2)BP神经网络将隐含层设置为10,采用powell-Beale共轭梯度法进行训练:
(3)概率神经网络训练的扩展速度设为0.3;
(4)决策树算法通过迭代确定最小叶子节点数为13,以此进行剪枝。
其中,需要指出的是,支持向量机(support vector machine,SVM)是一种二分类模型,基本模型为在特征空间上的间隔最大的线性分类器,学习策略为间隔最大化。由于要将低维数据映射到高维,在约束问题中内积运算十分困难,因此引入核函数以避免精确计算样本集合中样本对之间的点积。
κ(x(i),x(j))=φ(x(i))Tφ(x(j))
高斯核函数是一种局部性强的核函数,对数据中存在的噪声有较好的抗干扰能力,应用最为广泛。
其中BP神经网络中添加误差修正函数,给定输入层、隐含层、输出层,进一步的,将网络误差平方作为目标函数,使得网络的实际输出值与期望输出值的误差均方差最小,通过反向传播误差修正各层单元权值,不断调整至完成训练。
决策树(decision tree,DT)是一种常用的分类和回归方法,通常包括:特征选择、决策树生成、决策树修剪三个步骤。根节点中包括全部数据集,在数据集中找到一个最优特征,根据最优划分属性,把数据集分成若干子集,划分到子节点中,依次递归。
概率神经网络(probabilistic neural network,PNN)是径向基网络的一个分支,属于前馈神经网络,基于贝叶斯最小风险准则,在多维输入空间内分离决策空间,适用于模式分类。
在四种预测模型得到初步结果后,将其进行分类,首先对其正确率进行计算,分别考虑跳变碰撞和柔性碰撞下四种模型的准确率、特异性、敏感度,并以此为依据构建考量因素。
同时柔性碰撞是一个持续过程,在与时间相关的变量中,柔性碰撞中的力矩虽然无法达到当前碰撞检测阈值,但在其持续时权重应越来越大,
加权投票法根据各个单分类器不同的特点和效果,给定不同权值,结合权重和投票得到最终结果。
在本实施例中,还需要指出的是,上述基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞的步骤之后,该方法还包括:
步骤S61,根据所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络对不同碰撞场景的判断准确值分别设置不同的动态权重,并依据所述准确值和所述动态权重推算出整体训练模型;根据所述整体训练模型判断当前所述机器人是否发生碰撞。
最后,在本步骤中,需要说明的是,本步骤会根据上述BP神经网络、SVM支持向量机、决策树以及卷积神经网络四个模型对不同碰撞场景的优劣(考量因素)及在柔性碰撞时的与时间相关的特性,分别给予四种模型与时间扰动不同的动态权重,在决策层依据权重及不同模型的结果推算出最终模型,判断是否发生碰撞。
根据单分类器判别结果的准确率,给予它们相应的权值系数,通过加权投票得到最终的融合模型。
具体流程如下:
(1)使用输入集集对各个单分类器进行测试,得到其判别准确率分别为P1、P2…Pi。
(2)根据四种模型的准确率及考量因素、时间系数计算权重系数:
其权重系数之和为1。
(3)根据上式计算出的权重系数,与模型、时间相结合,得到最终融合模型判别公式为:
通过加权后的最终模型判别是否发生碰撞,同时根据反馈结果更新下一时刻各模型及时间参数的权重。
通过实验得到最终判别结果,效果较好,从而能够准确的判断当前机器人是否发生了碰撞。
需要指出的是,本发明第二实施例所提供的方法,其实现原理及产生的一些技术效果和第一实施例相同,为简要描述,本实施例未提及之处,可参考第一实施例提供相应内容。
综上,本发明上述实施例当提供的机器人碰撞检测方法能够对不同情况产生的跳变碰撞或者柔性碰撞均能够以较高的准确率判别出来,同时不需要加装额外的力矩传感器,节约了机器人的使用成本,并且本方法适用于不同种类的机械臂,因此本方法适用于大范围的推广与使用。
请参阅图2,所示为本发明第三实施例提供的机器人碰撞检测系统,所述系统包括:
获取模块12,用于获取当前机器人对应的动力学模型以及动力学参数辨识算法,并根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;
采集模块22,用于根据所述动力学模型以及所述动力学参数辨识算法分别采集当前所述机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,其中,所述无扰动输入数据集和所述扰动输入数据集均包括角速度、角加速度、力矩以及电流值;
计算模块32,用于通过所述动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集;
判断模块42,用于基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞。
其中,上述机器人碰撞检测系统中,所述获取模块12具体用于:
设定当前所述机器人的运动周期,并在所述运动周期内控制当前所述机器人按照预设激励轨迹进行运动,所述预设激励轨迹包括傅里叶级数型的轨迹:
其中,qi表示关节转角,qi0表示关节转角常量,al、bl表示轨迹的常系数,ωf为轨迹的基频,ωfl表示第l阶的频率,N为阶数,t为时间;
在所述运动周期内每隔预设时间采集一次当前所述机器人的第一运动参数,并将采集到的若干所述第一运动参数集合为所述无扰动输入数据集,所述第一运动参数包括所述角速度、所述角加速度、所述力矩以及所述电流值。
其中,上述机器人碰撞检测系统中,所述动力学模型为:
τ=τf+τd
其中,τ为关节驱动力矩,τf为关节摩擦力矩,τd为关节动态力矩,q、 依次为关节的角度、角速度、角加速度,D(q)为惯性项,/>为科式力及离心力项,G(q)为重力项;所述D(q)、所述/>以及所述G(q)均为机器人惯性参数与关节运动参数的函数。
其中,上述机器人碰撞检测系统中,所述预设判别模型包括BP神经网络、SVM支持向量机、决策树以及卷积神经网络,所述判断模块42具体用于:
将所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及时间变量分别输入至所述BP神经网络、所述SVM支持向量机、所述决策树以及所述卷积神经网络中,以分别获取到训练BP神经网络、训练SVM支持向量机、训练决策树以及训练卷积神经网络;
分别向所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络添加对应的权重;
基于所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树、所述训练卷积神经网络以及所述权重计算出当前所述机器人的得分值,并判断所述得分值是否大于预设值;
若是,则确定当前所述机器人已发生碰撞。
其中,上述机器人碰撞检测系统中,所述机器人碰撞检测系统还包括设定模块52,设定模块52具体用于:
根据所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络对不同碰撞场景的判断准确值分别设置不同的动态权重,并依据所述准确值和所述动态权重推算出整体训练模型;
根据所述整体训练模型判断当前所述机器人是否发生碰撞。
本发明第四实施例提供了一种计算机,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一实施例或者第二实施例提供的机器人碰撞检测方法。
本发明第五实施例提供了一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一实施例或者第二实施例提供的机器人碰撞检测方法。
综上所述,本发明上述实施例当提供的机器人碰撞检测方法、系统、计算机及可读存储介质能够对不同情况产生的跳变碰撞或者柔性碰撞均能够以较高的准确率判别出来,同时不需要加装额外的力矩传感器,节约了机器人的使用成本,并且本方法适用于不同种类的机械臂,因此本方法适用于大范围的推广与使用。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种机器人碰撞检测方法,其特征在于,所述方法包括:
获取当前机器人对应的动力学模型以及动力学参数辨识算法,并根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;
根据所述动力学模型以及所述动力学参数辨识算法分别采集当前所述机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,其中,所述无扰动输入数据集和所述扰动输入数据集均包括角速度、角加速度、力矩以及电流值;
通过所述动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集;
基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞;
所述预设判别模型包括BP神经网络、SVM支持向量机、决策树以及卷积神经网络,所述基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞的步骤包括:
将所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及时间变量分别输入至所述BP神经网络、所述SVM支持向量机、所述决策树以及所述卷积神经网络中,以分别获取到训练BP神经网络、训练SVM支持向量机、训练决策树以及训练卷积神经网络;
分别向所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络添加对应的权重;
基于所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树、所述训练卷积神经网络以及所述权重计算出当前所述机器人的得分值,并判断所述得分值是否大于预设值;
若是,则确定当前所述机器人已发生碰撞。
2.根据权利要求1所述的机器人碰撞检测方法,其特征在于:所述根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集的步骤包括:
设定当前所述机器人的运动周期,并在所述运动周期内控制当前所述机器人按照预设激励轨迹进行运动,所述预设激励轨迹包括傅里叶级数型的轨迹:
其中,qi表示关节转角,qi0表示关节转角常量,al、bl表示轨迹的常系数,ωf为轨迹的基频,ωfl表示第l阶的频率,N为阶数,t为时间;
在所述运动周期内每隔预设时间采集一次当前所述机器人的第一运动参数,并将采集到的若干所述第一运动参数集合为所述无扰动输入数据集,所述第一运动参数包括所述角速度、所述角加速度、所述力矩以及所述电流值。
3.根据权利要求1所述的机器人碰撞检测方法,其特征在于:所述动力学模型为:
τ=τf+τd
其中,τ为关节驱动力矩,τf为关节摩擦力矩,τd为关节动态力矩,q、 依次为关节的角度、角速度、角加速度,D(q)为惯性项,/>为科式力及离心力项,G(q)为重力项;所述D(q)、所述/>以及所述G(q)均为机器人惯性参数与关节运动参数的函数。
4.根据权利要求1所述的机器人碰撞检测方法,其特征在于:所述基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞的步骤之后,所述方法还包括:
根据所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络对不同碰撞场景的判断准确值分别设置不同的动态权重,并依据所述准确值和所述动态权重推算出整体训练模型;
根据所述整体训练模型判断当前所述机器人是否发生碰撞。
5.一种机器人碰撞检测系统,其特征在于,所述系统包括:
获取模块,用于获取当前机器人对应的动力学模型以及动力学参数辨识算法,并根据所述动力学模型以及所述动力学参数辨识算法采集当前所述机器人在未发生碰撞以及预设时间内生成的无扰动输入数据集;
采集模块,用于根据所述动力学模型以及所述动力学参数辨识算法分别采集当前所述机器人在发生跳变碰撞或者柔性碰撞以及预设时间内生成的扰动输入数据集,其中,所述无扰动输入数据集和所述扰动输入数据集均包括角速度、角加速度、力矩以及电流值;
计算模块,用于通过所述动力学模型分别计算出与所述角速度、所述角加速度对应的理论角速度以及理论角加速度,并收集所述理论角速度以及所述理论角加速度作为理论输入数据集;
判断模块,用于基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞,其中,所述预设判别模型包括BP神经网络、SVM支持向量机、决策树以及卷积神经网络,所述基于所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及预设判别模型判断当前所述机器人是否发生碰撞的步骤包括:
将所述无扰动输入数据集、所述扰动输入数据集、所述理论输入数据集以及时间变量分别输入至所述BP神经网络、所述SVM支持向量机、所述决策树以及所述卷积神经网络中,以分别获取到训练BP神经网络、训练SVM支持向量机、训练决策树以及训练卷积神经网络;
分别向所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树以及所述训练卷积神经网络添加对应的权重;
基于所述训练BP神经网络、所述训练SVM支持向量机、所述训练决策树、所述训练卷积神经网络以及所述权重计算出当前所述机器人的得分值,并判断所述得分值是否大于预设值;
若是,则确定当前所述机器人已发生碰撞。
6.根据权利要求5所述的机器人碰撞检测系统,其特征在于:所述获取模块具体用于:
设定当前所述机器人的运动周期,并在所述运动周期内控制当前所述机器人按照预设激励轨迹进行运动,所述预设激励轨迹包括傅里叶级数型的轨迹:
其中,qi表示关节转角,qi0表示关节转角常量,al、bl表示轨迹的常系数,ωf为轨迹的基频,ωfl表示第l阶的频率,N为阶数,t为时间;
在所述运动周期内每隔预设时间采集一次当前所述机器人的第一运动参数,并将采集到的若干所述第一运动参数集合为所述无扰动输入数据集,所述第一运动参数包括所述角速度、所述角加速度、所述力矩以及所述电流值。
7.根据权利要求5所述的机器人碰撞检测系统,其特征在于:所述动力学模型为:
τ=τf+τd
其中,τ为关节驱动力矩,τf为关节摩擦力矩,τd为关节动态力矩,q、 依次为关节的角度、角速度、角加速度,D(q)为惯性项,/>为科式力及离心力项,G(q)为重力项;所述D(q)、所述/>以及所述G(q)均为机器人惯性参数与关节运动参数的函数。
8.一种计算机,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4中任意一项所述的机器人碰撞检测方法。
9.一种可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至4中任意一项所述的机器人碰撞检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210581657.6A CN114800525B (zh) | 2022-05-26 | 2022-05-26 | 机器人碰撞检测方法、系统、计算机及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210581657.6A CN114800525B (zh) | 2022-05-26 | 2022-05-26 | 机器人碰撞检测方法、系统、计算机及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114800525A CN114800525A (zh) | 2022-07-29 |
CN114800525B true CN114800525B (zh) | 2023-12-08 |
Family
ID=82517108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210581657.6A Active CN114800525B (zh) | 2022-05-26 | 2022-05-26 | 机器人碰撞检测方法、系统、计算机及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114800525B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109732608A (zh) * | 2019-02-18 | 2019-05-10 | 上海电气集团股份有限公司 | 工业机器人的惯性参数的辨识方法及系统 |
CN111267105A (zh) * | 2020-03-18 | 2020-06-12 | 无锡砺成智能装备有限公司 | 一种六关节机器人的动力学参数辨识及碰撞检测方法 |
CN113021340A (zh) * | 2021-03-17 | 2021-06-25 | 华中科技大学鄂州工业技术研究院 | 机器人的控制方法、装置、设备及计算机可读存储介质 |
CN114012734A (zh) * | 2021-12-03 | 2022-02-08 | 西安交通大学 | 一种参数自适应的机器人碰撞检测方法 |
CN114169230A (zh) * | 2021-11-24 | 2022-03-11 | 华南理工大学 | 一种机器人动力学参数的辨识方法 |
CN114211491A (zh) * | 2021-12-20 | 2022-03-22 | 深圳市优必选科技股份有限公司 | 一种碰撞检测方法、装置、计算机可读存储介质及机器人 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3002048B1 (fr) * | 2013-02-14 | 2016-07-01 | Commissariat Energie Atomique | Procede de detection amelioree de collision d'un robot avec son environnement, systeme et produit programme d'ordinateur mettant en œuvre le procede |
CN113119100B (zh) * | 2019-12-30 | 2022-05-13 | 深圳市优必选科技股份有限公司 | 冗余机械臂控制方法、装置、可读存储介质及设备 |
-
2022
- 2022-05-26 CN CN202210581657.6A patent/CN114800525B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109732608A (zh) * | 2019-02-18 | 2019-05-10 | 上海电气集团股份有限公司 | 工业机器人的惯性参数的辨识方法及系统 |
CN111267105A (zh) * | 2020-03-18 | 2020-06-12 | 无锡砺成智能装备有限公司 | 一种六关节机器人的动力学参数辨识及碰撞检测方法 |
CN113021340A (zh) * | 2021-03-17 | 2021-06-25 | 华中科技大学鄂州工业技术研究院 | 机器人的控制方法、装置、设备及计算机可读存储介质 |
CN114169230A (zh) * | 2021-11-24 | 2022-03-11 | 华南理工大学 | 一种机器人动力学参数的辨识方法 |
CN114012734A (zh) * | 2021-12-03 | 2022-02-08 | 西安交通大学 | 一种参数自适应的机器人碰撞检测方法 |
CN114211491A (zh) * | 2021-12-20 | 2022-03-22 | 深圳市优必选科技股份有限公司 | 一种碰撞检测方法、装置、计算机可读存储介质及机器人 |
Also Published As
Publication number | Publication date |
---|---|
CN114800525A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Intelligent fault diagnosis for planetary gearbox using time-frequency representation and deep reinforcement learning | |
CN109940622B (zh) | 一种基于电机电流的机器人机械臂无传感碰撞检测方法 | |
US11529733B2 (en) | Method and system for robot action imitation learning in three-dimensional space | |
CN110065073B (zh) | 一种机器人动力学模型辨识方法 | |
CN110705105B (zh) | 一种机器人逆动力学模型的建模方法及系统 | |
CN112757345A (zh) | 一种协作机器人碰撞检测方法、装置、介质及电子设备 | |
Xu et al. | A review on significant technologies related to the robot-guided intelligent bolt assembly under complex or uncertain working conditions | |
US20220339787A1 (en) | Carrying out an application using at least one robot | |
Li et al. | Navigation of mobile robots based on deep reinforcement learning: Reward function optimization and knowledge transfer | |
Yu et al. | Neural motion prediction for in-flight uneven object catching | |
WO2023123911A1 (zh) | 机器人碰撞检测方法、装置、电子设备及存储介质 | |
CN114800525B (zh) | 机器人碰撞检测方法、系统、计算机及可读存储介质 | |
JPWO2020213062A1 (ja) | モータ制御装置 | |
CN113954069B (zh) | 一种基于深度强化学习的机械臂主动容错控制方法 | |
CN114083543B (zh) | 一种空间机械臂主动故障诊断方法 | |
Wang et al. | Actor-critic method-based search strategy for high precision peg-in-hole tasks | |
Khireddine et al. | Fault diagnosis in robotic manipulators using artificial neural networks and fuzzy logic | |
CN114707399A (zh) | 一种六维力传感器的解耦方法 | |
Brockmann et al. | The voraus-AD Dataset for Anomaly Detection in Robot Applications | |
US11285604B2 (en) | Robot collision detection using cascading variational autoencoder | |
Jandaghi et al. | Motion Dynamics Modeling and Fault Detection of a Soft Trunk Robot | |
Jang et al. | Parameter identification of an unknown object in human-robot collaborative manipulation | |
Villagrossi et al. | Optimal robot dynamics local identification using genetic-based path planning in workspace subregions | |
Cao et al. | A General Method for Autonomous Assembly of Arbitrary Parts in the Presence of Uncertainty | |
Ma et al. | Dynamic Parameter Identification and Collision Detection of Robot |
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 |