CN117222499A - 对操纵器进行编程的方法、控制***和工业机器人 - Google Patents

对操纵器进行编程的方法、控制***和工业机器人 Download PDF

Info

Publication number
CN117222499A
CN117222499A CN202180097289.1A CN202180097289A CN117222499A CN 117222499 A CN117222499 A CN 117222499A CN 202180097289 A CN202180097289 A CN 202180097289A CN 117222499 A CN117222499 A CN 117222499A
Authority
CN
China
Prior art keywords
manipulator
point
movement
modification
path
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
Application number
CN202180097289.1A
Other languages
English (en)
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.)
ABB Schweiz AG
Original Assignee
ABB Schweiz AG
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 ABB Schweiz AG filed Critical ABB Schweiz AG
Publication of CN117222499A publication Critical patent/CN117222499A/zh
Pending legal-status Critical Current

Links

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/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/0081Programme-controlled manipulators with master teach-in means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40386Search around teached point until operation has succes, correct program

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

一种对操纵器(12)进行编程的方法,该方法包括提供由操纵器(12)执行的移动路径(40),该移动路径(40)包括多个点(42a‑42e),该多个点包括起点(42a)和终点(42e)以及在该多个点(42a‑42e)之间的至少一个移动段(44a‑44d);将操纵器(12)移动到路径修改位置(56a‑56c);在接收到来自用户(16)的修改输入(58a‑58c)后,基于路径修改位置(56a‑56c)修改从起点(42a)到终点(42e)的移动路径(40)。还提供用于对操纵器(12)进行编程的控制***(14)以及包括操纵器(12)和控制***(14)的工业机器人(10)。

Description

对操纵器进行编程的方法、控制***和工业机器人
技术领域
本公开总体上涉及机器人操纵器的编程。具体地,提供了对操纵器进行编程的方法、对操纵器进行编程的控制***以及包括操纵器和控制***的工业机器人。
背景技术
工业机器人的操纵器通常可以借助于引导(lead-through)编程的方式进行编程。通过引导编程,人类可以物理引导操纵器到达特定目标点,并使用编程设备(诸如示教器单元TPU)记录操纵器在每个点中的关节角度。然后(例如通过插值)可以生成包括在这些点之间的多个移动段的移动路径,以提供机器人程序。与借助于操纵杆或类似物将操纵器轻推到不同点相比,借助于引导来定位操纵器对于用户来说通常更容易。
在传统的引导编程期间,以与这些点将***纵器执行的顺序相同的顺序添加这些点。也就是说,每个新点都会被添加在移动路径的末尾处。因此,用户不必考虑将新点添加到机器人程序中的何处。因此,这种借助于引导的编程是相对直截了当的。
然而,并不确定用户总是想要将新点添加在移动路径的末尾处。移动路径的修改,诸如修改、添加或删除中间点,对于传统编程来说通常很麻烦。如果要在移动路径的中间添加点,则用户可能不得不找到在TPU中的机器人程序中的相关移动段,将光标移动到相关移动段并添加新的指令。此外,如果要修改编程点,则在修改它之前需要在TPU中的机器人程序中找到编程点。这些操作在块编程中是特别困难的,因为在其中没有用于选择块的可见指针。此外,在这两个示例中,用户必须在移动操纵器和TPU之间切换注意力,以确保正确地创建机器人程序。这是一个相当缓慢且繁琐的过程,尤其是当需要修改、添加和/或删除大量编程点时。
US2020009730 A1公开了一种工业机器人,其具有操纵器和被配置为控制操纵器的运动的机器人控制器。机器人控制器被配置为在机器人的引导编程期间将机器人位置或机器人取向与空间中定义的至少一个虚拟位置或虚拟取向进行比较,并且当机器人位置或机器人取向与该至少一个虚拟位置或虚拟朝向之间的差值小于偏移值时,主动地控制机器人相对于该至少一个虚拟位置或虚拟取向的运动。
发明内容
本公开的一个目的是提供一种对操纵器进行编程的改进方法。
本公开的另一目的是提供一种对操纵器进行编程的方法,该方法使得能够对移动路径进行不太复杂的修改。
本公开的另一目的是提供一种对操纵器进行编程的方法,该方法是用户友好的。
本公开的另一目的是提供一种对操纵器进行编程的方法,该方法使得能够使用不太复杂的用户界面。
本公开的又一目的是提供一种对操纵器进行编程的方法,该方法组合地解决了前述目的中的几个或全部。
本公开的又一目的是提供一种用于对操纵器进行编程的控制***,该控制***解决了前述目的中的一个、几个或全部。
本公开的又一个目的是提供一种包括操纵器和控制***的工业机器人,该工业机器人解决了前述目的中的一个、几个或全部。
根据第一方面,提供了一种对操纵器进行编程的方法,该方法包括提供用于由操纵器执行的移动路径,该移动路径包括多个点,该多个点包括起点和终点以及在该多个点之间的至少一个移动段;将操纵器移动到路径修改位置;并且一旦接收到来自用户的修改输入,则基于路径修改位置修改从起点到终点的移动路径。
通过基于操纵器的路径修改位置来修改移动路径,该方法使用物理操纵器的实际位置作为用于修改已经存在的移动路径的输入。通过使用路径修改位置作为修改移动路径的基础,该方法提供了用户和操纵器之间的新级别的交互。
此外,由于物理操纵器的实际位置被用作修改移动路径的输入,因此该方法实现了非常简单的用户界面。在使用操纵器的引导移动的一些变型中,仅需要单个输入元件(诸如物理按钮或虚拟按钮)来完成移动路径的修改。
该方法还可以包括由操纵器执行经修改的移动路径。替代地或附加地,该方法还可以包括在操纵器被移动时连续地或重复地读取操纵器的位置。
移动路径的每个移动段可以互连两个相邻点。移动路径意指在空间中的移动的几何形状。相反,移动轨迹可以包含沿着这样的移动路径的特定速度分布和特定加速度分布。移动路径可以是二维的或三维的。路径修改位置可以在移动路径上或者在移动路径之外。
操纵器可以包括工具中心点TCP。在这种情况下,操纵器移动到路径修改位置可以包括将TCP移动到路径修改位置。路径修改位置可以包括TCP的位置和取向两者。每个点可以定义TCP的位置(例如笛卡尔位置),并且可选地还可以定义TCP在该点中的取向。
来自用户的广泛的修改输入是可能的。一些示例包括物理按钮、虚拟按钮、语音命令和手势。
操纵器是工业机器人的机器人操纵器。工业机器人可以是协作机器人。协作机器人可以是真正的协作机器人,即被构造为不能伤害人类的协作机器人。真正的协作机器人的质量可能在100公斤或以下。替代地或附加地,真正的协作机器人可以包括以小于80W的功率驱动的一个或多个臂。真正的协作机器人不同于最初的非协作工业机器人,其被改装有传感器以使其变得可协作。ABB的是真正的协作机器人的一个示例。
操纵器可以在三个或更多轴线上是可编程的,诸如在六个或七个轴线上。在本公开中,操纵器可以是机器人臂。
根据第一方面的方法可以使用根据第二方面的控制***和/或根据第三方面的工业机器人。
移动路径的修改可以包括修改点之一、删除点之一或添加另外点。因此,操纵器已经被移动到的路径修改位置可以指示应该将点移动到哪里、应该删除哪个点或者应该在哪里添加另外点。
对点的修改或删除可以包括将操纵器移动到多个点选择区域之中的点选择区域,每个点选择区域与多个点之中的唯一点相关联;选择与操纵器已经被移动到的点选择区域相关联的点作为用于修改或删除的点;并且基于路径修改位置修改或删除所选点。
以这种方式,物理操纵器的实际位置可以被用作用于选择移动路径的点的选择工具。该解决方案与现有技术的解决方案形成对比,在现有技术的解决方案中,用户必须首先查看编程设备中的机器人程序。在该方法的该变型中,物理操纵器的实际位置被用来选择应当在机器人程序中的何处进行修改。
此外,点选择区域的使用使得能够借助于操纵器更容易地选择点。也就是说,操纵器不必准确地被定位在要被选择的点上。
每个点选择区域可以是围绕相关联的点的三维体积,诸如球体。该点可以位于三维体积内部的中心。在球体的情况下,每个点选择区域可以表示TCP和相关联的点之间的阈值距离。
根据该变型的方法可以包括将TCP移动到点选择区域。在这种情况下,该方法还可以包括连续地或重复地检查TCP是否在任何点选择区域内。
该方法还可以包括向用户提供指示操纵器位于点选择区域之一中的反馈。如果TCP位于点选择区域之一内,则可以提供反馈。
另外点的添加可以包括将操纵器移动到至少一个移动段选择区域之中的移动段选择区域,每个移动段选择区域与至少一个移动段之中的唯一移动段相关联;选择与操纵器已经被移动到的移动段选择区域相关联的移动段作为用于修改的移动段;并且基于路径修改位置添加与所选移动段相关联的另外点。
以这种方式,物理操纵器的实际位置可以被用作选择工具以用于选择移动路径的应添加点所邻近的移动段。至少一个移动段选择区域的使用使得能够借助于操纵器更容易地选择移动段。也就是说,操纵器不必准确地被定位在要被选择的移动段上以便添加与该移动段相关联的点。
每个移动段选择区域可以是围绕相关联的移动段的三维体积,诸如柱状体积。移动段可以位于三维体积内部的中心。在柱状体积的情况下,每个移动段选择区域可以表示TCP和相关联的移动段之间的阈值距离。
根据该变型的方法可以包括将TCP移动到移动段选择区域。在这种情况下,该方法还可以包括连续地或重复地检查TCP是否在至少一个移动段选择区域中的任何一个内。
点选择区域和至少一个移动段选择区域可以是互斥的。也就是说,由操纵器可到达的每个位置可以被分配给点选择区域或移动段选择区域,但是不能同时被分配给两者。并非操纵器的所有可到达位置都需要被分配给点选择区域或移动段选择区域。在一些变型中,点选择区域和至少一个移动段选择区域可以一起限定仅覆盖由操纵器可到达的位置的一部分的连续体积。
该方法还可以包括向用户提供指示操纵器处于至少一个移动段选择区域之一中的反馈。如果TCP位于至少一个移动段选择区域之一内部,则可以提供反馈。
可以基于来自用户的选择输入来进行与点选择区域相关联的点的选择或者与移动段选择区域相关联的移动段的选择。
点的选择可以包括:当操纵器位于点选择区域中时接收来自用户的选择输入。用于修改或删除点的选择输入和修改输入可以由公共输入元件或由不同输入元件提供。在使用公共输入元件的情况下,修改输入可以是对输入元件的第一类型的输入(诸如“按压并保持”操作或单击)以便修改点,并且选择输入可以是对输入元件的与第一类型不同的第二类型的输入(诸如释放或双击)以便删除该点。作为替代,第一输入元件可以被用来提供选择输入和用于修改点的修改输入,并且第二输入元件可以被用来提供选择输入和用于删除点的修改输入。第一输入元件和第二输入元件都可以是按钮和/或可以被提供在操纵器上。
在所选点被修改的情况下,在提供选择输入时的操纵器位置可以不同于在提供修改输入时的操纵器位置。在提供修改输入时的操纵器位置,即所修改的点的位置,可以在点选择区域内部或外部。
在所选点被删除的情况下,在提供选择输入时的操纵器位置可以与在提供修改输入时的操纵器位置相同。在任何情况下,在提供用于删除所选点的修改输入时的操纵器位置可以在点选择区域内部。
移动段的选择可以包括:当操纵器位于点选择区域中时接收来自用户的选择输入。用于选择移动段的选择输入可以与用于选择点的选择输入是相同的。当操纵器被定位在移动段选择区域中并且选择输入被接收时,该方法进入点添加模式。当操纵器被定位在点选择区域中并且选择输入被接收时,该方法进入点修改模式或点删除模式。
当添加另外点时,在提供选择输入时的操纵器位置可以不同于在提供修改输入时的操纵器位置。在提供修改输入时的操纵器位置,即所添加的点的位置,可以在移动段选择区域内部或外部。
如果点选择区域和至少一个移动段选择区域是互斥的,则可以由此得出结论,当操纵器在接收到选择输入时处于点选择区域中时,应该修改或删除点。相反,可以由此得出结论,当操纵器在接收到选择输入时不在点选择区域中时,应该添加点。
该反馈可以包括操纵器中的力反馈。力反馈可以例如是触觉反馈。例如,可以取决于操纵器和移动路径之间的各种位置关系来发出操纵器的不同振动模式,诸如当操纵器进入点选择区域之一、离开点选择区域之一、进入移动段选择区域之一和/或离开移动段选择区域之一时。
替代类型的反馈包括视觉反馈和听觉反馈。例如,当操纵器处于点选择区域中时可以发出第一颜色的光,并且当操纵器处于移动段选择区域中时可以发出与第一颜色不同的第二颜色的光。在这种情况下,可以在操纵器上提供一个或多个光发射器。
该方法还可以包括将操纵器移动到修改类型选择位置;并且基于修改类型选择位置,在多个路径修改类型之中选择至少一个路径修改类型以用于修改移动路径。也就是说,关于是修改、删除还是添加点的决定可以是至少部分地基于修改类型选择位置,例如当接收到来自用户的选择输入时。修改类型选择位置的示例是操纵器在点选择区域和至少一个移动段选择区域内的位置。将操纵器定位在点选择区域之一中可以触发点修改模式和/或点删除模式。将操纵器定位在至少一个移动段选择区域之一中可以触发点添加模式。根据该变型的方法可以包括将TCP移动到修改类型选择位置。
操纵器的移动可以包括通过引导来移动操纵器。根据该变型的方法极大地促进了对现有移动路径的修改。例如,用户可以仅与操纵器(而不是编程设备或其他操纵设备)交互以便修改移动路径。
作为借助于引导进行移动的替代方案,可以借助于编程设备来移动操纵器,诸如通过在其上的操纵杆的移动。
该方法还可以包括在操纵器的移动期间提供朝向移动路径的力反馈。力反馈的力可以随着TCP与移动路径之间的距离的增加而增加。以这种方式,当借助于引导使操纵器沿着移动路径移动时,为用户提供了通道(保持)辅助。根据该变型的方法可以包括在TCP的移动期间迫使TCP朝向移动路径。
根据第二方面,提供了用于对操纵器进行编程的控制***,该控制***包括至少一个数据处理设备和至少一个存储器,该至少一个存储器在其上存储有包括程序代码的至少一个计算机程序,该程序代码在由至少一个数据处理设备执行时使至少一个数据处理设备执行如下步骤:提供由操纵器执行的移动路径,该移动路径包括多个点,该多个点包括起点和终点以及在该多个点之间的至少一个移动段;基于操纵器的当前位置连续或重复地确定路径修改位置;并且一旦接收到来自用户的修改输入,则基于路径修改位置修改从起点到终点的移动路径。
该至少一个计算机程序还可以包括程序代码,该程序代码在由该至少一个数据处理设备执行时使该至少一个数据处理设备执行或者命令执行根据第一方面的方法的步骤。
根据第三方面,提供了一种工业机器人,其包括根据操纵器和第二方面的控制***。工业机器人可以包括如结合第一方面描述的任何类型的操纵器。
工业机器人还可以包括位于操纵器上用于提供修改输入的输入元件。输入元件还可以被用于提供选择输入。输入元件可以例如是按钮。
选择输入和修改输入可以各种方式来提供。可以通过按下按钮来提供选择输入,并且可以通过释放按钮来提供修改输入。替代地,可以通过第一次按下按钮来提供选择输入,并且可以通过第二次按下按钮来提供修改输入。用于修改的选择输入可以是单击按钮,并且用于删除的选择输入可以是双击按钮。
工业机器人还可以包括编程设备。编程设备可以被配置为显示与移动路径相关联的信息。编程设备可以被配置为显示移动路径的图形表示或表示移动路径的其他数据(诸如文本)。
在编程设备被配置为显示移动路径的图形表示的情况下,编程设备还可以被配置为显示操纵器相对于移动路径的当前位置。编程设备还可以被配置为显示与移动路径相关联的点选择区域和/或至少一个移动段选择区域。
编程设备可以是示教器单元,TPU。根据本公开的编程设备的替代示例包括移动电话、膝上型计算机、固定计算机、虚拟现实(VR)设备和增强现实(AR)设备。
附图说明
通过以下结合附图的描述,本公开的更多细节、优点和方面将变得显懂的,其中:
图1:示意性地表示包括操纵器、控制***和编程设备的工业机器人以及用于操纵器的移动路径的侧视图;
图2:示意性地表示图1中的移动路径;
图3:示意性地表示与移动路径相关联的点选择区域和移动段选择区域;
图4a:示意性地表示操纵器沿着移动路径的移动;
图4b:示意性地表示在图4a中的操纵器的情形期间编程设备的显示器;
图5a:示意性地表示操纵器沿着移动路径的另外移动;
图5b:示意性地表示在图5a中的操纵器的情形期间的显示器;
图6a:示意性地表示操纵器沿着移动路径的另外移动以及选择输入的一个示例;
图6b:示意性地表示在图6a中的操纵器的情形期间的显示器;
图7a:示意性地表示操纵器到路径修改位置的移动以及修改输入的一个示例;
图7b:示意性地表示在图7a中的操纵器的情形期间的显示器;
图8:示意性地表示经修改的移动路径的一个示例;
图9a:示意性地表示操纵器沿着移动路径的移动、选择输入的另一示例和修改输入的另一示例;
图9b:示意性地表示在图9a中的操纵器的情形期间的显示器;
图10:示意性地表示经修改的移动路径的又一示例;
图11a:示意性地表示操纵器沿着移动路径的移动;
图11b:示意性地表示图11a中的操纵器的情形期间的显示器;
图12a:示意性地表示操纵器到路径修改位置的又一示例的移动和修改输入的又一示例;
图12b:示意性地表示在图12a中的操纵器的情形期间的显示器;以及
图13:示意性地表示经修改的移动路径的另一示例。
具体实施方式
在下面,将描述对操纵器进行编程的方法、对操纵器进行编程的控制***以及包括操纵器和控制***的工业机器人。相同或相似的附图标记将被用来标示相同或相似的结构特征。
图1示意性地表示工业机器人10的侧视图。工业机器人10包括操纵器12和控制***14。操纵器12在此被例示为真正的协作机器人臂。图1还示出了人类用户16。
该具体示例的工业机器人10还包括示教器单元TPU 18。TPU 18是根据本公开的编程设备的一个示例。TPU 18是可选的。
该具体示例的操纵器12包括基座20、可相对于基座20在第一轴线24a处旋转的第一连杆22a、可相对于第一连杆22a在第二轴线24b处旋转的第二连杆22b、可相对于第二连杆22b在第三轴线24c处旋转的第三连杆22c、可相对于第三连杆22c在第四轴线24d处旋转的第四连杆22d、可相对于第四连杆22d在第五轴线24e处旋转的第五连杆22e以及可相对于第五连杆22e在第六轴线24f处旋转的第六连杆22f。连杆22a-22f中的一个、几个或全部也可以用附图标记“22”来指代。轴线24a-24f中的一个、几个或全部也可以用附图标记“24”来指代。
然而,图1中的操纵器12只是许多示例之一。操纵器12还可以例如包括一个或多个平移轴线。
操纵器12还包括工具26。工具26是末端执行器的一个示例。工具26包括工具中心点TCP 28。该示例的工具26被刚性地连接至第六连杆22f。
该示例的操纵器12还包括按钮30。按钮30是根据本公开的输入元件的一个示例。按钮30在此被布置在第六连杆22f上。
该示例的控制***14包括数据处理设备32和存储器34。存储器34包括包含程序代码的计算机程序,当该程序代码被数据处理设备32执行时使数据处理设备32执行或命令执行本文所述的各个步骤。控制***14与操纵器12和TPU 18进行信号通信。
TPU 18包括显示器36。然而,显示器36不一定需要被提供在TPU 18中。显示器36可以例如替代地被提供在个人计算机(未示出)或移动电话中。
该示例的TPU 18还包括操纵杆38。借助于操纵杆38,操纵器12可以被轻推到不同的位置。
图1还示出了由操纵器12执行的移动路径40。移动路径40包括多个点42a-42e。该具体示例的移动路径40包括第一点42a、第二点42b、第三点42c、第四点42d和第五点42e。第一点42a是起点,并且第五点42e是终点。点42a-42e中的一个、几个或全部可以替代地用附图标记“42”来指代。
图2示意性地表示图1中的移动路径40。在该示例中,已经借助于点42a-42e之间的插值来生成移动路径40。除了点42a-42e之外,移动路径40还包括互连第一点42a和第二点42b的第一移动段44a、互连第二点42b和第三点42c的第二移动段44b、互连第三点42c和第四点42d的第三移动段44c以及互连第四点42d和第五点42e的第四移动段44d。移动段44a-44d中的一个、几个或全部可以替代地用附图标记“44”来指代。
在这里,移动段44a-44d是点42a-42e之间的线性插值。然而,插值可以是各种类型,诸如样条插值。
点42a-42e是操纵器12的目标点。操纵器12被编程为沿着移动路径40移动。在该示例中,TCP 28遵循移动路径40。在一些示例中,相邻移动段44可以被融合有交融区,并且TCP28则不一定准确地通过点42a-42e。
在每个点42a-42e中,限定了每个轴线24的位置。这意味着不仅TCP 28在移动路径40的执行期间被连续地定位在每个点42a-42e中,而且在每个点42a-42e中以TCP 28的限定取向和操纵器12的限定姿态来定位TCP 28。
图3示意性地表示与移动路径40相关联的点选择区域46a-46e和移动段选择区域48a-48d。图3示出了与第一点42a相关联的第一点选择区域46a、与第二点42b相关联的第二点选择区域46b、与第三点42c相关联的第三点选择区域46c、与第四点42d相关联的第四点选择区域46d以及与第五点42e相关联的第五点选择区域46e。点选择区域46a-46e中的一个、几个或全部可以替代地用附图标记“46”来指代。每个点选择区域46在此被例示为球体,该球体具有相关联的点42位于其中心。
图3还示出了与第一移动段44a相关联的第一移动段选择区域48a、与第二移动段44b相关联的第二移动段选择区域48b、与第三移动段44c相关联的第三移动段选择区域48c以及与第四移动段44d相关联的第四移动段选择区域48d。移动段选择区域48a-48d中的一个、几个或全部可以替代地用附图标记“48”来指代。每个移动段选择区域48在此具有基本上柱状形状,相关联的移动段44位于柱状形状中的中心。
如本文所述,点选择区域46和移动段选择区域48被用于分别有助于点42和移动段44的选择。如图3中所示,点选择区域46和移动段选择区域48在由操纵器12可到达的连续体积中是互斥的。因此,点选择区域46和移动段选择区域48彼此不重叠。
图4a示意性地表示操纵器12沿着移动路径40的移动,并且图4b示意性地表示在图4a中的操纵器12的情形期间的显示器36。一起参考图4a和图4b,操纵器12处于引导模式。由此,操纵器12被控制为具有减小的刚度(或被控制为“浮动的”),使得用户16可以例如通过抓住并推动操纵器12来手动地移动操纵器12。在图4a和图4b中,包括移动路径40的用于操纵器12的机器人程序已经存在。在控制***14中实现机器人程序。
在操纵器12的移动期间,控制***14连续地确定TCP 28的位置以了解操纵器12位于机器人程序中的何处。然而,对于该方法来说,确定TCP 28的位置并不是必需的。作为一种替代方案,可以改为读取轴线24的位置。
在这里,操纵器12沿着第一移动段44a移动。在该移动期间,借助于力反馈50迫使操纵器12朝向最近的移动段44。当TCP 28位于第一移动段44a上时,力反馈50的力为零。如果TCP 28从第一移动段44a被横向移出,则力反馈50的回复力随着TCP 28和第一移动段44a之间的距离的增加而增加。力反馈50由此用作操纵器12的通道(保持)辅助,从而使TCP 28贴合到移动路径40。对于TCP 28和第一移动段44a之间增加的偏差,回复力可以增加。当移动操纵器12时,用户16将感觉到操纵器12中的该回复力。由此,用户16受到力反馈50的辅助,以准确地指引TCP 28沿着移动路径40。力反馈50由此指示操纵器12位于移动段选择区域48之一中,前提是力反馈50仅当操纵器12位于移动段选择区域48之一中时被致动,并且当操纵器12在移动段选择区域48之外时不被致动。
如图4b中所示,移动路径40的图形表示被显示在显示器36上。当控制***14确定TCP 28位于第一移动段选择区域48a内时,第一移动段44a在视觉上被突出显示在显示器36上。由此使用户16知晓第一移动段44a适合用于选择,如本文所述。如图4b中所示,第一移动段44a由虚线表示,而其余移动段44b-44d由实线表示。因此,虚线是向用户16指示TCP 28位于第一移动段选择区域48a中的反馈的又一示例。
图5a示意性地表示操纵器12沿着移动路径40的另外移动,并且图5b示意性地表示在图5a中的操纵器12的情形期间的显示器36。一起参考图5a和图5b,TCP 28现在位于第二点选择区域46b内。第二点42b由此被触发以供用户16选择。
操纵器12生成振动52以向用户16通知TCP 28已经进入第二点选择区域46b。由此向用户16通知TCP 28靠近第二点42b。当TCP 28离开第二点选择区域46b时,也可以发出振动52。振动52构成根据本公开的力反馈的另一示例。振动52向用户16提供指示操纵器12位于点选择区域46之一中的反馈。当TCP 28已经进入点选择区域46中的任何一个时,可以继续发出力反馈50。
作为力反馈50和52的替代或补充,可以使用视觉反馈和/或听觉反馈。例如,光发射器可以被提供在操纵器12上,以便当TCP 28位于移动段选择区域48之一中时发出第一颜色的光,并且当TCP 28位于点选择区域46之一中时,发出与第一颜色不同的第二颜色的光。
如图5b中所示,第二点选择区域46b由圆圈表示,而其余点选择区域46a和46c-46e不被显示。因此,第二点选择区域46b的显示是向用户16指示TCP 28位于第二点选择区域46b中并且靠近第二点42b的反馈的又一示例。
图6a示意性地表示操纵器12沿着移动路径40的另外移动,并且图6b示意性地表示在图6a中的操纵器12的情形期间的显示器36。下面将描述修改移动路径40的点42之一的一个示例。
一起参考图6a和图6b,TCP 28现在位于第三点选择区域46c中。操纵器12已生成振动52以向用户16通知TCP 28已进入第三点选择区域46c。另外,第三点选择区域46c在显示器36上被突出显示以向用户16指示TCP 28靠近第三点42c。第三点42c现在被触发以供用户16选择。
当TCP 28位于第三点选择区域46c内时,用户16提供选择输入54a。该示例的选择输入54a是由用户16对按钮30的“按下并保持”操作。现在选择第三点42c用于修改。一旦在TCP 28位于第三点选择区域46c中时接收到选择输入54a,则控制***14选择第三点42c用于修改并进入点修改模式。TCP 28的位置因此可以被用作选择要被修改的点42a-42e之一的基础。
图7a示意性地表示操纵器12在点修改模式中的移动,并且图7b示意性地表示在图7a中的操纵器12的情形期间的显示器36。一起参考图7a和图7b,TCP 28已被用户16通过引导移动到路径修改位置56a。在这里,路径修改位置56a是第三点42c将被移动到的TCP 28的位置。路径修改位置56a可以在移动段选择区域48之内或之外。在该示例中,路径修改位置56a在第二移动段选择区域48b内。
如图7b中所示,路径修改位置56a相对于移动路径40被连续地显示在显示器36上。用户16由此可以容易地理解第三点42c将如何相对于移动路径40被移动。
随着TCP 28远离移动路径40移动,力反馈50朝向移动路径40的回复力增加。用户16由此知晓TCP 28位于移动路径40之外。然而,力反馈50的最大力可以被限制,使得实际上不会阻止用户16将TCP 28移动到期望位置。
当用户16对第三点42c的移动感到满意时,用户16提供修改输入58a。该示例的修改输入58a是由用户16释放按钮30。由此,用户16可以按下并保持按钮30以选择用于修改的点42,并在该点42应该被移动到的期望位置处释放按钮30。这构成了在接收到来自用户16的修改输入58a时基于路径修改位置56a修改从第一点42a到第五点42e的移动路径40的一个示例。
当使用引导编程时,该方法使得能够对操纵器12进行特别用户友好的编程。尽管该示例是通过使用引导编程对操纵器12进行编程的方法,但是该方法的原理也适用于利用其他方式来移动操纵器12,诸如通过操纵杆38。
图8示意性地表示经修改的移动路径40a的一个示例。当用户16在点修改模式中提供了修改输入58a时,移动路径40被修改以提供移动路径40a。代替第三点42c,移动路径40a包括次级第三点42c2。次级第三点42c2对应于当由用户16提供修改输入58a时TCP 28的位置。因此,代替在点42a-42e序列的末尾添加第六点,第三点42c被移动到次级第三点42c2的位置。
可以在无需向TPU 18提供任何输入的情况下修改第三点42c。用户16由此可以修改移动路径40,而无需将手从操纵器12移开。尽管TPU 18对于修改移动路径40是可选的,但是如果需要更全面地了解正在发生哪些编程事件,用户16可以查看TPU 18的显示器36。
在修改第三点42c之后,控制***14自动生成互连第二点42b和次级第三点42c2的次级第二移动段44b2以及互连次级第三点42c2和第四点42d的次级第三移动段44c2。然后可以通过用经修改的移动路径40a替换移动路径40来更新机器人程序。然后可以由操纵器12执行经修改的移动路径40a。
图9a示意性地表示操纵器12沿着移动路径40的移动,并且图9b示意性地表示在图9a中的操纵器12的情形期间的显示器36。在图9a中,TCP 28处于与图6a中相同的位置。下面将描述从移动路径40删除点42之一的示例。
一起参考图9a和图9b,TCP 28现在位于第三点选择区域46c内的路径修改位置56b。第三点选择区域46c在显示器36上被突出显示以指示TCP 28靠近第三点42c。第三点42c由此被触发以供用户16选择。
当TCP 28位于第三点选择区域46c内时,用户16现在提供选择输入54b和后续的修改输入58b,同时TCP 28被定位在第三点选择区域46c内的路径修改位置56b中。该示例的选择输入54b是第一次按下按钮30,并且该示例的修改输入58b是在TCP 28的与提供选择输入54b时相同的位置处的第二次按下按钮30。
TCP 28的位置因此也可以被用作选择要被删除的点42a-42e之一的基础。一旦接收到修改输入58b,则控制***14从移动路径40中删除第三点42c。这构成了一旦接收到来自用户16的修改输入58b则基于路径修改位置56b修改从第一点42a到第五点42e的移动路径40的另一示例。
作为来自用户16的用于删除点42的输入的许多替代方案之一,选择输入54b可以是按钮30的按下并保持操作,并且修改输入58b可以是在TCP 28的与提供选择输入54b时相同的位置处的按钮30的释放。因此,在一些变型中,来自用户16的输入在修改点42和删除点42之间的唯一区别在于操纵器12在按下按钮30和释放按钮30之间是否被移动。
图10示意性地表示经修改的移动路径40b的另一示例。当用户16提供了修改输入58b时,移动路径40被修改以提供移动路径40b。与移动路径40对照而言,移动路径40b不包括第三点42c。可以删除第三点42c,而不必向TPU 18提供任何输入。同样以这种方式,用户16可以由此修改移动路径40,而无需将手从操纵器12移开。
在删除第三点42c之后,控制***14自动生成互连第二点42b和第四点42d的次级第二移动段44b3。然后可以通过用经修改的移动路径40b替换移动路径40来更新机器人程序。然后可以由操纵器12执行经修改的移动路径40b。
图11a示意性地表示操纵器12沿着移动路径40的移动,并且图11b示意性地表示在图11a中的操纵器12的情形期间的显示器36。下面,将描述向移动路径40添加点42的一个示例。
一起参考图11a和图11b,TCP 28现在位于第一移动段选择区域48a内。第一移动段44a在显示器36上被突出显示以指示TCP 28位于第一移动段选择区域48a内。第一移动段44a由此被触发以供用户16选择。
当TCP 28位于第一移动段选择区域48a内时,用户16提供选择输入54c。与点42的修改类似,在该具体示例中,用于添加点42的选择输入54c是由用户16对按钮30的按下并保持操作。当TCP 28处于第一移动段选择区域48a内时,一旦接收到选择输入54c,则控制***14通过添加与第一移动段44a相关联的另外点42来选择用于修改的第一移动段44a,并且进入点添加模式。因此,TCP 28的位置也可以被用作通过添加与移动段44相关联的另外点42来选择要被修改的移动段44之一的基础。
由于当TCP 28位于点选择区域46内时接收到选择输入54a时进入点修改模式,因此当TCP 28位于移动段选择区域48内时接收到选择输入54c时进入点添加模式,并且由于选择输入54a和54c可以相同,因此点选择区域46和移动段选择区域48构成根据本公开的修改类型选择位置的示例。因此,可以纯粹基于当接收到选择输入54a和54c时操纵器12的位置来选择点修改和点添加之中的路径修改类型。
图12a示意性地表示操纵器12在点添加模式中的移动,并且图12b示意性地表示在图12a中的操纵器12的情形期间的显示器36。一起参考图12a和图12b,TCP 28已被用户16通过引导移动到路径修改位置56c。在这里,路径修改位置56c是TCP 28的将添加新点42的位置。
如图12b中所示,路径修改位置56c相对于移动路径40被连续地显示在显示器36上。用户16由此可以容易地理解新点42将相对于移动路径40被添加到哪里。
随着TCP 28远离移动路径40移动,从力反馈50朝向移动路径40的力增加。用户16由此知晓TCP 28位于移动路径40之外。
当用户16对将添加新点42的路径修改位置56c感到满意时,用户16提供修改输入58c。该示例的修改输入58c是由用户16释放按钮30。由此,用户16可以按下并保持按钮30以通过添加另外点42来选择用于修改的移动段44并在应添加新点42的期望位置处释放按钮30。这构成了一旦接收到来自用户16的修改输入58c则基于路径修改位置56c修改从第一点42a到第五点42e的移动路径40的另一示例。此外,当使用引导编程时,该变型使得能够对操纵器12进行特别用户友好的编程,而且当以引导之外的其他方式移动操纵器12时,也使得能够进行高度用户友好的编程。
图13示意性地表示经修改的移动路径40c的另一示例。当用户16在点添加模式中提供了修改输入58c时,移动路径40被修改以提供移动路径40c。移动路径40c与移动路径40的不同之处在于额外包括位于第一点42a和第二点42b之间的次级第一点42a2。可以在无需向TPU 18提供任何输入的情况下添加次级第一点42a2。同样以这种方式,用户16可以由此修改移动路径40,而无需将手从操纵器12移开。
在添加次级第一点42a2之后,控制***14自动生成互连第一点42a和次级第一点42a2的初级第一移动段44a1以及互连次级第一点42a2和第二点42b的次级第一移动段44a2。移动路径40c的初级第一移动段44a1和次级第一移动段44a2替换移动路径40的第一移动段44a。然后可以通过用经修改的移动路径40c替换移动路径40来更新机器人程序。然后可以由操纵器12执行经修改的移动路径40c。
虽然已经参考示例性实施例描述了本公开,但是应当了解,本发明不限于上面已经描述的内容。例如,应当了解,部件的尺寸可以根据需要改变。因此,本发明旨在仅由所附权利要求的范围来限制。

Claims (15)

1.一种对操纵器(12)进行编程的方法,所述方法包括:
-提供由所述操纵器(12)执行的移动路径(40),所述移动路径(40)包括多个点(42a-42e),所述多个点(42a-42e)包括起点(42a)和终点(42e)以及在所述多个点(42a-42e)之间的至少一个移动段(44a-44d);
-将所述操纵器(12)移动到路径修改位置(56a-56c);以及
-在接收到来自用户(16)的修改输入(58a-58c)后,基于所述路径修改位置(56a-56c)修改从所述起点(42a)到所述终点(42e)的所述移动路径(40)。
2.根据权利要求1所述的方法,其中,所述移动路径(40)的所述修改包括修改所述点(42a-42e)之一、删除所述点(42a-42e)之一或添加另外点(42a2)。
3.根据权利要求2所述的方法,其中,所述点(42a-42e)的所述修改或所述删除包括:
-将所述操纵器(12)移动到多个点选择区域(46a-46e)之中的点选择区域(46a-46e),每个点选择区域(46a-46e)与所述多个点(42a-42e)之中的唯一点(42a-42e)相关联;
-选择与所述操纵器(12)已经被移动到的所述点选择区域(46a-46e)相关联的所述点(42a-42e)作为用于修改或删除的所述点(42a-42e);以及
-基于所述路径修改位置(56a-56c)修改或删除所选点(42a-42e)。
4.根据权利要求3所述的方法,还包括向所述用户(16)提供指示所述操纵器(12)位于所述点选择区域(46a-46e)之一中的反馈(52)。
5.根据权利要求2至4中任一项所述的方法,其中,所述另外点(42a2)的所述添加包括:
-将所述操纵器(12)移动到至少一个移动段选择区域(48a-48d)之中的移动段选择区域(48a-48d),每个移动段选择区域(48a-48d)与所述至少一个移动段(44a-44d)之中的唯一移动段(44a-44d)相关联;
-选择与所述操纵器(12)已经被移动到的所述移动段选择区域(48a-48d)相关联的所述移动段(44a-44d)作为用于修改的移动段(44a-44d);以及
-基于所述路径修改位置(56a-56c)添加与所选移动段(44a-44d)相关联的所述另外点(42a2)。
6.根据权利要求5从属于权利要求3时所述的方法,其中,所述点选择区域(46a-46e)和所述至少一个移动段选择区域(48a-48d)是互斥的。
7.根据权利要求5或6所述的方法,还包括向所述用户(16)提供指示所述操纵器(12)处于所述至少一个移动段选择区域(48a-48d)之一中的反馈(50、52)。
8.根据权利要求3或5所述的方法,其中,对与所述点选择区域(46a-46e)相关联的所述点(42a-42e)的选择或者对与所述移动段选择区域(48a-48d)相关联的所述移动段(44a-44d)的选择是基于来自所述用户(16)的选择输入(54a-54c)来进行的。
9.根据权利要求4或7所述的方法,其中,所述反馈(50、52)包括所述操纵器(12)中的力反馈。
10.根据前述权利要求中任一项所述的方法,还包括:
-将所述操纵器(12)移动到修改类型选择位置;以及
-基于所述修改类型选择位置,在多个路径修改类型之中选择至少一个路径修改类型以用于修改所述移动路径(40)。
11.根据前述权利要求中任一项所述的方法,其中,所述操纵器(12)的移动包括借助于引导来移动所述操纵器(12)。
12.根据权利要求11所述的方法,还包括在所述操纵器(12)的移动期间提供朝向所述移动路径(40)的力反馈(50)。
13.一种用于对操纵器(12)进行编程的控制***(14),所述控制***(14)包括至少一个数据处理设备(32)和至少一个存储器(34),所述至少一个存储器(34)在其上存储有至少一个计算机程序,所述至少一个计算机程序包括程序代码,所述程序代码在由所述至少一个数据处理设备(32)执行时使所述至少一个数据处理设备(32)执行以下步骤:
-提供由所述操纵器(12)执行的移动路径(40),所述移动路径(40)包括多个点(42a-42e),所述多个点(42a-42e)包括起点(42a)和终点(42e)以及在所述多个点(42a-42e)之间的至少一个移动段(44a-44d);
-基于所述操纵器(12)的当前位置,连续地或重复地确定路径修改位置(56a-56c);以及
-在接收到来自用户(16)的修改输入(58a-58c)后,基于所述路径修改位置(56a-56c)修改从所述起点(42a)到所述终点(42e)的所述移动路径(40)。
14.一种工业机器人(10),包括操纵器(12)和根据权利要求13所述的控制***(14)。
15.根据权利要求14所述的工业机器人(10),还包括在所述操纵器(12)上用于提供所述修改输入(58a-58c)的输入元件(30)。
CN202180097289.1A 2021-04-29 2021-04-29 对操纵器进行编程的方法、控制***和工业机器人 Pending CN117222499A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2021/061267 WO2022228681A1 (en) 2021-04-29 2021-04-29 Method of programming manipulator, control system and industrial robot

Publications (1)

Publication Number Publication Date
CN117222499A true CN117222499A (zh) 2023-12-12

Family

ID=75746642

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180097289.1A Pending CN117222499A (zh) 2021-04-29 2021-04-29 对操纵器进行编程的方法、控制***和工业机器人

Country Status (3)

Country Link
EP (1) EP4329990A1 (zh)
CN (1) CN117222499A (zh)
WO (1) WO2022228681A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0780197B1 (en) * 1995-07-05 1999-02-24 Fanuc Ltd Apparatus for controlling movement of robot and method of controlling movement of robot
JP2005149016A (ja) * 2003-11-13 2005-06-09 Fanuc Ltd ロボットプログラム修正装置
DE102006022483A1 (de) * 2006-05-13 2007-11-29 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Anzeigen einer Roboterbahn zur Unterstützung einer Ortsänderung eines Stützpunktes
DE102012015437A1 (de) * 2012-08-02 2014-05-15 Kuka Roboter Gmbh Verfahren und Programmiermittel zur Modifikation einer Roboterbahn
DE102015002994A1 (de) * 2015-03-09 2016-09-15 Kuka Roboter Gmbh Verändern einer initial vorgegebenen Roboterbahn
JP6915543B2 (ja) * 2015-10-30 2021-08-04 株式会社安川電機 ロボット教示装置、コンピュータプログラム及びロボット教示方法

Also Published As

Publication number Publication date
EP4329990A1 (en) 2024-03-06
WO2022228681A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
KR102416306B1 (ko) 정보처리장치, 및 표시장치의 제어 방법
EP1310844B1 (en) Simulation device
KR101671569B1 (ko) 로봇 시뮬레이터, 로봇 교시 장치 및 로봇 교시 방법
US10166673B2 (en) Portable apparatus for controlling robot and method thereof
EP2660014A1 (en) Control device and teaching method for seven-shaft multi-joint robot
WO2012062374A1 (en) A control system and an operating device for controlling an industrial robot comprising a touch -screen
CN112230649B (zh) 机器学习方法及移动机器人
KR20200049600A (ko) 공작기계 시스템
JP2019171501A (ja) ロボットの干渉判定装置、ロボットの干渉判定方法、プログラム
JP6471402B2 (ja) Nc工作機械の制御方法
JP7259860B2 (ja) ロボットの経路決定装置、ロボットの経路決定方法、プログラム
JP2666538B2 (ja) パニング制御システム
JPH1177569A (ja) オフラインティーチング装置
CN115703227A (zh) 机器人的控制方法、机器人以及计算机可读存储介质
CN117222499A (zh) 对操纵器进行编程的方法、控制***和工业机器人
CN112659157A (zh) 控制***、控制装置以及机器人
JP2019081204A (ja) ロボット制御方法、制御端末、およびロボットシステム
CN112041128B (zh) 机器人的教导方法和机器人的教导***
CN115996822B (zh) 控制工业致动器的方法、控制***和工业致动器***
JP7015416B1 (ja) ロボット教示システム、プログラムおよびプログラム編集装置
CN113733107B (zh) 机器人拖动示教的方法、机器人及计算机存储介质
WO2022025001A1 (ja) 教示装置、教示システム、及び教示プログラム
CN113687656B (zh) 一种机器人控制方法及***
Nguyen et al. Automated Inverse Kinematics Configuration Selection for Path Planning of a 6-DOF Robot
Makris et al. Generating motion of cooperating robots—the dual arm case

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