CN112154048B - 基于机器人的工件插装方法、系统及计算机可读介质 - Google Patents

基于机器人的工件插装方法、系统及计算机可读介质 Download PDF

Info

Publication number
CN112154048B
CN112154048B CN202080000877.4A CN202080000877A CN112154048B CN 112154048 B CN112154048 B CN 112154048B CN 202080000877 A CN202080000877 A CN 202080000877A CN 112154048 B CN112154048 B CN 112154048B
Authority
CN
China
Prior art keywords
workpiece
contact
mating portion
processor
robot
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
Application number
CN202080000877.4A
Other languages
English (en)
Other versions
CN112154048A (zh
Inventor
钟书耘
王世全
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feixi Technology Co ltd
Flexiv Robotics Ltd
Original Assignee
Feixi Technology Co ltd
Flexiv Robotics Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Feixi Technology Co ltd, Flexiv Robotics Ltd filed Critical Feixi Technology Co ltd
Publication of CN112154048A publication Critical patent/CN112154048A/zh
Application granted granted Critical
Publication of CN112154048B publication Critical patent/CN112154048B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1687Assembly, peg and hole, palletising, straight line, weaving pattern movement
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)

Abstract

提供了用于插装工件(20)的方法和系统。提供的方法包括获取收容部件(30)的第二配合部(31)的位置(62),朝向收容部件(30)的第二配合部(31)移动工件(20)的第一配部(21)直到工件(20)与收容部件(30)接触,以及朝向收容部件(30)按压工件(20),并同时旋转工件(20)。本发明的实施例方式可以应用于各种类型的工件(20)和收容部件(30),并且可以克服在插入操作期间工件(20)与收容部件(30)之间的位置的微小偏差,从而提高插入操作的效率。

Description

基于机器人的工件插装方法、系统及计算机可读介质
技术领域
本发明涉及工业机器人领域,特别是涉及基于机器人的工件插装方法、机器人系统及存储装置。
背景技术
工业机器人可以用来执行许多工作。当机器人执行插入操作时,它接收待插入的工件,并且将该工件朝向收容部移动。然后机器人将该工件的插入部插入到收容部的开口中。一旦插入部完全地或者充分地插入到收容部中,则可以成功地安装插入部和收容部。
然而,在某些情况下,由于收容部的定位误差、工件的运动控制误差的存在,或者由于两个部件的结构复杂性,在插入期间工件可能被阻挡,并且无法成功插入到收容部中。
发明内容
因此,本发明旨在提供一种控制方法,以成功地解决插装工件时这样的情况,以及提供实现该控制方法的机器人和非暂时性可读介质。
为了解决以上提及的问题,可以提供一种用于控制机器人的方法,通过插入来安装工件和收容部件。工件可以具有第一配合部,并且收容部件可以具有第二配合部。该方法可以包括获取收容部件的第二配合部的位置,朝向收容部件的第二配合部移动工件的第一配合部,直到工件与收容部件接触,以及在朝向收容部件按压工件的同时旋转工件。
在另一实施例中,可以提供包括机器人臂、处理器和存储器的机器人。存储器可以存储程序指令,该程序指令在由处理器执行时使得处理器获取工件的第一配合部的位置和收容部件的第二配合部的位置,控制机器人臂朝向第二配合部移动第一配合部,对工件与收容部件的接触进行检测,以及控制机器人臂将工件压向收容部件,并同时旋转工件。
在另一实施例中,可以提供非暂时性计算机可读介质。非暂时性计算机可读介质可以存储指令,该指令在由处理器执行时使处理器获取工件的第一配合部的位置和收容部件的第二配合部的位置,控制机器人臂朝向第二配合部移动第一配合部,对工件与收容部件的接触进行检测,以及控制机器人臂将工件压向收容部件,并同时旋转工件。
附图说明
为了清楚地解释本发明的实施例中的技术方案,下面将简要描述在实施例的描述中使用的附图。以下描述中的附图仅仅是本发明的示例性实施例。对于本领域普通技术人员,也可以基于这些附图推导出其他实施例而无需任何创造性工作。
图1示出了根据本发明的示例性实施例的机器人。
图2示出了根据本发明的示例性实施例的机器人的框图。
图3示出了根据本发明的示例性实施例的方法的流程图。
图4A-图4C示出了根据本发明的示例性实施例的方法的流程图。
图5-图7示出了根据本发明的示例性实施例的用于旋转工件的旋转模式。
具体实施方式
现在将参考附图和示例详细描述本发明。所描述的实施例仅仅是示例性的,并且表示本发明的实施例的子集。本领域技术人员可以在没有创造性努力的情况下基于本发明的实施例认识到附加实施例,并且所有这些实施例都落入本发明的范围内。
图1示出了根据本发明的示例性实施例的机器人10。机器人10可以被分配用于插装工件20和收容部件30。在示例性实施例中,机器人10可以包括具有若干连杆11和端部执行器12(例如,工具)的机器人臂。例如,端部执行器12可以包括夹持器和照相机模块13,如图所示。工件20和收容部件30可以各自具有配合部21、31。在本实施例中,工件20的配合部21可以是突出物(例如,插头),并且收容部件30的配合部31可以是开设在收容部件30中的开口。在其它实施例中,工件20的配合部21可以是开设在工件20中的开口,而收容部件30的配合部31可以是突出物。在一些实施例中,工件20可以安装到端部执行器12上,并且使用机器人10的端部执行器12移动工件20以将工件20安装到端部执行器12上。在其它实施例中,夹持器可以由其他安装机构代替,只要端部执行器12仍然能够操纵工件20即可。本领域普通技术人员应当理解,机器人10还可以包括其他部件,例如传感器和致动器,其可以沿着连杆11的一个或多个和/或端部执行器12安装。连杆11和端部执行器12的运动可以被控制,使得机器人10抓取或者以其它方式操纵工件20以执行下述操作,从而将工件20插入到收容部件30中,并且/或者安装工件20和收容部件30。
图2示出了根据本发明的示例性实施例的机器人10的框图。该框图可以示出机器人10的控制系统,该控制系统配置为控制机器人10的移动以便将工件20插装到收容部件30中。
机器人10包括存储器52、处理器50、位置获取系统60和机器人控制系统70。位置获取系统60可以配置为获取对控制机器人10的操作有用的一个或多个位置。例如,位置获取系统60可以基于来自一个或多个传感器(例如照相机模块13、超声传感器、激光传感器或者其它位置传感器)的传感器数据来确定这些位置。特别地,位置获取系统60可以用于确定工件20的工件位置62,该工件位置62可以表示工件20的全部或部分在给定时间点的位置。例如,工件位置62可以反映整个工件20的中心位置和/或方向,或者可以表示工件20的特定部分(例如端部执行器21的尖端)的位置。位置获取系统60可以同样地确定收容部件位置64,例如整个收容部件30的位置,或者收容部件的一部分(例如,配合部31的端部)的位置。在工件20和收容部件30接触的情况下,位置获取系统60可以确定工件20的接触位置66。类似地,在工件20在与收容部件的尝试安装操作期间被卡住的情况下,位置获取系统60可以确定工件20的卡住位置68,该卡住位置68指示工件20被卡住的位置。
机器人控制系统70可以配置为使机器人10(例如机器人臂)移动和操纵工件20,使得工件20插装在收容部件30中。例如,机器人10可以根据存储在存储器52中的一个或多个旋转模式56、58移动工件20。
存储器52还可以存储由处理器50执行的指令54。例如,指令54在由处理器50执行时可以使处理器50实现位置获取系统60和/或机器人控制系统70的一个或多个功能,以及本文讨论的附加功能。
处理器50可以被实现为例如中央处理单元(CPU)、其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、其他可编程逻辑器件、分立门或晶体管逻辑器件、和/或分立硬件组件中的一个或多个。通用处理器可以是微处理器或者任何其它常规处理器。
存储器52可以是机器人10的内部存储单元,例如机器人10的硬盘或者内存。或者,存储器52可以是例如机器人10的外部存储设备中的一个或多个,例如插入式硬盘、智能媒体卡(SMC)、安全数字(SD)卡、闪存卡。在一些实施例中,存储器52可以包括机器人10的内部存储单元和外部存储单元两者。存储器52可以用来存储程序指令,以及机器人52的操作所需其它程序和数据。存储器52还可以用来临时存储已经发送或者即将发送的数据。
图3示出了根据本发明的示例性实施例的方法100。方法100可以由机器人100执行以插装工件20和收容部件30。方法100可以至少部分地在计算机系统上实现。例如,方法100可以至少部分地由位置获取系统60和计算机控制系统70实现。方法100还可以由存储在计算机可读介质上的指令集实现,该指令集在由处理器执行时使计算机系统执行该方法。例如,方法100的全部或者部分可以由处理器50、存储器52和指令54来实现。虽然以下示例参考图3中所示的流程图描述,但可以使用实现与图3相关联的行为的许多其他方法。例如,可以改变一些步骤的顺序,某些步骤可以与其他步骤组合,可以重复一个或多个步骤,并且所描述的一些步骤可以是可选的。
方法100可以开始于机器人10获取工件20和收容部件30的配合部21、31的位置(步骤S102)。这些位置62、64可以至少部分地基于来自照相机模块13的数据确定,并且可以指示配合部21、31在机器人10的三维操作空间中的位置。例如,位置获取系统60可以获取指示配合部21的位置的工件位置62和指示配合部31的位置的收容部件位置64。特别地,机器人10的照相机模块13可以在机器人的运动期间记录收容部件30的图像,从而可以识别收容部件30的形状和它相对于端部执行器12或者工件20的相对位置(或者绝对位置)。应当理解的是,收容部件30的配合部31的位置也可以以其他方式获取。例如,若收容部件30的位置是固定的并且是已知的,则机器人10的操作者可以简单地将它的位置输入到机器人10的控制系统中。
机器人10然后可以朝向收容部件30的配合部31移动工件20的配合部21(步骤S104)。机器人10可以朝向收容部件30的配合部31移动工件20的配合部21,直到工件20与收容部件20接触。机器人10还可以配置为朝向收容部件30自动地移动工件20,并且将工件的配合部21与收容部件30的配合部31对准。在某些实施方式中,机器人10可以尝试将工件20的配合部20插入到收容部件30的配合部31中。移动工件20的轨迹可以预先定义。一个示例性的轨迹在图1中以虚线的形式示出。
机器人10然后可以对工件20与收容部件30的接触进行检测(步骤S106)。例如,机器人10可以包括一个或多个力或扭矩传感器。当工件20接触收容部件30时,力和/或扭矩传感器读数会增加。基于这一增加,机器人10可以确定工件20与收容部件30接触。
机器人10然后可以在朝向收容部件30按压工件20的同时旋转工件20(步骤S108)。在这一操作中,机器人10可以在扭矩控制模式下操作,该扭矩控制模式能够调节端部执行器12的端部执行器运动的柔量,以在旋转工件20的同时保持扭矩的期望水平。通过旋转工件20,机器人10可以在配合部21和31之间找到适当的姿势,以允许将工件20的配合部21插入到收容部件30的配合部31中。一旦工件20旋转到对朝向收容部件30按压工件20阻力很小的角度,端部执行器20就可以按压工件20并且将它的配合部21插入到收容部件30的配合部31中。以这种方式控制工件20可以帮助防止工件20被卡住,即使存在工件位置62和/或收容部件位置64的少量误差,或者在插入路径中存在小的障碍物(例如,在工件20和/或收容部件30上的金属毛刺或者变形)。
在一些实施例中,机器人10可以根据旋转模式使工件20绕工件20自身的配合部21的插入轴线22旋转,如图5所示。在其它实施例中,机器人10可以使工件20绕收容部件30的配合部31的插入轴线32移动,如图6所示。应当理解的是,插入轴线22、32可以表示它们各自的部件的中心线或者对称轴。在某些情况下,一个部件(例如,工件20或收容部件30)可以沿着它的插入轴线22、32移动以插入到另一部件中。在一些实施例中,可以组合多种类型的旋转。也就是说,机器人10可以同时使工件20绕工件20自身的配合部21的插入轴线22和收容部件30的配合部31的插入轴线32旋转。在又一些实施例中,机器人10可以使工件20绕收容部件30的插入轴线旋转以执行锥形的运动,如图7所示。该方法可以便于对某些类型的工件和收容部件的插入操作。在某些情况下,在图5-图7描绘的上述类型的旋转可以存储为存储器52的旋转模式56、58。
例如,图4A描绘了根据本发明的示例性实施例的方法200。方法200可以被执行以选择和执行适于某个工件20和/或收容部件30的旋转模式56、58。方法200可以至少部分地在计算机系统上实现。例如,方法200可以至少部分地由位置获取系统60和机器人控制系统70实现。方法200还可以由存储在计算机可读介质上的指令集实现,该指令集在由处理器执行时使计算机系统执行该方法。例如,方法200的全部或者部分可以由处理器50、存储器52和指令54来实现。虽然以下示例参考图4A中所示的流程图描述,但可以使用实现与图4A相关联的行为的许多其他方法。例如,可以改变一些步骤的顺序,某些步骤可以与其他步骤组合,可以重复一个或多个步骤,并且所描述的一些步骤可以是可选的。
方法200可以开始于机器人10识别工件20的工件类型(步骤S202)。在某些实施方式中,工件类型可以预先确定,并且用户可以输入工件类型或者可以具有在先输入的工件类型。在其它实施方式中,照相机阵列13或者机器人10的另一传感器可以确定工件类型。例如,工件20可以包括识别工件类型的标识符(例如,条形码、QR码、PFID标签或NFC芯片)。在另一示例中,机器人10可以分析工件20以确定工件类型(例如,使用照相机阵列13)。
机器人10然后可以基于所确定的工件类型选择旋转模式56、58(步骤S204)。例如,机器人控制系统70可以选择旋转模式56、58。在某些实施方式中,存储器可以存储旋转模式56、58和工件类型之间的一个或多个关联关系,并且机器人10可以选择与所识别的工件类型相关联的旋转模式56、58。在又一些实施方式中,这些关联关系可以由机器学习模型确定。
例如,机器人10(例如,机器学习模型)可以收集关于多个插装操作的数据,包括对不同类型的工件20的插装操作。机器学习模型然后可以分析该数据以检测工件20的某些类型与旋转模式56、58的某些类型之间的相关性。基于这些相关性,机器学习模型然后可以生成不同工件类型与旋转模式56、58之间的关联关系。
机器人10然后可以根据所选择的旋转模式56、58旋转工件20(步骤S206)。例如,机器人控制系统70可以使机器人10根据所选择的旋转模式56、58旋转工件20。
图4B描绘了根据本发明的示例性实施例的方法300。方法300可以被执行以确定工件20和收容部件30是否已经成功安装。例如,机器人10可以在完成方法100后执行方法300以确认工件20的成功插装,或者可以在步骤S108中旋转工件20之前执行。方法300可以至少部分地在计算机系统上实现。例如,方法300可以至少部分地由位置获取系统60和机器人控制系统70实现。方法300还可以由存储在计算机可读介质上的指令集实现,该指令集在由处理器执行时使计算机系统执行该方法。例如,方法300的全部或者部分可以由处理器50、存储器52和指令54来实现。虽然以下示例参考图4B中所示的流程图描述,但可以使用实现与图4B相关联的行为的许多其他方法。例如,可以改变一些步骤的顺序,某些步骤可以与其他步骤组合,可以重复一个或多个步骤,并且所描述的一些步骤可以是可选的。
方法300可以开始于机器人10将工件20压向收容部件30,并同时使工件20绕插入轴线旋转(步骤S302)。例如,机器人10可以使工件20绕配合部21的插入轴线22旋转。工件20可以顺时针、逆时针、或者顺时针和逆时针两者进行旋转。
在旋转期间,机器人10连续地检测作用在工件20上的接触扭矩(步骤S306)和工件20的接触位置66(步骤S308)。基于接触位置66,机器人10可以计算工件20和收容部件30之间的插入深度。例如,可以通过对工件20与收容部件30之间的初始接触位置和工件20的更新(例如,实时)接触位置进行比较来获取插入深度。
若(i)作用在工件20上的接触扭矩超过预定义的扭矩阈值,(ii)工件20的更新接触位置至少在预定的时间段内未改变,并且(iii)插入深度大于预定义的插入阈值,则机器人10然后可以确定成功安装(步骤S310)。可以要求这些条件中的每一个来确定成功安装。例如,基于条件(i)和(ii),机器人10可以确定工件20的移动被收容部件30阻挡。若工件20被成功地安装,则这种情况是可接受的。因此,可以进一步要求条件(iii)来确保成功安装已经发生。在这种情况下,若工件20和收容部件30之间的插入深度达到预定义的值,则机器人10可以确定工件20和收容部件30已经被成功地安装。预定义的扭矩阈值和/或预定义的插入阈值可以基于工件20和收容部件30的配合部21、31的形状和尺寸来确定。例如,可以由用户和/或机器学习模型对不同类型的工件20、收容部件30和配合部21、31预先确定阈值。
如果机器人在步骤S310确定工件20已经被成功地安装,那么插装操作可以完成。然而,如果工件20没有被成功地安装,则可以继续进行处理(例如,执行步骤S108和/或到以下讨论的方法400)。
图4C描绘了根据本发明的示例性实施例的方法400。方法400可以被执行以识别并处理工件20在插装操作期间(例如,在执行方法100、200、300时)被卡住的情况。特别地,在插装操作期间,工件20可能在被机器人10旋转的期间被卡住,而没有被成功地安装。因此,机器人10可能需要检测并处理工件20在操作期间被卡住的情况。方法400可以至少部分地在计算机系统上实现。例如,方法400可以至少部分地由位置获取系统60和机器人控制系统70实现。方法400还可以由存储在计算机可读介质上的指令集实现,该指令集在由处理器执行时使计算机系统执行该方法。例如,方法400的全部或者部分可以由处理器50、存储器52和指令54来实现。虽然以下示例参考图4C中所示的流程图描述,但可以使用实现与图4C相关联的行为的许多其他方法。例如,可以改变一些步骤的顺序,某些步骤可以与其他步骤组合,可以重复一个或多个步骤,并且所描述的一些步骤可以是可选的。
方法400可以开始于机器人10确定工件20被卡住(步骤S402)。例如,若在旋转工件20的同时插入深度(例如,如以上所述计算的插入深度)在预定义的时间段内未改变,则机器人10可以确定工件20被卡住。在另一示例中,机器人10可以检测作用在工件20和工件20的接触位置66上的接触力和接触扭矩。若接触力和/或接触扭矩超过预定义的阈值,则工件20的移动可能被收容部件30阻挡。在这种情况下,若工件20和收容部件30之间的插入深度小于预定义的插入阈值,则机器人可以确定工件20尚未完全插入并且被卡住。
机器人10然后可以确定工件20的卡住位置68(步骤S404)。例如,机器人10可以在确定工件20被卡住时将卡住位置68确定为工件位置62。
机器人10然后可以将工件20与收容部件30分离(步骤S406)。在某些情况下,机器人10能够通过将工件20和收容部件30拉开来分离工件20和收容部件30。在其它情况下,可能需要在分离期间旋转工件20和/或收容部件30。例如,在某些情况下,机器人10可以至少部分地反转为了尝试插装工件20而执行的旋转模式56、58。
机器人10还可以通过对卡住位置应用随机变化来生成随机位置(步骤S408)。例如,机器人10可以生成随机位置,使得工件20的配合部21接触或接近收容部件30的表面或配合部31。机器人10(例如,机器人控制系统70)然后可以将工件21移动到随机位置(步骤S410)。
机器人10然后可以在将工件20从随机位置压向收容部件30,并同时继续旋转工件20(步骤S412)。例如,机器人10可以根据旋转模式56、58继续旋转工件20,如以上结合步骤108所讨论的。
通过执行方法400,机器人10可以使工件20稍微远离收容部件30移动,使得工件20不再被卡住。然后,当机器人10继续重新尝试插装操作时,工件20的运动轨迹可以改变,因为操作从新的位置重新开始,这可以避免重复导致工件20被卡住的类似问题。以这种方式,可以提高插装操作的成功率。
本领域普通技术人员理解到,本发明中描述的每个公开的方法和过程可以使用一个或多个计算机程序或组件来实现。这些组件可以被提供为任何常规计算机可读介质或机器可读介质上的一系列计算机指令,包括易失性和非易失性存储器,诸如RAM、ROM、闪存、磁盘或光盘、光学存储器或其他存储介质。指令可以被提供为软件或固件,并且可以全部或部分地在诸如ASICs、FPGAs、DSPs或任何其他类似设备之类的硬件组件中实现。指令可以配置为由一个或多个处理器执行,该一个或多个处理器在执行一系列计算机指令时执行或促进所公开的方法和过程的全部或部分的执行。
可以理解的是,对这里描述的示例的各种改变和修改对于本领域技术人员将是显而易见的。可以在不脱离本主题的精神和范围并且不减少其预期优点的情况下进行这种改变和修改。因此,期望这种改变和修改由所附权利要求覆盖。在其它方面,所讨论或描绘的部件之间的耦合(例如,直接耦合或通信耦合)可以经由一个或多个有线或无线接口(例如,电和/或机械接口)。
若软件功能单元被实现和用作产品,则可以将其存储在计算机中的可读存储介质中。基于这种理解,本发明所提出的技术方案可以本质上或部分地实现为软件产品。在其它情况下,对常规技术有益的上述系统和方法的一个或多个部分可以实现为软件产品的形式。软件产品可以存储在存储介质中,包括用于计算设备(例如个人计算机、服务器或网络设备)的一个或多个指令,以执行由本发明的实施例公开的所有或一些步骤。存储介质可以包括能够存储程序代码的一个或多个介质,例如USB盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM)和软盘中的一个或多个。

Claims (16)

1.一种基于机器人的工件插装方法,包括:
获取工件的第一配合部的位置和收容部件的第二配合部的位置;
根据所述第一配合部的位置和所述第二配合部的位置,朝向所述第二配合部移动所述第一配合部;
对所述工件与所述收容部件的接触进行检测;以及
将所述工件压向所述收容部件,并同时旋转所述工件;
确定所述工件被卡住;
获取所述工件的卡住位置;
将所述工件与所述收容部件分离;
对所述工件的所述卡住位置应用随机变化来生成随机位置;
将所述工件移动到所述随机位置;以及
将所述工件从所述随机位置压向所述收容部件,并同时旋转所述工件;
其中,所述确定所述工件被卡住的步骤包括:
检测作用在所述工件上的接触力和接触扭矩;
获取所述工件的接触位置;以及
当检测到(i)所述接触力超过预定义的力阈值和所述接触扭矩超过预定义的扭矩阈值,并且(ii)所述第一配合部与所述第二配合部之间的插入深度小于预定义的插入阈值时,确定所述工件被卡住。
2.根据权利要求1所述的方法,其特征在于,所述旋转所述工件包括:
绕所述第一配合部的插入轴线,在原位旋转所述工件。
3.根据权利要求1所述的方法,其特征在于,所述旋转所述工件包括:
绕所述第二配合部的插入轴线,以圆形模式旋转所述工件。
4.根据权利要求1所述的方法,其特征在于,所述旋转所述工件包括:
绕所述第二配合部的插入轴线,以锥形模式旋转所述工件。
5.根据权利要求1所述的方法,其特征在于,所述旋转所述工件包括:
识别所述工件的工件类型;
基于所述工件类型从多个旋转模式中选择旋转模式;以及
根据所选择的旋转模式旋转所述工件。
6.根据权利要求5所述的方法,其特征在于,所述多个旋转模式通过机器学习算法确定。
7.根据权利要求6所述的方法,其特征在于,所述机器学习算法通过以下方式确定所述多个旋转模式:
收集关于多个插装操作的数据;
分析所述数据以检测包括所述工件的所述工件类型的多个工件类型与所述多个旋转模式之间的相关性;以及
生成所述多个工件类型的至少一个子集与所述多个旋转模式的一个或多个旋转模式之间的多个关联关系。
8.根据权利要求1所述的方法,其特征在于,对所述工件与所述收容部件的接触进行检测包括:
检测作用在所述工件上的接触力和/或接触扭矩。
9.根据权利要求1所述的方法,其特征在于,还包括:
在所述旋转所述工件的步骤之前,确定所述工件和所述收容部件是否已经成功安装。
10.根据权利要求9所述的方法,其特征在于,所述确定所述工件和所述收容部件是否已经成功安装的步骤包括:
将所述工件压向所述收容部件,并同时绕所述第一配合部的插入轴线旋转所述工件;
检测作用在所述工件上的接触扭矩;
获取所述工件的接触位置;以及
当检测到(i)作用在所述工件上的所述接触扭矩超过预定义的扭矩阈值,(ii)所述工件的所述接触位置在预定的时间段内未改变,并且(iii)所述第一配合部与所述第二配合部之间的插入深度达到或者超过预定义的插入阈值时,确定所述工件和所述收容部件已经成功安装。
11.一种机器人系统,包括:
机器人臂;
处理器;以及
存储器,所述存储器存储指令,所述指令在由所述处理器执行时使所述处理器:
获取工件的第一配合部的位置和收容部件的第二配合部的位置;
根据所述第一配合部的位置和所述第二配合部的位置,控制所述机器人臂朝向所述第二配合部移动所述第一配合部;
对所述工件与所述收容部件的接触进行检测;以及
控制所述机器人臂将所述工件压向所述收容部件,并同时旋转所述工件;
所述存储器包含另外的指令,该另外的指令在由所述处理器执行时使所述处理器:
确定所述工件被卡住;
获取所述工件的卡住位置;
控制所述机器人臂将所述工件与所述收容部件分离;
对所述工件的所述卡住位置应用随机变化来生成随机位置;
控制所述机器人臂将所述工件移动到所述随机位置;以及
控制所述机器人臂将所述工件从所述随机位置压向所述收容部件,并同时旋转所述工件;
所述存储器包含另外的指令,该另外的指令在当确定所述工件被卡住时由所述处理器执行时,使所述处理器:
检测作用在所述工件上的接触力和接触扭矩;
获取所述工件的接触位置;以及
当检测到(i)所述接触力超过预定义的力阈值和所述接触扭矩超过预定义的扭矩阈值,并且(ii)所述第一配合部与所述第二配合部之间的插入深度小于预定义的插入阈值时,确定所述工件被卡住。
12.根据权利要求11所述的机器人系统,其特征在于,所述存储器包含另外的指令,该另外的指令在当控制所述机器人臂旋转所述工件时由所述处理器执行时,使所述处理器控制所述机器人臂执行以下方式中的至少一个:
绕所述第一配合部的插入轴线,在原位旋转所述工件;
绕所述第二配合部的插入轴线,以圆形模式旋转所述工件;以及
绕所述第二配合部的插入轴线,以锥形模式旋转所述工件。
13.根据权利要求11所述的机器人系统,其特征在于,所述存储器包含另外的指令,该另外的指令在当控制所述机器人臂旋转所述工件时由所述处理器执行时,使所述处理器:
识别所述工件的工件类型;
基于所述工件类型从多个旋转模式中选择旋转模式;以及
根据所选择的旋转模式控制所述机器人臂旋转所述工件。
14.根据权利要求11所述的机器人系统,其特征在于,所述存储器包含另外的指令,该另外的指令在当对所述工件与所述收容部件的接触进行检测时由所述处理器执行时,使所述处理器:
检测作用在所述工件上的接触力和/或接触扭矩中。
15.根据权利要求11所述的机器人系统,其特征在于,所述存储器包含另外的指令,该另外的指令在由所述处理器执行时使所述处理器:
控制所述机器人臂将工件压向所述收容部件,并同时绕所述第一配合部的插入轴线旋转所述工件;
检测作用在所述工件上的接触扭矩;
获取所述工件的接触位置;以及
当检测到(i)作用在所述工件上的所述接触扭矩超过预定义的扭矩阈值,(ii)所述工件的所述接触位置在预定的时间段内未改变,并且(iii)所述第一配合部与所述第二配合部之间的插入深度达到或者超过预定义的插入阈值时,确定所述工件和所述收容部件已经成功安装。
16.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质存储有指令,所述指令在由处理器执行时使处理器:
获取工件的第一配合部的位置和收容部件的第二配合部的位置;
根据所述第一配合部的位置和所述第二配合部的位置,控制机器人臂朝向所述第二配合部移动所述第一配合部;
对所述工件与所述收容部件的接触进行检测;以及
控制机器人臂将所述工件压向所述收容部件,并同时旋转所述工件;
确定所述工件被卡住;
获取所述工件的卡住位置;
将所述工件与所述收容部件分离;
对所述工件的所述卡住位置应用随机变化来生成随机位置;
将所述工件移动到所述随机位置;以及
将所述工件从所述随机位置压向所述收容部件,并同时旋转所述工件;
其中,所述确定所述工件被卡住的步骤包括:
检测作用在所述工件上的接触力和接触扭矩;
获取所述工件的接触位置;以及
当检测到(i)所述接触力超过预定义的力阈值和所述接触扭矩超过预定义的扭矩阈值,并且(ii)所述第一配合部与所述第二配合部之间的插入深度小于预定义的插入阈值时,确定所述工件被卡住。
CN202080000877.4A 2019-04-30 2020-04-03 基于机器人的工件插装方法、系统及计算机可读介质 Active CN112154048B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/399,409 US11426874B2 (en) 2019-04-30 2019-04-30 Robot-based insertion mounting of workpieces
US16/399,409 2019-04-30
PCT/CN2020/083172 WO2020220930A1 (en) 2019-04-30 2020-04-03 Robot-based insertion mounting of workpieces

Publications (2)

Publication Number Publication Date
CN112154048A CN112154048A (zh) 2020-12-29
CN112154048B true CN112154048B (zh) 2023-06-30

Family

ID=73017892

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080000877.4A Active CN112154048B (zh) 2019-04-30 2020-04-03 基于机器人的工件插装方法、系统及计算机可读介质

Country Status (3)

Country Link
US (1) US11426874B2 (zh)
CN (1) CN112154048B (zh)
WO (1) WO2020220930A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11670894B2 (en) * 2020-06-19 2023-06-06 The Boeing Company Method and system for error correction in automated wire contact insertion within a connector
US11833666B2 (en) * 2020-10-28 2023-12-05 Shanghai Flexiv Robotics Technology Co., Ltd. Method for assembling an operating member and an adapting member by a robot, robot, and controller
EP4016210A1 (en) 2020-12-17 2022-06-22 Airbus Operations GmbH Positioning-, drilling-, and joining methods for a machine tool device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106272416A (zh) * 2016-08-29 2017-01-04 上海交通大学 基于力觉和视觉的机器人细长轴精密装配系统及方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4271249B2 (ja) * 2007-06-14 2009-06-03 ファナック株式会社 嵌合装置
CN102218652B (zh) * 2011-05-09 2012-11-21 无锡引域智能机器人有限公司 一种利用机器人的柔顺性实现轴孔装配的装置和方法
CN104625676B (zh) * 2013-11-14 2016-09-14 沈阳新松机器人自动化股份有限公司 轴孔装配工业机器人系统及其工作方法
CN106915626A (zh) * 2015-12-28 2017-07-04 上海思尔特机器人科技有限公司 一种汽车零部件搬运系统及方法
CA2954312C (en) * 2016-01-14 2020-08-25 2141632 Ontario Inc. Electronically controlled substrate working apparatus
JP2017159426A (ja) * 2016-03-11 2017-09-14 セイコーエプソン株式会社 ロボット制御装置、ロボット、及びロボットシステム
KR20180137548A (ko) * 2016-04-24 2018-12-27 프랜카 에미카 게엠바하 로봇 조작기를 사용하여 물체를 물체 수납 영역에 삽입하는 방법
US10363661B2 (en) * 2016-07-27 2019-07-30 Seiko Epson Corporation Control device, robot, and robot system
CA3035492C (en) * 2016-08-30 2021-03-23 Honda Motor Co., Ltd. Robot control apparatus and robot control method
WO2018125007A1 (en) * 2017-01-02 2018-07-05 Robotek Otomasyon Teknolojileri Sanayi Ticaret Limited Sirketi The robotic production line and methods of flexible and chaotic production
CN107097227B (zh) * 2017-04-17 2019-12-06 北京航空航天大学 一种人机协作机器人系统
US10814479B2 (en) * 2017-06-02 2020-10-27 Nyx, Inc. Automated assembly station
CN107186460A (zh) * 2017-07-10 2017-09-22 上海新时达电气股份有限公司 工业机器人进行轴孔装配的方法及其系统
EP3520971A1 (en) * 2018-02-06 2019-08-07 ABB Schweiz AG Assembling parts in an assembly line
JP6725565B2 (ja) * 2018-03-02 2020-07-22 ファナック株式会社 ワークを把持可能なロボットハンド、ロボット、ロボットシステム、及びワークを穴に回し入れる方法
JP7204354B2 (ja) * 2018-06-19 2023-01-16 キヤノン株式会社 ロボットシステム、ロボットシステムの制御方法、ロボットシステムを用いた物品の製造方法、プログラム及び記録媒体
JP7237483B2 (ja) * 2018-07-18 2023-03-13 キヤノン株式会社 ロボットシステムの制御方法、制御プログラム、記録媒体、制御装置、ロボットシステム、物品の製造方法
JP7167681B2 (ja) * 2018-12-07 2022-11-09 セイコーエプソン株式会社 ロボットシステムおよび接続方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106272416A (zh) * 2016-08-29 2017-01-04 上海交通大学 基于力觉和视觉的机器人细长轴精密装配系统及方法

Also Published As

Publication number Publication date
US11426874B2 (en) 2022-08-30
CN112154048A (zh) 2020-12-29
WO2020220930A1 (en) 2020-11-05
US20200346349A1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
CN112154048B (zh) 基于机器人的工件插装方法、系统及计算机可读介质
US9259844B2 (en) Vision-guided electromagnetic robotic system
JP4199264B2 (ja) ワーク取り出し装置及び方法
EP1854037B1 (en) Method of and apparatus for automated path learning
JP5382359B2 (ja) ロボットシステム
WO2008076942A1 (en) System and method of identifying objects
US20150094848A1 (en) Position control of machine axes with collision avoidance and adaption of a machine model to a real machine
US20220331964A1 (en) Device and method for controlling a robot to insert an object into an insertion
CN115997183A (zh) 机器人手臂的目标导向控制
CN103921274A (zh) 识别程序评价装置及识别程序评价方法
US12131483B2 (en) Device and method for training a neural network for controlling a robot for an inserting task
JP2019514706A (ja) ロボットマニピュレータを用いて対象物を対象物受け取り領域に挿入する方法
WO2021117479A1 (ja) 情報処理装置、方法およびプログラム
JP5593899B2 (ja) ロボットによるバリ除去方法
CN112828892A (zh) 一种工件抓取方法、装置、计算机设备及存储介质
Indri et al. A general procedure for collision detection between an industrial robot and the environment
CN115847488A (zh) 用于协作机器人监测的工业物联网系统及控制方法
JP6838833B2 (ja) 把持装置、把持方法、及びプログラム
US20160346927A1 (en) Determining the Robot Axis Angle and Selection of a Robot with the Aid of a Camera
WO2021010016A1 (ja) ハンドの制御システム及びハンドの制御方法
US11267129B2 (en) Automatic positioning method and automatic control device
KR101820241B1 (ko) 그리퍼를 이용한 물체의 움직임 추정 장치 및 그 방법
JP2015003348A (ja) ロボット制御システム、制御装置、ロボット、ロボット制御システムの制御方法及びロボットの制御方法
US11318606B2 (en) Controlling an automation assembly
US20220335710A1 (en) Device and method for training a neural network for controlling a robot for an inserting task

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