CN114901438A - 利用外部物体抑制机器人臂振动的方法 - Google Patents

利用外部物体抑制机器人臂振动的方法 Download PDF

Info

Publication number
CN114901438A
CN114901438A CN202080090619.XA CN202080090619A CN114901438A CN 114901438 A CN114901438 A CN 114901438A CN 202080090619 A CN202080090619 A CN 202080090619A CN 114901438 A CN114901438 A CN 114901438A
Authority
CN
China
Prior art keywords
external object
robot
robotic
arm
robotic arm
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
CN202080090619.XA
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.)
Universal Robots AS
Original Assignee
Universal Robots AS
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 Universal Robots AS filed Critical Universal Robots AS
Publication of CN114901438A publication Critical patent/CN114901438A/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/1602Programme controls characterised by the control system, structure, architecture
    • 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/1638Programme controls characterised by the control loop compensation for arm bending/inertia, pay load weight/inertia
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L5/00Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes
    • G01L5/16Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes for measuring several components of force
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • 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/18Numerical 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/416Numerical 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 of velocity, acceleration or deceleration
    • 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/37Measurements
    • G05B2219/37434Measuring vibration of machine or workpiece or tool
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39195Control, avoid oscillation, vibration due to low rigidity
    • 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/41Servomotor, servo controller till figures
    • G05B2219/41166Adaptive filter frequency as function of oscillation, rigidity, inertia load
    • 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/41Servomotor, servo controller till figures
    • G05B2219/41231Using impulse shaping filter
    • 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/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50041Measuring intensity of tool vibration

Abstract

本发明公开了用于控制机器人臂的方法和机器人控制器,其中该机器人臂包括连接机器人基座和机器人工具凸缘的多个机器人关节,其中机器人关节中的每个机器人关节包括能够相对于机器人关节主体移动的输出凸缘和被配置成相对于机器人关节主体移动输出凸缘的关节马达。机器人臂基于连接到机器人臂的至少一个外部物体的振动特性来控制,其中经由外部物体安装界面通过基于目标运动和接收到的至少一个外部物体的振动特性为所述机器人臂生成控制信号来接收振动特性,控制信号包括所述关节马达的控制参数。

Description

利用外部物体抑制机器人臂振动的方法
技术领域
本发明涉及用于控制机器人臂的方法和机器人控制器,该机器人臂包括连接机器人基座和机器人工具凸缘的多个机器人关节,其中外部物体已被提供给机器人臂。
背景技术
包括多个机器人关节和连杆的机器人臂(其中马达或致动器可使机器人臂的一部分相对于彼此移动)在机器人学领域中是已知的。通常,机器人臂包括:机器人基座,其用作机器人臂的安装基座;和机器人工具凸缘,其中各种工具可附接到该机器人工具凸缘。机器人控制器被配置成控制机器人关节,以相对于基座移动机器人工具凸缘。例如,为了指示机器人臂执行多个工作指令。机器人关节可以是被配置成使机器人臂的部分相对于彼此旋转的旋转机器人关节,被配置成使机器人臂的部分相对于彼此平移的棱柱关节和/或被配置成使机器人臂的部分相对于彼此移动的任何其他种类的机器人关节。
通常,机器人控制器被配置成基于机器人臂的动态模型控制机器人关节,其中该动态模型限定作用于机器人臂上的力与所得的机器人臂的加速度之间的关系。通常,动态模型包括机器人臂的运动学模型、关于机器人臂的惯性的知识以及影响机器人臂移动的其他参数。运动学模型限定了机器人臂的不同部分之间的关系,并且可包括机器人臂的信息(诸如关节和连杆的长度、尺寸),并且可例如由Denavit-Hartenberg参数等来描述。动态模型使得控制器能够确定为了(例如)以指定速度、加速度移动机器人关节或为了将机器人臂保持在静态姿势,关节马达或致动器将提供哪些扭矩和/或力。
机器人臂需要由限定用于机器人臂的各种指令的用户或机器人集成商编程,各种指令诸如预定义的移动模式和工作指令,诸如抓握、等待、释放、螺纹接合指令。指令可基于通常提供用于停止或启动给定指令的触发信号的各种传感器或输入信号。触发信号可由各种指示器提供,诸如安全帘、视觉系统、位置指示器等。
通常,可以将各种端部执行器附接到机器人臂的机器人工具凸缘或其他部分,诸如夹持器、真空夹持器、磁性夹持器、螺纹车床、焊接装备、分配系统、视觉系统等。
协作机器人是设计用于与人类直接交互的机器人。当机器人被设计成协作时,轻量化设计是主要关注点之一。这是为了减少与人类或障碍物在潜在碰撞时产生的影响。因此,该设计将是低质量和高刚度之间的折衷。轻量化设计是当前机器人、起重机和汽车行业发展的主要目标,仅举例来说。轻量化设计通过例如提高性能、提高安全性、减少环境占有面积、降低能量消耗和降低价格来促动。与通常基于铸铁设计的传统重型刚性工业机器人相比,轻量化设计将具有增加的机械灵活性量。
具有机械灵活性的机器人在性能方面面临挑战。例如,当期望快速的点对点运动时,机械振动是不可接受的。因此,期望抑制机器人臂中的机械振动。例如,这可通过利用输入整形方法来实现,该方法通过智能地添加时间延迟来略微修改机器人臂的目标运动。所修改的(整形)轨迹将减少系统临界固有频率下的振动量。
WO2019012040A1和相应的科学文章{ii.}{iii.}公开了用于向具有不同动态特性的物理系统生成输入的方法,该方法可用于抑制机器人臂的机械振动。基于物理系统的动态特性生成机器人臂的控制信号,这些动态特性例如可基于物理系统的动态建模、包含物理系统的动态特性的查找表、物理系统的各个部分的测量结果或前述各项的组合来获得。为了提供对机器人臂的有效抑制振动,处于各种姿态的机器人臂的准确动态特性必须可用于机器人臂的可能姿态,其中机器人臂的姿态表征了机器人臂的不同部分的位置和取向,例如以机器人关节的位置(诸如机器人关节的关节角度)的形式。这可通过将机器人臂布置在可能姿态中并且获得给定姿态中的机器人臂的动态特性来实现,例如通过对处于当前姿态的机器人臂的阻尼和本征频率执行测量。这是一个非常复杂的过程,这需要在机器人臂的大量不同配置下对机器人臂的本征频率和阻尼进行测量,如由于机器人关节的精确分辨率,因此可将典型的机器人臂布置在几乎无限量的姿态中;这是非常耗时的。另外,大量测量数据使得难以实时评估动态特性。
另外,机器人臂通常与连接到机器人臂的各种外部物体结合使用,如附接到机器人工具凸缘的末端执行器、附接到机器人臂的电线、软管、安全装备等。当提供此类外部物体时,机器人臂的振动特性受这些外部物体影响。因此,使用如WO2019012040A1、科学文章{ii.}、{iii.}中所述的输入整形来控制机器人臂的效果可能受到限制,因为用于输入整形的振动特性通常是在机器人臂的制造期间的校准过程中获得的。另外,机器人臂可以布置在影响机器人臂的振动特性的结构上,由此产生类似的效果。
EP 1132790 A1公开了一种用于机器(诸如机器人和具有作为机器驱动源的电动马达的机床)的控制器,其能够抑制机器和/或附接到机器的附件的固有振动。确定作为附件的机器人或机器本身的末端执行器的固有振动的频率或周期,并且根据所测量的固有振动的频率或周期来改变用于抑制固有振动的幅度的滤波器的系数。在抑制附接到机器人的末端执行器的固有振动的情况下,根据末端执行器的运行状态来确定和存储各种末端执行器的固有振动的频率或周期,并且基于根据附接到机器人的末端执行器和运行状态所存储的固有振动的频率或周期来设置滤波器的系数。在抑制机器的固有振动的情况下,始终检测机器的固有频率,并根据检测到的固有频率自动改变滤波器的系数,从而抑制由于负载变化和机器老化而导致固有频率变化的机器的固有振动幅度。
参考文献
{i.}P.H.Chang,H.-S.Park,“Time-varying input shaping technique appliedto vibration reduction of an industrial robot,Control Engineering Practice”,2005年第13卷第1期,第121-130页http://dx.doi.org/10.1016/j.conengprac.2004.02.009
{ii.}D.K.Thomsen,R.
Figure BDA0003715554960000041
D.Brandt,X.Zhang,“Experimentalimplementation of time-varying input shaping on ur robots”,收录于第16届控制、自动化和机器人信息学国际会议论文集(ICINCO 2019),2019年第1卷,第488-498页;http://dx.doi.org/10.5220/0007834504880498
{iii.}D.K.Thomsen,R.
Figure BDA0003715554960000042
D.Brandt,O.Balling,X.Zhang,“Smoothonline time-varying input shaping with fractional delay{FIR}filtering”,Control Engineering Practice,2019年第88卷,第21-37页;http://dx.doi.org/10.1016/j.conengprac.2019.04.003
发明内容
本发明的目的是解决关于现有技术的上述限制或现有技术的其他问题。这通过根据独立权利要求所述的机器人控制器和控制机器人臂的方法来实现。
其中,根据独立权利要求所述的机器人控制器包括外部物体安装界面,该外部物体安装界面被配置成接收连接到机器人臂的至少一个外部物体的振动特性,并且其中该机器人控制器被配置成基于目标运动和接收到的该至少一个外部物体的振动特性来为机器人臂生成控制信号。这使得用户可以确保机器人控制器以最小化连接到机器人臂的外部物体的振动和/或由这些外部物体引起的振动的方式控制机器人臂。外部物体安装界面使得用户能够提供机器人臂制造商通常不知道的振动特性,并且机器人控制器然后将在控制机器人臂时自动地考虑这些振动特性。
其中,根据独立权利要求所述的用于控制机器人臂的方法包括:经由外部物体安装界面接收连接到机器人臂的外部物体的振动特性的步骤、为机器人臂生成目标运动的步骤,以及基于目标运动和接收到的振动特性为机器人臂生成控制信号的步骤。这使得机器人臂的用户能够提供连接到机器人臂的外部物体的振动特性,并且为机器人臂提供减少由外部物体引入的振动的控制信号。
从属权利要求描述了根据本发明的机器人臂和方法的可能实施方案。本发明的优点和益处将在本发明的具体实施方式中进一步详细描述。
附图说明
图1示出了根据本发明的机器人臂;
图2示出了机器人臂的简化结构图;
图3a至图3d示出了根据本发明的外部物体安装模块的各种实施方案的界面;
图4示出了根据本发明的控制机器人臂的方法的流程图;
图5示出了根据本发明的控制机器人臂的方法的实施方案流程图;
图6示出了根据本发明的控制机器人臂的方法的实施方案流程图;
图7示出了根据本发明的控制机器人臂的方法的实施方案流程图;并且
图8a至图8d示出了包括程序树模块的界面,该程序树模块包括执行根据本发明控制机器人臂的方法的程序步骤。
具体实施方式
鉴于仅旨在说明本发明原理的示例性实施方案描述了本发明。技术人员将能够在权利要求的范围内提供若干实施方案。在整个说明书中,提供类似效果的类似元件的参考标号具有相同的后两位。此外,应当理解,在实施方案包括多个相同特征的情况下,仅一些特征可以由参考标号标记。
图1示出了机器人臂101,该机器人臂包括多个机器人关节102a、102b、102c、102d、102e、102f,该多个机器人关节连接机器人基座103和机器人工具凸缘104。基座关节102a被配置成使机器人臂绕基座轴线105a(以短划虚线示出)旋转,如旋转箭头106a所示;肩部关节102b被配置成使机器人臂绕肩部轴线105b(示出为指示轴线的十字)旋转,如旋转箭头106b所示;肘部关节102c被配置成使机器人臂绕肘部轴线105c(示出为指示轴线的十字)旋转,如旋转箭头106c所示;第一腕关节102d被配置成使机器人臂绕第一腕轴线105d(示出为指示轴线的十字)旋转,如旋转箭头106d所示,并且第二腕关节102e被配置成使机器人臂绕第二腕轴线105e(以短划虚线示出)旋转,如旋转箭头106e所示。机器人关节102f是包括机器人工具凸缘104的机器人工具关节,该机器人工具凸缘能够绕工具轴线105f(以短划虚线示出)旋转,如旋转箭头106f所示。因此,所示的机器人臂是具有六个自由度的六轴机器人臂,具有六个旋转机器人关节,然而,应当注意,本发明可以提供于包括更少或更多机器人关节以及其他类型的机器人关节,诸如提供机器人臂的部分的平移例如线性平移的棱柱机器人关节的机器人臂中。
机器人工具凸缘参考点(也称为TCP(工具中心点))107在该机器人工具凸缘处指示,并且定义工具凸缘坐标系的原点,该坐标系定义三个坐标轴x凸缘、y凸缘、z凸缘。在所示实施方案中,该机器人工具凸缘坐标系的原点已经被布置在工具凸缘轴线105f上,其中一个轴(z凸缘)与工具凸缘轴线平行,并且其他轴x凸缘、y凸缘与机器人工具凸缘104的外表面平行。此外,基座参考点108与定义三个坐标轴x凸缘、y凸缘、z凸缘的机器人基座坐标系的原点重合。在所示实施方案中,机器人基座坐标系的原点已经被布置在基座轴线105a上,其中一个轴(z凸缘)与基座轴线105a轴平行,并且其他轴x凸缘、y凸缘与机器人基座的底面平行。与机器人臂相关的重力方向109也由箭头指示,并且应当理解,机器人臂可布置在与重力相关的任何位置和取向处。
机器人臂包括至少一个机器人控制器110,该机器人控制器被配置成控制机器人臂101并且可被提供为包括界面设备111的计算机,使得用户能够对机器人臂进行控制和编程。控制器可被提供为如图1所示的外部设备或集成到机器人臂中的设备或它们的组合。界面设备可例如被提供为工业机器人领域中已知的示教器,该示教器可经由有线或无线通信协议与控制器进行通信。界面设备可例如包括显示器112和多个输入设备113,诸如按钮、滑块、触摸板、操纵杆、轨迹球、手势识别设备、键盘、麦克风等。显示器可被提供为既充当显示器又充当输入设备的触摸屏。界面设备还可被提供为外部设备(该外部设备被配置成与机器人控制器进行通信),例如以智能电话、平板电脑、PC、膝上型电脑等的形式。界面设备可以是与机器人控制器有线通信或无线通信的示教器、柄部或智能电话。
机器人工具凸缘104包括集成到机器人工具凸缘104中的力-扭矩传感器114。力-扭矩传感器114提供工具凸缘力信号,该工具凸缘力信号指示在机器人工具凸缘处提供的力-扭矩。在所示实施方案中,力-扭矩传感器被集成到机器人工具凸缘中,并且被配置成指示相对于机器人工具凸缘参考点107施加到机器人工具凸缘的力和扭矩。力-扭矩传感器114提供力和扭矩信号,该力和扭矩信号指示在工具凸缘处提供的力和扭矩。在所示实施方案中,力-扭矩传感器被集成到机器人工具凸缘中,并且被配置成指示相对于参考点107和工具凸缘坐标系施加到机器人工具凸缘的力。然而,力-扭矩传感器可指示相对于可连接到机器人工具凸缘坐标系的任何点施加到机器人工具凸缘的力-扭矩。在一个实施方案中,力-扭矩传感器被提供为六轴力-扭矩传感器,其被配置成指示沿着三个垂直轴线的力和围绕三个垂直轴线的扭矩。例如,力-扭矩传感器可被提供为能够指示相对于参考点的力和扭矩的任何力-扭矩传感器,例如由WO2014/110682A1、US4763531、US2015204742公开的任何力-扭矩传感器。然而,应当理解,与本发明相关的力传感器不一定需要能够感测施加到工具凸缘的扭矩。需注意,力-扭矩传感器可被提供为外部设备,该外部设备被布置在机器人工具凸缘处、机器人臂的其他部分处或被省略。
加速度传感器115布置在机器人工具关节102f处,并且被配置成感测机器人工具关节102f的加速度和/或机器人工具凸缘104的加速度。加速度传感器115提供加速度信号,该加速度信号指示机器人工具关节102f的加速度和/或机器人工具凸缘104的加速度。在所示实施方案中,加速度传感器被集成到机器人工具关节中,并且被配置成指示机器人工具坐标系中机器人工具关节的加速度。然而,加速度传感器可指示机器人工具关节相对于可连接到机器人工具凸缘坐标系的任何点的加速度。加速度传感器可被提供为能够指示物体的加速度的任何加速度计。加速度传感器可例如被提供为能够指示物体的线性加速度和旋转加速度两者的IMU(惯性测量单元)。需注意,加速度传感器可被提供为外部设备,该外部设备可被布置在机器人工具凸缘处、机器人臂的其他部分处或被省略。
每个机器人关节包括机器人关节主体以及能够相对于该机器人关节主体旋转或平移的输出凸缘,并且该输出凸缘直接或经由本领域已知的臂部分连接至相邻的机器人关节。机器人关节包括关节马达,该关节马达被配置成例如经由传动装置或直接连接至马达轴来相对于该机器人关节主体旋转或平移输出凸缘。机器人关节主体可(例如)形成为关节外壳,并且关节马达可布置在该关节外壳内,并且输出凸缘可延伸出该关节外壳。另外,机器人关节包括提供传感器信号的至少一个关节传感器,该传感器信号指示以下参数中的至少一个参数:输出凸缘的角位置和/或线性位置、关节马达的马达轴的角位置和/或线性位置、关节马达的马达电流或试图旋转输出凸缘或马达轴的外力和/或扭矩。例如,输出凸缘的角位置可由输出编码器诸如光学编码器、磁性编码器指示,这些输出编码器可指示输出凸缘相对于机器人关节的角位置。类似地,关节马达轴的角位置可由输入编码器诸如光学编码器、磁性编码器提供,这些输入编码器可指示马达轴相对于机器人关节的角位置。应当注意,可提供指示输出凸缘的角位置的输出编码器和指示马达轴的角位置的输入编码器两者,这在已提供传动装置的实施方案中使得可以确定该传动装置的输入侧与输出侧之间的关系。关节传感器还可被提供为指示通过关节马达的电流的电流传感器,并且因此该关节传感器用于获得由马达提供的扭矩。例如,结合多相马达,可提供多个电流传感器以获得通过该多相马达的每个相位的电流。还需注意,一些机器人关节可包括能够由关节致动器旋转和/或平移的多个输出凸缘,例如,机器人关节中的一个机器人关节可包括第一输出凸缘,该第一输出凸缘相对于机器人关节旋转/平移机器人臂的第一部分;以及第二输出凸缘,该第二输出凸缘相对于机器人关节旋转/平移机器人臂的第二部分。如上面所指示,关节传感器也可被提供为力-扭矩传感器或加速度传感器。这种力和/或扭矩和加速度传感器可以是如图1所指示的最外部关节的一部分,然而机器人臂的其他部分也可包括力-扭矩传感器和加速度传感器。机器人控制器被配置成通过基于机器人臂的动态模型、重力做功方向和关节传感器信号控制提供给关节马达的马达扭矩来控制机器人臂的部分和机器人关节的运动。
末端执行器126(以虚线示出)附接到机器人工具凸缘,并且以夹持器的形式示出,然而应当理解,该末端执行器可以是任意种类的末端执行器,诸如夹持器、真空夹持器、磁性夹持器、螺纹车床、焊接装备、涂胶装备、点胶系统、涂装装备、视觉系统、相机等。末端执行器126构成连接到机器人臂的外部物体,然而,连接到机器人臂的外部物体可以是连接到机器人臂的任意一个或多个物体,诸如连接到机器人臂的电线、软管、安全装备、标记、灯等。机器人基座103还连接到外部物体,该外部物体以机器人支架127(以虚线示出)的形式示出,机器人臂安装在其上。
连接到机器人臂的外部物体具有影响机器人臂的一些振动特性,并且这些外部物体可能会由于机器人臂的移动而振动。例如,在机器人臂移动期间,末端执行器的工作点可能会以不期望的方式振动。例如,如果外部物体被提供为用于目视检查的相机,则该相机在到达需要拍照或录像的位置时可能会振动,因此相机需要等待一段时间才能拍照/录像。因此,检查时间被延长。末端执行器的工作点需要非常精确和准确的末端执行器也需要等待直到振动减少。如将在以下段落中描述的,根据本发明的机器人控制器通过提供外部物体安装界面来解决这种情况,其中可以将连接到机器人臂的至少一个外部物体的振动特性提供给机器人控制器。然后,机器人控制器可以被配置成基于目标运动和外部物体的振动特性来为关节马达生成控制信号。这使得用户可以确保机器人控制器以最小化连接到机器人臂的外部物体的振动和/或由这些外部物体引起的振动的方式控制机器人臂。外部物体安装界面使得用户能够提供机器人臂制造商通常不知道的振动特性,并且机器人控制器然后将在控制机器人臂时自动地考虑这些振动特性。
图2示出了图1所示的机器人臂的简化结构图。机器人关节102a、102b和102f已经以结构形式示出,并且为了附图简单起见,已经省略了机器人关节102c、102d、102e和连接机器人关节的机器人连杆。此外,机器人关节以单独元件形式示出,然而应当理解,这些机器人关节直接互相连接或如图1所示经由机器人连杆互相连接。机器人关节包括输出凸缘216a、216b、216f和关节马达217a、217b、217f或另一种致动器,其中输出凸缘216a、216b、216f能够相对于机器人关节主体旋转。关节马达217a、217b、217f分别被配置成经由输出轴218a、218b、218f旋转输出凸缘216a、216b、216f。应当理解,关节马达或关节致动器可被配置成经由诸如齿轮(未示出)的传输系统旋转输出凸缘。在该实施方案中,工具关节123f的输出凸缘216f构成工具凸缘104。这些机器人关节任选地包括至少一个关节传感器219a、219b、219f,该至少一个关节传感器提供传感器信号220a、220b、220f,这些传感器信号指示相应关节的至少一个关节传感器参数J传感器,a、J传感器,b、J传感器,f。关节传感器参数可例如指示姿态参数,该姿态参数指示输出凸缘相对于机器人关节主体的位置和取向,输出凸缘的角位置、关节马达的轴的角位置、关节马达的马达电流。关节传感器参数选自包括以下各者的列表:速度、加速度、扭矩、马达扭矩、力和位置。关节传感器参数可为从传感器获得的测量值或从这些传感器值导出的值。例如,输出凸缘的角位置可由输出编码器诸如光学编码器、磁性编码器指示,这些输出编码器可指示输出凸缘相对于机器人关节的角位置。类似地,关节马达轴的角位置可由输入编码器诸如光学编码器、磁性编码器提供,这些输入编码器可指示马达轴相对于机器人关节的角位置。马达电流可由电流传感器获得和指示。
机器人工具关节102f包括提供工具凸缘力-扭矩信号224的力-扭矩传感器114,该工具凸缘力-扭矩信号指示提供给工具凸缘的力-扭矩FT凸缘。例如,力信号-扭矩FT凸缘可被指示为机器人工具凸缘坐标系中的力矢量
Figure BDA0003715554960000111
和扭矩矢量
Figure BDA0003715554960000112
等式1
Figure BDA0003715554960000113
其中
Figure BDA0003715554960000114
是沿着x凸缘轴的指示力,
Figure BDA0003715554960000115
是沿着y凸缘轴的指示力,并且
Figure BDA0003715554960000116
是沿着z凸缘轴的指示力。
在力传感器作为组合力-扭矩传感器提供的实施方案中,力-扭矩传感器还可另外提供指示提供到工具凸缘的扭矩的扭矩信号,例如作为单独的信号(未示出)或作为力信号的一部分。扭矩可被指示为机器人工具凸缘坐标系中的扭矩矢量:
等式2
Figure BDA0003715554960000121
其中
Figure BDA0003715554960000122
是围绕x凸缘轴的指示扭矩,
Figure BDA0003715554960000123
是围绕y凸缘轴的指示扭矩,并且
Figure BDA0003715554960000124
是围绕z凸缘轴的指示扭矩。需注意,力矢量和扭矩矢量可被提供为单独信号,并且可提供单独的力传感器和/或扭矩传感器。
机器人工具关节102f可包括加速度传感器115,该加速度传感器提供指示机器人工具凸缘的加速度的加速度信号225,其中加速度可相对于工具凸缘坐标系进行指示。
等式3
Figure BDA0003715554960000125
其中
Figure BDA0003715554960000126
是沿着x凸缘轴的感测加速度,
Figure BDA0003715554960000127
是沿着y凸缘轴的感测加速度,并且
Figure BDA0003715554960000128
是沿着z凸缘轴的感测加速度。另外或另选地,加速度传感器可被配置成测量机器人工具凸缘相对于重力的加速度,并且相对于重力的加速度测量的加速度可被转换成相对于机器人基座的机器人工具凸缘的加速度。
在加速度传感器被提供为组合加速度计/陀螺仪(例如,IMU)的实施方案中,加速度传感器可另外或另选地提供指示输出凸缘相对于机器人工具凸缘坐标系的角加速度的角加速度信号,例如作为单独的信号(未示出)或作为加速度信号的一部分。角加速度信号可指示机器人工具凸缘坐标系中的加速度矢量
Figure BDA0003715554960000131
等式4
Figure BDA0003715554960000132
其中
Figure BDA0003715554960000133
是围绕x凸缘轴的角加速度,
Figure BDA0003715554960000134
是围绕y凸缘轴的角加速度,并且
Figure BDA0003715554960000135
是围绕z凸缘轴的角加速度。另外或另选地,加速度传感器可被配置成测量机器人工具凸缘相对于重力的角加速度,并且相对于重力测量的角加速度可被转换成相对于机器人基座的机器人工具凸缘的角加速度。
所示实施方案的力传感器和加速度传感器布置在机器人工具关节102f处;然而,应当理解,力传感器和加速度传感器可布置在机器人臂的任何部分处,作为连接到机器人臂的一个或多个外部物体。应注意,力传感器和加速度传感器是任选的并且可以省略它们。
呈夹持器形式的末端执行器127(以虚线示出)连接到机器人工具凸缘104。末端执行器可以连接到机器人控制器,并且机器人控制器可以被配置成经由末端执行器控制信号228来控制末端执行器。此外,末端执行器可以向机器人控制器提供执行器反馈信号229,例如以便指示末端执行器的状态、来自各种传感器的信号等。
机器人控制器110包括处理器221、存储器222、运动规划器模块230、马达控制器模块231和外部物体安装界面232。运动规划器模块230、马达控制器模块231和外部物体安装界面232可以例如被提供为由处理器221执行的过程,然而应注意它们也可在单独的处理器单元上执行。
运动规划器模块230被配置成例如通过生成机器人臂的零件的轨迹来提供机器人臂的目标运动。轨迹可以例如基于机器人程序生成,该机器人程序指示机器人臂执行各种任务或经由界面设备111提供的用户输入。在所示实施方案中,运动规划器模块提供机器人臂各部分的目标运动Md。目标运动可以指示机器人臂的一部分应移动的路径、机器人臂的一部分的速度、机器人臂的一部分的加速度、机器人臂的一部分应移动的路线。目标运动可以例如参考机器人基座坐标系、工具凸缘坐标系或任何其他参考坐标系在笛卡尔空间中指示。此外,目标运动可以在关节空间中指示,其中指示了机器人关节的运动特性;例如关节传动装置的输出轴的角位置qd、关节传动装置的输出轴的期望角速度
Figure BDA0003715554960000141
机器人传动装置的期望角加速度
Figure BDA0003715554960000142
目标运动Md被提供给马达控制器模块231。马达控制器模块231被配置成例如以马达控制信号223a、223b、223f的形式向关节马达生成至少一个马达控制信号,这些马达控制信号指示关节马达的控制参数,这些控制参数可以用于根据需要控制关节马达。例如,控制参数可指示每个关节马达应提供给输出凸缘的马达扭矩T马达,a、T马达,b和T马达,f,并且机器人控制器被配置成基于现有技术中已知的机器人臂的动态模型来确定马达扭矩。马达控制器模块231被配置成基于目标运动Md和机器人臂的动态模型D机器人来生成马达控制信号223a、223b、223f。机器人臂的动态模型D机器人可以例如存储在存储器222中。动态模型使得控制器能够计算关节马达应向关节马达中的每个关节马达提供的扭矩,以使机器人臂执行目标运动,其中目标运动指示机器人臂的至少一部分的运动。马达控制器模块另外还可被配置成基于至少一个传感器信号220a、220b、220f来生成马达控制信号223a、223b、223f,这些传感器信号指示至少一个关节传感器参数J传感器,a、J传感器,b、J传感器,f和/或指示其他机器人参数的其他传感器信号。传感器信号可以例如指示输出轴的角位置q;马达轴的角位置Θ;马达扭矩T马达由关节马达提供给马达轴。例如,可将关节马达提供为多相电气马达,并且机器人控制器可被构造成调节马达扭矩,该马达扭矩由关节马达通过调节流过多相马达的相位的电流来提供,如马达调节领域中已知的那样。
另外,马达控制器模块被配置成基于连接到机器人臂的至少一个外部物体的振动特性(ωi、ζi)来为机器人臂生成控制信号,其中这些振动特性由外部物体安装界面232接收。这使得用户可以确保机器人控制器以最小化连接到机器人臂的外部物体的振动和/或由这些外部物体引起的振动的方式控制机器人臂。外部物体安装界面使得用户能够提供机器人臂制造商通常不知道的振动特性,并且机器人控制器然后将在控制机器人臂时自动地考虑这些振动特性。外部物体安装界面可被配置为经由通过用户界面设备111接收的振动特性用户信号233、从外部数据源235(例如,存储器设备、服务器、外部处理器等)接收的振动特性数据信号234和/或从外部物体接收的振动特性执行器信号236(例如,作为执行器反馈信号229)接收该至少一个外部物体的振动特性。
在一个实施方案中,从经由用户界面设备111接收的振动特性用户信号233接收该至少一个外部物体的振动特性。这使得用户可以将连接到机器人臂的外部物体的振动特性直接提供给机器人臂,例如结合安装模块,其中用户提供连接到机器人臂的外部物体的各种特性。
在一个实施方案中,从自外部数据源235接收的振动特性数据信号234接收该至少一个外部物体的振动特性。这使得可以连接机器人控制器以从能够连接到机器人臂的任意数据源接收振动特性。例如,能够连接到机器人臂的外部物体的提供商可将外部物体的振动特性提供为数据,该数据可自动安装在机器人控制器上而无需用户详细了解振动特性。这是有利的,因为简化了用户提供外部物体的振动特性的任务,并因此使得用户更容易减少由于将外部物体连接到机器人臂而引起的机器人臂的振动。另外,外部数据源可以实时更新外部物体的振动特性。
在一个实施方案中,从自外部物体接收的振动特性执行器信号236接收该至少一个外部物体的振动特性。这使得一旦创建了执行器反馈信号,就可以直接从外部物体自动接收振动特性。如末端执行器的外部物体可以包括其自身的处理器和存储器,并且末端执行器可以被配置成当两者互连时将振动特性发送到机器人控制器。外部物体的提供商特此可以在外部物体本身上提供外部物体的振动特性,从而可以确保外部物体的振动特性遵循外部物体。这是有利的,因为它简化了用户提供外部物体的振动特性的任务,并因此使得用户更容易减少由于将外部物体连接到机器人臂而引起的机器人臂的振动。另外,外部物体可以实时更新外部物体的振动特性。
能够以至少一个数字的形式接收外部物体的振动特性,该至少一个数字指示该至少一个外部物体的振动特性。指示该至少一个外部物体的振动特性的该至少一个数字可以是任意种类的数字,诸如整数、有理数、实数和/或复数。此外,能够以至少一个外部物体振动公式的形式接收外部物体述振动特性,其中该外部物体振动公式定义该至少一个外部物体的振动特性与至少一个机器人参数之间的关系。这使得可以基于机器人参数获得外部物体的振动特性,诸如机器人臂的各部分的位置、取向、速度、加速度,因为此类参数可能会影响外部物体的振动特性。例如,外部物体振动公式能够以数学公式、程序代码、查找表或它们的组合的形式来定义。此外,应理解,不同公式所定义的机器人参数可以相同、不同或部分相同。而且,指示外部物体的振动特性和/或另一公式的结果的数字可以用作一个公式的输入。
图3a至图3d示出了包括显示器112和各种输入设备113的用户界面111的实施方案,并且机器人控制器连接到如图1中所述的使用界面设备。用户界面包括使得用户能够手动提供该至少一个外部物体的振动特性的外部物体安装模块。
在图3a中,外部物体安装界面232被配置成在用户界面设备111的显示器112上以外部物体安装用户界面的形式显示外部物体安装屏幕模块337a,该外部物体安装用户界面包括其中用户可以输入外部物体的振动特性的至少一个数字用户字段。在所示实施方案中,用户可以在数字用户字段338ω中输入外部物体的本征频率ωi作为以Hz为单位的实数Nω,然而应当理解,本征频率能够以任意适合于指示本征频率的单位来指示。此外,用户可以在数字用户字段338ζ中输入外部物体的阻尼比ζi作为实数Nζ
在图3b中,外部物体安装界面232被配置成在用户界面设备111的显示器112上以外部物体安装用户界面的形式显示外部物体安装屏幕模块337b,该外部物体安装用户界面包括其中用户能够以公式和/或程序代码形式输入外部物体的振动特性的至少一个公式用户字段。在所示实施方案中,用户可以在公式用户字段339ω中输入外部物体的本征频率ωi作为机器人参数p1、p2的函数ωi(p1,p2),并且在公式用户字段339ζ中输入外部物体的阻尼比ζi作为机器人参数p1、p2的函数ζi(p1,p2)。
在一个实施方案中,其中外部物体安装模块可以包括第一外部物体安装用户界面,其中用户可以提供连接到机器人臂的第一外部物体的振动特性和第二外部物体安装用户界面,其中用户可以提供连接到机器人臂的第二外部物体的振动特性。实际上,外部物体安装模块可以包括使得用户能够提供连接到机器人臂的多个外部物体的振动特性的多个外部物体安装用户界面。这使得用户可以彼此独立地提供外部物体的振动特性,并且因此使得可以减少由将多个外部物体添加到机器人臂而引起的振动。
在图3c中,外部物体安装界面232被配置成在用户界面设备111的显示器112上以外部物体安装用户界面的形式显示外部物体安装屏幕模块337c,该外部物体安装用户界面包括其中用户可以输入第一外部物体的振动特性的至少一个用户字段。在所示实施方案中,用户可以在数字用户字段338ω中输入外部物体的本征频率ωi作为以Hz为单位的实数Nω,并且在数字用户字段338ζ中输入外部物体的阻尼比ζi作为实数Nζ,如图3a中所述。应当理解,这些用户字段也可以是如图3b中所述的公式用户字段。另外,外部物体安装模块337c包括使得用户能够添加附加的外部物体安装界面的添加界面340,其中用户能够提供连接到机器人臂的附加的外部物体的振动特性。在所示实施方案中,当要添加附加的外部物体时,添加界面被提供为用户可以激活的按钮。图3c示出了仅添加了一个外部物体的情况下的用户界面设备。图3d示出了图3c的用户界面设备111,其中已添加了两个外部物体。因此,用户激活时,添加按钮和用于提供第二外部物体的振动特性的用户字段已被添加。在所示实施方案中,用户可以在公式用户字段339ω中输入外部物体的本征频率ωi作为机器人参数p1、p2的函数ωi(p1,p2),并且在公式用户字段339ζ中输入外部物体的阻尼比ζi作为机器人参数p1、p2的函数ζi(p1,p2),如图3b中所述。应当理解,这些用户字段也可以是如图3a中所述的数字用户字段。这使得用户可以轻松地提供外部物体的振动特性,因为用户可以根据需要添加任意数量的外部物体。
在一个实施方案中,马达控制器模块231被配置成通过基于接收到的该至少一个外部物体的振动特性提供至少一个物体脉冲串来向关节马达生成马达控制信号。物体脉冲串包括多个脉冲并且通过将目标运动和至少一个物体脉冲串进行卷积来生成控制信号,例如,如{i.}{ii.}{iii.}中所述。在用户已经提供了外部物体的振动特性的情况下,这使得可以利用脉冲整形技术减少由外部物体引入的振动。应当理解,物体脉冲串的生成和目标运动与物体脉冲串的卷积可以由机器人控制器的其他模块执行,例如,可以提供脉冲串生成模块,该脉冲串生成模块被配置成基于外部物体的振动特性来生成物体脉冲串,并且运动规划器模块230可以被配置成执行卷积,然后将经卷积的目标运动发送到马达控制器模块231,或者可以提供卷积模块,该卷积模块被配置成从运动规划器模块接收目标运动以及从脉冲串生成模块接收脉冲串。
在具有多个外部物体的实施方案中,马达控制器模块可以被配置成基于该多个外部物体中的每个外部物体的振动特性提供脉冲串。因此,提供了多个脉冲串,并且马达控制器模块可以被配置成将用于关节电机的控制信号与每个脉冲串进行卷积。应注意,卷积的顺序无关紧要,并且该多个脉冲串可以在与控制信号进行卷积之前相互卷积。
在一个实施方案中,马达控制器模块231被配置成通过例如基于机器人臂的先验知识和/或基于用户输入获得机器人臂的振动特性来向关节马达生成马达控制信号。然后,马达控制器模块被配置成基于机器人臂的振动特性提供机器人臂脉冲串,并且通过将目标运动和机器人臂脉冲串进行卷积来生成控制信号。这使得可以减少由机器人臂引起的振动。因此,控制信号可以由物体脉冲串和机器人臂脉冲串进行卷积来生成,从而可以减少机器人臂和外部物体引起的振动。
图4示出了控制类似于图1至图3中所示和所述的机器人臂的机器人臂的方法的流程图。该方法包括:经由外部物体安装界面接收连接到机器人臂的外部物体的振动特性的步骤450、为机器人臂生成目标运动的步骤460,以及为机器人臂生成控制信号的步骤470。如前所述,这使得机器人臂的用户可以提供连接到机器人臂的外部物体的振动特性,并且可以提供减少由外部物体引入的振动的控制信号。
接收连接到机器人臂的至少一个外部物体的振动特性(ωi、ζi)的步骤450可以通过以下步骤中的一者或多者来执行:
·从用户界面设备接收振动特性用户信号的步骤(未示出),该振动特性用户信号指示连接到机器人臂的至少一个外部物体的振动特性。
·接收从外部数据源接收到的振动特性数据信号的步骤(未示出);该振动特性数据信号指示连接到机器人臂的至少一个外部物体的振动特性;和/或
·接收从外部物体接收到的振动特性执行器信号(236)的步骤(未示出),该振动特性执行器信号指示连接到机器人臂的至少一个外部物体的振动特性。
步骤460:通过生成机器人臂的各部分的轨迹来生成机器人臂的目标运动。轨迹可以例如基于机器人程序生成,该机器人程序指示机器人臂执行各种任务或经由界面设备提供的用户输入。在所示实施方案中,步骤460基于机器人臂的一部分将移动到的期望路点WP1并且还基于机器人臂的知识KoR,诸如机器人臂的动态模型和/或运动学模型,来提供机器人臂的各部分的目标运动Md。目标运动可以指示机器人臂的一部分应移动的路径、机器人臂的一部分的速度、机器人臂的一部分的加速度、机器人臂的一部分应移动的路线。目标运动可以例如参考机器人基座坐标系、工具凸缘坐标系或任何其他参考坐标系在笛卡尔空间中指示。此外,目标运动可以在关节空间中指示,其中指示了机器人关节的运动特性;例如关节传动装置的输出轴的角位置qd、关节传动装置的输出轴的期望角速度(qd)、机器人传动装置的期望角加速度qd
基于目标运动MD和接收到的振动特性ωi、ζi来执行为机器人臂生成控制信号的步骤470,并且控制信号包括关节马达的控制参数。在所示实施方案中,控制参数是关节马达应提供的马达扭矩T马达,a、T马达,b、T马达,c、T马达,d、T马达,e、T马达,f
在一个实施方案中,生成控制信号的步骤470包括以下:基于所提供的至少一个外部物体的振动特性,提供至少一个物体脉冲串的步骤471,以及基于物体脉冲串和目标运动生成控制信号的步骤472。物体脉冲串包括多个脉冲,并且可例如如{i.}{ii.}{iii.}中所述的那样获得。例如,可以通过脉冲的幅度
Figure BDA0003715554960000211
和延迟
Figure BDA0003715554960000212
来指示物体脉冲串。一般来讲,对于输入整形,脉冲串由n个脉冲组成,n为正整数。由n个脉冲组成的脉冲串如下所示:
等式5
Figure BDA0003715554960000213
等式6
Figure BDA0003715554960000214
为机器人臂生成控制信号的步骤470包括将目标运动Md和物体脉冲串
Figure BDA0003715554960000215
进行卷积的步骤472,从而产生经卷积的目标运动
Figure BDA0003715554960000216
此后在步骤473中,基于该经卷积的目标运动为机器人臂生成控制信号。
图5示出了控制机器人臂的方法的流程图。该方法类似于图4所示的方法,并且类似的步骤已被赋予与图4中相同的附图标号,并且将不进一步描述。在此实施方案中,该方法包括获得机器人臂的振动特性ωra、ζra的步骤(未示出)。机器人臂的振动特性可以例如指示机器人臂的本征频率或阻尼频率和阻尼比,并且可以例如基于机器人臂的动态建模、包含物理系统的动态特性的查找表、物理系统的各部分的测量结果或上述的组合来获得。
为机器人臂生成控制信号的进一步步骤470包括基于机器人臂的振动特性提供机器人臂脉冲串的步骤574,该机器人臂脉冲串包括多个脉冲并且可以例如如{i.}{ii.}{iii.}中所述的那样获得。例如,可以通过脉冲的幅度
Figure BDA0003715554960000217
和延迟
Figure BDA0003715554960000218
来指示机器人臂脉冲串:
等式7
Figure BDA0003715554960000219
等式8
Figure BDA00037155549600002110
在所示实施方案中,为机器人臂生成控制信号的步骤470包括将经卷积的机器人臂的目标运动
Figure BDA0003715554960000221
和机器人臂脉冲串
Figure BDA0003715554960000222
进行卷积的步骤575,从而产生双卷积目标运动
Figure BDA0003715554960000223
此后在步骤473中,基于该双卷积目标运动
Figure BDA0003715554960000224
为机器人臂生成控制信号。因此,由机器人臂本身引起的振动可与外部物体的振动一起减小。应注意,卷积的顺序无关紧要,并且机器人臂脉冲串可以与目标运动Md进行卷积,然后可以将物体脉冲串与该卷积的结果进行卷积。
图6示出了控制机器人臂的方法的流程图。该方法类似于图4所示的方法,并且类似的步骤已被赋予与图4中相同的附图标号,并且将不进一步描述。
在此实施方案中,接收连接到机器人臂的外部物体的振动特性的步骤450包括接收连接到机器人臂的第一外部物体的振动特性ω1、ζ1的步骤651,以及接收连接到机器人臂的第二外部物体的振动特性ω2、ζ2的步骤652。
在此实施方案中,在步骤471中生成的脉冲串被标记为
Figure BDA0003715554960000225
其指示步骤471基于在步骤651中接收的第一外部物体的振动特性ω1、ζ1生成第一物体脉冲串。通过将目标运动Md与第一物体脉冲串
Figure BDA0003715554960000226
进行卷积来执行卷积目标运动的步骤472。
为机器人臂生成控制信号的进一步步骤470包括基于在步骤652中接收到的第二物体的振动特性来提供第二物体脉冲串
Figure BDA0003715554960000227
的步骤676。
在所示实施方案中,为机器人臂生成控制信号的步骤470包括将经卷积的目标运动
Figure BDA0003715554960000228
和第二物体脉冲串
Figure BDA0003715554960000229
进行卷积的步骤677,从而产生双卷积目标运动
Figure BDA00037155549600002210
此后在步骤473中,基于该双卷积目标运动
Figure BDA0003715554960000231
为机器人臂生成控制信号。因此,可以减少由第一外部物体和第二外部物体引起的振动。应注意,卷积的顺序无关紧要,并且第二物体脉冲串可以与目标运动Md进行卷积,然后可以将第一物体脉冲串与该卷积的结果进行卷积。还应注意,可以提供附加的外部物体的振动特性,并且此类附加的外部物体的脉冲串可以与目标运动或目标运动的任意卷积状态进行卷积。因此,由无限数量的外部物体引入的振动可以通过基于外部物体的振动特性中的每一者的脉冲整形来减小。而且,图6中所示的实施方案可以与图5中所示的实施方案组合,由此可以减少由多个外部物体以及机器人臂引起的振动。
图7示出了如图1和图2所示的控制机器人臂的方法的流程图。该方法例如可以经由用户界面111的编程模块来使用,该用户界面包括显示器112和各种输入设备113,如图8a至图8d所示,并且连接到如图1至图2中所述的机器人控制器。编程模块包括程序树模块890,其以执行树的形式显示由用户提供给机器人臂的程序指令,其中程序代码在由机器人控制器执行时自上而下地执行。与程序树模块相邻的是程序代码模块891,其示出了程序树的所选(粗体)程序代码的各个方面,诸如不同的控制参数或与程序代码有关的其他信息。程序树包括三个父程序代码“移动到WP1”892、“夹持物体”893和“移动到WP2”894,其中程序代码“夹持物体”893包括两个子代码“闭合夹持器”893a、“设置物体特性”893b。在以下方法中,将鉴于图8a至图8d中所示的用户界面来描述图7中所示的方法。
步骤780是指示所述机器人臂的一部分移动到第一目标位置WP1的步骤。例如,这可以通过提供指示机器人臂将机器人工具凸缘移动到机器人臂周围环境中的目标位置的程序代码来实现。例如,程序代码可以经由如图8a中所示的用户界面作为所谓的移动命令来提供,其中该程序代码指示机器人臂将工具凸缘移动到目标位置。在图8a中,已选择“移动到WP1”(以粗体示出),并且用户现在可以在相应的程序代码模块中在关节角度用户字段895中的目标位置处输入机器人关节的关节角度q1、q2、q3、q4、q5、q6。应当理解,关节角度用户字段仅用作可以如何定义目标位置的示例,因为机器人臂的一部分的目标位置能够基于许多不同的参数来定义,例如,因为机器人臂的该部分相对于机器人基座的坐标是机器人臂周围的点。
步骤760是为机器人臂生成第一目标运动Md1的步骤,其中该第一目标运动定义使得机器人臂的该部分移动到第一目标位置的机器人臂的运动。步骤760类似于先前描述的步骤460,并且可以例如由运动规划器模块230执行。
步骤770是基于第一目标运动和连接到机器人臂的至少一个外部物体的振动特性来为所述机器人臂生成第一控制信号的步骤,其中控制信号包括关节马达的控制参数。步骤770类似于先前所述的步骤470,并且根据连接到机器人臂的至少一个外部物体的振动特性基于输入整形来生成控制信号。例如,外部物体可以是夹持器。
步骤781是改变连接到机器人臂的至少一个外部物体的振动特性的步骤。例如,这可以通过添加或移除连接到机器人臂的外部物体来实现,因为这使得外部物体的振动特性发生变化。在图8b中,已选择程序代码“闭合夹持器”893a,并且程序代码模块891示出了滑块896,用户可以在该滑块处设置夹持器的状态以打开或闭合。在图8b中,状态被设置为闭合,使得当程序代码“闭合夹持器”由机器人控制器执行时,机器人臂的夹持器闭合。闭合夹持器通常将随着夹持器的机制改变而改变夹持器(外部物体)的振动特性,然而在典型的使用情形中,夹持器闭合,以便拾取对应于添加附加的外部物体的物体。在滑块896处用户可以设置夹持器的状态以打开或闭合。图8c中选择的“设置物体特性”程序代码使得用户可以提供由夹持器拾取的物体的振动特性和其他特性。在图8c中,程序代码模块示出了用户字段897,其中用户可以提供外部物体的本征频率ωO,以及用户字段898,其中用户可以提供外部物体的阻尼比ζO。另外,用户可以在用户字段899中提供外部物体的质量mO,因为众所周知,向机器人臂添加附加的质量也会影响机器人臂的动态模型。
一旦步骤781中已经改变了外部物体的振动特性,就重复指示所述机器人臂的一部分移动到目标位置的步骤,不同的是,目标位置被改变到第二目标位置WP2,如括号中所示。
例如,这可以通过提供指示机器人臂将机器人工具凸缘移动到机器人臂周围环境中的目标位置的程序代码来实现。在图8d中,已选择“移动到WP2”(以粗体示出),并且用户现在可以在相应的程序代码模块中在关节角度用户字段895中的目标位置处输入机器人关节的关节角度q1、q2、q3、q4、q5、q6
重复步骤760并生成如括号中所示的机器人臂的第二目标运动Md2,其中第二目标运动定义使得机器人臂的该部分移动到第二目标位置的机器人臂的运动。
重复步骤770并且基于第二目标运动为机器人臂生成控制信号,并且步骤781改变连接到所述机器人臂的至少一个外部物体的振动特性。换句话说,在为机器人臂生成控制信号时考虑了被夹持器夹持的物体的振动特性,从而在执行机器人程序期间机器人臂的振动特性发生变化的情况下,可以减少机器人手臂的振动。在机器人臂的振动特性发生变化的情况下可以减少机器人臂的振动。
应注意,图7和图8中所示的方法可以与图4至图7中所示的方法组合。

Claims (21)

1.一种用于控制机器人臂的机器人控制器,其中所述机器人臂包括连接机器人基座和机器人工具凸缘的多个机器人关节,其中所述机器人关节中的每个机器人关节包括:
·输出凸缘,所述输出凸缘能够相对于机器人关节主体移动;
·关节马达,所述关节马达被配置成使所述输出凸缘相对于所述机器人关节主体移动;
所述机器人控制器包括外部物体安装界面,所述外部物体安装界面被配置成接收连接到所述机器人臂的至少一个外部物体的振动特性;
其中所述机器人控制器被配置成:
·基于目标运动和所述接收到的所述至少一个外部物体的振动特性为所述机器人臂生成控制信号,所述控制信号包括所述关节马达的控制参数。
2.根据权利要求1所述的机器人控制器,其中所述外部物体安装界面被配置成接收来自以下中的至少一者的连接到所述机器人臂的至少一个外部物体的所述振动特性:
·从用户界面设备接收到的振动特性用户信号;
·从外部数据源接收到的振动特性数据信号;和
·从所述外部物体接收到的振动特性执行器信号。
3.根据权利要求1至2中任一项所述的机器人控制器,其中以至少一个数字的形式接收所述振动特性,所述至少一个数字指示所述至少一个外部物体的所述振动特性。
4.根据权利要求1至3中任一项所述的机器人控制器,其中以至少一个外部物体振动公式的形式接收所述振动特性,其中所述外部物体振动公式定义所述至少一个外部物体的所述振动特性与至少一个机器人参数之间的关系。
5.根据权利要求1至4中任一项所述的机器人控制器,其中所述至少一个外部物体的所述振动特性被提供为所述至少一个外部物体的本征频率和阻尼比。
6.根据权利要求1至5中任一项所述的机器人控制器,其中所述机器人控制器连接到用户界面设备,所述用户界面设备包括使得用户能够手动提供所述至少一个外部物体的所述振动特性的外部物体安装模块。
7.根据权利要求6所述的机器人控制器,其中所述外部物体安装模块包括:
·第一外部物体安装用户界面,其中用户能够提供连接到所述机器人臂的第一外部物体的振动特性;
·第二外部物体安装用户界面,其中用户能够提供连接到所述机器人臂的第二外部物体的振动特性。
8.根据权利要求6至7中任一项所述的机器人控制器,其中所述外部物体安装模块包括:
·使得用户能够添加附加的外部物体安装界面的添加界面,其中用户能够提供连接到所述机器人臂的附加的外部物体的振动特性。
9.根据权利要求1至8中任一项所述的机器人系统,其中所述机器人控制器被配置成:
·基于所述接收到的所述至少一个外部物体的振动特性提供至少一个物体脉冲串,所述物体脉冲串包括多个脉冲;
·通过将所述目标运动和所述至少一个物体脉冲串进行卷积来生成所述控制信号。
10.根据权利要求1至9中任一项所述的机器人系统,其中所述机器人控制器被配置成:
·获得所述机器人臂的振动特性;
·基于所述机器人臂的所述振动特性提供机器人臂脉冲串,所述机器人臂脉冲串包括多个脉冲;
·通过将所述目标运动和所述机器人臂脉冲串进行卷积来生成所述控制信号。
并且所述机器人控制器被配置成将所述提供的振动特性存储在存储器中。
11.一种控制机器人臂的方法,其中所述机器人臂包括连接机器人基座和机器人工具凸缘的多个机器人关节,其中所述机器人关节中的每个机器人关节包括:
·输出凸缘,所述输出凸缘能够相对于机器人关节主体移动;
·关节马达,所述关节马达被配置成使所述输出凸缘相对于所述机器人关节主体移动;
所述方法包括以下步骤:
·经由外部物体安装界面接收连接到所述机器人臂的外部物体的振动特性;
·为所述机器人臂生成目标运动;
·基于所述目标运动和所述接收到的振动特性为所述机器人臂生成控制信号,所述控制信号包括所述关节马达的控制参数。
12.根据权利要求11所述的方法,其中所述接收连接到所述机器人臂的至少一个外部物体的所述振动特性的步骤包括以下步骤中的至少一者:
·从用户界面设备接收振动特性用户信号,所述振动特性用户信号指示连接到所述机器人臂的至少一个外部物体的所述振动特性;
·接收从外部数据源接收到的振动特性数据信号;所述振动特性数据信号指示连接到所述机器人臂的至少一个外部物体的所述振动特性;以及
·接收从所述外部物体接收到的振动特性执行器信号,所述振动特性执行器信号指示连接到所述机器人臂的至少一个外部物体的所述振动特性。
13.根据权利要求11至12中任一项所述的方法,其中以至少一个数字的形式接收所述外部物体的所述振动特性,所述至少一个数字指示所述至少一个外部物体的所述振动特性。
14.根据权利要求11至13中任一项所述的方法,其中以至少一个外部物体振动公式的形式接收所述外部物体的所述振动特性,其中所述外部物体振动公式定义所述至少一个外部物体的所述振动特性与至少一个机器人参数之间的关系。
15.根据权利要求11至14中任一项所述的方法,其中所述至少一个外部物体的所述振动特性指示所述至少一个外部物体的本征频率和阻尼比。
16.根据权利要求11至15中任一项所述的方法,所述方法包括以下步骤:
·经由用户界面设备的第一外部物体安装界面接收连接到所述机器人臂的第一外部物体的振动特性;
·经由用户界面设备的第二外部物体安装界面接收连接到所述机器人臂的第二外部物体的振动特性。
17.根据权利要求11至16中任一项所述的方法,所述方法包括以下步骤:
·使用用户界面设备的添加界面添加附加的外部物体安装界面;
·使用所述添加界面提供连接到所述机器人臂的附加的外部物体的振动特性。
18.根据权利要求11至17中任一项所述的方法,所述方法包括以下步骤:
·基于所述提供的所述至少一个外部物体的振动特性提供至少一个物体脉冲串,所述物体脉冲串包括多个脉冲;
·通过将所述目标运动和所述至少一个物体脉冲串进行卷积来生成所述控制信号。
19.根据权利要求11至18中任一项所述的方法,所述方法包括以下步骤:
·获得所述机器人臂的振动特性;
·基于所述机器人臂的所述振动特性提供机器人臂脉冲串,所述机器人臂脉冲串包括多个脉冲;
·通过将所述目标运动和所述机器人臂脉冲串进行卷积来生成所述控制信号。
20.一种控制机器人臂的方法,其中所述机器人臂包括连接机器人基座和机器人工具凸缘的多个机器人关节,其中所述机器人关节中的每个机器人关节包括:
·输出凸缘,所述输出凸缘能够相对于机器人关节主体移动;
·关节马达,所述关节马达被配置成使所述输出凸缘相对于所述机器人关节主体移动;
所述方法包括以下步骤:
·指示所述机器人臂的一部分移动到第一目标位置;
·为所述机器人臂生成第一目标运动,所述第一目标运动定义使得所述机器人臂的所述部分移动到所述第一目标位置的所述机器人臂的运动;
·基于所述第一目标运动和连接到所述机器人臂的至少一个外部物体的振动特性,为所述机器人臂生成第一控制信号,其中所述控制信号包括所述关节马达的控制参数;
·改变连接到所述机器人臂的所述至少一个外部物体的所述振动特性;
·指示所述机器人臂的一部分移动到第二目标位置;
·为所述机器人臂生成第二目标运动,所述第二目标运动定义使得所述机器人臂的所述部分移动到所述第二目标位置的所述机器人臂的运动;
·基于所述第二目标运动和连接到所述机器人臂的所述至少一个外部物体的所改变的振动特性,为所述机器人臂生成控制信号,其中所述控制信号包括所述关节马达的控制参数。
21.一种用于控制机器人臂的机器人控制器,其中所述机器人臂包括连接机器人基座和机器人工具凸缘的多个机器人关节,其中所述机器人关节中的每个机器人关节包括:
·输出凸缘,所述输出凸缘能够相对于机器人关节主体移动;
·关节马达,所述关节马达被配置成使所述输出凸缘相对于所述机器人关节主体移动;
其中所述机器人控制器被配置成通过执行根据权利要求20所述的方法的步骤来控制所述机器人臂。
CN202080090619.XA 2019-12-29 2020-12-18 利用外部物体抑制机器人臂振动的方法 Pending CN114901438A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DKPA201901559A DK180627B1 (en) 2019-12-29 2019-12-29 Method of suppressing vibrations of a robot arm with external objects
DKPA201901559 2019-12-29
PCT/DK2020/050385 WO2021136566A1 (en) 2019-12-29 2020-12-18 Method of suppressing vibrations of a robot arm with external objects

Publications (1)

Publication Number Publication Date
CN114901438A true CN114901438A (zh) 2022-08-12

Family

ID=74205577

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080090619.XA Pending CN114901438A (zh) 2019-12-29 2020-12-18 利用外部物体抑制机器人臂振动的方法

Country Status (5)

Country Link
US (1) US20230035296A1 (zh)
EP (1) EP4081375A1 (zh)
CN (1) CN114901438A (zh)
DK (1) DK180627B1 (zh)
WO (1) WO2021136566A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114434450B (zh) * 2022-04-08 2022-07-26 智昌科技集团股份有限公司 基于轨迹优化控制的柔性关节抖动抑制方法及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3611336A1 (de) 1986-04-04 1987-10-15 Deutsche Forsch Luft Raumfahrt Kraft-drehmoment-fuehler
DE60100372T2 (de) 2000-02-10 2003-12-04 Fanuc Ltd Steuervorrichtung für eine Maschine
DE102006053158A1 (de) * 2006-11-10 2008-05-15 Kuka Roboter Gmbh Robotersteuerung, Roboter und Verfahren zum Steuern eines Roboters
WO2014110682A1 (en) 2013-01-18 2014-07-24 Robotiq Inc. Force/torque sensor, apparatus and method for robot teaching and operation
US9513179B2 (en) 2014-01-20 2016-12-06 Good Vibrations Engineering Ltd. Force moment sensor
EP3651942B1 (en) 2017-07-13 2023-06-07 Universal Robots A/S Vibration control of systems with configuration dependent dynamics

Also Published As

Publication number Publication date
DK180627B1 (en) 2021-11-04
EP4081375A1 (en) 2022-11-02
US20230035296A1 (en) 2023-02-02
WO2021136566A1 (en) 2021-07-08
DK201901559A1 (en) 2021-08-05

Similar Documents

Publication Publication Date Title
EP3651942B1 (en) Vibration control of systems with configuration dependent dynamics
US9785138B2 (en) Robot and robot controller
Lew et al. A simple active damping control for compliant base manipulators
EP3956112A1 (en) Method of controlling a robot arm based on adaptive friction
CN114901438A (zh) 利用外部物体抑制机器人臂振动的方法
Renuka et al. Kinematic and dynamic modelling and PID control of three degree-of-freedom robotic arm
US20230191603A1 (en) Input shaping control of a robot arm in different reference spaces
CN110774286A (zh) 一种基于刚柔耦合动力学的五自由度机械手的控制方法
US20230052996A1 (en) Method of obtaining vibrational properties of robot arm
JP4230196B2 (ja) 位置決め演算方法および位置決め演算装置
Filipovic et al. Cable-suspended CPR-D type parallel robot
JPH0239802B2 (ja) Robotsutonoseigyohoho
Gül Trajectory control of a delta robot for telescopic mast systems assembly
Lan A Study on High Performance Control for Industrial Robot Manipulators
Leniowski et al. A prototype adjuster for motion planning of redundant robots
CN117754559A (zh) 用于扭矩率控制和振动抑制的预测控制方法
WO2022208983A1 (en) Simulation-in-the-loop tuning of robot parameters for system modeling and control
Pepe Haptic Device Design and Teleoperation Control Algorithms for Mobile Manipulators
Van de Ven Aspects of dynamic models of robots
WO2014126216A1 (ja) 多関節ロボットの制御方法
Wallén et al. Accelerometer based evaluation of industrial robot kinematics derived in Maple
Hong et al. Vibration Reduction of Flexible Manipulators Using Torque Wheels∗
FAILLOT et al. ACTIVE VIBRATION CONTROL OF INDUSTRIAL ROBOTS FINAL RESULTS OF ESPRIT PROJECT SACODY
Schreiber et al. Interactions with a kinematic redundant robot while balancing an inverted pendulum

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