CN116803630A - 工业机器人的系统和混合位置力控制方法 - Google Patents
工业机器人的系统和混合位置力控制方法 Download PDFInfo
- Publication number
- CN116803630A CN116803630A CN202310300343.9A CN202310300343A CN116803630A CN 116803630 A CN116803630 A CN 116803630A CN 202310300343 A CN202310300343 A CN 202310300343A CN 116803630 A CN116803630 A CN 116803630A
- Authority
- CN
- China
- Prior art keywords
- joint
- setpoint
- force
- robot
- control
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 239000011159 matrix material Substances 0.000 claims abstract description 86
- 239000002131 composite material Substances 0.000 claims abstract description 46
- 230000036962 time dependent Effects 0.000 claims abstract description 9
- 238000004364 calculation method Methods 0.000 claims description 48
- 238000004891 communication Methods 0.000 claims description 13
- 230000005484 gravity Effects 0.000 claims description 11
- 230000009466 transformation Effects 0.000 claims description 11
- 150000001875 compounds Chemical class 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000010354 integration Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 7
- 239000013598 vector Substances 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000011217 control strategy Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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/1602—Programme controls characterised by the control system, structure, architecture
-
- 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/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- 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
-
- 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
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/088—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J18/00—Arms
- B25J18/02—Arms extensible
- B25J18/04—Arms extensible rotatable
-
- 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/06—Programme-controlled manipulators characterised by multi-articulated arms
-
- 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/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
- B25J9/12—Programme-controlled manipulators characterised by positioning means for manipulator elements electric
- B25J9/126—Rotary actuators
-
- 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/1638—Programme controls characterised by the control loop compensation for arm bending/inertia, pay load weight/inertia
-
- 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/39—Robotics, robotics to robotics hand
- G05B2219/39319—Force control, force as reference, active compliance
-
- 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/39—Robotics, robotics to robotics hand
- G05B2219/39322—Force and position control
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
本控制工业机器人的方法包括以下步骤:根据目标轨迹和操作模式计算(S104)定义了关节力和/或速度的时间相关的复合设定点,计算(S106)描述了机器人手臂的期望行为的行为矩阵,行为矩阵定义了所计算的复合设定点要应用的方向,计算(S108)用于控制轴控制器模块的关节力设定点并且计算在关节位置处的均匀内部状态的时间导数。用于控制轴控制器模块的关节力设定点是根据调节关节位置与内部状态之间的差异的控制函数计算的,内部状态通过对内部状态的所述时间导数进行积分来确定。
Description
技术领域
本发明涉及工业机器人,更具体地涉及用于控制可手动引导的工业机器人的系统和方法。
背景技术
工业机器人,诸如机器人手臂,越来越多地用于直接的操作员协作应用中,其中操作员可以直接对机器人进行操作。例如,手术应用或某些工业制造方法等就是这种情况。
例如,操作员可以通过操纵和移动机器人手臂的一部分来直接作用于机器人。这种运动由机器人的传感器检测到。取决于这种反馈,机器人控制系统相应地修改发送到机器人电机的设定点,以例如将机器人手臂带到或保持在操作员选择的位置,或者跟随由操作员对机器人进行的手动移动。
通常,机器人“手动”引导的性能可以通过不同的标准来衡量,诸如机器人可以被移动的难易程度(透明度),在操作员的作用下没有弹性(刚性)和稳定性,这在机器人到达由编程或用户施加的极限位置时进行评估。
目前可用和已知的机器人控制解决方案都不能达到满足这三个标准的结果,这三个标准通常难以协调。
实际上,在实际应用中,刚性和透明度都令人满意的机器人的稳定性会不够,因为在操作员的作用下,机器人在接触到其所处环境的刚性元素时会发生弹跳。
因此,需要用于控制工业机器人的系统和方法在必须至少部分地手动引导机器人时使用具有改进性能的引导。
发明内容
根据另一方面,本发明涉及一种用于工业机器人(2)的控制方法,该机器人包括:
多轴机器人手臂,包括至少两个电动致动器,每个电动致动器适于使机器人手臂的一个部件相对于机器人手臂的另一个部件围绕或沿着移动轴而移动,每个电动致动器都与被配置用于测量相应致动器的关节位置的传感器相关联,
机器人控制系统,包括:轴控制器模块,被配置用于根据关节力设定点计算电力单元的控制设定点,电力单元将合适的电流传送至致动器;以及计算模块,被配置用于为轴控制器模块确定关节力设定点,所述计算模块耦接到所述轴控制器模块,
其中,所述控制方法包括以下步骤:
根据目标轨迹和操作模式计算定义了关节力和/或速度的时间相关的复合设定点,
计算描述了机器人手臂的期望行为的行为矩阵,行为矩阵定义了所计算的复合设定点要应用的方向,行为矩阵被表达在关节空间中,
计算用于控制轴控制器模块的关节力设定点并且计算在与所测量的关节位置不同的关节位置处的均匀内部状态的时间导数,其中对用于控制轴控制器模块的关节力设定点的计算和对时间导数的计算分别根据以下项来执行:先前计算的所述复合设定点、先前计算的所述行为矩阵、所测量的关节位置、从所测量的关节位置导出的关节速度、以及先前计算的内部状态,
其中,用于控制轴控制器模块的关节力设定点是根据调节关节位置内部状态之间的差异的控制函数计算的,内部状态通过对内部状态的所述时间导数进行积分来确定。
在一些实施例中,控制函数为比例积分微分控制器。
在一些实施例中,关节力设定点和内部状态的时间导数是以下微分方程组的解:
其中qmv是对应于所述内部状态的函数,是内部状态qmv的时间导数,τ是关节力设定点,Y是行为矩阵,以及u是所述复合设定点,并且其中Kp、Ki和Kd是增益,并且Ki和/或Kd是增益矩阵。
在一些实施例中,电动致动器包括无刷电机,并且轴控制器模块被配置用于根据由相应传感器测量的致动器的关节位置来计算致动器的供电电流。
在一些实施例中,轴控制器模块考虑由多轴力传感器测量的力以根据关节力设定点计算电力单元的控制设定点。
在一些实施例中,机器人包括置于机器人手臂的端部的执行器,其中计算模块包括计算执行器的重量的重力补偿器和根据关节位置计算转换矩阵的笛卡尔关节转换器,并且将执行器的重量和转换矩阵发送至轴控制器模块以考虑由安装在机器人手臂的端部的力传感器测量的多维外力。
在一些实施例中,计算模块以第一频率计算复合设定点和行为矩阵并且以高于第一频率的第二频率计算用于控制轴控制器模块的关节力设定点。
在一些实施例中,第二频率比第一频率高两倍到二十倍,优选地比第一频率高五倍到十倍,更优选地比第一频率高八倍。
在一些实施例中,计算模块包括计算执行器的重量的重力补偿器和根据关节位置计算转换矩阵的笛卡尔关节转换器,并以第一频率将执行器的重量和关节转换矩阵发送至轴控制器模块以考虑由安装在机器人手臂的端部的多轴力传感器测量的多维外力。
在一些实施例中,中央单元实现对复合设定点和行为矩阵的计算,并且其中辅助单元实现对关节力设定点的计算以及轴控制器模块,中央单元和辅助单元通过数据总线进行通信。
在一些实施例中,电动致动器包括无刷电动机,并且中央单元实现对复合设定点和行为矩阵的计算、对关节力设定点的计算以及通过力和速度环路对电流环路控制设定点的计算,并且与中央单元通信的多个放大器适于根据电流环路控制设定点对电动机供应电流。
在一些实施例中,复合设定点和行为矩阵的计算考虑了内部状态。
根据另一方面,本发明涉及一种工业机器人控制系统(2),机器人包括:
多轴机器人手臂,包括至少两个电动致动器,每个电动致动器适于使机器人手臂的一个部件相对于机器人手臂的另一个部件围绕或沿着移动轴而移动,每个电动致动器都与被配置用于测量相应致动器的关节位置的传感器相关联,
机器人控制系统,包括:轴控制器模块,被配置用于根据关节力设定点计算电力单元的控制设定点,电力单元将合适的电流传送至致动器;以及计算模块,被配置用于为轴控制器模块确定关节力设定点,所述计算模块耦接到所述轴控制器模块,
所述控制系统包括配置用于进行以下操作的模块:
根据目标轨迹和操作模式计算定义了关节力和/或速度的时间相关的复合设定点,
计算描述了机器人手臂的期望行为的行为矩阵,行为矩阵定义了所计算的复合设定点要应用的方向,行为矩阵被表达在关节空间中,
计算用于控制轴控制器模块的关节力设定点并且计算在与所测量的关节位置不同的关节位置处的均匀内部状态的时间导数,对用于控制轴控制器模块的关节力设定点的计算和对时间导数的计算分别根据以下项来执行:先前计算的所述复合设定点、先前计算的所述行为矩阵、所测量的关节位置、从所测量的关节位置导出的关节速度、以及先前计算的内部状态,
其中,用于控制轴控制器模块的关节力设定点是根据调节关节位置与内部状态之间的差异的控制函数计算的,内部状态通过对内部状态的所述时间导数进行积分来确定。
根据另一方面,本发明涉及一种工业机器人,包括这样的工业机器人的控制系统,其适于实现如所描述的控制方法。
附图说明
根据仅作为示例给出并参考附图进行的以下描述,本发明将被更好地理解并且其其他优点将变得更加清楚,其中:
图1示意性地并且以结构框示出了根据第一实施例的根据本发明的工业机器人;
图2是根据第一实施例的图1所示的工业机器人的功能框图;
图3是说明根据本发明的控制系统的综合框图;
图4是说明机器人单元之间的数据通信的框图;
图5是示出负载和速度环路的细节的功能图;
图6示意性地示出了根据本发明实施例的用于控制工业机器人的方法;
图7是根据第二实施例的工业的功能框图。
图8是根据第二实施例的图7所示的工业机器人的功能框图。
具体实现方式
图1显示了工业机器人2的示例。
机器人2包括多轴机器人手臂4。机器人手臂4包括例如围绕旋转轴成对铰接的多个节段。
机器人手臂4可以包括置于机器人手臂4端部的执行器6,例如可控工具。
机器人手臂4包括多个电动致动器,在图1所示的示例中由M1、M2、M3、M4、M5和M6表示(并且在下文中由M1至M6表示)。每个电致动器适于使机器人手臂4的一部分相对于机器人手臂4的另一部分围绕移动轴(诸如旋转轴之一)旋转或平移。
每个电动致动器M1至M6包括电动机,例如同步无刷电动机,或任何其他合适的电动机。
机器人2还包括多个传感器,在图1所示的示例中由C1、C2、C3、C4、C5和C6表示(并且在下文中由C1至C6表示)。
每个电动致动器M1至M6都与传感器C1至C6相关联。每个传感器C1至C6被配置用于测量电动致动器的关节位置。传感器C1至C6例如是角度传感器,诸如旋转编码器。关节位置例如对应于关节的角度位置。
优选地,机器人2是6轴机器人。因此,机器人手臂4具有六个自由度并且包括六个电动致动器M1至M6和六个传感器C1至C6。
机器人2还包括控制系统8。
在图1、2和3所示的第一实施例中,控制系统8包括:
-中央单元5,
-辅助单元7以及
-6个电力单元15。
如本说明书中所定义的,术语“关节”指的是机器人手臂4的每个关节的(角度)位置,或者机器人的每个致动器M1至M6的当前(角度)位置。表述“关节力”是指在机器人手臂的每个关节上或在每个致动器M1至M6上受控制的力。
通常,在笛卡尔空间或关节空间中定义空间位置,其中表示了机器人手臂的每个关节的关节位置。
在说明书中,术语“力”是指机械力或扭矩。
中央单元5经由诸如数据总线18(特别是现场总线)的数据链路与辅助单元7通信。
在实践中,辅助单元7电连接到电力单元15,电力单元15经由电导体16将适当的电流传送到致动器M1至M6。
电力单元15是包括耦接到电源的可控开关的设备,并且适于根据来自称为电力单元控制设定点的开关的控制信号而产生在电机的各相中的电流。该装置包括用于测量电机相电流的传感器。这样的电流测量值被发送到伺服控制,以便通过反馈来调整对电力单元15的可控开关的控制。
控制系统8还包括采集接口14,诸如电子卡。数据采集接口14与传感器C1~C6连接,并被配置用于接收由传感器C1~C6测量的数据。
传感器C1至C6例如通过与诸如EnDat协议或等效协议的工业通信协议兼容的通信链路连接到数据采集接口14。
数据采集接口14通过诸如数据总线18(特别是现场总线)的数据链路连接到中央处理单元5和辅助单元7。
优选地,数据总线18与EtherCAT(用于控制自动化技术的以太网)通信协议兼容。
控制系统8的组成部分可以有利地集中在控制柜中。可替代地,数据采集接口14可以像致动器M1至M6和传感器C1至C6一样置于机器人手臂中。中央单元5、辅助单元7和电力单元15可以置于图1中虚线所示的控制柜35中。
可选地,置于机器人手臂4上的多轴力传感器20可以例如经由数据总线18连接到中央单元5和辅助单元7。
优选地,多轴力传感器20被置于机器人手臂4的端部和执行器6之间。优选地,多轴力传感器20包括至少6个测量设备,例如牢固附接到测试体的压阻式应变计。这些设备的几何布置不一定与规范的笛卡尔参考系统对齐,可以用于通过同样的测量结果的线性组合来重建完整的力螺旋。
多轴力传感器20被配置用于提供多维外力Fs。
然而,在某些变形例中,可以通过测量致动器的电流来确定施加在机器人手臂上的外力。多轴力传感器20的功能然后可以用由控制系统8以电子方式使用的分析模块来代替。
在第二实施例中,参考在图7中部分地示出的类似于工业机器人2的工业机器人2',控制系统8包括中央单元5'和6个放大器4。中央单元5与放大器4经由诸如数据总线18(特别是现场总线)的数据链路进行通信。
每个放大器4仅连接至致动器M1至M6中的一个并且仅连接至传感器C1至C6中的一个(在当前情况下,连接至与所述致动器相关联的传感器)。每个放大器4包括辅助单元7'和电力单元15。因此每个放大器4经由如上所述的电力单元15而连接到相应的致动器M1至M6。
为了简化图7,仅示出了前两个放大器4,其分别与致动器M1和M2以及与传感器C1和C2相关联。
在不同的实施例中,如图4所示的示例中所图示的,数据总线18使诸如中央单元、辅助单元、数据采集接口14和多轴力传感器20的不同装备通过同步地或周期地发送的流动数据帧30进行通信。
优选地,通信被单向执行,但使交叉通信成为可能。
中央处理单元例如充当数据总线上的“主机”,而其他连接的装备充当“从机”。“从机”装备可以读取每个数据帧中包含的数据,并在数据帧通过期间将数据添加到数据帧中,数据帧在每个通信周期结束时反馈给中央单元。
如图4所示并且用于第一实施例,中央单元5发送数据帧30,数据帧30首先到达数据采集接口14。数据采集接口14用诸如致动器M1至M6的关节位置qr的数据完成数据帧30。然后数据帧到达多轴力传感器20。多轴力传感器20用所测量的多维外力Fs增补数据帧。然后数据帧30到达辅助单元7,辅助单元7可以读取刚被写入数据帧30的电动致动器M1至M6的关节位置qr和所测量的多维外力Fs。然后数据帧30到达中央单元5,中央单元5可以读取电动致动器M1至M6的关节位置qr和所测量的多维外力fs。
在变形例中,中央处理单元5可以以不同频率实现周期通信(cycliccommunication)。以高频率发送的某些数据帧30可专用于传达电动致动器M1至M6的关节位置qr,而以较低频率发送的某些数据帧30可专用于传达所测量的多维外力fs。
这样的操作在与EtherCAT(EtherCAT自动化协议)协议兼容的通信过程中特别有利。
图3详述了机器人2由控制系统8控制的方式。在图3中,机器人2的控制功能由简化框图40表示,仅详细图示和描述了对于理解本发明必不可少的功能。
控制系统8实现应用程序执行模块(模块42)、轨迹生成器(模块44)和阻抗管理器(模块46)。
应用程序执行模块42将指令寻址到轨迹生成器44,例如以异步控制的形式。
应用程序执行模块42还可以用于为阻抗管理器46选择适当的操作模式。可以选择例如力控制下的操作模式,或位置控制下的操作模式,或混合了力控制和位置控制的混合操作模式,或阻抗控制下的操作模式。
应用程序执行模块42还可以向用户返回状态信息。
轨迹生成器44接收高级指令(例如,以直线移动到空间中的给定目的地的指令)并且例如通过应用与机器人手臂4相关联的运动学模型将指令转换为一系列关节位置或笛卡尔位置,并在适当情况下考虑机械约束,诸如减速齿轮和任何机械联轴器。
轨迹生成器44也可以以类似的方式生成力轨迹(诸如在给定方向上从一个值逐渐变化到另一个值的力)。优选地,位置轨迹和力轨迹是同步的。
阻抗管理器46生成关节控制以便给予机器人定义的行为,例如遵循笛卡尔空间中的轨迹。
这种控制优选地使用由应用程序执行模块42提供的操作模式信息生成,而且最重要的是根据移动设定点(诸如位置和速度)和/或同步力设定点、并且根据用qmv表示的量来生成,这将在下文中更详细地描述。
由阻抗管理器46生成的关节控制包括由“u”表示的复合力和/或速度设定点,以及由Y表示的行为矩阵。Y是例如维度n的方阵,并且u是维度n的矢量,n是机器人的致动器数量。行为矩阵Y描述了机器人手臂的期望行为,定义了复合设定点u要应用的方向。行为矩阵Y的系数可以是时间相关函数。类似地,复合设定点u可以取决于时间。
在变形例中,复合设定点u可以分成两个不同的变量:一方面是速度设定点,另一方面是力设定点。然而,将它们分组为单个变量限制了物理实施时组件之间的数据交换。
在本说明书中,术语“阻抗”是指机器人手臂4的机械阻抗。实际上,控制方法的目的之一是控制机器人手臂4在受到外力时的行为和响应,例如当遇到障碍物时或当用户在机器人手臂上施加手动力时(例如用于手动引导机器人)。
机器人的机械阻抗表征了机器人手臂4对外部机械力的响应。零(或接近零)阻抗意味着一旦试图对机器人施加力,机器人就会自由移动。无穷大(或非常大)的阻抗意味着无论施加何种外力,机器人手臂都会保持静止。可以针对空间中的不同方向选择不同的机器人阻抗,例如通过在某些方向上选择非常高的阻抗而在其他方向上选择低阻抗。
通常地,机器人的控制系统8被配置用于根据目标轨迹和选择的操作模式计算定义了关节力和速度的时间相关的复合设定点u,并且用于计算描述了机器人手臂的期望行为的行为矩阵Y,行为矩阵Y定义了计算出的复合设定点u要被应用的方向。这样的计算被周期地重复。
控制系统8还包括关节阻抗控制器(模块48),其接收由阻抗管理器46生成的复合设定点u和行为矩阵Y,以及从传感器C1到C6获得的机器人的关节位置和速度(分别表示为qr和)。
基于这样的信息,关节阻抗控制器48被配置用于生成关节力设定点(表示为“τ”)以使得机器人遵循由阻抗管理器46生成的复合设定点u和行为矩阵Y定义的行为。此外,关节阻抗控制器48生成以及/或者更新量qmv,该量qmv对应于与内部和虚拟关节位置设定点相当但不同于实际关节位置qr的内部状态,其将用于计算目的。
最后控制系统8包括轴控制器模块12。
轴控制器模块12实现一个或多个控制环路,其控制致动器以使得施加的力遵循从关节阻抗控制器48接收的关节力设定点τ。轴控制器模块12包括力和速度环路61,其提供力和速度控制并生成可以考虑机器人手臂4和执行器6的重力补偿的电流环路控制设定点τcmd。关节速度例如通过机器人的位置qr的数值微分而获得。在实践中,机器人的位置和关节速度(qr和/>)以及所有关节力都可以具有矢量的形式,其系数对应于不同的关节或致动器。
总之,机器人控制系统因此被配置用于计算用于控制轴控制器模块的关节力设定点τ和在仍不同于实际关节位置qr的关节位置处的均匀内部状态qmv的时间导数这样的计算是根据先前计算的所述复合设定点u、先前计算的所述行为矩阵Y、所述测量的关节位置、从所测量的关节位置qr导出的关节速度/>以及内部状态qmv而执行的。
机器人2有利地包括人机界面52(HMI),用于获取来自用户的控制和指令,以及用于向用户显示或发送信息,诸如关于机器人2的内部状态和/或关于操作参数的信息。
机器人的控制系统8实现了计算模块10,其结合了模块42、44、46和48的功能。计算模块10适于生成用于控制轴控制器模块12的关节力设定点τ。轴控制器模块12适于计算电力单元15的控制设定点,电力单元15将合适的电流传送到电机M1至M6。
对于第一实施例,图2可以用于描述如何实现计算模块10和轴控制器模块12。中央单元5和辅助单元7各包括耦接到计算机存储器的至少一个处理器,诸如可编程微控制器或微处理器,该计算机存储器包括可执行指令和/或软件代码,其旨在当处理器执行该指令时实现用于控制机器人的方法。中央处理器5适于操作模块42、44和46的功能。
中央处理单元5经由数据总线18将复合设定点u和行为矩阵Y传达到辅助单元7。
辅助单元7适于操作模块48的功能,即关节阻抗控制器的功能。关节阻抗控制器计算关节力设定点τ并将其发送到轴控制器模块12,轴控制器模块12实现力和速度控制环路61和电流控制环路62。
辅助单元7也适于操作轴控制器模块12的功能。辅助单元7连接到6个电力单元15并因此向其发送电力单元控制设定点。为了图2的清楚起见,只示出了6个电力单元15中的两个。
对于第二实施例,图8可以用于描述计算模块10和轴控制器模块12是如何实现的。中央单元5'和辅助单元7'各包括耦接到计算机存储器的至少一个处理器,诸如可编程微控制器或微处理器,计算机存储器包括可执行指令和/或软件代码,其旨在当处理器执行该指令时实现用于控制机器人的方法。中央单元5适于操作模块42、44、46、48和61的功能。与第一实施例不同,中央单元能以模块48的功能操作,模块48即计算关节力设定点τ的关节阻抗调节器。中央单元5'经由数据总线18向辅助单元7'传达用于控制电流环路设定点τcmd。辅助单元7'适于实现电流控制环路62。每个放大器4包括辅助单元7'和电力单元15。放大器与市售的轴放大器相当。在第二模式中,轴控制器模块12在辅助单元7'中实现并且部分在中央单元5'中实现,中央单元5'实现力和速度环路61。
在这两个实施例中,关节力伺服控制可以由轴控制器模块12根据众所周知的通用控制策略来实现,不再详细描述,重要的是施加在机器人的每个关节上的力很好地符合所计算的关节力设定点τ。
在实践中,可以有利地使用基于每个致动器M1至M6的电流伺服控制进行对机器人的力伺服控制,电流伺服控制由电流环路62根据来自与致动器M1至M6相关联的传感器C1至C6的角位置信息以及对电力单元15的电流的测量而对每个致动器M1至M6执行。
在许多情况下,由力和速度环路61提供的力伺服控制可以进一步包括旨在补偿机器人手臂的重力和摩擦的修正,摩擦修正是根据为每个关节确定的旋转速度而为该关节计算的,重力是根据机器人手臂4的角位置和动态模型而为每个关节计算的。
在某些情况下,当使用多轴力传感器20时,修正取决于由多轴力传感器20测量的力和/或转矩对伺服控制策略而进行。取决于多轴力传感器20是否安装在机器人手臂的端部,或者取决于多个力传感器是否与机器人手臂4的相应关节相关联,可以实施不同的修正策略。
当多轴力传感器20置于机器人手臂的端部和执行器6之间时,计算模块10则包括计算执行器重量Fg的重力补偿器43。执行器重量Fg是表示执行器6的重量的力螺旋的矢量,其被表达在多轴力传感器20的参考系中。执行器重量Fg是根据机器人携带的工具的参数(质量,重心位置)、机器人手臂的几何模型和所测量的关节位置qr计算的。从力和速度环路61处的多轴力传感器20的测量值中减去执行器重量Fg,以便在控制中不考虑执行器的重量,而只考虑施加在执行器6上的力。计算模块10还包括计算关节转换矩阵Tf的笛卡尔关节转换器47。关节转换矩阵Tf是将在笛卡尔空间中表达的多维外力Fs转换为表达在关节空间中的数据。其中Jf是机器人的雅可比矩阵,其将多轴力传感器20的中心的笛卡尔速度连接到机器人2的关节速度,并且Tc是用于对初始以多轴力传感器的坐标表示的多轴力传感器20的测量进行转换的矩阵,以便将该测量表达在机器人底座的坐标系中。Jf和Tc是根据关节位置qr计算的。
关节转换矩阵Tf和执行器重量Fg被发送到力和速度环路61。
在第一实施例中且如图4所示,关节转换矩阵Tf和执行器重量Fg经由来自实现重力补偿器43和笛卡尔关节转换器47的中央单元5的数据帧30而被发送到力和速度环路61。力和速度环路61由辅助单元7实现。
在电流环路控制设定点τcmd的计算中,力和速度控制环路61通过将执行器重量Fg从多维外力Fs中减去来计算关节力矢量τs,从而忽略执行器重量,并且通过对结果应用关节转换矩阵以将其转换到关节域,如下式所示:
[数学式1]
τs=Tf(Fs-Fg)
可替代地,力和速度环路61可以先对执行器重量Fg以及多维外力Fs应用关节转换矩阵Tf,然后执行减法。
根据图5所示的有利实施方式,在存在多轴力传感器20的情况下,关节力设定点τ的修正可以通过将重力补偿与两个力修正器和速度修正器相关联来执行,这两个修正器分别表示为Gf和Gv,其修正提供给机器人手臂4的关节力设定点。力修正器Gf例如是积分控制器,速度修正器Gv是比例控制器。
在本发明的第一实施例中,重力补偿器43和笛卡尔关节转换器47在中央单元5中实施。关节转换矩阵Tf和执行器重量Fg由链路总线18发送到在辅助单元7中实现的力和速度环路61。
这种实施方式是有利的,因为其允许在辅助单元7中实施的所有计算都在关节坐标中进行。这样的计算相对简单(不同于模块43、47和46中的计算)。以此方式,阻抗控制器48以及力和速度环路61可以以更高的频率被计算。此外,许多已知的解决方案需要将多轴力传感器20测量的力返回到中央单元,以便中央单元计算位置、速度或力设定点,其旨在控制致动器,从而导致在力控制环路中有更多的延迟,而该延迟在机器人必须至少部分地手动引导时会导致精度和性能降低。
如在图3上可见,关节阻抗控制器48包括解析模块70和显示模块64。解析模块70被配置用于计算关节力设定点τ并将计算出的关节力设定τ发送到轴控制器模块12。这样的计算是根据以下项来执行的:先前计算的复合设定点u、先前计算的行为矩阵Y、所测量的关节位置qr、从所测量的关节位置qr导出的关节速度以及先前计算的内部状态qmv。
特别是,用于控制轴控制器模块12的关节力设定点v是根据控制关节位置qr和内部状态qmv(先前参考关节阻抗控制器48定义的)之间的差异的控制函数计算的。
解析模块70根据先前计算的复合设定点u、先前计算的行为矩阵Y、关节位置qr、关节速度以及先前计算的内部状态qmv,来计算内部状态的导数/>
积分模块64通过求内部状态的时间导数的积分来确定内部状态qmv。解析模块70例如使用从先前的计算周期中已知的内部状态qmv的值,并存储在存储器中。
优选地,控制函数是比例积分微分控制器(PID控制器)。
有利地,关节力设定点τ和内部状态的时间导数是以下微分方程组的解:
[数学式2]
其中qmv是对应于所述内部状态的函数,是内部状态qmv的时间导数,τ是关节力设定点并且这里表示为矢量的形式,Y是行为矩阵,以及u是复合设定点。
在该等式中,Kp、Ki和Kd是增益矩阵。在实践中,增益Kp、Ki和Kd是用于设置PID控制器的参数的增益。例如,Kp、Ki和Kd分别对应于比例、积分和微分增益。如果合适,Kp和Ki可以是零矩阵。
在这样的系统中,例如,第二个方程在位置qmv上对机器人的关节位置qr执行比例积分微分(PID)伺服控制。第一个方程定义了由内部状态qmv所代表的虚拟位置的变化。
根据实施方式的第一示例,关节阻抗控制可以通过满足以下方程组的控制器来执行:
[数学式3]
其中γ是用于计算行为矩阵Y的中间变量,中间变量γ根据内部状态qmv、关节位置qr和关节速度来计算。
阻抗控制器的第一实施方式在第一实施例(图1和图2)的框架内特别有利,因为行为矩阵Y是对称的,因此只有一些系数需要在数据总线18上发送,这进一步减少了计算时间。
根据第二示例实施方式,关节阻抗控制可以由满足以下方程组的控制器进行:
[数学式4]
其中γ上文描述的中间变量,P是类似于行为矩阵Y的行为矩阵,矩阵P根据矩阵Y通过下式定义:
[数学式5]
其中“I”代表单位矩阵。
在阻抗控制器的两种实施方式中,可以使用除PID伺服控制之外的其他类型的伺服控制。例如,中间变量γ可以定义如下,其对应于对关节位置qr和内部状态qmv之间的差异应用数字滤波器ef:
[数学式6]
其中滤波器由下式给出:
[数学式7]
ef=F(p)(qmv-qr)
其中F(p)表示拉普拉斯变换,“p”是拉普拉斯变量。
现在将描述在机器人2的不同操作模式下关节阻抗控制的操作示例。
在第一操作模式中,机器人2在自动控制下工作。机器人手臂4的位置是被伺服控制的,并且必须遵循独立于施加在机器人手臂4上的外力而生成的(例如,由模块44生成的)关节轨迹。该轨迹例如由时间相关的关节位置qd及其导数来定义。
在这种情况下,阻抗管理器48定义零行为矩阵Y,即行为矩阵Y的系数全部为零。可替代地,以上内容对应于在上文描述的阻抗控制器的第二实施方式中将P定义为等于单位矩阵。
阻抗管理器48还需要复合设定点u具有以下形式:
[数学式8]
其中参数T是具有严格正值的时间常数。
在这种情况下,控制系统满足的微分方程组可以改写为:
[数学式9]
因此,角位置qr由虚拟位置qmv来伺服控制并将在瞬态状态(其持续时间由时间常数T确定)之后遵循由关节位置qd定义的轨迹,并且精度取决于为增益Kp、Ki和Kd选择的值。
内部状态qmv在所有关节方向上遵循在复合设定点u中定义的速度设定点。
在第二操作模式中,机器人2在手动控制下工作。例如,可需要控制机器人的关节力,以使其遵循由轨迹生成器44提供的预定的关节设定点τd。如果该设定点由应用于机器人上的某个点的力螺旋fd指定,则等效关节设定点由下式给出:
[数学式10]
τd=JTfd
其中J表示对应于力施加点的机器人的雅可比矩阵,指数“T”表示该矩阵的转置。
这样的操作模式例如当希望使机器人手臂自由以允许用户通过简单的手动运动来完全控制机器人手臂时是有用的。
在这种情况下,阻抗管理器46定义行为矩阵(或者,等价地,在阻抗控制器的第二次实施方式中P=0)和复合设定点/>
控制系统满足的微分方程组可改写为:
[数学式11]
在实践中,第一个方程意味着当预先确定的关节设定点τd是常数时内部状态qmv和角度位置qr之间的差异向零收敛。
在实践中,PID控制器的增益具有足够高的值以近似于即使当预先确定的关节设定点τd不是常数时内部状态qmv也等于实际的角位置qr。换句话说,内部状态qmv沿所有关节方向遵循机器人手臂4的所测量的关节位置qr。
第二个等式示出发送到机器人手臂4的关节力设定点对应于预先确定的关节设定点τd,而与机器人手臂4的位置无关。
在第三种操作模式中,机器人2以结合了力控制和位置控制的混合模式操作。机器人手臂4必须在沿特定方向施加受控力的同时遵循预定轨迹。
这种操作模式例如在希望能够在遵循预定轨迹的同时用手引导(手动引导,“handguiding”)机器人手臂时是有用的。特别是,可以用这样的方式锁定机器人手臂4的某些自由度,例如:
-通过仅授权对机器人手臂4平移或旋转的手动引导,
-或者通过在释放机器人手臂的节段的铰接的同时将机器人手臂4的端部锁定在固定位置,
-或者替代地通过使机器人手臂4的端部自由但锁定机器人手臂4的全部或部分关节。
为了执行这种锁定,M1至M6中的所有或一些致动器施加与用户施加的手动力相反的力。
当机器人用在借助机器人手臂4携带的执行器6对机械部件进行成形的工业过程中时,这种操作模式也可以是有用的,在此期间执行器6与机械部件直接接触,例如,在部件的打磨、去毛刺、装配或轮廓跟踪以及许多其他示例的过程中。
最后,当通过力反馈远程控制机器人手臂时,或者当多个工业机器人必须协作以操纵同一物体时,例如在制造机械部件的过程中,这种操作模式可以是有用的。
混合操作模式的第一示例可以涉及具有“球形关节”约束的操作,其中希望机器人的端部保持在给定的点(xd,yd,zd)处,方向是自由的。此外,希望能够自由移动机器人手臂的端部的朝向,从而围绕旋转点的力矩(mx,my,mz)必须保持为零。
在这种情况下,阻抗管理器46计算行为矩阵Y和复合设定点u如下:
[数学式12]
(或者对于第二实施方式,
其中Jmv表示根据内部状态qmv计算的机器人的雅可比矩阵,以及是对应于内部状态的笛卡尔位置。
内部状态qmv遵循在行为矩阵Y定义的所有力控制方向上(即沿着对应于机器人端部的朝向的变化的方向)测量的关节位置qr。另一方面,内部状态qmv遵循在行为矩阵Y定义的速度控制方向上(即在对应于机器人端部的平移的方向上)的复合设定点u中定义的速度设定点。
现在将描述混合操作模式的第二示例。在这种操作模式下,机器人以固定朝向遵循平面(x,y)中的轨迹。沿与(x,y)平面正交的z方向,机器人应用时间相关的力。这种混合操作模式例如对于在全自动操作中打磨表面可以是有用的。
在第二种混合操作模式中,轨迹生成器44生成定义了平面(x,y)中的所希望的轨迹的设定点xd(t)和yd(t),以及沿z方向所希望的力的值fz,d(t),并将这些发送到阻抗管理器46。
阻抗管理器46计算行为矩阵Y和复合设定点u如下:
[数学式13]
(或者对于第二实施方式,)
其中Jmv表示根据内部状态计算的机器人的雅可比矩阵,qmv、x(qmv)和y(qmv)是与内部状态qmv对应的终端组件的笛卡尔位置在(x,y)平面内的坐标,并且rx(qmv)、ry(qmv)和rz(qmv)表示与内部状态qmv对应的终端组件的角坐标。
内部状态qmv遵循在行为矩阵Y定义的所有力控制方向上(即沿着对应于方向z的关节方向)测量的关节位置qr。另一方面,内部状态qmv遵循在行为矩阵Y定义的速度控制方向上(即在所有其他关节方向上)的复合设定点u中定义的速度设定点。
在描述的三种操作模式中,内部状态qmv遵循在行为矩阵Y定义的力控制方向上测量的关节位置qr并遵循在行为矩阵Y定义的速度控制方向上的复合设定点u中定义的速度设定点。
在“阻抗控制”的第四种操作模式中,机器人必须表现得好像机器人通过弹簧Kcart和阻尼器Bcart连接到沿轨迹pd的点。矢量pd包含该轨迹的笛卡尔坐标(位置和方向)。相关联的速度表示为vd。
在这种情况下,阻抗管理器46计算行为矩阵Y和复合设定点u如下:
[数学式14]
其中xpmv是根据内部状态qmv以及机器人的几何模型计算的笛卡尔坐标(位置和朝向)的矢量。例如弹簧Kcart和阻尼器Bcart等的特性在这里以矩阵的形式给出。
对于描述的所有操作模式,阻抗管理器46根据从应用程序执行模块42和轨迹生成器44接收的控制生成行为矩阵Y和复合设定点u。
返回到图1、2和3,现在将描述由控制系统8进行阻抗控制的实施方式的方面。
如上所述,应用程序执行模块42、轨迹生成器44和阻抗管理器46有利地由中央处理单元5实现。
关节阻抗控制器48和轴控制器模块12优选地由辅助单元7实施。
在变形例中,特别是在使用放大器的情况下,例如在如图7和8所示的实施方式中,则关节阻抗控制器48以及力和速度环路61由中央单元5'实现。
实现阻抗控制所需的计算随时间周期性地执行。
以特别有利的方式,中央处理单元5被配置用于以由F1表示的第一计算频率周期性地重新计算复合设定点u和行为矩阵Y。
以高于第一频率F1的用F2表示的第二计算频率周期性地重新计算关节力设定点τ。
第二频率F2例如比第一频率F1高两倍到二十倍。优选地,第二频率F2比第一频率F1高五到十倍。同样优选地,第二频率F2比第一频率F1高八倍。
当关节阻抗控制器48由辅助单元7实现时,以上是特别有利的。
实际上,关节阻抗控制器48只需要使用相对有限数量的简单算术运算。因此,它们可以在高频下运行。以这种方式,可以获得高增益Kp、Ki和Kd,这些增益可用于沿位置控制方向获得良好的刚度和良好的精度。更复杂的几何计算在中央单元5中实现。
此外,在与中央单元5分开的辅助控制器7中实现阻抗控制提供了性能增益,因为单个处理器随后控制不同的致动器M1至M6。通过尽可能靠近传感器和致动器,以这种方式已经可以减少伺服控制中的延迟,从而最终获得更好的性能。在辅助单元7的单个处理器中实现阻抗控制和轴控制器模块12提高了性能,因为没有通信延迟。
根据出于说明目的给出的示例,复合设定点u和行为矩阵Y在每毫秒由中央单元5计算并且被传送到辅助单元7,即以1000Hz的频率进行。然后对这些控制的每个分量进行线性内插,以获得以第二频率F2(例如以8kHz的频率)执行的每个计算周期的值。
更一般地,本发明的实施方式的另一个有利方面在于,伺服控制环路和对内部状态qmv的积分都是在关节坐标中执行的。这样,就不需要在计算资源方面实现代价高昂的几何变换。减少在每个计算周期期间的执行与阻抗控制相关的计算所需的时间也会导致更高的增益Kp、Ki、Kd,从而获得更好的精度(特别是沿着位置控制方向)。
无论选择何种操作模式,无论机器人是在力控制模式、位置控制模式、混合模式还是阻抗控制模式下操作,阻抗控制过程都可以用于有效地操作。增益系数Kp、Ki和Kd的值可以独立于操作模式而一劳永逸地设置。
借助于本发明,当必须至少部分地用手引导机器人时改进了对机器人的引导。
某些实施例可以独立于其他实施例来实现。
图6示出了根据本发明的操作方法的实施的示意性示例。在变形例中,这些步骤可以以不同的顺序执行。一些步骤可以省略。在其他实施例中,所描述的示例并不阻止其他步骤与所描述的步骤一起和/或顺序地实施。
该方法例如以启动机器人控制程序开始于步骤S100,特别是在力或混合控制模式下。在该步骤期间,取决于所选择的操作模式,轨迹可以由控制系统8获取或定义。
并行地,在步骤S102期间,用户可以操纵机器人手臂4,以便用手施加力或动作。
在步骤S104期间,控制系统8根据目标轨迹和操作模式计算定义了关节力和速度的复合设定点u。
在步骤S106期间,控制系统8根据操作模式计算行为矩阵Y。
在步骤S108期间,控制系统8计算关节力设定点τ和所述内部状态qmv的时间导数该计算是根据先前计算的所述复合设定点u、先前计算的行为矩阵Y、所测量的关节位置qr、从所测量的关节位置导出的关节速度/>以及先前计算的内部状态执行的。
如前所述,用于控制轴控制器模块12的关节力设定点τ是根据调整关节位置qr和内部状态qmv之间的差异的控制函数计算的,内部状态qmv是参考内部状态qmv的所述时间导数定义的。
在步骤S110期间,控制系统8根据关节力设定点τ计算电力单元15的控制设定点。
有利地,在计算电力单元15的控制设定点时,考虑施加到机器人的外力,例如通过用户在机器人手臂4上施加手动力。
本发明已经用被铰接以进行旋转的机器人手臂进行了描述。本发明适用于包括相对于彼此沿一个或多个运动轴平移的元件的机器人。
前述实施例和变形例可以相互组合以产生新的实施例。
Claims (14)
1.一种用于工业机器人(2)的控制方法,该机器人包括:
多轴机器人手臂(4),包括至少两个电动致动器(M1、…、M6),每个电动致动器适于使机器人手臂的一个部件相对于机器人手臂的另一个部件围绕或沿着移动轴而移动,每个电动致动器都与被配置用于测量相应致动器的关节位置(qr)的传感器(C1、…、C6)相关联,
机器人控制系统(8),包括:轴控制器模块(12),被配置用于根据关节力设定点(τ)计算电力单元(15)的控制设定点,电力单元(15)将合适的电流传送至致动器(M1、…、M6);以及计算模块(10),被配置用于为轴控制器模块确定关节力设定点(τ),所述计算模块耦接到所述轴控制器模块,
其中,所述控制方法包括以下步骤:
根据目标轨迹和操作模式计算(S104)定义了关节力和/或速度的时间相关的复合设定点(u),
计算(S106)描述了机器人手臂的期望行为的行为矩阵(Y),行为矩阵(Y)定义了所计算的复合设定点(u)要应用的方向,行为矩阵(Y)被表达在关节空间中,
计算(S108)用于控制轴控制器模块的关节力设定点(τ)并且计算在与所测量的关节位置(qr)不同的关节位置处的均匀内部状态(qmv)的时间导数其中对用于控制轴控制器模块的关节力设定点(τ)的计算和对时间导数/>的计算分别根据以下项来执行:先前计算的所述复合设定点(u)、先前计算的所述行为矩阵(Y)、所测量的关节位置(qr)、从所测量的关节位置(qr)导出的关节速度/>以及先前计算的内部状态(qmv),
其中,用于控制轴控制器模块的关节力设定点(τ)是根据调节关节位置(qr)与内部状态qmv之间的差异的控制函数计算的,内部状态通过对内部状态的所述时间导数进行积分来确定。
2.如权利要求1所述的控制方法,其中,所述控制函数为比例积分微分控制器。
3.根据权利要求2所述的控制方法,其中关节力设定点(τ)和内部状态的时间导数是以下微分方程组的解:
其中qmv是对应于所述内部状态的函数,是内部状态qmv的时间导数,τ是关节力设定点,Y是行为矩阵,以及u是所述复合设定点,
并且其中Kp、Ki和Kd是增益矩阵。
4.根据前述权利要求中任一项所述的控制方法,其中电动致动器包括无刷电机,并且其中轴控制器模块被配置用于根据由相应传感器测量的致动器的关节位置来计算致动器的供电电流。
5.根据权利要求1至4中任一项所述的控制方法,其中轴控制器模块(12)考虑由多轴力传感器(20)测量的多维外力(Fs)以计算电力单元(15)的控制设定点。
6.根据权利要求5所述的控制方法,机器人包括置于机器人手臂的端部的执行器(6),其中计算模块(10)包括计算执行器的重量(Fg)的重力补偿器(43)和根据关节位置(qr)计算转换矩阵(Tf)的笛卡尔关节转换器(47),并且将执行器的重量(Fg)和转换矩阵(Tf)发送至轴控制器模块(12)以考虑由安装在机器人手臂(4)的端部的多轴力传感器(20)测量的多维外力(Fs)。
7.根据前述权利要求中任一项所述的控制方法,其中,计算(10)以第一频率(F1)计算复合设定点(u)和行为矩阵(Y)并且以高于第一频率的第二频率(F2)计算用于控制轴控制器模块(12)的关节力设定点(τ)。
8.根据权利要求7所述的控制方法,其中第二频率(F2)比第一频率(F1)高两倍到二十倍,优选地比第一频率(F1)高五倍到十倍,更优选地比第一频率(F1)高八倍。
9.根据权利要求6以及权利要求7或8之一所述的控制方法,其中计算模块(10)包括计算执行器的重量(Fg)的重力补偿器(43)和根据关节位置(qr)计算转换矩阵(Tf)的笛卡尔关节转换器,并以第一频率(F1)将执行器的重量(Fg)和关节转换矩阵(Tf)发送至轴控制器模块(12)以考虑由安装在机器人手臂(4)端部的多轴力传感器(20)测量的多维外力(Fs)。
10.根据权利要求1至9中任一项所述的控制方法,其中,中央单元(5)实现对复合设定点(u)和行为矩阵(Y)的计算,并且其中辅助单元(7)实现对关节力设定点(τ)的计算以及轴控制器模块(12),中央单元和辅助单元(12)通过数据总线(18)进行通信。
11.根据权利要求1至9中任一项所述的控制方法,其中电动致动器包括无刷电动机,并且其中中央单元(5')实现对复合设定点(u)和行为矩阵(Y)的计算、对关节力设定点(τ)的计算以及通过力和速度环路(61)对电流环路控制设定点(τcmd)的计算,并且与中央单元通信的多个放大器(4)适于根据电流环路控制设定点(τcmd)对电动机供应电流。
12.根据权利要求1至11中任一项所述的控制方法,其中复合设定点(u)和行为矩阵(Y)的计算考虑了内部状态(qmv)。
13.一种工业机器人控制系统(2),机器人包括:
多轴机器人手臂(4),包括至少两个电动致动器(M1、…、M6),每个电动致动器适于使机器人手臂的一个部件相对于机器人手臂的另一个部件围绕或沿着移动轴而移动,每个电动致动器都与被配置用于测量相应致动器的关节位置(qr)的传感器(C1、…、C6)相关联,
机器人控制系统(8),包括:轴控制器模块(12),被配置用于根据关节力设定点(τ)计算电力单元(15)的控制设定点,电力单元(15)将合适的电流传送至致动器(M1、…、M6);以及计算模块(10),被配置用于为轴控制器模块确定关节力设定点(τ),所述计算模块耦接到所述轴控制器模块,
所述控制系统包括配置用于进行以下操作的模块:
根据目标轨迹和操作模式计算定义了关节力和/或速度的时间相关的复合设定点,
计算描述了机器人手臂的期望行为的行为矩阵(Y),行为矩阵(Y)定义了所计算的复合设定点(u)要应用的方向,行为矩阵(Y)被表达在关节空间中,
计算用于控制轴控制器模块的关节力设定点(τ)并且计算在与所测量的关节位置(qr)不同的关节位置处的均匀内部状态(qmv)的时间导数对用于控制轴控制器模块的关节力设定点(τ)的计算和对时间导数/>的计算分别根据以下项来执行:先前计算的所述复合设定点(u)、先前计算的所述行为矩阵(Y)、所测量的关节位置(qr)、从所测量的关节位置(qr)导出的关节速度/>以及先前计算的内部状态(qmv),
其中,用于控制轴控制器模块的关节力设定点(τ)是根据调节关节位置(qr)与内部状态(qmv)之间的差异的控制函数计算的,内部状态通过对内部状态的所述时间导数进行积分来确定。
14.一种工业机器人,包括根据权利要求13所述的控制系统并且适于实现根据权利要求1至12中的一项所述的控制方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2202707 | 2022-03-25 | ||
FR2202707A FR3133931A1 (fr) | 2022-03-25 | 2022-03-25 | Systèmes et procédés de commande hybride position force d’un robot industriel |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116803630A true CN116803630A (zh) | 2023-09-26 |
Family
ID=83280399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310300343.9A Pending CN116803630A (zh) | 2022-03-25 | 2023-03-24 | 工业机器人的系统和混合位置力控制方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230302642A1 (zh) |
EP (1) | EP4249182A1 (zh) |
KR (1) | KR20230139346A (zh) |
CN (1) | CN116803630A (zh) |
FR (1) | FR3133931A1 (zh) |
-
2022
- 2022-03-25 FR FR2202707A patent/FR3133931A1/fr active Pending
-
2023
- 2023-03-23 KR KR1020230037976A patent/KR20230139346A/ko unknown
- 2023-03-24 CN CN202310300343.9A patent/CN116803630A/zh active Pending
- 2023-03-24 US US18/126,371 patent/US20230302642A1/en active Pending
- 2023-03-24 EP EP23163922.0A patent/EP4249182A1/fr active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20230139346A (ko) | 2023-10-05 |
FR3133931A1 (fr) | 2023-09-29 |
US20230302642A1 (en) | 2023-09-28 |
EP4249182A1 (fr) | 2023-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7556920B2 (ja) | 機械システムの制御方法,機械システム用コントローラ,ロボットマニピュレータ,および非一時的なコンピュータ可読記憶媒体 | |
CN111136633A (zh) | 针对时变时延下柔性主-从机器人系统的全状态控制方法 | |
CN112417755A (zh) | 一种主从式手术机器人轨迹预测控制方法 | |
CN114290147B (zh) | 基于双工业机器人协作的汽车轮毂打磨系统及其方法 | |
CN110154024B (zh) | 一种基于长短期记忆神经网络增量模型的装配控制方法 | |
CN107309884A (zh) | 机器人标定系统及方法 | |
CN108568816B (zh) | 用于控制自动化工作单元的方法 | |
Bratchikov et al. | Development of digital twin for robotic arm | |
CN108791560B (zh) | 一种可协同调控多足机器人的单腿操作和机体平移的遥操作系统及控制方法 | |
Ferretti et al. | Impedance control for industrial robots | |
CN116803630A (zh) | 工业机器人的系统和混合位置力控制方法 | |
CN116803629A (zh) | 工业机器人的系统和混合位置力控制方法 | |
CN116803632A (zh) | 工业机器人的系统和混合位置力控制方法 | |
CN114102636B (zh) | 遥操作机器人的焊缝打磨控制系统及其设计方法和应用 | |
Lin et al. | A computationally efficient and robust kinematic calibration model for industrial robots with kinematic parallelogram | |
Carignan et al. | Manipulator impedance accuracy in position-based impedance control implementations | |
JPH08190433A (ja) | 負荷重量推定方法 | |
Wapenhans et al. | Optimal trajectory planning with application to industrial robots | |
Li | Visual Calibration, Identification and Control of 6-RSS Parallel Robots | |
Duan et al. | Design of Robot Control System for Knee Joint Replacement Surgery Based on STM32 | |
CN118404591B (zh) | 一种减速器非线性动力学参数自适应辨识方法 | |
CN113093549B (zh) | 一种多轴数控装备的复合控制方法 | |
Dachang et al. | Adaptive Non-singular Terminal Sliding Mode Fault-tolerant Control of Robotic Manipulators Based on Contour Error Compensation | |
CN112571412B (zh) | 一种智能制造设备的控制系统 | |
Ito et al. | Robust decoupling control for articulated robot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |