CN116096534A - 用于对机器人进行编程的方法和系统 - Google Patents

用于对机器人进行编程的方法和系统 Download PDF

Info

Publication number
CN116096534A
CN116096534A CN202180051962.8A CN202180051962A CN116096534A CN 116096534 A CN116096534 A CN 116096534A CN 202180051962 A CN202180051962 A CN 202180051962A CN 116096534 A CN116096534 A CN 116096534A
Authority
CN
China
Prior art keywords
robot
trajectory
description
existing
robot trajectory
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
CN202180051962.8A
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 CN116096534A publication Critical patent/CN116096534A/zh
Pending legal-status Critical Current

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/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
    • 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/40512Real time path planning, trajectory generation

Landscapes

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

Abstract

提供了一种方法和系统以用于没有专门机器人编程语言专业知识的用户对机器人进行编程。在该方法中,用户向转译器提供高级描述。转译器将该描述转译成转换。转换器将该转换应用于现有机器人轨迹以便提供更新的机器人轨迹。然后,更新的机器人轨迹用于操作机器人。

Description

用于对机器人进行编程的方法和系统
技术领域
本发明在整体上涉及机器人,并且更具体地涉及机器人编程。
背景技术
当对机器人进行编程时,必须为所有关节定义位置序列(例如,坐标和旋转),使得该序列一起实施所期望的机器人功能。对机器人进行编程是费力的任务,即使在使用最先进的机器人开发工具(例如,RobotStudio)时也是如此。当机器人要在很长一段时间内重复执行给定的任务时,大量的初始时间投入是可接受的。然而,当工作环境或任务经常发生变化时,传统的机器人编程变得较不经济,因为无论变化的性质或程度如何,任何变化都需要重新实施任务。
发明内容
描述了一种用于对机器人进行编程的方法和系统。在该方法和系统中,用户提供对现有机器人轨迹进行的修改的高级描述。转译器将该描述转译成可应用于现有机器人轨迹的转换。然后,转换器使用该转换对现有机器人轨迹进行转换,以提供更新的机器人轨迹。然后,机器人可以被操作以执行更新的机器人轨迹,而不需要由专家工程师使用专门的机器人编程软件代码进行重新编程。因此,该方法和系统允许没有专门的机器人编程语言经验的非专家用户修改机器人程序。本发明还可以包括以下在书面描述或附图中描述的任何其他方面以及其任何组合。
该系统可被配置用于由用户根据本文中描述的任何方法对机器人进行编程。该系统可以包括:转译器,被配置用于接收并用于转译描述;转换器,被配置用于接收现有机器人轨迹并被配置用于接收转换,该转换器被配置用于将现有机器人轨迹(22)转换成更新的机器人轨迹;控制器,被配置用于接收更新的机器人轨迹;以及机器人(30),被配置用于执行该更新的机器人轨迹。而且,提供了一种用于使用本文中描述的任何方法对机器人进行编程的系统的用途。
附图说明
通过结合附图阅读以下描述,可以更全面地理解本发明,在附图中:
图1是由用户对机器人进行编程的方法和系统的流程图。
具体实施方式
机器人系统在机器人的工作空间内执行机器人任务。在工作空间内,机器人任务由轨迹组成,该轨迹是空间中的坐标的时间序列。例如,轨迹可以是关节角度或刀尖坐标的时间序列。机器人系统使用控制器来引导机器人沿机器人轨迹的坐标准确或近似地行进。因此,机器人可以执行各种有用的任务。然而,由于机器人系统操纵真实物体,因此在机器人系统的整个生命周期中,由于机器人任务可能需要的各种变化,机器人任务很少保持相同。在工作环境、任务或机器人配置发生变化的情况下,机器人系统的用户需要修改现有机器人轨迹,以便改变机器人的行为。这需要对现有机器人轨迹执行几何计算,用户往往不能容易得到该计算。作为另一种选择,为任务变化开发全新的轨迹是费时和麻烦的。为了克服该问题,用于操纵现有机器人任务的直观系统将是优选的。
本文中的方法和系统可用于促进机器人任务的实施,以及由于任务或其中进行任务的环境的变化而对任务的修改。抽象命令可用于操纵轨迹,使得可以用最小的努力从一组给定的基本移动或现有任务中生成新的或更新的任务。因此,可以达到一定水平的适应性,这样的适应性不仅简化了机器人编程,而且在过渡到新环境时避免了重新实施机器人任务的需要。该简化使机器人编程显著更快和成本更低。
改进的方法和系统允许机器人系统的用户使用直观的、高级的命令来修改机器人轨迹。通常情况下,机器人的用户是使用专用机器人编程语言的软件命令的非专家,其具有最小编程技能或没有编程技能。改进的方法和系统优选包括至少两个部分:转译器和转换器。转译器从用户接收高级命令或一系列高级命令,并将这些转译成一组转换。转换器将这些转换应用于现有的机器人任务。取决于机器人的配置,轨迹被转换或通知用户所要求的轨迹转换不可行。
该方法和系统解决了允许用户操纵机器人任务的问题,否则这在传统的机器人系统中是受限的,并且允许用户避免开发仅仅是现有任务的变化的全新机器人任务。此外,该系统允许使用高级命令,其产生易于使用的直观界面。
还可以为需要全新的机器人任务的情况提供方法和系统。例如,当发生较大的变化(例如,机器人单元的变化),或机器人首次投入生产时,可能需要全新的轨迹。在此情况下,该方法和系统可以提供预先建立的对经常使用的机器人运动进行编码的运动基元(primitive)。然后,上述相同的轨迹操纵方法可用于简化针对新的机器人任务的机器人编程。使用相同的操纵方法来修改现有的机器人任务和创建新的机器人任务简化了机器人任务开发者的工作,并进而使整个机器人系统的使用更快并且成本更低。
该方法和系统的另一个优点是,在典型的机器人系统中使用的传统部件,诸如控制器,可以重复使用。由于该方法和系统在轨迹抽象水平上工作,因此机器人控制器使用传统的机器人编程代码简单地执行所产生的轨迹。
该方法和系统如何工作的概述在图1中示出。首先,机器人系统的用户10提供需要执行的轨迹操纵的高级描述12。描述12可能与环境属性有关,诸如被操纵物体的属性,或工作空间的属性,诸如障碍物,或机器人系统周围环境的属性,如亮度、诸如音等。此类属性可由各种感测装置获得,诸如相机、麦克风和LIDAR装置。此外,描述12可能与轨迹本身的属性有关,诸如速度、加速度、平滑度、近似方法或随机化。描述12也可能与机器人30本身有关,诸如机器人30的物理部件或机器人配置。描述12也可以是一系列的高级描述,其形成对机器人任务操纵的更复杂的抽象描述。可以由用户10提供各种输入作为描述12,包括例如文本输入,诸如口语化的句子或短语,或者在触摸板上指示方向、物体、图标等的输入。
然后将描述12送入转译器14中。转译器14负责解释从用户10接收的高级描述12并输出与高级描述12对应的轨迹转换18的序列。转换18是根据高级描述12解释的数学调整,其可以被用于修改现有机器人轨迹22,诸如调整物体的大小、调整物体的旋转取向、或调整物体的位置。为了提供转换18,转译器14可以引入额外的信息16,诸如机器人配置、感知数据、历史数据或来自其他来源的数据。该额外信息16的收集在图1中是通过对转译器14的配置输入16指示的。在一些情况下,转译器14可能没有输出轨迹转换18所需的所有信息。然后转译器14提示用户10提供更具体的描述12或提供具体的信息12。在其他情况下,转译器14可以确定所描述的修改是不可行的。然后,转译器14可以通知用户10,要求的修改是不可行的,并可以提示用户10提供不同的修改描述12。
然后转换器20从转译器14接收转换18的序列。转换器20还接收现有机器人轨迹22,并将转换18应用到轨迹22。因此,轨迹的顺序在如下的方法和系统中被使用,即转换器20从现有机器人任务22的坐标开始,并用转换18修改现有机器人任务22。然而,在一些情况下,没有为特别的机器人任务开发现有机器人轨迹22(即实际操作的机器人任务),例如,当指定全新的任务或改变基础机器人系统时。在此情况下,该方法和系统向转换器20提供与经常发生的机器人运动对应的机器人轨迹22,称为运动基元22。运动基元22可以是预先建立的,并可以被包括有由用户10提供的高级描述12。也可以在库中向用户10提供多个运动基元22,以允许用户10将选定的运动基元22组合在一起以形成完整的机器人轨迹22。
然后将所得的转换轨迹24编程到控制器26上。控制器26和机器人30优选为传统部件,其需要专门的机器人编程软件代码,以便执行轨迹。因此,改进的方法和系统可以使用现有的控制器26和机器人30,而无需对其进行任何改动。也就是说,被送入控制器26的轨迹24被转换器20转换为常规控制器26和机器人30使用的常规专门编程软件代码。可能期望的是,转译器14和转换器20是独立于控制器26和机器人30的单独软件部件,以便简化系统与常规控制器26和机器人30的使用。应理解的是,现有机器人轨迹22和更新的机器人轨迹24两者都包括要由机器人遵循的坐标的时间序列。然后,控制器26使用转换后的轨迹24以一系列指令28驱动机器人。然后,机器人30执行轨迹24,其在图1中被标记为响应32。然后,用户10可以直接或间接地观察机器人响应32,并如果所产生的响应32被认为是令人满意的,则接受该响应,或者如果期望不同的轨迹响应,则可以决定改变高级描述12。
作为说明性示例,机器人系统可以是折叠纸板箱的系统。在此种系统中,用于操纵标准大小的箱子的轨迹22可能已经存在,并且可以与机器人30前面的工作空间对准。机器人30也可以配备带有相机的感知子系统。然而,有可能稍宽的纸板箱可到达机器人30,其相对于预期的取向转了45°。由用户10提供的可能的高级命令12可以是例如“该箱子宽了20%并被旋转”。转译器14接收到描述12,并从感知子系统要求估计的旋转16。这是由转译器14引入的额外信息16的示例(图1中的配置输入16)。然后,转译器14输出一系列转换18,例如,“将水平分量缩放120%,并将整个轨迹围绕竖直轴线旋转45度”。这一系列的转换18然后被送入转换器20中。首先,转换器20将标准大小箱子的机器人轨迹22的坐标的水平分量乘以120%。然后转换器20将缩放后的轨迹围绕竖直轴线旋转45°。产生的轨迹24是适合于处置修改后的箱子的新机器人任务。机器人20现在准备好执行任务并折叠修改后的箱子。如果用户10对机器人30处置修改后的箱子的方式感到满意,则机器人30可以移到下一个任务。如果不满意,则用户10可以选择改变描述12,例如,“该箱子宽了20%并且逆时针旋转”。
虽然已描述了本发明的优选实施例,但是应该理解,本发明并没有如此受限制,并且可以在不背离本文中的本发明的情况下进行修改。虽然本文中描述的每个实施例可能仅涉及某些特征,并且可能不具体涉及关于其他实施例描述的每个特征,但应该认识到,除非另有描述,否则本文中描述的特征是可以互换的,即使在没有提及具体特征的情况下。还应该理解的是,上面描述的优点不一定是本发明的唯一优点,并且不一定预期本发明的每个实施例都实现所有描述的优点。本发明的范围由所附的权利要求限定,并且属于权利要求含义的范围内的所有装置和方法,无论是字面意思还是等同形式,都意图被涵盖在其中。

Claims (11)

1.一种由用户(10)对机器人(30)进行编程的方法,包括:
从所述用户(10)接收要对现有机器人轨迹(22)做出的改变的描述(12);
将所述描述(12)转译(14)成转换(18);
接收所述现有机器人轨迹(22),所述现有机器人轨迹至少包括所述机器人(30)要遵循的坐标的第一时间序列;
通过将所述转换(18)应用于所述现有机器人轨迹(22),将所述现有机器人轨迹(22)转换(20)为更新的机器人轨迹(24),所述更新的机器人轨迹(24)至少包括所述机器人(30)要遵循的坐标的第二时间序列;
利用所述更新的机器人轨迹(24)对所述机器人(30)的控制器(26)进行编程;以及
利用所述控制器(26)操作(28)所述机器人(30)以执行(32)所述更新的机器人轨迹(24)。
2.根据权利要求1所述的方法,其中所述描述(12)包括文本输入。
3.根据任一项前述权利要求所述的方法,其中所述描述(12)包括触摸板输入。
4.根据任一项前述权利要求所述的方法,其中所述转换(18)是数学调整。
5.根据任一项前述权利要求所述的方法,其中所述转换(18)是物体大小调整、物体旋转调整或物体位置调整。
6.根据任一项前述权利要求所述的方法,还包括接收配置输入(16),其中所述转换(18)是从所述描述(12)和所述配置输入(16)转译(14)来的。
7.根据任一项前述权利要求所述的方法,其中所述现有机器人轨迹(22)包括操作机器人任务。
8.根据权利要求1至6所述的方法,其中所述现有机器人轨迹(22)包括预先建立的运动基元。
9.根据权利要求1至6或8所述的方法,其中所述现有机器人轨迹(22)包括组合在一起并从预先建立的运动基元的库中选择的多个预先建立的运动基元。
10.一种用于由用户(10)根据任一项前述权利要求所述的方法对机器人(30)进行编程的系统,包括:
转译器(14),从所述用户(10)接收所述描述(12)并将所述描述(12)转译成所述转换(18);
转换器(20),接收所述现有机器人轨迹(22)并从所述转译器(14)接收所述转换(18),所述转换器(20)将所述现有机器人轨迹(22)转换成所述更新的机器人轨迹(24);
控制器(26),从所述转换器(20)接收所述更新的机器人轨迹(24);以及
机器人(30),响应于所述控制器(26)执行所述更新的机器人轨迹(24)。
11.根据权利要求10所述的系统,其中所述转译器(14)和所述转换器(20)是独立于所述控制器(26)和所述机器人(30)的软件部件。
CN202180051962.8A 2020-08-24 2021-08-12 用于对机器人进行编程的方法和系统 Pending CN116096534A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP20192462.8 2020-08-24
EP20192462.8A EP3960393A1 (en) 2020-08-24 2020-08-24 Method and system for programming a robot
PCT/EP2021/072503 WO2022043081A1 (en) 2020-08-24 2021-08-12 Method and system for programming a robot

Publications (1)

Publication Number Publication Date
CN116096534A true CN116096534A (zh) 2023-05-09

Family

ID=72234755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180051962.8A Pending CN116096534A (zh) 2020-08-24 2021-08-12 用于对机器人进行编程的方法和系统

Country Status (4)

Country Link
US (1) US20230330857A1 (zh)
EP (1) EP3960393A1 (zh)
CN (1) CN116096534A (zh)
WO (1) WO2022043081A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220288777A1 (en) * 2021-03-10 2022-09-15 Samsung Electronics Company, Ltd. Parameterized Waypoint Generation on Dynamically Parented Non-Static Objects for Robotic Autonomous Tasks
US11945117B2 (en) 2021-03-10 2024-04-02 Samsung Electronics Co., Ltd. Anticipating user and object poses through task-based extrapolation for robot-human collision avoidance

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012015437A1 (de) * 2012-08-02 2014-05-15 Kuka Roboter Gmbh Verfahren und Programmiermittel zur Modifikation einer Roboterbahn
US9186795B1 (en) * 2013-06-24 2015-11-17 Redwood Robotics, Inc. Programming and execution of force-based tasks with torque-controlled robot arms
DE102015002994A1 (de) * 2015-03-09 2016-09-15 Kuka Roboter Gmbh Verändern einer initial vorgegebenen Roboterbahn
CN105751230B (zh) * 2016-03-31 2018-12-21 纳恩博(北京)科技有限公司 一种路径控制方法、路径规划方法、第一设备及第二设备

Also Published As

Publication number Publication date
US20230330857A1 (en) 2023-10-19
WO2022043081A1 (en) 2022-03-03
EP3960393A1 (en) 2022-03-02

Similar Documents

Publication Publication Date Title
JP6580602B2 (ja) ロボットをプログラムする方法およびシステム
US11331803B2 (en) Mixed reality assisted spatial programming of robotic systems
Akan et al. Intuitive industrial robot programming through incremental multimodal language and augmented reality
US6445964B1 (en) Virtual reality simulation-based training of telekinegenesis system for training sequential kinematic behavior of automated kinematic machine
Fang et al. A novel augmented reality-based interface for robot path planning
CN116096534A (zh) 用于对机器人进行编程的方法和系统
US7802193B1 (en) Controlling motion using a human machine interface
Miner et al. An interactive virtual reality simulation system for robot control and operator training
Pettinger et al. Reducing the teleoperator’s cognitive burden for complex contact tasks using affordance primitives
Pedemonte et al. Visual-based shared control for remote telemanipulation with integral haptic feedback
CN115351780A (zh) 用于控制机器人设备的方法
Jen et al. VR-Based robot programming and simulation system for an industrial robot
Papageorgiou et al. A passive robot controller aiding human coaching for kinematic behavior modifications
KR101263487B1 (ko) 로봇의 교시 장치
JPH0944219A (ja) ロボットシミュレータ装置
Hwang et al. Interactive task planning through natural language
Matour et al. Intuitive Robot Path Planning through Augmented Reality
Bohren et al. Toward practical semi-autonomous teleoperation: do what i intend, not what i do
Chinello et al. The KUKA Control Toolbox: motion control of KUKA robot manipulators with MATLAB
Eljaik et al. Optimization-based controllers for robotics applications (ocra): The case of icub’s whole-body control
Freund et al. State oriented modeling as enabling technology for projective virtual reality
WO2023073883A1 (ja) 補助ファイルを生成するシミュレーション装置および制御システム
Xiao et al. Assembly language design and development for reconfigurable flexible assembly line
Christensen Virtual environments for telerobotic shared control
Li et al. Shallow Discussion on Simulation Design of Cleaning Robot Controller Based on Matlab

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