CN113272105A - 用于控制机器人臂的系统和方法 - Google Patents
用于控制机器人臂的系统和方法 Download PDFInfo
- Publication number
- CN113272105A CN113272105A CN201980085997.6A CN201980085997A CN113272105A CN 113272105 A CN113272105 A CN 113272105A CN 201980085997 A CN201980085997 A CN 201980085997A CN 113272105 A CN113272105 A CN 113272105A
- Authority
- CN
- China
- Prior art keywords
- force
- probability
- robotic arm
- current value
- wrist
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 196
- 238000001514 detection method Methods 0.000 claims abstract description 107
- 238000003780 insertion Methods 0.000 claims abstract description 100
- 230000037431 insertion Effects 0.000 claims abstract description 100
- 238000005259 measurement Methods 0.000 claims abstract description 59
- 210000000707 wrist Anatomy 0.000 claims abstract description 51
- 230000001143 conditioned effect Effects 0.000 claims abstract description 11
- 230000008569 process Effects 0.000 claims description 140
- 230000006870 function Effects 0.000 claims description 85
- 238000009826 distribution Methods 0.000 claims description 78
- 238000011084 recovery Methods 0.000 claims description 16
- 230000002159 abnormal effect Effects 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 15
- 230000005856 abnormality Effects 0.000 claims description 12
- 230000002547 anomalous effect Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 238000012360 testing method Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 26
- 239000000047 product Substances 0.000 description 11
- 238000013459 approach Methods 0.000 description 10
- 239000013598 vector Substances 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000011985 exploratory data analysis Methods 0.000 description 4
- 239000012636 effector Substances 0.000 description 3
- 238000003064 k means clustering Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000013011 mating Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013179 statistical model Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 210000003857 wrist joint Anatomy 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/1628—Programme controls characterised by the control loop
- B25J9/1653—Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
-
- 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
- B25J9/1687—Assembly, peg and hole, palletising, straight line, weaving pattern movement
-
- 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/1628—Programme controls characterised by the control loop
- B25J9/1633—Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position 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/1674—Programme controls characterised by safety, monitoring, diagnostic
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/402—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31081—Detect position robot, agv relative to machine to start communication
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40223—If insertion force to high, alarm, stop for operator assistance
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40599—Force, torque sensor integrated in joint
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Human Computer Interaction (AREA)
- Mathematical Optimization (AREA)
- Evolutionary Computation (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Mathematical Analysis (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Artificial Intelligence (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Manipulator (AREA)
Abstract
一种用于控制机器人臂执行沿着插入线插入部件的系统接受机器人臂的腕部沿着插入线在当前位置所经历的力的测量,并且根据作为机器人臂的腕部沿着插入线的位置的概率函数的机器人臂的腕部沿着插入线所经历的力的概率关系来确定以位置的当前值为条件的力的值的概率。概率函数从具有该机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量学习。该系统基于力的当前值的概率来确定异常检测结果并且基于异常检测结果来控制机器人臂。
Description
技术领域
本发明涉及机器人组装,具体地,涉及在产品的机器人组装期间自动检测异常插入。
背景技术
随着感测和致动以及计算能力改进,在自动化组装中机器人的作用已得到巨大改进。机器人组装广泛用于汽车行业中的组装任务以及用于制造计算机电路板、电话等的更精密部件的组装。从故障自动错误恢复形成这些机器人应用的不可或缺的部分。基于异常检测的自动错误恢复有助于维持生产率要求以及所组装的产品的期望规格。
在许多这些应用中,机器人遵循操作序列以重复方式操作,以通过应用预定义的一组动作从一组零件组装产品。这些预定义的动作通常没有考虑机器人行为的不确定性和不精确。然而,这些不可预测的行为会导致最终产品的不可取的故障组装,因此对于自主组装任务而言,从这些错误恢复变得重要。例如,考虑向电路板中插入电线束。电线束具有非常小的余隙,因此机器人运动的任何不确定性会导致连接器卡住或未对准,因此导致故障连接。在组装期间检测这些组装两个(或更多个)零件的故障尝试是从这些故障恢复的任何纠正动作的先决条件。在这些机器人系统中会出于很多原因而发生这些异常。一些可能示例是由于可能测量噪声而引起的机器人的故障行为、机器人中的热膨胀所累积的故障、在组装期间组装的零件的未对准、沿着组装线组装的零件中的故障等。结果,在组装过程中存在多个不确定性源,具有自动异常检测算法可改进这些自主操作的效率。
插入型机器人组装非常广泛地用于制造诸如计算机、移动电话等的各种电子设备。这些任务的特征通常在于所配合的零件的低公差,因此在组装期间需要高精度。在插入过程期间提早检测配合中的故障可使组装期间对产品的损坏量最小化。在机器人插入期间利用故障检测(也称为异常检测)的自动错误恢复方法可被大致分为基于模型的方法和数据驱动的方法。
在机器人插入期间用于故障检测的基于模型的方法中,使用该过程的物理知识创建模型。这些模型可预测在插入过程的不同阶段期间所测量的力的分布,并且在线用于检测与所预测的力分布的任何偏差。参见例如Jiam Huang、Toshio Fukuda和TakayukiMatsuno的“Model-Based Intelligent Fault Detection and Diagnosis for MatingElectric Connectors in Robotic Wiring Harness Assembly Systems”(IEEETransactions on Mechatronics,第13卷,第1期)。
然而,基于模型的方法遭受过程中固有的不确定性。为了克服该缺点,一些实现方式估计确保正常配合的模型参数界限。然后,从观测到的数据在线估计模型的参数,并且如果参数不满足这些界限,则检测到异常。尽管这些修改改进了这些技术的鲁棒性,但是它们增加了底层技术的复杂度。这限制了大多数基于模型的技术的实时有效使用。此外,为这些过程创建基于物理的模型需要大量领域知识,并且对于许多复杂应用可能不可行。
有许多技术利用数据驱动的建模来在机器人插入期间检测异常。例如,一个方法使用关于在插入期间观测到的最大力或扭矩的阈值。然而,该方法遭受过多的虚警(即,不正确的阳性检测)。机器人在插入过程期间的任何点可偏离正常轨迹,因此,位置无关的阈值实现次优性能。
一些其它方法使用分层决策规则来解决此问题,该规则首先决定插入过程的阶段(例如,接近方向、配合、缩回等),然后决定该阶段是正常还是故障。这些技术利用分层分类方法,因此通过针对各个阶段制作不同模型来分解过程中涉及的不确定性。然而,这些方法对插入过程的不确定性所导致的过程噪声敏感,并且在一些情况下可能不准确。参见例如Fei Chen、Ferdinando Cannella、Jian Huang、Hironobu Sasaki和Toshio Fukuda的论文“A Study on Error Recovery Search Strategies of Electronic Connector Matingfor Robotic Fault-Tolerant Assembly”(Journal of Intelligent&Robotic Systems)。
因此,需要数据驱动的自动错误检测和恢复系统和方法,其明确地考虑了机器人组装中在插入过程期间所涉及的不确定性。然而,存在与数据驱动的模型的效率有关的挑战,其与模型的准确性和计算复杂度二者有关。
发明内容
使用具有带夹具的腕部的机器人臂的插入型机器人组装广泛用于执行部件的插入以组装各种产品(例如,包括计算机和/或移动电话的电子设备)。这种组装通常由机器人以开环方式执行,其中通过施加给定控制输入序列,机器人的零件沿着预定义的轨迹移动,以实现最终期望的组装产品。随着最近感测技术的改进,可测量机器人在尝试期望的组装的同时所经历的力。这些传感器通常安装在机器人的腕关节上,并且可测量在操纵操作期间机器人的末端执行器所经历的力张量。需要基于机器学习的异常检测算法,其可解释力传感器所测量的数据并且对机器人组装的异常尝试进行校正/报警。
一些实施方式的目的在于提供一种用于从安装在机器人上的力传感器的测量实时检测机器人组装的异常尝试的系统和方法。例如,力传感器可安装在机器人的腕部上以测量执行部件插入以组装产品的机器人所经历的力。一些实施方式的另一目的在于提供自动错误恢复,其使用沿着机器人的末端执行器的轨迹的力分布的预期行为的数据驱动模型,同时允许在机器人组装中由过程噪声引入的不可控不确定性。例如,一个实施方式公开了自动错误恢复,其利用在正常(成功)插入过程期间沿着机器人的轨迹的预期力分布的概率函数模型。
一些实施方式基于这样的认识:由于力传感器的测量的复杂性,在插入过程期间数据驱动的异常检测通常是确定性的。具体地,除了沿着三个轴的位置和取向之外,力张量包括沿着机器人的轴线的力和力矩的测量(Fx、Fy、Fz、Mx、My、Mz)。因此,传感器所提供的测量空间至少为12维(或者当考虑沿着所有轴线的速度时,18维)。因此,即使确定性异常检测未能考虑在插入过程期间所涉及的不确定性,因此对过程噪声不够鲁棒,对插入过程期间所经历的所有力和力矩的联合分布进行建模的概率异常检测也是高维概率密度建模问题,其通常数据效率低下。
为了降低所关联的问题的计算复杂度,一些实施方式基于借助探索性数据分析(EDA)执行的发现:在连接器配合实验期间在特定测量的变量之间存在稳定关系或规律性。这导致与底层异常检测问题有关的多个令人惊讶的理解。一些实施方式基于这样的认识:在沿着用于部件插入的接近方向经历的力与沿着同一方向的位置之间存在稳定关系。该关系是稳定、概率性的,并且与联合概率分布相比允许低维函数关系。
具体地,一些实施方式基于这样的认识和实验发现:对于沿着插入线的位置的各个值,力的概率分布(由于有噪测量)仅以插入线上的位置为条件,而与任何其它测量的变量(即,Fx、Fy或力矩分量)无关。另外,该概率关系与时间无关,即,在正常操作期间,机器人的腕部所经历的力(由力传感器测量)与机器人移动的速度无关。作为该实验发现的结果,一些实施方式能够将原始12(或18)维问题降低至力对插入线上的位置的仅两个维度。如本文所使用的,插入线限定所插入的部件的运动轨迹和/或与所插入的部件刚性连接的部件的运动轨迹。这种刚性连接的部件的示例是机器人组件的机器人臂的腕部。实际上,通过绘制相对于插入线的关系而带来的降维允许实施方式使用之前计算上禁止的概率数据驱动异常检测。
为此,一些实施方式使用作为机器人臂的腕部沿着插入线的位置的概率函数的机器人臂的腕部沿着插入线所经历的力的概率关系来执行自动异常检测。在机器人臂操作期间,在当前时刻,实施方式根据概率函数确定以机器人臂的腕部的当前位置为条件的当前力的概率并且基于力的当前值的概率来确定异常检测的结果。实际上,实施方式允许以实际计算要求实时执行更多概率检测。
一些实施方式从具有该机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量在线和/或离线学习概率函数。例如,一个实施方式使用概率回归技术以位置和力的两个维度对该概率关系进行建模。概率函数针对沿着插入线的位置的各个值定义力值的概率分布。沿着插入线的位置可以是连续值。然而,实际上,沿着插入线的位置的值以某一分辨率量化,以形成位置值的序列。例如,在一些实施方式中,值的分辨率由力传感器的分辨率支配。力值的概率分布允许估计以位置的当前值为条件的力的当前值的可能性或概率。实际上,这允许更准确的概率异常检测,因为其考虑了测量和插入过程的不确定性。
一些实施方式基于这样的认识:可使用诸如具有置信区间估计的最小二乘支持向量回归公式的各种回归技术来确定作为位置的函数估计力分布的概率函数。然而,这些技术中的一些限于独立同分布(i.i.d.)测量。一些实施方式基于这样的认识:在自动机器人组装的一些情况下,机器人所经历的力取决于将零件配合在一起的机器人的轨迹,因此测量的i.i.d模型可能不准确。因此,在那些情况下,需要不同的回归技术。
一些实施方式使用定义条件概率分布的概率函数,使得位置处的力的概率分布以先前位置处的力的先前概率分布为条件。实际上,这些条件概率关系增加了异常检测的准确性。允许确定具有条件概率分布的概率函数的回归技术的示例包括高斯过程回归。
一些实施方式基于这样的认识:学习定义条件概率分布的概率函数可以是时间和计算上昂贵的过程。例如,条件概率分布可由针对沿着插入线的位置的各个值定义概率密度函数的多个参数表示。针对位置的各个值学习所有这些参数可在计算上昂贵。因此,需要降低用于学习概率函数的计算要求。
为此,一些实施方式使用高斯过程回归对机器人沿着插入方向所经历的力与沿着该方向的位置之间的底层稳定关系进行建模。高斯过程回归是非参数统计模型,其中输入空间中的每一点与正态分布的随机变量关联。更具体地,高斯过程是随机变量的集合,其任何有限数量由联合高斯分布表示。结果,高斯过程仅由两个参数,即,其均值和协方差函数(也称为核函数)完全定义。在估计高斯过程的超参数之后,可使用学习的回归模型来预测函数在任何测试点的概率分布。为此,一些实施方式通过学习以沿着插入线的位置参数化的核函数来确定概率函数。以这种方式,沿着轨迹在任何测试点的力分布由从高斯过程获得的均值和协方差完全定义。实际上,将概率函数建模为高斯过程回归降低了用于学习力与插入线上的位置之间的概率关系的计算要求。
一些实施方式基于这样的认识:对于一些情况,学习正则高斯过程回归仍可计算上昂贵。学习的计算复杂度随O(n3)变化,其中“n”是数据点的数量。为了使得学习计算更高效,一些实施方式学习局部高斯过程回归以通过将多个高斯过程模型拟合到数据来降低计算复杂度。实施方式使用所有局部高斯过程模型上的预期来提供最终预测。局部高斯过程模型通过将问题分成大小为ni<n(i=1,2,…,m)的多个子问题来减少学习模型所需的计算时间,并使用这“m”个模型来进行预测。各个局部模型被拟合到数据集中的特定聚类。一些实施方式使用诸如k均值聚类或高斯混合模型的聚类技术来估计数据中的聚类。这些聚类技术的输入自变量是聚类的数量——局部高斯过程模型的最终性能取决于所选聚类的数量,因此其被当作局部高斯过程模型的超参数。在估计所有聚类和聚类质心之后,使用用于高斯过程的正则边际负似然法来估计所有“m”个高斯过程的超参数。在训练期间,通过估计由“m”个高斯过程模型进行的预测的加权平均来获得测试数据点的预测,并且权重由“m”个聚类质心与测试数据点之间的距离给出。该距离可使用以两个向量作为自变量并输出标量值的核来估计——一些常见选择是径向基函数或向量之间的正则欧几里得距离。
在学习作为位置的函数估计力分布的概率函数之后,一些实施方式针对插入力使用概率函数估计插入的异常得分。特别是,高斯过程将输入中的变量的每一有限组合与多元高斯分布关联,以估计新观测的概率。利用GP的此性质,使用GP在新测试数据点处的预测由高斯分布给出。因此,一些实施方式根据概率函数来确定以当前位置为条件的当前力的概率——这使用高斯分布的参数和所观测到的力测量来获得。此外,使用置信度水平作为力被认为正常的概率的最小值的阈值,一些实施方式基于在该点处获得的概率分布针对沿着机器人轨迹的预期测量计算置信区间。
不同实现方式使用异常得分的不同计算。例如,在一些实现方式中,考虑沿着轨迹的特定点的三个可能异常得分,即,二值异常得分、连续异常得分和混合异常得分。在二值异常得分实现方式中,力测量如果落在置信区间之外则给予异常得分1,如果落在置信区间内则给予得分0。在连续异常得分实现方式中,给定对应多元高斯概率分布,给予力测量与有多大可能观测到这种值对应的异常得分。该值被计算为1减去多元高斯概率分布在特定力测量处的评估。在混合异常得分实现方式中,力测量如果落在置信区间内则给予异常得分0,如果落在置信区间之外则给予如连续异常得分中计算的高于0的得分。利用所有或各个这些实现方式,可通过对沿着所观测的测试轨迹的所有点的异常得分取平均来获得整个插入的总异常得分。所提出的异常检测算法不限制异常得分计算的选择。还要注意,根据例如多元高斯分布的方差或似然函数,多个其它连续异常得分可被选择并因此也应用于混合异常得分。一些实施方式基于概率与异常检测阈值的比较来确定异常检测的结果,例如,当概率高于异常检测阈值时声明异常。
概率分布可与置信区间关联,置信区间提供所估计的有可能包括未知参数的值范围,所估计的范围从给定一组样本数据计算。置信区间与置信度水平(比如α)关联,其中α是低于1的正数。对于高斯分布,可完全使用该分布的均值和方差来估计置信区间。沿着机器人的轨迹的每一点的这些置信区间为正常插入操作期间所经历的力提供允许操作余量。
一些实施方式使用受试者工作特性(ROC)曲线为检测过程确定异常检测阈值。进行此设计以在阳性检测率与允许虚警率之间进行权衡。此实施方式可限制不可取的虚警率。
一些实施方式通过基于异常检测的结果控制机器人臂来执行自动错误恢复。例如,响应于检测到异常,一个实施方式停止机器人臂。另外地或另选地,当检测到异常时,另一实施方式将机器人臂缩回到安全位置。有利地,在组装过程期间检测异常允许在有缺陷的零件在组装过程中进一步向下移动之前识别它们,因此允许防止组装的零件的进一步损坏。此外,一些实施方式可基于来自异常检测过程的反馈对组装过程进行补偿。
附图说明
[图1A]图1A示出根据一些实施方式的机器人组件的示意图以及异常检测和控制系统的框图。
[图1B]图1B示出一些实施方式用于在机器人插入过程中检测异常的概率关系的示意图。
[图1C]图1C示出根据一些实施方式的由异常检测器执行的检测异常的方法的流程图。
[图1D]图1D示出根据一些实施方式的确定力值的置信区间的示意图。
[图2]图2示出根据一些实施方式的用于确定力与机器人臂的腕部沿着插入线的位置之间的概率关系的方法的框图。
[图3]图3示出例示了使用一些实施方式所使用的高斯过程回归获得的高斯分布的置信区间和用于预测的置信区间的示意图。
[图4]图4示出一些实施方式所使用的局部高斯过程回归的示意图。
[图5]图5示出根据一些实施方式的学习局部高斯过程并使用局部高斯过程预测异常的方法的框图。
[图6]图6示出例示了根据一些实施方式的局部高斯过程如何用于估计测试点处的预期力分布的置信区间的示意图。
[图7]图7示出根据一些实施方式的使用学习的高斯过程回归来计算异常得分的方法的示意图。
[图8]图8示出例示了根据一个实施方式的估计异常检测阈值的方法的示意图。
[图9]图9示出根据一些实施方式的用于控制机器人臂执行包括沿着插入线插入部件以组装产品的操作的系统的框图。
具体实施方式
图1A示出根据一些实施方式的机器人组件100的示意图以及异常检测和控制系统105的框图。机器人组件包括用于执行包括沿着插入线插入部件以组装产品的操作的机器人臂105。例如,机器人臂将第一部件103插入到第二部件104中。在一些实施方式中,机器人臂105包括用于确保移动部件103的多个自由度的腕部102。在一些实现方式中,腕部102具有用于固定移动部件103的夹具106。
机器人组件100被配置为沿着插入线执行插入操作(例如,将部件103插入到部件104中)。如本文所使用的,插入线是限定部件103的运动轨迹的腕部102的运动轨迹。在简单场景中,插入线可仅决定腕部102的垂直运动。然而,腕部102具有多个自由度,因此插入线可具有跨越多维空间的运动分布。
机器人组件100还包括操作上连接到机器人臂的腕部的力传感器110,以测量在操纵和插入操作期间机器人的末端执行器所经历的力张量。例如,力传感器可安装在机器人的腕关节上。例如,除了沿着三个轴的位置和取向之外,力张量包括沿着机器人的轴线的力和力矩的测量115(Fx、Fy、Fz、Mx、My、Mz)。由于具有腕部的机器人臂的运动的灵活性,当考虑沿着所有轴线的速度时,传感器所提供的测量空间为12维或18维。
异常检测和控制系统105的目的是检测机器人组件100所执行的插入过程的异常并且基于异常检测的结果来控制组装。另一目的是使用力传感器110的测量115来执行这种异常检测。一些实施方式基于这样的认识:确定性异常检测未能考虑插入过程期间所涉及的不确定性,因此对过程噪声不够鲁棒。另外,对插入过程期间所经历的所有力和力矩的联合分布建模的概率异常检测是高维概率密度建模问题,其通常数据效率低下。为此,一些实施方式的目的是以实际计算要求实时执行机器人组装的概率异常检测。然而,由于传感器102所提供的测量空间的高纬度,这种异常检测问题在计算上具有挑战性。
一些实施方式基于借助探索性数据分析(EDA)执行的发现:在连接器配合实验期间在特定测量的变量之间存在稳定关系或规律性。这导致与底层异常检测问题有关的多个令人惊讶的发现。一些实施方式基于这样的认识:在腕部沿着插入线所经历的力与腕部的位置之间存在稳定关系。具体地,存在作为机器人臂的腕部沿着插入线的位置的概率函数的机器人臂的腕部沿着插入线所经历的力的概率关系。该关系是稳定、概率性的,并且与通过所有可测量变量(12或18个测量)上的完全联合概率分布建模的关系相比允许低维函数关系。
为此,系统105包括输入接口120,其被配置为接受操作上连接到机器人臂的腕部的力传感器的测量。这些测量包括指示机器人臂的腕部沿着插入线在不同位置处机器人臂的腕部所经历的力的数据。这些测量可以是从传感器110接收的原始测量或者生成数据的测量的任何衍生物。
系统105还包括存储器130,其被配置为存储作为机器人臂的腕部沿着插入线的位置的概率函数的机器人臂的腕部沿着插入线所经历的力的概率关系。例如,从具有该机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量在线和/或离线学习概率函数。例如,可从机器人臂105的操作的测量和/或从具有与臂105相同的配置的不同机器人臂执行的相同操作的测量学习概率函数。
系统105还包括异常检测器,其使用处理器140实现,并且被配置为使用存储在存储器130中的概率关系和输入接口120所接收的测量来执行异常检测。例如,异常检测器被配置为基于力传感器的测量来确定力的当前值和沿着插入线的位置的当前值,根据概率函数来确定以位置的当前值为条件的力的当前值的概率,并且基于力的当前值的概率来确定异常检测的结果。
图1B示出一些实施方式用于在机器人插入过程中检测异常的概率关系的示意图。图1C示出根据一些实施方式的由异常检测器执行的检测异常的方法的流程图。概率关系针对沿着插入线的位置的各个值定义160力值的概率分布。例如,概率分布170是针对位置的值163确定的力值的概率分布。
参照图1B和图1C,异常检测器确定180力的当前值173并确定185位置的当前值163。位置和力的值基于力传感器的测量来确定。接下来,异常检测器选择180与位置的当前值163对应的条件概率分布170的参数167,并且根据概率分布170(例如,由所选参数167定义的概率密度函数)确定195力的当前值173的概率177。
异常检测器基于力的当前值的概率来确定异常检测的结果。当力的当前值的概率高时,异常不太可能,并且异常检测的结果可为“无异常”。当力的当前值的概率低时,异常很有可能,并且异常检测的结果可为“异常”。例如,在一个实施方式中,异常检测器将力概率171与置信度阈值174进行比较,以当值177小于置信度阈值174时检测异常力。在图1B的示例中,力值173正常,即,非异常。
系统105还包括恢复控制器150,其被配置为基于异常检测的结果145来控制机器人臂。例如,恢复控制器150可向机器人组件100的致动器提交命令155。命令的提交允许恢复控制器响应于检测到异常而停止机器人臂和/或将机器人臂响应于检测到异常而缩回到安全位置。
基于力与沿着插入线的位置之间的概率关系的异常检测允许将异常检测问题的维数从12或18维度降低至仅两个维度。降维允许实时执行数据驱动的异常检测。另外,与确定性关系相比,该关系的概率本质是实际机器人组装过程的更准确表示。概率关系允许考虑异常检测过程的不确定性,以增加故障检测的准确性。
在一个实施方式中,当力的当前值的概率小于指定当前力的概率的最小值的置信度阈值时,异常检测器检测到异常。此实施方式允许对机器人组装中的异常情况快速做出反应。然而,在一些情况下基于力的单个异常值来检测异常可能不准确。
一些实施方式的目的是减少异常检测的假阳性和/或假阴性错误。一些实施方式基于这样的认识:与异常力的一个值相比,当力的多个值具有指示异常情况的概率时,这些错误可减少。例如,在一个实施方式中,当力的多个值的概率小于置信度阈值时,异常检测器检测到异常。
另外,一些实施方式基于这样的认识:对于各个位置,异常检测可为二值的,即,对于当前插入,力异常或正常。此外,指定当前力的概率的最小值的置信度阈值可限定指示成功组装过程的正常力的置信区间。该置信区间简化在组装过程期间异常情况的动力学评估,并且允许预先(例如,离线)对力的值执行概率估计。
图1D示出根据一些实施方式的确定力值的置信区间的示意图。例如,位置163根据概率关系160具有力170的概率分布。对于给定置信度阈值174,概率分布170定义正常(即,非异常)力值的区间。在此示例中,对于位置163,力的正常值是介于力171和力172之间的值。对于不同的位置,置信区间不同。例如,对于位置161,置信区间由力值178和179定义。相组合,位置值序列的多个置信区间形成由边界181和182限制的置信通道。置信通道定义作为沿着插入线的位置的函数的力的允许操作余量。实际上,置信区间允许使学习概率关系与异常检测相分离并且简化多个位置/力对的异常检测,这可降低假异常检测率。
图2示出根据一些实施方式的用于确定力与机器人臂的腕部沿着插入线的位置之间的概率关系的方法的框图。例如,一个实施方式将回归202拟合到训练数据201以用于学习/估计机器人臂的腕部沿着插入线在不同位置处机器人臂的腕部所经历的力之间的概率关系。
特别是,回归需要不仅能够预测预测,而且能够预测与测试数据点处的任何预测关联的不确定性。为此,一些实施方式使用随机回归技术将回归模型拟合到数据。这种技术的示例包括具有置信区间估计的最小二乘支持向量回归公式。然而,这些技术中的一些限于独立同分布(i.i.d.)测量。一些实施方式基于这样的认识:在自动机器人组装的一些情况下,机器人所经历的力取决于将零件配合在一起的机器人的轨迹,因此测量的i.i.d模型可能不准确。因此,在那些情况下,需要不同的回归技术。
一些实施方式使用定义条件概率分布的概率函数,使得位置处的力的概率分布以先前位置处的力的先前概率分布为条件。实际上,这些条件概率关系增加了异常检测准确性。允许确定具有条件概率分布的概率函数的回归技术的示例包括高斯过程回归。
一些实施方式基于这样的认识:学习定义条件概率分布的概率函数可以是时间和计算上昂贵的过程。例如,条件概率分布可由针对沿着插入线的位置的各个值定义概率密度函数的多个参数表示。针对位置的各个值学习所有这些参数可在计算上昂贵。因此,需要降低用于学习概率函数的计算要求。
为此,一些实施方式使用高斯过程回归对机器人沿着插入方向所经历的力与沿着该方向的位置之间的底层稳定关系进行建模。高斯过程回归是非参数统计模型,其中输入空间中的每一点与正态分布的随机变量关联。更具体地,高斯过程是随机变量的集合,其任何有限数量由联合高斯分布表示。结果,高斯过程仅由两个参数,即,其均值和协方差函数(也称为核函数)完全定义。在估计高斯过程的超参数之后,可使用学习的回归模型来预测函数在任何测试点的概率分布。为此,一些实施方式通过学习以沿着插入线的位置参数化的核函数来确定概率函数。以这种方式,沿着轨迹在任何测试点的力分布由从高斯过程获得的均值和协方差完全定义。实际上,将概率函数建模为高斯过程回归降低了用于学习概率函数的计算要求。
高斯过程回归提供了数学框架,其中测试数据点处的预测由高斯分布近似,因此可用于当前问题。结果,高斯过程回归用于学习异常检测问题的概率关系。例如,在一个实施方式中,通过将高斯过程回归模型拟合到训练数据来学习概率函数,该训练数据由具有该机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量定义。例如,高斯过程回归模型接受先验均值和先验协方差以描述训练数据。通常,先验均值为零,并且先验协方差由核函数建模。为了拟合高斯过程回归模型,一些实施方式通过使用训练数据使高斯过程回归模型的负对数似然度最大化来确定后验均值和后验协方差函数,如例如Rasmussen、Carl Edward的“Gaussian processes in machine learning”中所描述的。
一些实施方式使用置信度阈值206来为沿着插入线的位置序列中的各个位置值估计203置信区间。指定当前力的概率的最小值的置信度阈值可定义指示成功组装过程的正常力的置信区间。实际上,置信区间简化了在组装过程期间异常情况的动力学评估,并且允许预先(例如,离线)对力的值执行概率估计。
一些实施方式基于异常力的多个值来估计204异常检测阈值以用于检测阈值。例如,一些实施方式使用计数器保存在插入期间当前位置的力值异常的次数。该计数器与异常检测阈值进行比较,并且当计数器大于异常检测阈值时声明异常。在一些实现方式中,使用各种优化技术来估计205异常检测阈值以降低对训练数据201的异常检测的误检率和阳性检测率。
图3示出例示了高斯分布320的置信区间和使用一些实施方式所使用的高斯过程回归310获得的预测的置信区间的示意图。高斯过程是用于对概率关系建模的非参数技术,并且因其推断数据的灵活性和准确性而著名。高斯过程是完全由均值和协方差函数指定的随机过程。
高斯过程数学上可使用插入过程f(x)的均值函数m(x)和协方差函数k(x,x′)如下表示:
m(x)=E[f(x)]
k(x,x′)=E[(f(x)-m(x))(f(x′)-m(x′))]
并且高斯过程写为如下:
f(x)~N(m(x),k(x,x′))。
协方差函数k(x,x′)也称为核函数。对于有效协方差函数存在多种选择。一些最常见的选择是径向基函数(RBF)核、Matern核、平房指数(SE)核等。作为随机过程,高斯过程是随机变量的集合,其任何有限集合是多元高斯。在从训练数据集311D={X,Y}完成学习过程之后,测试数据点312x*处的预测由高斯分布给出(这可使用多元高斯分布的性质来显示)。数学上,它由下面的关系表示。
p(f(x*)|D,x*)=N(μ(x*),Σ(x*))
其中,μ(x*)和Σ(x*)表示测试数据点x*处的高斯分布的均值和方差。学习过程估计项K、k**和k*。一旦估计了这些项,就使用以上面的方程表示的封闭式方程获得新测试数据点处的预测。结果,在学习过程期间,针对接近坐标与插入期间机器人所经历的预期力之间的期望输入-输出关系学习概率关系315。
本发明的一些实施方式使用该概率关系来使用测试数据点处的预测高斯分布估计置信区间203。可使用测试数据点处的高斯分布的参数来估计定义力值的最小允许概率的阈值的置信度水平α206的置信区间。
在测试点x*312处通过高斯过程回归获得的均值预测值由y(x*)313和置信区间314表示。学习的高斯过程回归沿着测试轨迹提供任何点处的均值预测估计315以及置信区间316。由于任何点处的预期力分布由高斯分布给出,x*处的力分布示出于320。力321的均值(过程310中的313)为y(x*),并且置信区间为322(在过程310中示出为314)。
一些实施方式的目的是减少用于估计高斯过程回归的时间和计算量。这种减少可增加根据一些实施方式的异常检测的部署速度。一些实施方式基于这样的认识:对于一些情况,学习正则高斯过程回归仍可计算上昂贵。学习的计算复杂度随O(n3)变化,其中“n”是数据点的数量。为了使得学习计算更高效,一些实施方式学习局部高斯过程回归,其通过将多个高斯过程模型拟合到数据并使用所有局部高斯过程模型上的预期提供最终预测来降低计算复杂度。局部高斯过程模型然后通过将问题分成大小为ni<n(i=1,2,…,m)的多个子问题并最终使用这“m”个模型进行预测来减少学习模型所需的计算时间。各个局部模型被拟合到数据集中的特定聚类。
一些实施方式使用类似k均值聚类或高斯混合模型的聚类算法来估计数据中的聚类。这些聚类算法的输入自变量是聚类的数量——局部高斯过程模型的最终性能取决于所选聚类的数量,因此其被当作局部高斯过程模型的超参数。在估计所有聚类和聚类质心之后,使用用于高斯过程的正则边际负似然法来估计所有“m”个高斯过程的超参数。在测试时间期间,通过估计由“m”个高斯过程模型进行的预测的加权平均来获得测试数据点的预测,并且权重由“m”个聚类质心与测试数据点之间的距离给出。该距离可使用以两个向量作为自变量并输出标量值的核来估计——一些常见选择是径向基函数或向量之间的正则欧几里得距离。
图4示出一些实施方式所使用的局部高斯过程回归的示意图。局部高斯过程回归(LGPR)410是正则GPR的局部近似,目标是加快训练和预测过程。局部高斯过程回归可降低回归问题的计算复杂度,而不会影响异常检测系统的性能。
图5示出根据一些实施方式的用于学习局部高斯过程并使用局部高斯过程来预测异常的方法的框图。在训练阶段,一些实施方式执行将训练数据集412聚类510为“m”个聚类。该聚类可使用机器学习的各种聚类方法(类似k均值聚类或高斯混合模型(GMM))来执行。聚类提供聚类411的中心和指派给各个聚类质心412的数据点。学习局部高斯过程的输入自变量是数据集中要拟合的聚类的数量。下一步是在第一步中获得的各个聚类412中拟合520正则GPR。LGPR中的聚类的数量影响学习的性能,因此,聚类的数量被当作可在学习过程期间微调的超参数。由于“m”个GP中的每一个中拟合的数据点的数量远小于数据点的总数,这导致学习阶段期间更好的计算效率。
图6示出例示了根据一些实施方式的局部高斯过程如何用于估计测试点处的预期力分布的置信区间的示意图。在测试阶段,使用数学上由k(x,y)表示的距离函数613来确定530测试点531、611与在算法的第一步中确定的所有质心612之间的接近度,其中x和y是我们想要计算距离的输入自变量,k是距离函数。距离函数是可在学习过程期间优化的算法的另一超参数。最后,在540中,获得测试数据点x*处的后验614高斯分布的均值和方差作为从各个高斯过程模型获得的预测的加权平均620。数学上,通过高斯过程获得的测试数据点处的预测分布可写为如下:
pLGP(f(x*)|D,x*)=N(μLGP(x*),ΣLGP(x*))
其中,“m”是在算法的第一步中获得的聚类的数量,μi(x*)和Σi(x*)是如前所述通过“第i”GP获得的均值和协方差。
图7示出根据一些实施方式的针对轨迹720使用学习的高斯过程回归(正则或局部高斯过程回归)计算异常得分的方法的示意图。轨迹是位置点序列{(x1,f(x1)),(x2,f(x2)),…,(xn,f(xn))}721。沿着轨迹在每一点,将力测量与学习的高斯过程模型710进行比较。使用预测的均值711和协方差函数,将所观测的力值与置信区间的允许操作余量712进行比较,以计算所观测的测量的异常得分。沿着所观测的轨迹721针对所有或一些点重复该操作,然后求和以计算整个轨迹或其部分的异常得分。将异常得分与异常阈值进行比较以确定异常检测的结果。
不同实现方式使用异常得分的不同计算。例如,在一些实现方式中,考虑沿着轨迹的特定点的三个可能异常得分,即,二值异常得分、连续异常得分和混合异常得分。在二值异常得分实现方式中,力测量如果落在置信区间之外则给予异常得分1,如果落在置信区间内则给予得分0。在连续异常得分实现方式中,给定对应多元高斯概率分布,给予力测量与有多大可能观测到这种值对应的异常得分。该值被计算为1减去多元高斯概率分布在特定力测量处的评估。在混合异常得分实现方式中,力测量如果落在置信区间内则给予异常得分0,如果落在置信区间之外则给予如连续异常得分中计算的高于0的得分。利用所有这些实现方式,可通过对沿着所观测的测试轨迹的所有点的异常得分取平均来获得整个插入的总异常得分。所提出的异常检测算法不限制异常得分计算的选择。还要注意,根据例如多元高斯分布的方差或似然函数,多个其它连续异常得分可被选择并因此也应用于混合异常得分。一些实施方式基于概率与异常检测阈值的比较来确定异常检测的结果,例如,当概率高于异常检测阈值时声明异常。
图8示出例示了根据一个实施方式的用于估计异常检测阈值的方法的示意图。此实施方式使用平衡异常的允许误检率和预期阳性检测率的受试者工作特性(ROC)曲线810来优化异常检测阈值的值。此实施方式基于这样的认识:可使用ROC曲线针对目标误检811和阳性检测率812优化用于声明异常的决策阈值。误检率811是异常检测器将正常样本声明为异常的次数,阳性检测率812是异常检测器正确地检测异常样本的次数。
在ROC曲线中,针对可能阈值阵列813相对于误检率绘制阳性检测率。各个阈值导致阳性检测率与假阳性率之间的不同权衡。在图8中,示出多个检测方法的ROC曲线。其中,在所有其它曲线左上的曲线是最佳的。该曲线也可被选为下方面积最大的一个。
一旦识别出最优曲线814,则从其选择最优阈值。该选择可按多种方式进行。一种方法是在垂直轴上选择期望的检测率。另一种方法是在水平轴上选择对假阳性率的限制。第三种方法是选择使真假阳性率的加权组合最小化的阈值,其中权重来自经济考虑(例如,可能造成缺陷产品或设备损坏的未能检测异常的成本与可能造成不必要的停机的假阳性的成本相比如何)。
图9示出根据一些实施方式的用于控制机器人臂执行包括沿着插入线插入部件以组装产品的操作的系统900的框图。机器人臂的配置包括具有多个自由度的运动的腕部。系统900包括学习和控制部件之一或组合。学习部件被配置为估计作为机器人臂的腕部沿着插入线的位置的概率函数的机器人臂的腕部沿着插入线所经历的力的概率关系。例如,概率关系针对插入线上的位置序列中的各个位置的力的非异常值定义置信区间,其中,当前位置的力的各个非异常值的概率高于根据针对当前位置学习的概率函数的置信度水平,并且其中,当力的当前值在当前位置的力的非异常值的置信区间之外时,异常检测器声明力的当前值异常。控制部件被配置为使用学习的概率关系来估计指示机器人组装中的异常的力的异常值。
控制系统900可具有将系统900与其它系统和装置连接的多个接口。网络接口控制器950适于将系统900通过总线906连接到将控制系统900与力传感器102的输出连接的网络990。通过网络990(无线地或有线地),系统900可接收机器人组装的力和位置的测量995。在训练阶段期间,测量995可以是具有该机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量。在控制阶段期间,测量995可以是机器人臂在控制下的操作的测量。
在一些实现方式中,系统900内的人机接口910将系统连接到键盘911和指点装置912,其中,指点装置912可包括鼠标、轨迹球、触摸板、操纵杆、指点杆、手写笔或触摸屏等。通过接口910或NIC 950,系统900可接收置信度阈值和/或异常检测阈值的值。系统900包括输出接口,其被配置为输出训练概率关系的结果和/或异常检测的结果。例如,输出接口可包括存储器以呈现概率关系和/或异常检测的结果。例如,系统900可通过总线906链接到适于将系统900连接到显示装置985(例如,计算机监视器、相机、电视、投影仪或移动装置等)的显示接口980。系统900还可连接到适于将系统连接到用于执行各种机器人组装操作的设备965的应用接口960。系统900还可连接到适于将系统连接到机器人臂918的控制接口970。
系统900包括被配置为执行所存储的指令的处理器920以及存储可由处理器执行的指令的存储器940。处理器920可以是单核处理器、多核处理器、计算集群或任何数量的其它配置。存储器940可包括随机存取存储器(RAM)、只读存储器(ROM)、闪存或任何其它合适的存储器系统。处理器920通过总线906连接到一个或更多个输入和输出装置。这些指令实现用于控制机器人臂的方法。
为此,控制系统900包括被配置为学习概率关系935的回归学习器931。回归学习器931可离线学习概率关系935并且可从系统900的配置省略以用于在线控制。学习概率关系935的示例使用高斯过程回归和/或局部高斯过程回归。
在一些实施方式中,置信度估计器933确定插入线上的位置序列中的各个位置的力的非异常值的置信区间和/或用于基于检测异常力的多个实例确定异常检测结果的异常检测阈值。在一些实施方式中,置信度估计器933通过优化平衡异常的允许误检率和预期阳性检测率的受试者工作特性(ROC)曲线来确定异常阈值以降低误检率。
系统900还包括异常检测器937,其被配置为根据概率函数来确定以位置的当前值为条件的力的当前值的概率并且基于力的当前值的概率来确定异常检测的结果。例如,当确定插入线上的位置序列中的各个位置的力的非异常值的置信区间时,当力的当前值在当前位置的力的非异常值的置信区间之外时异常检测器937声明力的当前值异常。
本发明的上述实施方式可按照众多方式中的任一种来实现。例如,实施方式可使用硬件、软件或其组合来实现。当以软件实现时,软件代码可在任何合适的处理器或处理器集合(无论设置在单个计算机中还是分布于多个计算机)上执行。这些处理器可被实现为集成电路,在集成电路部件中具有一个或更多个处理器。但是,处理器可使用任何合适格式的电路来实现。
另外,本发明的实施方式可被具体实现为一种方法,已提供其示例。作为该方法的一部分执行的动作可按照任何合适的方式排序。因此,可构造以与所示不同的次序执行动作的实施方式,其可包括同时执行一些动作,尽管在例示性实施方式中作为顺序动作示出。
在权利要求中使用诸如“第一”、“第二”的序数词修饰权利要求元素本身并不暗示一个权利要求元素相比于另一权利要求元素的任何优先或次序或者方法动作执行的时间次序,而是仅用作标签以将具有特定名称的一个权利要求元素与具有相同名称(但使用序数词)的另一元素相区分,以区分权利要求元素。
尽管通过优选实施方式的示例描述了本发明,但是将理解,在本发明的精神和范围内,可进行各种其它调整和修改。
Claims (20)
1.一种用于控制机器人臂执行包括沿着插入线插入部件以组装产品的操作的系统,其中,所述机器人臂的配置包括具有多个自由度的运动的腕部,该系统包括:
输入接口,该输入接口被配置为接受操作上连接到所述机器人臂的所述腕部的力传感器的测量,所述测量包括指示所述机器人臂的所述腕部沿着所述插入线在不同位置处所述机器人臂的所述腕部所经历的力的数据;
存储器,该存储器被配置为存储作为所述机器人臂的所述腕部沿着所述插入线的位置的概率函数的所述机器人臂的所述腕部沿着所述插入线所经历的力的概率关系,其中,所述概率函数从具有所述机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量学习;以及
至少一个处理器,所述至少一个处理器被配置为运行包括异常检测器的可执行部件,所述异常检测器被配置为:
基于所述力传感器的测量来确定所述力的当前值和沿着所述插入线的位置的当前值;
根据所述概率函数来确定以所述位置的当前值为条件的所述力的当前值的概率;并且
基于所述力的当前值的概率来确定异常检测结果;以及
恢复控制器,该恢复控制器被配置为基于所述异常检测结果控制所述机器人臂。
2.根据权利要求1所述的系统,其中,所述概率函数具有条件概率分布,使得位置处的所述力的概率分布以先前位置处的所述力的先前概率分布为条件,其中,所述异常检测器选择与所述位置的当前值对应的所述条件概率分布的参数,并且根据由所选参数定义的概率分布来确定所述力的当前值的概率。
3.根据权利要求1所述的系统,其中,所述概率函数是针对所述机器人臂的所述腕部沿着插入线的位置的各个值由所述力的均值和协方差的值定义的高斯过程回归,其中,所述异常检测器从与所述位置的当前值对应的所述高斯过程回归选择所述均值和方差并且根据由所述均值和所述方差的所选值定义的高斯分布来确定所述力的当前值的概率。
4.根据权利要求1所述的系统,其中,所述异常检测器基于所述力的当前值的概率与置信度阈值的比较来确定所述异常检测结果。
5.根据权利要求4所述的系统,其中,当所述力的多个值的概率小于所述置信度阈值时,所述异常检测器检测到异常。
6.根据权利要求1所述的系统,其中,所述概率关系针对所述插入线上的位置序列中的各个位置的所述力的非异常值定义置信区间,其中,当前位置的所述力的各个所述非异常值的概率高于根据针对所述当前位置学习的所述概率函数的置信度水平,并且其中,当所述力的当前值在所述当前位置的所述力的非异常值的所述置信区间之外时,所述异常检测器声明所述力的当前值异常。
7.根据权利要求6所述的系统,其中,所述概率函数包括局部高斯过程回归集合,其中,各个局部高斯过程回归针对围绕聚类位置聚类的沿着所述插入线的位置子集学习并且由所述机器人臂的所述腕部沿着所述插入线的所述位置序列中的各个位置的所述力的均值和协方差的值定义,其中,所述当前位置的所述力的非异常值的所述置信区间基于根据所述局部高斯过程回归集合选择的局部概率集合的加权组合,其中,所述当前位置的各个局部概率的权重是从对应局部高斯过程回归的聚类位置到所述当前位置的距离的函数。
8.根据权利要求6所述的系统,其中,当所述力的异常值的数量大于异常阈值时,所述异常检测器将所述异常检测结果声明为异常。
9.根据权利要求8所述的系统,其中,通过优化平衡异常的允许误检率和预期阳性检测率的受试者工作特性ROC曲线来确定所述异常阈值以降低误检率。
10.根据权利要求1所述的系统,其中,所述恢复控制器响应于检测到异常而停止所述机器人臂。
11.根据权利要求1所述的系统,其中,所述恢复控制器响应于检测到异常而将所述机器人臂缩回到安全位置。
12.根据权利要求11所述的系统,其中,所述恢复控制器基于所述安全位置处的所述力的值的概率来确定所述安全位置。
13.根据权利要求1所述的系统,其中,所述输入接口被配置为接受所述概率函数并且将所述概率函数存储在所述存储器中,其中,所述概率函数通过将高斯过程回归模型拟合到由具有所述机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量定义的训练数据来学习。
14.根据权利要求13所述的系统,其中,所述高斯过程回归模型接受先验均值和先验协方差以描述所述训练数据,其中,所述先验均值为零并且所述先验协方差由核函数建模,并且其中,拟合所述高斯过程回归模型的步骤包括通过使用所述训练数据使所述高斯过程回归模型的负对数似然度最大化来确定后验均值和后验协方差函数。
15.一种用于控制机器人臂重复地执行包括沿着插入线插入部件以组装产品的操作的方法,其中,所述机器人臂的配置包括具有多个自由度的运动的腕部,其中,所述方法使用与所存储的实现所述方法的指令联接的处理器,其中,所述指令在由所述处理器执行时执行所述方法的步骤,所述方法包括以下步骤:
接受操作上连接到所述机器人臂的所述腕部的力传感器的测量,所述测量包括指示所述机器人臂的所述腕部沿着所述插入线在不同位置处所述机器人臂的所述腕部所经历的力的数据;
接受作为所述机器人臂的所述腕部沿着所述插入线的位置的概率函数的所述机器人臂的所述腕部沿着所述插入线所经历的所述力的概率关系,其中,所述概率函数从具有所述机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量学习;
基于所述力传感器的测量来确定所述力的当前值和沿着所述插入线的位置的当前值;
根据所述概率函数来确定以所述位置的当前值为条件的所述力的当前值的概率;
基于所述力的当前值的概率来确定异常检测结果;以及
基于所述异常检测结果来控制所述机器人臂。
16.根据权利要求15所述的方法,其中,所述概率函数是针对所述机器人臂的所述腕部沿着插入线的位置的各个值由所述力的均值和协方差的值定义的高斯过程回归,所述方法包括以下步骤:
从与所述位置的当前值对应的所述高斯过程回归选择所述均值和方差;以及
根据由所述均值和所述方差的所选值定义的高斯分布来确定所述力的当前值的概率。
17.根据权利要求15所述的方法,其中,所述概率函数是局部高斯过程回归集合,其中,各个局部高斯过程回归沿着所述插入线与其聚类位置对应并且针对所述机器人臂的所述腕部沿着插入线的位置的各个值由所述力的均值和协方差的值定义,所述方法包括以下步骤:
从与所述位置的当前值对应的各个所述局部高斯过程回归选择所述均值和方差,以生成由所选对的所述均值和所述方差定义的局部高斯分布集合;
根据各个所述局部高斯分布来确定所述力的当前值的局部概率以生成局部概率集合;以及
将以所述位置的当前值为条件的所述力的当前值的概率确定为所述局部概率的加权组合,其中,局部概率的权重是从对应局部高斯过程回归的聚类位置到所述位置的当前值的距离的函数。
18.根据权利要求15所述的方法,其中,所述概率函数是局部高斯过程回归集合,其中,各个局部高斯过程回归沿着以其聚类位置为中心的所述插入线的部分与其聚类位置对应,并且针对所述机器人臂的所述腕部沿着所述插入线的所述部分的位置的各个值由所述力的均值和协方差的值定义,所述方法包括以下步骤:
选择其聚类位置与所述位置的当前值最接近的局部高斯过程回归;
从与所述位置的当前值对应的所选局部高斯过程回归选择所述均值和方差;以及
根据由所述均值和所述方差的所选值定义的高斯分布来确定所述力的当前值的概率。
19.根据权利要求15所述的方法,该方法包括以下步骤:
当所述力的多个值的概率小于置信度阈值时,检测到异常。
20.一种具体实现有程序的非暂时性计算机可读存储介质,该程序能够由处理器执行以用于执行一种方法,该方法包括以下步骤:
接受操作上连接到机器人臂的腕部的力传感器的测量,所述测量包括指示所述机器人臂的所述腕部沿着插入线在不同位置处所述机器人臂的所述腕部所经历的力的数据;
接受作为所述机器人臂的所述腕部沿着所述插入线的位置的概率函数的所述机器人臂的所述腕部沿着所述插入线所经历的所述力的概率关系,其中,所述概率函数从具有所述机器人臂的配置的一个或多个机器人臂在控制下重复地执行的操作的测量学习;
基于所述力传感器的测量来确定所述力的当前值和沿着所述插入线的位置的当前值;
根据所述概率函数来确定以所述位置的当前值为条件的所述力的当前值的概率;
基于所述力的当前值的概率来确定异常检测结果;以及
基于所述异常检测结果来控制所述机器人臂。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/253,585 US11161244B2 (en) | 2019-01-22 | 2019-01-22 | System and method for automatic error recovery in robotic assembly |
US16/253,585 | 2019-01-22 | ||
PCT/JP2019/026544 WO2020152886A1 (en) | 2019-01-22 | 2019-06-26 | System and method for controlling robotic arm |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113272105A true CN113272105A (zh) | 2021-08-17 |
CN113272105B CN113272105B (zh) | 2024-05-03 |
Family
ID=67480265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980085997.6A Active CN113272105B (zh) | 2019-01-22 | 2019-06-26 | 用于控制机器人臂的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11161244B2 (zh) |
EP (1) | EP3703916B1 (zh) |
JP (1) | JP7154432B2 (zh) |
CN (1) | CN113272105B (zh) |
WO (1) | WO2020152886A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7375587B2 (ja) * | 2020-02-05 | 2023-11-08 | 株式会社デンソー | 軌道生成装置、多リンクシステム、及び軌道生成方法 |
US20210247753A1 (en) * | 2020-02-07 | 2021-08-12 | Kabushiki Kaisha Yaskawa Denki | State estimation device, system, and manufacturing method |
US11225259B1 (en) | 2020-07-28 | 2022-01-18 | International Business Machines Corporation | Fair anomaly detection and localization |
CN112428263B (zh) * | 2020-10-16 | 2022-06-10 | 北京理工大学 | 机械臂控制方法、装置及聚类模型训练方法 |
JP7504398B2 (ja) * | 2020-10-16 | 2024-06-24 | オムロン株式会社 | 軌道生成装置、軌道生成方法、及び軌道生成プログラム |
DE102021200569A1 (de) | 2021-01-22 | 2022-07-28 | Robert Bosch Gesellschaft mit beschränkter Haftung | Vorrichtung und Verfahren zum Trainieren eines Gaußprozess-Zustandsraummodells |
US11673264B2 (en) * | 2021-03-25 | 2023-06-13 | Mitsubishi Electric Research Laboratories, Inc. | System and method for robotic assembly based on adaptive compliance |
WO2023157002A1 (en) * | 2022-02-17 | 2023-08-24 | Momentis Surgical Ltd. | Control system and method for robotic systems |
WO2023235457A1 (en) * | 2022-06-02 | 2023-12-07 | Worcester Polytechnic Institute | Autonomous robotic assembly of arbitrary part shapes |
CN115723125B (zh) * | 2022-10-31 | 2024-06-21 | 北京工业大学 | 一种机械臂重复操作运动规划方法 |
CN117067208A (zh) * | 2023-09-08 | 2023-11-17 | 无锡学院 | 一种柔性手抓取力的控制方法及控制系统 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11123683A (ja) * | 1997-10-22 | 1999-05-11 | Fanuc Ltd | 引き抜き分解機能を有する力制御ロボット |
US20080086283A1 (en) * | 2006-10-05 | 2008-04-10 | Siemens Corporate Research, Inc. | Bayesian Sensor Estimation For Machine Condition Monitoring |
US20110202488A1 (en) * | 2008-10-20 | 2011-08-18 | Siemens Corporation | Method And Apparatus For Creating State Estimation Models In Machine Condition Monitoring |
US20120084042A1 (en) * | 2010-09-30 | 2012-04-05 | Siemens Corporation | System and method for conditional multi-output regression for machine condition monitoring |
CN103501969A (zh) * | 2011-11-30 | 2014-01-08 | 松下电器产业株式会社 | 机器人的示教装置、机器人装置、机器人的示教装置的控制方法以及机器人的示教装置的控制程序 |
JP2014155994A (ja) * | 2013-02-18 | 2014-08-28 | Seiko Epson Corp | ロボットおよびロボット制御装置 |
JP2015168017A (ja) * | 2014-03-06 | 2015-09-28 | セイコーエプソン株式会社 | ロボット、ロボットシステム、及び制御装置 |
CN105082132A (zh) * | 2014-05-23 | 2015-11-25 | 通用汽车环球科技运作有限责任公司 | 力-扭矩任务的快速机器人模仿学习 |
CN105818155A (zh) * | 2015-01-26 | 2016-08-03 | 精工爱普生株式会社 | 机器人、机器人系统以及服务器 |
CN107121975A (zh) * | 2017-05-03 | 2017-09-01 | 首都师范大学 | 一种基于信息几何的机器故障诊断方法和装置 |
CN107718018A (zh) * | 2016-08-10 | 2018-02-23 | 发那科株式会社 | 组装机器人的机器人控制装置 |
US20180177556A1 (en) * | 2016-12-28 | 2018-06-28 | Auris Surgical Robotics, Inc. | Flexible instrument insertion using an adaptive insertion force threshold |
CN108393889A (zh) * | 2017-02-06 | 2018-08-14 | 精工爱普生株式会社 | 控制装置、机器人以及机器人系统 |
CN108638015A (zh) * | 2018-05-16 | 2018-10-12 | 南京邮电大学 | 基于量化通信的主从机械臂同步跟踪控制方法 |
CN108882966A (zh) * | 2016-12-28 | 2018-11-23 | 奥瑞斯健康公司 | 用于柔性器械插入的装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000263481A (ja) | 1999-03-12 | 2000-09-26 | Meidensha Corp | ビンピッキング装置 |
US8280837B2 (en) | 2009-05-28 | 2012-10-02 | GM Global Technology Operations LLC | Contact state estimation for multi-finger robot hands using particle filters |
JP5288378B2 (ja) | 2009-08-27 | 2013-09-11 | 独立行政法人情報通信研究機構 | 音響モデルの話者適応装置及びそのためのコンピュータプログラム |
US20140222379A1 (en) | 2011-07-15 | 2014-08-07 | European Space Agency | Method and apparatus for monitoring an operational state of a system on the basis of telemetry data |
US10228680B2 (en) * | 2013-07-22 | 2019-03-12 | Texas State University | Autonomous performance optimization in robotic assembly process |
CN103984981B (zh) | 2014-05-23 | 2017-01-04 | 东南大学 | 基于高斯过程模型的建筑物环境传感器测点优化方法 |
JP6958075B2 (ja) | 2016-10-20 | 2021-11-02 | セイコーエプソン株式会社 | ロボットシステムおよび制御方法 |
US10244926B2 (en) | 2016-12-28 | 2019-04-02 | Auris Health, Inc. | Detecting endolumenal buckling of flexible instruments |
-
2019
- 2019-01-22 US US16/253,585 patent/US11161244B2/en active Active
- 2019-06-26 JP JP2021550728A patent/JP7154432B2/ja active Active
- 2019-06-26 WO PCT/JP2019/026544 patent/WO2020152886A1/en unknown
- 2019-06-26 CN CN201980085997.6A patent/CN113272105B/zh active Active
- 2019-06-26 EP EP19746195.7A patent/EP3703916B1/en active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11123683A (ja) * | 1997-10-22 | 1999-05-11 | Fanuc Ltd | 引き抜き分解機能を有する力制御ロボット |
US20080086283A1 (en) * | 2006-10-05 | 2008-04-10 | Siemens Corporate Research, Inc. | Bayesian Sensor Estimation For Machine Condition Monitoring |
US20110202488A1 (en) * | 2008-10-20 | 2011-08-18 | Siemens Corporation | Method And Apparatus For Creating State Estimation Models In Machine Condition Monitoring |
US20120084042A1 (en) * | 2010-09-30 | 2012-04-05 | Siemens Corporation | System and method for conditional multi-output regression for machine condition monitoring |
CN103501969A (zh) * | 2011-11-30 | 2014-01-08 | 松下电器产业株式会社 | 机器人的示教装置、机器人装置、机器人的示教装置的控制方法以及机器人的示教装置的控制程序 |
JP2014155994A (ja) * | 2013-02-18 | 2014-08-28 | Seiko Epson Corp | ロボットおよびロボット制御装置 |
JP2015168017A (ja) * | 2014-03-06 | 2015-09-28 | セイコーエプソン株式会社 | ロボット、ロボットシステム、及び制御装置 |
CN105082132A (zh) * | 2014-05-23 | 2015-11-25 | 通用汽车环球科技运作有限责任公司 | 力-扭矩任务的快速机器人模仿学习 |
CN105818155A (zh) * | 2015-01-26 | 2016-08-03 | 精工爱普生株式会社 | 机器人、机器人系统以及服务器 |
CN107718018A (zh) * | 2016-08-10 | 2018-02-23 | 发那科株式会社 | 组装机器人的机器人控制装置 |
US20180177556A1 (en) * | 2016-12-28 | 2018-06-28 | Auris Surgical Robotics, Inc. | Flexible instrument insertion using an adaptive insertion force threshold |
CN108882966A (zh) * | 2016-12-28 | 2018-11-23 | 奥瑞斯健康公司 | 用于柔性器械插入的装置 |
CN108393889A (zh) * | 2017-02-06 | 2018-08-14 | 精工爱普生株式会社 | 控制装置、机器人以及机器人系统 |
CN107121975A (zh) * | 2017-05-03 | 2017-09-01 | 首都师范大学 | 一种基于信息几何的机器故障诊断方法和装置 |
CN108638015A (zh) * | 2018-05-16 | 2018-10-12 | 南京邮电大学 | 基于量化通信的主从机械臂同步跟踪控制方法 |
Non-Patent Citations (1)
Title |
---|
许泽军;马宏宾;杨辰光;李江平;: "基于函数逼近技术的双机械臂自适应阻抗力控制", 系统科学与数学, no. 12, 15 December 2014 (2014-12-15) * |
Also Published As
Publication number | Publication date |
---|---|
EP3703916B1 (en) | 2022-03-30 |
CN113272105B (zh) | 2024-05-03 |
WO2020152886A1 (en) | 2020-07-30 |
US20200230815A1 (en) | 2020-07-23 |
JP2022509557A (ja) | 2022-01-20 |
EP3703916A1 (en) | 2020-09-09 |
JP7154432B2 (ja) | 2022-10-17 |
US11161244B2 (en) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113272105B (zh) | 用于控制机器人臂的系统和方法 | |
US20220146993A1 (en) | Machine learning method and machine learning device for learning fault conditions, and fault prediction device and fault prediction system including the machine learning device | |
US10502253B2 (en) | Machine learning device for learning assembly operation and component assembly system | |
D’Angelo et al. | A new fault classification approach applied to Tennessee Eastman benchmark process | |
EP1729243B1 (en) | Fault detection system and method using approximate null space based fault signature classification | |
Di Lello et al. | Bayesian time-series models for continuous fault detection and recognition in industrial robotic tasks | |
Caccavale et al. | Actuators fault diagnosis for robot manipulators with uncertain model | |
Hornung et al. | Model-free robot anomaly detection | |
EP3998140A1 (en) | Robot control device | |
CN115867873A (zh) | 提供与分配给输入数据方法和系统的异常分数相关的警报 | |
Romeres et al. | Anomaly detection for insertion tasks in robotic assembly using Gaussian process models | |
Kuestenmacher et al. | Model-based fault diagnosis techniques for mobile robots | |
Harrou et al. | An efficient statistical strategy to monitor a robot swarm | |
US10572802B1 (en) | Learning state-dependent sensor measurement models for localization | |
Anđelić et al. | Neural Network-Based Model for Classification of Faults During Operation of a Robotic Manipulator | |
Zhou et al. | Incremental learning robot task representation and identification | |
Rojas et al. | Probabilistic state verification for snap assemblies using the relative-change-based hierarchical taxonomy | |
Taburoğlu | A survey on anomaly detection and diagnosis problem in the space system operation | |
CN110045716B (zh) | 一种闭环控制系统早期故障检测和诊断方法和系统 | |
Skubalska-Rafajłowicz | Random projection RBF nets for multidimensional density estimation | |
Zhou et al. | Nonparametric Bayesian learning for collaborative robot multimodal introspection | |
US11491650B2 (en) | Distributed inference multi-models for industrial applications | |
CN115342817B (zh) | 无人履带车辆轨迹跟踪状态监测方法、系统、设备、介质 | |
Alonso-Tovar et al. | Bayesian network classifier with efficient statistical time-series features for the classification of robot execution failures | |
WO2022054292A1 (ja) | ロボット制御装置 |
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 |