CN114454166B - 一种机械臂阻抗控制方法及装置 - Google Patents

一种机械臂阻抗控制方法及装置 Download PDF

Info

Publication number
CN114454166B
CN114454166B CN202210128594.9A CN202210128594A CN114454166B CN 114454166 B CN114454166 B CN 114454166B CN 202210128594 A CN202210128594 A CN 202210128594A CN 114454166 B CN114454166 B CN 114454166B
Authority
CN
China
Prior art keywords
target
preset
virtual
current
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210128594.9A
Other languages
English (en)
Other versions
CN114454166A (zh
Inventor
谢胜文
王珂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Elite Robot Co Ltd
Original Assignee
Suzhou Elite Robot Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Elite Robot Co Ltd filed Critical Suzhou Elite Robot Co Ltd
Priority to CN202210128594.9A priority Critical patent/CN114454166B/zh
Publication of CN114454166A publication Critical patent/CN114454166A/zh
Application granted granted Critical
Publication of CN114454166B publication Critical patent/CN114454166B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Vehicle Body Suspensions (AREA)

Abstract

本发明实施例公开了一种机械臂阻抗控制方法及装置。该方法包括:获取机械臂的当前实际速度和传感器采集的当前外力;根据当前外力确定目标控制方向对应的目标外力;若基于当前实际速度检测到当前满足预设传感器零漂条件,则根据目标外力确定目标虚拟静摩擦力;基于预设静摩擦阻抗模型,根据目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置;根据下一期望位置,确定目标控制方向对应的目标关节运动信息,并基于目标关节运动信息控制机械臂进行相应运动。通过本发明实施例的技术方案,可以消除零点漂移对控制性能的影响,提高阻抗控制准确性。

Description

一种机械臂阻抗控制方法及装置
技术领域
本发明实施例涉及计算机技术,尤其涉及一种机械臂阻抗控制方法及装置。
背景技术
随着计算机技术和自动化设备的快速发展,机械臂广泛应用于智能制造等各个领域中,并且对机械臂的控制精度要求也越来越高。
目前,可以通过在机械臂末端安装传感器来获得与环境的接触外力,并基于获得的外力进行阻抗控制,从而实现对机械臂的力控制和位置控制。然而,由于传感器存在零点漂移的情况,从而会对控制性能造成影响,降低了阻抗控制的准确性。
发明内容
本发明实施例提供了一种机械臂阻抗控制方法及装置,以消除传感器零点漂移对控制性能的影响,提高阻抗控制的准确性。
第一方面,本发明实施例提供了一种机械臂阻抗控制方法,包括:
获取机械臂的当前实际速度和传感器采集的当前外力;
根据所述当前外力,确定目标控制方向对应的目标外力;
若基于所述当前实际速度检测到当前满足预设传感器零漂条件,则根据所述目标外力确定目标虚拟静摩擦力;
基于预设静摩擦阻抗模型,根据所述目标虚拟静摩擦力、所述目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定所述目标控制方向对应的下一期望位置;
根据所述下一期望位置,确定所述目标控制方向对应的目标关节运动信息,并基于所述目标关节运动信息控制所述机械臂进行相应运动。
第二方面,本发明实施例还提供了一种机械臂阻抗控制装置,包括:
信息获取模块,用于获取机械臂的当前实际速度和传感器采集的当前外力;
目标外力确定模块,用于根据所述当前外力,确定目标控制方向对应的目标外力;
目标虚拟静摩擦力确定模块,用于若基于所述当前实际速度检测到当前满足预设传感器零漂条件,则根据所述目标外力确定目标虚拟静摩擦力;
下一期望位置确定模块,用于基于预设静摩擦阻抗模型,根据所述目标虚拟静摩擦力、所述目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定所述目标控制方向对应的下一期望位置;
机械臂控制模块,用于根据所述下一期望位置,确定所述目标控制方向对应的目标关节运动信息,并基于所述目标关节运动信息控制所述机械臂进行相应运动。
本发明实施例通过基于传感器采集的当前外力,确定目标控制方向对应的目标外力,并基于机械臂的当前实际速度检测当前是否满足预设传感器零漂条件,若满足,则表明传感器当前存在零点漂移的情况,此时可以根据目标外力确定目标控制方向对应的目标虚拟静摩擦力,并基于预设静摩擦阻抗模型,根据目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置;根据下一期望位置,确定目标控制方向对应的目标关节运动信息,并基于目标关节运动信息控制机械臂进行相应运动,从而通过设置额外考虑虚拟静摩擦力这一参数的预设静摩擦阻抗模型,可以利用目标虚拟静摩擦力,消除目标控制方向上存在的传感器零点漂移对阻抗控制的影响,从而提高阻抗控制的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种机械臂阻抗控制方法的流程图;
图2是本发明实施例二提供的一种机械臂阻抗控制方法的流程图;
图3是本发明实施例三提供的一种机械臂阻抗控制装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种机械臂阻抗控制方法的流程图,本实施例可适用于对机械臂阻抗控制过程中消除传感器零点漂移影响的情况。该方法可以由机械臂阻抗控制装置来执行,该装置可以由软件和/或硬件的方式来实现,集成于机械臂中。如图1所示,该方法具体包括以下步骤:
S110、获取机械臂的当前实际速度和传感器采集的当前外力。
其中,当前实际速度可以是指当前时刻机械臂末端的真实速度。传感器可以是指安装在机械臂末端的力传感器。当前外力可以是指当前时刻机械臂末端与环境物体接触的外力。
S120、根据当前外力,确定目标控制方向对应的目标外力。
其中,控制方向可以是指可控制机械臂移动的方向,也就是机械臂运动的自由度。机械臂的控制方向可以为一个多个。目标控制方向可以是当前需要进行零点漂移消除的控制方向。本实施例可以将机械臂的任一控制方向作为目标控制方向,并且每个控制方向对应的阻抗控制过程相同。
具体地,可以将当前外力转换到笛卡尔空间坐标系中,并对转换后的当前外力在目标控制方向上进行分解,获得目标控制方向上的分力,即目标外力。
S130、若基于当前实际速度检测到当前满足预设传感器零漂条件,则根据目标外力确定目标虚拟静摩擦力。
其中,预设传感器零漂条件可以是预先设置的传感器出现零点漂移时所对应的条件。虚拟静摩擦力是虚拟的并不是真实存在的静摩擦力,其与参考真实静摩擦力的物理意义类似。目标虚拟静摩擦力可以是指虚拟摩擦方向(即目标控制方向)上的虚拟静摩擦力。
具体地,若当前实际速度小于或等于预设速度,则可以确定满足预设传感器零漂条件。其中,预设速度可以是预先设置的,在未施加外力的情况下,即因零点漂移的影响导致的传感器末端的实际速度最大值。预设速度理论上可以设置为0,但因速度计算误差的存在,则预设速度可能为一个大于0的数值,比如10-5
若检测到当前满足预设传感器零漂条件,则表明传感器当前存在零点漂移的情况,此时可以确定目标虚拟静摩擦力为目标外力,以便利用目标虚拟静摩擦力抵消因零点漂移而产生的目标外力,进而消除目标控制方向上存在的传感器零点漂移对阻抗控制的影响。
需要说明的是,在检测到当前不满足预设传感器零漂条件,比如,当前实际速度大于预设速度时,表明当前不存在零点漂移的情况,此时可以基于原有阻抗控制方式进行控制,无需引入虚拟静摩擦力这一参数,比如,可以将目标虚拟静摩擦力确定为0,以便忽略目标虚拟静摩擦力的影响。
S140、基于预设静摩擦阻抗模型,根据目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置。
其中,预设静摩擦阻抗模型可以是在原有阻抗模型(即质量-阻尼-弹簧模型)下额外增加一个虚拟静摩擦力参数的阻抗模型。例如,预设静摩擦阻抗模型可以是指质量-阻尼-弹簧-虚拟静摩擦力的阻抗模型。为了减缓位置偏差造成的过大接触力,从而可以在机械臂末端增加一个弹簧(对应于预设弹簧参数K)。为了避免震荡可以再并联一个阻尼器(对应于预设阻尼参数B)。惯性是指物体(即弹簧和阻尼器)的一种固有属性。预设质量参数M可以是对物体惯性大小的量度。下一期望位置可以是指期望机械臂下次达到的位置,以便消除零点漂移对阻抗控制的影响。
具体地,可以基于质量、阻尼、弹簧和虚拟静摩擦力建立机械臂末端位置与外力之间的关系,即预设静摩擦阻抗模型,从而在获得当前确定的目标虚拟静摩擦力后,可以将目标虚拟静摩擦力和目标外力输入至预设静摩擦阻抗模型中,并基于预设静摩擦阻抗模型的输出,获得目标控制方向对应的下一期望位置。
示例性地,预设静摩擦阻抗模型对应的数学表达式可以表示如下:
Figure BDA0003501634860000061
其中,x是指预设静摩擦阻抗模型中的虚拟位置;
Figure BDA0003501634860000062
是指预设静摩擦阻抗模型中的虚拟速度;
Figure BDA0003501634860000063
是指预设静摩擦阻抗模型中的虚拟加速度;fs是指目标虚拟静摩擦力;Fext是指目标外力。可以引入两个状态:虚拟位置x1=x,虚拟速度
Figure BDA0003501634860000064
将上述公式(1)等价为如下公式(2)和公式(3):
Figure BDA0003501634860000065
Figure BDA0003501634860000066
通过离散化操作:
Figure BDA0003501634860000067
上述公式(2)和公式(3)等价为如下公式(4)和公式(5):
x1(k+1)=x2(k)dt+x1(k)  (4)
Figure BDA0003501634860000068
其中,dt是指预设时间间隔,即k+1时刻与k时刻之间的时间间隔。已知x1(0)、x2(0)、Fext和fs时可以通过上述公式(4)和公式(5)计算出各个时刻下的虚拟位置和虚拟速度,从而可以看出虚拟位置和虚拟速度会受到Fext和fs的影响,所以可以通过引入虚拟静摩擦力fs来消除零漂对阻抗控制所输出的虚拟位置和虚拟速度的影响。
示例性地,S140中的预设静摩擦阻抗模型可以通过如下步骤S51-S53实现确定目标控制方向对应的下一期望位置的功能:
S51、获取目标控制方向对应的当前虚拟位置和当前虚拟速度,其中,当前虚拟位置是基于上一虚拟位置、预设时间间隔和上一虚拟速度确定的。
具体地,若k时刻为当前时刻,则可以通过上述公式(4),基于上一虚拟位置x1(k-1)、预设时间间隔dt和上一虚拟速度x2(k-1)确定出目标控制方向对应的当前虚拟位置x1(k),并通过上述公式(5),基于上一虚拟位置x1(k-1)、预设时间间隔dt、上一虚拟速度x2(k-1)、预设弹簧参数K、预设阻尼参数B、预设质量参数M以及上一时刻获得的目标外力Fext(k-1)和目标虚拟静摩擦力fs(k-1),确定出目标控制方向对应的当前虚拟速度x2(k)。
S52、基于当前虚拟位置、当前虚拟速度、目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数,确定目标控制方向对应的下一虚拟速度。
具体地,通过上述公式(5),基于当前虚拟位置x1(k)、预设时间间隔dt、当前虚拟速度x2(k)、预设弹簧参数K、预设阻尼参数B、预设质量参数M以及当前时刻获得的目标外力Fext(k)和目标虚拟静摩擦力fs(k),确定出目标控制方向对应的下一虚拟速度x2(k+1)。
S53、基于下一虚拟速度、预设时间间隔和当前实际位置,确定目标控制方向对应的下一期望位置。
具体地,可以通过公式:xq(k+1)=x2(k+1)dt+xs(k),基于下一虚拟速度x2(k+1)、预设时间间隔dt和当前实际位置xs(k),确定目标控制方向对应的下一期望位置xq(k+1)。
S150、根据下一期望位置,确定目标控制方向对应的目标关节运动信息,并基于目标关节运动信息控制机械臂进行相应运动。
具体地,根据预设静摩擦阻抗模型输出的笛卡尔空间坐标系下的下一期望位置,通过运动学逆解方式,可以将笛卡尔坐标系中的三维位置信息转换为具体的每个机械臂关节电机的角度,从而获得目标关节运动信息。可以将目标关节运动信息发送至位置控制器中,使得位置控制器基于目标关节运动信息调节机械臂的关节角度,从而机械臂可以在目标控制方向上移动到下一期望位置,进而消除了目标控制方向上存在的传感器零点漂移对阻抗控制的影响,提高了阻抗控制的准确性。
本实施例的技术方案,通过基于传感器采集的当前外力,确定目标控制方向对应的目标外力,并基于机械臂的当前实际速度检测当前是否满足预设传感器零漂条件,若满足,则表明传感器当前存在零点漂移的情况,此时可以根据目标外力确定目标控制方向对应的目标虚拟静摩擦力,并基于预设静摩擦阻抗模型,根据目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置;根据下一期望位置,确定目标控制方向对应的目标关节运动信息,并基于目标关节运动信息控制机械臂进行相应运动,从而通过设置额外考虑虚拟静摩擦力这一参数的预设静摩擦阻抗模型,可以利用目标虚拟静摩擦力,消除目标控制方向上存在的传感器零点漂移对阻抗控制的影响,从而提高阻抗控制的准确性。
在上述技术方案的基础上,S130可以包括:确定最大虚拟静摩擦力;若基于当前实际速度、目标外力和最大虚拟静摩擦力检测到当前满足预设传感器零漂条件,则根据目标外力确定目标虚拟静摩擦力。
其中,最大虚拟静摩擦力可以用于表征目标控制方向上的最大零漂值。
示例性地,确定最大虚拟静摩擦力可以包括:获取当前配置的目标静摩擦系数,其中,目标静摩擦系数是基于最大零漂值进行配置获得的;根据目标静摩擦系数和预设虚拟压力,确定最大虚拟静摩擦力。
其中,静摩擦系数可以是基于业务需求动态配置的,以便提高阻抗控制的灵活性。目标静摩擦系数可以是指目标控制方向上配置的静摩擦系数。每个控制方向上可以配置相同的静摩擦系数,也可以配置不同的静摩擦系数。预设虚拟压力可以是预先基于物体(即弹簧和阻尼器)对应的预设质量参数M确定的虚拟的真实不存在的压力。例如,预设虚拟压力FN=Mg。
具体地,在传感器实际使用过程中,产生的零漂通常会具有一个最大零漂值dFm,从而可以基于该最大零漂值dFm配置出相应的静摩擦系数μs。例如,可以将最大零漂值dFm在目标控制方向上的目标零漂值与预设虚拟压力FN的比值确定为目标静摩擦系数μs,以使得目标控制方向上的最大虚拟静摩擦力等于最大零漂值。本实施例可以基于当前配置的每个控制方向对应的静摩擦系数,获取目标控制方向对应的目标静摩擦系数。将目标静摩擦系数μs和预设虚拟压力FN进行相乘,获得的乘积确定为最大虚拟静摩擦力。
示例性地,基于当前实际速度、目标外力和最大虚拟静摩擦力检测到当前满足预设传感器零漂条件,可以包括:若检测到当前实际速度小于或等于预设速度,且目标外力小于或等于最大虚拟静摩擦力,则确定当前满足预设传感器零漂条件。
具体地,在当前实际速度小于或等于预设速度时,若目标外力小于或等于最大虚拟静摩擦力,则表明目标外力小于最大零漂值,即当前确实是产生了零点漂移,此时可以将目标外力Fext确定为目标虚拟静摩擦力fs,使得公式(1)中的fs=Fext,从而零漂不会对阻抗控制产生影响。本实施例可以通过设置合适的静摩擦参数消除传感器零点漂移对阻抗控制的影响。若目标外力大于最大虚拟静摩擦力,则表明目标外力大于最大零漂值,即当前并不是产生了零点漂移,此时可以确定当前不满足预设传感器零漂条件,并基于原有阻抗控制方式进行控制,从而基于最大虚拟静摩擦力可以进一步提高了阻抗控制的准确性。
实施例二
图2为本发明实施例二提供的一种机械臂阻抗控制方法的流程图,本实施例在上述实施例的基础上,对检测到当前不满足预设传感器零漂条件的情况进行了进一步优化。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
参见图2,本实施例提供的机械臂阻抗控制方法具体包括以下步骤:
S210、获取机械臂的当前实际速度和传感器采集的当前外力。
S220、根据当前外力,确定目标控制方向对应的目标外力。
S230、若基于当前实际速度检测到当前不满足预设传感器零漂条件,则获取当前配置的目标动摩擦系数,并基于目标动摩擦系数和预设虚拟压力,确定目标控制方向对应的目标虚拟动摩擦力。
其中,虚拟动摩擦力是虚拟的并不是真实存在的动摩擦力,其与参考真实动摩擦力的物理意义类似。目标虚拟动摩擦力可以是指虚拟摩擦方向(即目标控制方向)上的虚拟动摩擦力。
通常预设质量参数M、预设阻尼参数B和预设弹簧参数K是固定不变的,从而不能通过改变阻尼参数B来改变阻抗控制的阻尼大小。本实施例通过引入虚拟动摩擦力后便可以通过动态配置动摩擦系数的方式来引入额外的阻尼,进而改变阻抗控制行为,从而满足用户的多样性需求。例如,若机械臂在阻尼参数B的影响下需要10秒停下来,通过引入虚拟动摩擦力后,可以增加额外的阻尼,使得机械臂可以更快地停下来,从而也增加了更多的操作自由度,进一步提升了用户体验。
具体地,在检测到当前不满足预设传感器零漂条件时,表明当前无需通过增加虚拟静摩擦力来消除零点漂移,此时可以通过获取当前配置的目标控制方向对应的目标动摩擦系数,并将目标动摩擦系数μk和预设虚拟压力FN进行相乘,获得的乘积确定为目标虚拟动摩擦力Fk
示例性地,S230中的“获取当前配置的目标动摩擦系数”,可以包括:基于当前配置的每个控制方向对应的动摩擦系数,获取目标控制方向对应的目标动摩擦系数。具体地,目标动摩擦系数可以是指目标控制方向上配置的动摩擦系数。每个控制方向上可以配置相同的动摩擦系数,也可以配置不同的动摩擦系数。
示例性地,S240中的“基于当前实际速度检测到当前不满足预设传感器零漂条件”,可以包括:若检测到当前实际速度大于预设速度,或者目标外力大于最大虚拟静摩擦力,则确定当前不满足预设传感器零漂条件。
具体地,若检测到当前实际速度大于预设速度,或者目标外力大于最大虚拟静摩擦力,则表明机械臂运动并不是由于零漂引起的,从而可以确定当前不满足预设传感器零漂条件,以避免引入虚拟静摩擦力进行阻抗控制。
S240、基于预设动摩擦阻抗模型,根据目标虚拟动摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置。
其中,预设动摩擦阻抗模型可以是在原有阻抗模型(即质量-阻尼-弹簧模型)下额外增加一个虚拟动摩擦力参数的阻抗模型。例如,预设动摩擦阻抗模型可以是指质量-阻尼-弹簧-虚拟动摩擦力的阻抗模型。
具体地,可以基于质量、阻尼、弹簧和虚拟动摩擦力建立机械臂末端位置与外力之间的关系,即预设动摩擦阻抗模型,从而在获得当前确定的目标虚拟动摩擦力后,可以将目标虚拟动摩擦力和目标外力输入至预设动摩擦阻抗模型中,并基于预设动摩擦阻抗模型的输出,获得目标控制方向对应的下一期望位置。
示例性地,类似于预设静摩擦阻抗模型,预设动摩擦阻抗模型对应的数学表达式可以表示如下:
Figure BDA0003501634860000121
其中,x是指预设动摩擦阻抗模型中的虚拟位置;
Figure BDA0003501634860000122
是预设动摩擦阻抗模型中的虚拟速度;
Figure BDA0003501634860000123
是指预设动摩擦阻抗模型中的虚拟加速度;fk是指目标虚拟动摩擦力;Fext是指目标外力。参照实施例一相同的方式,上述公式(6)可以等价为:
x1(k+1)=x2(k)dt+x1(k)  (7)
Figure BDA0003501634860000124
从上述公式(7)和公式(8)可以看出,通过增加目标虚拟动摩擦力可以引入额外阻尼,进而可以通过调节动摩擦系数的方式来改变所引入的额外阻尼,进而改变阻抗控制行为,从而满足用户的多样性需求。
示例性地,S240中的预设动摩擦阻抗模型可以通过如下步骤S61-S63实现确定目标控制方向对应的下一期望位置的功能:
S61、获取目标控制方向对应的当前虚拟位置和当前虚拟速度,其中,当前虚拟位置是基于上一虚拟位置、预设时间间隔和上一虚拟速度确定的。
具体地,若k时刻为当前时刻,则可以通过上述公式(7),基于上一虚拟位置x1(k-1)、预设时间间隔dt和上一虚拟速度x2(k-1)确定出目标控制方向对应的当前虚拟位置x1(k),并通过上述公式(8),基于上一虚拟位置x1(k-1)、预设时间间隔dt、上一虚拟速度x2(k-1)、预设弹簧参数K、预设阻尼参数B、预设质量参数M以及上一时刻获得的目标外力Fext(k-1)和目标虚拟动摩擦力fk(k-1),确定出目标控制方向对应的当前虚拟速度x2(k)。
S62、基于当前虚拟位置、当前虚拟速度、目标虚拟动摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数,确定目标控制方向对应的下一虚拟速度。
具体地,通过上述公式(8),基于当前虚拟位置x1(k)、预设时间间隔dt、当前虚拟速度x2(k)、预设弹簧参数K、预设阻尼参数B、预设质量参数M以及当前时刻获得的目标外力Fext(k)和目标虚拟动摩擦力fk(k),确定出目标控制方向对应的下一虚拟速度x2(k+1)。
S63、基于下一虚拟速度、预设时间间隔和当前实际位置,确定目标控制方向对应的下一期望位置。
具体地,可以通过公式:xq(k+1)=x2(k+1)dt+xs(k),基于下一虚拟速度x2(k+1)、预设时间间隔dt和当前实际位置xs(k),确定目标控制方向对应的下一期望位置xq(k+1)。
需要说明的是,可以将本实施例中的预设动摩擦阻抗模型与上述实施例中的预设静摩擦阻抗模型统一为预设摩擦阻抗模型,以便利用该预设摩擦阻抗模型进行统一处理。例如,该预设摩擦阻抗模型对应的数学表达式可以表示为:
Figure BDA0003501634860000141
在当前满足预设传感器零漂条件时,可以将获得的目标虚拟静摩擦力fs作为虚拟摩擦力f。在当前不满足预设传感器零漂条件时,可以将获得的目标虚拟动摩擦力fk作为虚拟摩擦力f。若当前不需要引入虚拟摩擦力时,可以将虚拟摩擦力f确定为0,以便利用原有的质量-阻尼-弹簧模型进行阻抗控制。
S250、根据下一期望位置,确定目标控制方向对应的目标关节运动信息,并基于目标关节运动信息控制机械臂进行相应运动。
本实施例的技术方案,通过在当前不满足预设传感器零漂条件时,可以基于目标动摩擦系数和预设虚拟压力,确定出目标控制方向对应的目标虚拟动摩擦力,并基于预设动摩擦阻抗模型,根据目标虚拟动摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置,从而本实施例通过增加目标虚拟动摩擦力的方式可以引入额外阻尼,进而改变阻抗控制行为,从而也增加了更多的操作自由度,进一步满足用户的多样性需求,提升了用户体验。
以下是本发明实施例提供的机械臂阻抗控制装置的实施例,该装置与上述各实施例的机械臂阻抗控制方法属于同一个发明构思,在机械臂阻抗控制装置的实施例中未详尽描述的细节内容,可以参考上述机械臂阻抗控制方法的实施例。
实施例三
图3为本发明实施例三提供的一种机械臂阻抗控制装置的结构示意图,本实施例可适用于对机械臂阻抗控制过程中消除传感器零点漂移影响的情况。参见图3,该装置包括:信息获取模块310、目标外力确定模块320、目标虚拟静摩擦力确定模块330、下一期望位置确定模块340和机械臂控制模块350。
其中,信息获取模块310,用于获取机械臂的当前实际速度和传感器采集的当前外力;目标外力确定模块320,用于根据当前外力,确定目标控制方向对应的目标外力;目标虚拟静摩擦力确定模块330,用于若基于当前实际速度检测到当前满足预设传感器零漂条件,则根据目标外力确定目标虚拟静摩擦力;下一期望位置确定模块340,用于基于预设静摩擦阻抗模型,根据目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置;机械臂控制模块350,用于根据下一期望位置,确定目标控制方向对应的目标关节运动信息,并基于目标关节运动信息控制机械臂进行相应运动。
本实施例的技术方案,通过基于传感器采集的当前外力,确定目标控制方向对应的目标外力,并基于机械臂的当前实际速度检测当前是否满足预设传感器零漂条件,若满足,则表明传感器当前存在零点漂移的情况,此时可以根据目标外力确定目标控制方向对应的目标虚拟静摩擦力,并基于预设静摩擦阻抗模型,根据目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置;根据下一期望位置,确定目标控制方向对应的目标关节运动信息,并基于目标关节运动信息控制机械臂进行相应运动,从而通过设置额外考虑虚拟静摩擦力这一参数的预设静摩擦阻抗模型,可以利用目标虚拟静摩擦力,消除目标控制方向上存在的传感器零点漂移对阻抗控制的影响,从而提高阻抗控制的准确性。
可选地,目标虚拟静摩擦力确定模块330,包括:
最大虚拟静摩擦力确定单元,用于确定最大虚拟静摩擦力;
目标虚拟静摩擦力确定单元,用于若基于当前实际速度、目标外力和最大虚拟静摩擦力检测到当前满足预设传感器零漂条件,则根据目标外力确定目标虚拟静摩擦力。
可选地,目标虚拟静摩擦力确定单元,包括:
零漂检测单元,用于:若检测到当前实际速度小于或等于预设速度,且目标外力小于或等于最大虚拟静摩擦力,则确定当前满足预设传感器零漂条件。
可选地,最大虚拟静摩擦力确定单元,具体用于:获取当前配置的目标静摩擦系数,其中,目标静摩擦系数是基于最大零漂值进行配置获得的;根据目标静摩擦系数和预设虚拟压力,确定最大虚拟静摩擦力。
可选地,下一期望位置确定模块340包括:
预设静摩擦阻抗模型执行单元,用于通过如下步骤实现确定目标控制方向对应的下一期望位置的功能:
获取目标控制方向对应的当前虚拟位置和当前虚拟速度,其中,当前虚拟位置是基于上一虚拟位置、预设时间间隔和上一虚拟速度确定的;
基于当前虚拟位置、当前虚拟速度、目标虚拟静摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数,确定目标控制方向对应的下一虚拟速度;
基于下一虚拟速度、预设时间间隔和当前实际位置,确定目标控制方向对应的下一期望位置。
可选地,该装置还包括:
目标虚拟动摩擦力确定模块,用于若基于当前实际速度检测到当前不满足预设传感器零漂条件,则获取当前配置的目标动摩擦系数,并基于目标动摩擦系数和预设虚拟压力,确定目标控制方向对应的目标虚拟动摩擦力;
下一期望位置确定模块340,还用于基于预设动摩擦阻抗模型,根据目标虚拟动摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定目标控制方向对应的下一期望位置。
可选地,目标虚拟动摩擦力确定模块,具体用于:基于当前配置的每个控制方向对应的动摩擦系数,获取目标控制方向对应的目标动摩擦系数。
可选地,零漂检测模块,还用于:若检测到当前实际速度大于预设速度,或者目标外力大于最大虚拟静摩擦力,则确定当前不满足预设传感器零漂条件。
可选地,下一期望位置确定模块340还包括:
预设动摩擦阻抗模型执行单元,用于通过如下步骤实现确定目标控制方向对应的下一期望位置的功能:
获取目标控制方向对应的当前虚拟位移和当前虚拟速度,其中,当前虚拟位置是基于上一虚拟位置、预设时间间隔和上一虚拟速度确定的;
基于当前虚拟位置、当前虚拟速度、目标虚拟动摩擦力、目标外力、预设质量参数、预设阻尼参数和预设弹簧参数,确定目标控制方向对应的下一虚拟速度;
基于下一虚拟速度、预设时间间隔和当前实际位置,确定目标控制方向对应的下一期望位置。
本发明实施例所提供的机械臂阻抗控制装置可执行本发明任意实施例所提供的机械臂阻抗控制方法,具备执行机械臂阻抗控制方法相应的功能模块和有益效果。
值得注意的是,上述机械臂阻抗控制装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种机械臂阻抗控制方法,其特征在于,包括:
获取机械臂的当前实际速度和传感器采集的当前外力;
根据所述当前外力,确定目标控制方向对应的目标外力;
若基于所述当前实际速度检测到当前满足预设传感器零漂条件,则根据所述目标外力确定目标虚拟静摩擦力;
基于预设静摩擦阻抗模型,根据所述目标虚拟静摩擦力、所述目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定所述目标控制方向对应的下一期望位置;
根据所述下一期望位置,确定所述目标控制方向对应的目标关节运动信息,并基于所述目标关节运动信息控制所述机械臂进行相应运动。
2.根据权利要求1所述的方法,其特征在于,所述基于所述当前实际速度检测到当前满足预设传感器零漂条件,则根据所述目标外力确定目标虚拟静摩擦力,包括:
确定最大虚拟静摩擦力;
若基于所述当前实际速度、所述目标外力和所述最大虚拟静摩擦力检测到当前满足预设传感器零漂条件,则根据所述目标外力确定目标虚拟静摩擦力。
3.根据权利要求2所述的方法,其特征在于,所述基于所述当前实际速度、所述目标外力和所述最大虚拟静摩擦力检测到当前满足预设传感器零漂条件,包括:
若检测到所述当前实际速度小于或等于预设速度,且所述目标外力小于或等于所述最大虚拟静摩擦力,则确定当前满足预设传感器零漂条件。
4.根据权利要求2所述的方法,其特征在于,所述确定最大虚拟静摩擦力,包括:
获取当前配置的目标静摩擦系数,其中,所述目标静摩擦系数是基于最大零漂值进行配置获得的;
根据所述目标静摩擦系数和预设虚拟压力,确定最大虚拟静摩擦力。
5.根据权利要求1所述的方法,其特征在于,所述预设静摩擦阻抗模型通过如下步骤实现确定所述目标控制方向对应的下一期望位置的功能:
获取所述目标控制方向对应的当前虚拟位置和当前虚拟速度,其中,所述当前虚拟位置是基于上一虚拟位置、预设时间间隔和上一虚拟速度确定的;
基于所述当前虚拟位置、所述当前虚拟速度、所述目标虚拟静摩擦力、所述目标外力、预设质量参数、预设阻尼参数和预设弹簧参数,确定所述目标控制方向对应的下一虚拟速度;
基于所述下一虚拟速度、预设时间间隔和当前实际位置,确定所述目标控制方向对应的下一期望位置。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若基于所述当前实际速度检测到当前不满足预设传感器零漂条件,则获取当前配置的目标动摩擦系数,并基于所述目标动摩擦系数和预设虚拟压力,确定所述目标控制方向对应的目标虚拟动摩擦力;
基于预设动摩擦阻抗模型,根据所述目标虚拟动摩擦力、所述目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定所述目标控制方向对应的下一期望位置。
7.根据权利要求6所述的方法,其特征在于,所述获取当前配置的目标动摩擦系数,包括:
基于当前配置的每个控制方向对应的动摩擦系数,获取目标控制方向对应的目标动摩擦系数。
8.根据权利要求6所述的方法,其特征在于,所述基于所述当前实际速度检测到当前不满足预设传感器零漂条件,包括:
若检测到所述当前实际速度大于预设速度,或者所述目标外力大于最大虚拟静摩擦力,则确定当前不满足预设传感器零漂条件。
9.根据权利要求6所述的方法,其特征在于,所述预设动摩擦阻抗模型通过如下步骤实现确定所述目标控制方向对应的下一期望位置的功能:
获取所述目标控制方向对应的当前虚拟位置和当前虚拟速度,其中,所述当前虚拟位置是基于上一虚拟位置、预设时间间隔和上一虚拟速度确定的;
基于所述当前虚拟位置、所述当前虚拟速度、所述目标虚拟动摩擦力、所述目标外力、预设质量参数、预设阻尼参数和预设弹簧参数,确定所述目标控制方向对应的下一虚拟速度;
基于所述下一虚拟速度、预设时间间隔和当前实际位置,确定所述目标控制方向对应的下一期望位置。
10.一种机械臂阻抗控制装置,其特征在于,包括:
信息获取模块,用于获取机械臂的当前实际速度和传感器采集的当前外力;
目标外力确定模块,用于根据所述当前外力,确定目标控制方向对应的目标外力;
目标虚拟静摩擦力确定模块,用于若基于所述当前实际速度检测到当前满足预设传感器零漂条件,则根据所述目标外力确定目标虚拟静摩擦力;
下一期望位置确定模块,用于基于预设静摩擦阻抗模型,根据所述目标虚拟静摩擦力、所述目标外力、预设质量参数、预设阻尼参数和预设弹簧参数进行阻抗控制,确定所述目标控制方向对应的下一期望位置;
机械臂控制模块,用于根据所述下一期望位置,确定所述目标控制方向对应的目标关节运动信息,并基于所述目标关节运动信息控制所述机械臂进行相应运动。
CN202210128594.9A 2022-02-11 2022-02-11 一种机械臂阻抗控制方法及装置 Active CN114454166B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210128594.9A CN114454166B (zh) 2022-02-11 2022-02-11 一种机械臂阻抗控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210128594.9A CN114454166B (zh) 2022-02-11 2022-02-11 一种机械臂阻抗控制方法及装置

Publications (2)

Publication Number Publication Date
CN114454166A CN114454166A (zh) 2022-05-10
CN114454166B true CN114454166B (zh) 2023-04-28

Family

ID=81413265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210128594.9A Active CN114454166B (zh) 2022-02-11 2022-02-11 一种机械臂阻抗控制方法及装置

Country Status (1)

Country Link
CN (1) CN114454166B (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0752105B2 (ja) * 1984-04-26 1995-06-05 松下電器産業株式会社 角速度センサ−
US9186795B1 (en) * 2013-06-24 2015-11-17 Redwood Robotics, Inc. Programming and execution of force-based tasks with torque-controlled robot arms
CN110125936B (zh) * 2019-05-15 2021-04-23 清华大学深圳研究生院 一种空间机器人的地面实验验证系统
CN111189577B (zh) * 2020-01-16 2022-01-07 腾讯科技(深圳)有限公司 传感器标定及数据测量方法、装置、设备、存储介质
US11858141B2 (en) * 2020-07-08 2024-01-02 Ubtech Robotics Corp Ltd Impedance control method, and controller and robot using the same
CN113510693B (zh) * 2021-08-03 2022-10-25 香港中文大学(深圳) 一种基于摩擦力的机器人控制方法、装置及设备
CN113843801B (zh) * 2021-10-18 2022-11-29 上海节卡机器人科技有限公司 复合机器人的控制方法、装置及系统

Also Published As

Publication number Publication date
CN114454166A (zh) 2022-05-10

Similar Documents

Publication Publication Date Title
CN110799309B (zh) 具有配置相关动力学的系统的振动控制
US8918215B2 (en) Telematic interface with control signal scaling based on force sensor feedback
Katsura et al. Analysis and experimental validation of force bandwidth for force control
US8350806B2 (en) Force/tactile display, method for controlling force/tactile display, and computer program
Mohammadi et al. Disturbance observer-based control of non-linear haptic teleoperation systems
Albu-Schaffer et al. Soft robotics: what cartesian stiffness can obtain with passively compliant, uncoupled joints?
CN112809667B (zh) 工业机器人的力控制方法、装置及其应用
KR102161570B1 (ko) 로봇 제어 장치 및 방법
CN110977974B (zh) 一种机器人规避奇异位型的导纳控制方法、装置及系统
CN114800532B (zh) 机械臂控制参数确定方法、装置、设备、介质和机器人
EP2404712A1 (en) A dual arm robot and a method for controlling a dual arm robot
WO2007124614A1 (en) Process for controlling cursor speed in user interface
Bagheri et al. Novel analytical and experimental trajectory optimization of a 7-dof baxter robot: global design sensitivity and step size analyses
WO2020194393A1 (ja) ロボットハンド、ロボットハンド制御方法及びプログラム
CN111098309A (zh) 一种机械臂混杂控制方法、装置及系统
CN114454166B (zh) 一种机械臂阻抗控制方法及装置
CN113814985B (zh) 一种机器人控制方法、控制柜及系统
Abdossalami et al. Adaptive control of haptic interaction with impedance and admittance type virtual environments
Gonzalez et al. Smooth transition-based control of encounter-type haptic devices
JP4134369B2 (ja) ロボットの制御装置
Zhang et al. An adaptive human-robot system using CMAC and over damping
US9925668B2 (en) Robot, control unit, and control method
Ni et al. A gain-switching control scheme for position-error-based force-reflecting teleoperation
WO2024050729A1 (en) Robot teleoperation system and method
CN114280924B (zh) 基于模糊观测器的柔性关节机器人系统事件触发控制方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant