CN114770511B - 基于物理触觉的机器人控制方法、装置及机器人 - Google Patents

基于物理触觉的机器人控制方法、装置及机器人 Download PDF

Info

Publication number
CN114770511B
CN114770511B CN202210499758.9A CN202210499758A CN114770511B CN 114770511 B CN114770511 B CN 114770511B CN 202210499758 A CN202210499758 A CN 202210499758A CN 114770511 B CN114770511 B CN 114770511B
Authority
CN
China
Prior art keywords
current
motion speed
force
difference value
historical
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
CN202210499758.9A
Other languages
English (en)
Other versions
CN114770511A (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.)
Shanghai Fourier Intelligence Co Ltd
Original Assignee
Shanghai Fourier Intelligence 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 Shanghai Fourier Intelligence Co Ltd filed Critical Shanghai Fourier Intelligence Co Ltd
Priority to CN202210499758.9A priority Critical patent/CN114770511B/zh
Publication of CN114770511A publication Critical patent/CN114770511A/zh
Application granted granted Critical
Publication of CN114770511B publication Critical patent/CN114770511B/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
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1669Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/72Electric energy management in electromobility

Landscapes

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

Abstract

本申请涉及机器人技术领域,公开了一种基于物理触觉的机器人控制方法。该机器人控制方法包括:获得机器人的当前实际运动速度与虚拟对象的当前虚拟运动速度的当前运动速度差值,以及机器人的历史实际运动速度与虚拟对象的历史虚拟运动速度的历史运动速度差值;根据运动速度与力的对应关系,确定当前运动速度差值以及历史运动速度差值对应的当前力差值;获得上一时刻的历史相互作用力,并根据历史相互作用力与当前力差值的和,确定当前相互作用力;根据当前相互作用力驱动虚拟对象以及机器人。采用该机器人控制方法可提高用户的安全,同时为用户提供较佳的使用体验。本申请还公开一种基于物理触觉的机器人控制装置和机器人。

Description

基于物理触觉的机器人控制方法、装置及机器人
技术领域
本申请涉及机器人技术领域,例如涉及一种基于物理触觉的机器人控制方法、装置及机器人。
背景技术
用户可通过机器人实现与虚拟环境的交互,例如,利用物理引擎创建虚拟环境,并在虚拟环境中创建虚拟对象,再基于经典阻抗控制模型对虚拟对象与机器人末端的受力状态、运动状态进行同步,用户可通过操作机器人,实现对虚拟环境中虚拟对象的控制。并且,虚拟对象在虚拟环境中的受力等情况,可通过机器人向用户进行反馈,这为用户提供了触觉体验,提高了用户的使用体验。
进一步地,可在虚拟环境中模拟一些极限运动,例如滑翔,再配合虚拟现实(Virtual Reality,VR)设备,可在确保安全的情况下,为用户提供极限运动体验。
在实现本申请实施例的过程中,发现相关技术中至少存在如下问题:
在以滑翔机为例的极限运动中,虚拟对象在运动过程的加速度存在加速度最值大、变化快、变化幅度大的特点,利用经典阻抗控制模型使虚拟对象和机器人的运动情况和受力情况进行同步,如果将阻抗控制模型中的惯性系数设置过大,则虚拟对象的加速度反馈至机器人,会出现机器人的驱动力的最值大、变化快并且变化幅度大的现象,容易对用户造成伤害;如果将阻抗控制模型中的惯性系数设置过小,则虚拟对象较小的加速度又无法反馈至机器人,导致用户无法体验虚拟场景中虚拟对象的惯性,降低了用户的使用体验。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
本申请实施例提供了一种基于物理触觉的机器人控制方法、装置及机器人,以提高用户的安全,同时为用户提供较佳的使用体验。
在一些实施例中,基于物理触觉的机器人控制方法包括:获得机器人当前时刻的当前实际运动速度、上一时刻的历史实际运动速度,以及虚拟对象当前时刻的当前虚拟运动速度、上一时刻的历史虚拟运动速度;获得当前实际运动速度与当前虚拟运动速度的当前运动速度差值,以及历史实际运动速度与历史虚拟运动速度的历史运动速度差值;根据运动速度与力的对应关系,确定当前运动速度差值以及历史运动速度差值对应的当前力差值;当前力差值与当前运动速度差值正相关,当前力差值与历史运动速度差值负相关;获得上一时刻的历史相互作用力,并根据历史相互作用力与当前力差值的和,确定当前相互作用力;根据当前相互作用力驱动虚拟对象以及机器人;其中,对虚拟对象施加的第一驱动力与对机器人施加的第二驱动力的数值具有映射关系,方向相反。
可选地,根据运动速度与力的对应关系,确定与当前运动速度差值以及历史运动速度差值对应的当前力差值,包括:获得当前运动速度差值与第一系数的第一乘积;获得历史运动速度差值与第二系数的第二乘积;将第一乘积与第二乘积的差值,确定为当前力差值;其中,第一系数大于或等于第二系数。
可选地,第一系数的确定,包括:获得当前时刻与上一时刻的间隔时长;根据时长与系数增量的对应关系,确定与间隔时长对应的当前系数增量;根据第二系数与当前系数增量的和,确定第一系数。
可选地,根据时长与系数增量的对应关系,确定与间隔时长对应的当前系数增量,包括:将设定系数与间隔时长的乘积,确定为当前系数增量;设定系数为弹性系数。
在一些实施例中,根据第二系数与当前系数增量的和,确定第一系数,包括:将第二系数与当前系数增量的和确定为第一系数。
在一些实施例中,根据历史相互作用力与当前力差值的和,确定当前相互作用力,包括:将历史相互作用力与当前力差值的和确定为当前相互作用力。
可选地,虚拟对象至少包括一对对称的虚拟操作端,一对对称的虚拟操作端至少沿一轴对称旋转;根据当前相互作用力驱动虚拟对象,包括:获得虚拟操作端中的第二操作端对第一操作端施加的第一相互作用力;获得当前相互作用力对应的第一操作端的第一驱动力;根据第一相互作用力和第一驱动力的合力驱动虚拟对象;第一操作端为一对对称的虚拟操作端中的任一个。
在一些实施例中,基于物理触觉的机器人控制装置包括:第一获得模块、第二获得模块、第一确定模块、第二确定模块以及控制模块;所述第一获得模块用于获得机器人当前时刻的当前实际运动速度、上一时刻的历史实际运动速度,以及虚拟对象当前时刻的当前虚拟运动速度、上一时刻的历史虚拟运动速度;所述第二获得模块用于获得当前实际运动速度与当前虚拟运动速度的当前运动速度差值,以及历史实际运动速度与历史虚拟运动速度的历史运动速度差值;所述第一确定模块用于根据运动速度与力的对应关系,确定当前运动速度差值以及历史运动速度差值对应的当前力差值;所述第二确定模块用于获得上一时刻的历史相互作用力,并根据历史相互作用力与当前力差值的和,确定当前相互作用力;所述控制模块用于根据当前相互作用力驱动虚拟对象以及机器人;其中,对虚拟对象施加的第一驱动力与对机器人施加的第二驱动力的数值具有映射关系,方向相反。
在一些实施例中,基于物理触觉的机器人控制装置包括处理器和存储有程序指令的存储器,处理器被配置为在执行程序指令时,执行前述实施例提供的基于物理触觉的机器人控制方法。
在一些实施例中,基于物理触觉的机器人包括前述实施例提供的基于物理触觉的机器人控制装置。
本申请实施例提供的基于物理触觉的机器人控制方法、装置及机器人,可以实现以下技术效果:
在根据运动速度与力的对应关系,将运动速度对应至力的过程中,不考虑加速度带来的影响,也即,运动速度与力的对应关系的模型不存在惯性系数,这样,不会将虚拟对象的加速度直接反馈至机器人,极限运动中的最值大、变化快以及变化幅度大的加速度不会直接反馈至机器人,提高了用户安全;同时,利用当前运动速度差值以及上一时刻的历史运动速度差值确定当前力差值,使当前力差值可反映出虚拟对象的运动状态的变化情况,这样,再依据当前力差值与上一时刻的历史相互作用力的合力,对机器人和虚拟对象进行控制,可使机器人的驱动力随虚拟对象速度的变化而变化,可使用户体验到虚拟对象的惯性,提高了用户体验。
以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。
附图说明
一个或一个以上实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件视为类似的元件,并且其中:
图1a是本申请实施例提供的一种基于物理触觉的机器人控制方法的机器人的应用场景示意图;
图1b是本申请实施例提供的一种基于物理触觉的机器人控制方法的虚拟对象的应用场景示意图;
图2是本申请实施例提供的一种基于物理触觉的机器人控制方法的流程示意图;
图3是本申请实施例提供的一种基于物理触觉的机器人控制方法的流程示意图;
图4是本申请实施例提供的一种基于物理触觉的机器人控制装置的示意图;
图5是本申请实施例提供的一种基于物理触觉的机器人控制装置的示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或一个以上实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
本申请实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个以上。
本申请实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
图1a是本申请实施例提供的一种基于物理触觉的机器人控制方法的机器人的应用场景示意图。为模拟滑翔场景,机器人11需要包括两个末端12,每个末端12上设置有手柄,供用户操作。可以由两台机器人11提供两个末端,每台机器人11均设置一个末端12,或者,还可以由一台机器人11提供两个末端12(图中未示出),分布对该两个末端12进行控制。
图1a中以两台上肢康复机器人进行示例性说明,在具体应用过程中,还可以是其他类型包括两个末端的机器人,且两个末端至少可围绕二者之间的中心进行旋转。
图1b是本申请实施例提供的一种基于物理触觉的机器人控制方法的虚拟对象的应用场景示意图。以虚拟对象为滑翔机的方向舵的简易模型进行示例性说明,图1b中连杆以及通过连杆13连接的两个球体14为滑翔机的方向舵,该方向舵两端的两个球体14,分别与图1a中的机器人11的末端12对应。即,一个球体14的受力情况以及运动情况与机器人11的一个末端12的驱动力情况以及运动情况对应(或同步),另一个球体14的受力情况以及运动情况与机器人11的另一个末端12的驱动力情况以及运动情况对应(或同步)。例如,图1b中左侧的球体14与图1a中左侧机器人11的末端12对应,图1b中右侧的球体14与图1a中的机器人11右侧的末端12对应。
该两个球体14即为虚拟对象的一对对称的虚拟操作端,该一对对称的虚拟操作端至少可沿一轴对称旋转,例如,图1b中的两个球体14(一对虚拟操作端)可沿图1b中所示的X轴和Z轴旋转,Y轴被锁定,使两个球体以及连杆13不会沿Y轴自转。
在具体应用过程中,显示该虚拟对象的装置可以是显示器,可以是增强现实(Augmented Reality,AR)设备,还可以是VR设备。
图2是本申请实施例提供的一种基于物理触觉的机器人控制方法的流程示意图。该基于物理触觉的机器人控制方法可由机器人的控制器执行,或者,还可由设置于机器人外部的计算机(或服务器)执行。
结合图2所示,基于物理触觉的机器人控制方法包括:
S201、获得机器人当前时刻的当前实际运动速度、上一时刻的历史实际运动速度,以及虚拟对象当前时刻的当前虚拟运动速度、上一时刻的历史虚拟运动速度。
这里的机器人与虚拟对象相对应,例如机器人指的是图1a中左侧的机器人,虚拟对象指的是图1b中左侧的球体;或者,机器人指的是图1a中右侧的机器人,虚拟对象指的是图1b中右侧的球体。
当前时刻与上一时刻之间的间隔时长为设定值。例如,该间隔时长可以是显示装置的刷新周期。这样,显示装置在当前时刻显示当前帧,可获得机器人当前帧的当前实际运动速度、上一帧的历史实际运动速度,以及虚拟对象当前帧的当前虚拟运动速度、上一帧的历史虚拟运动速度。
S202、获得当前实际运动速度与当前虚拟运动速度的当前运动速度差值,以及历史实际运动速度与历史虚拟运动速度的历史运动速度差值。
S203、根据运动速度与力的对应关系,确定当前运动速度差值以及历史运动速度差值对应的当前力差值。
其中,当前力差值与当前运动速度差值正相关,当前力差值与历史运动速度差值负相关。
上述当前力差值与当前运动速度差值的正相关关系,以及当前力差值与历史运动速度的负相关关系均为运动速度与力的对应关系。该对应关系可采用一一对应数据表的形式存储在数据库中,在获得当前运动速度差值以及历史运动速度差值之后,通过查询数据库,即可获得当前运动速度差值以及历史运动速度差值对应的当前力差值。
S204、获得上一时刻的历史相互作用力,并根据历史相互作用力与当前力差值的和,确定当前相互作用力。
例如,可将历史相互作用力与当前力差值的和确定为当前相互作用力。
这里的相互作用力,用于表示促使虚拟对象和机器人的运动状态趋近于同步的力,驱动虚拟对象的力与驱动机器人的力的数值具有映射关系,方向相反。
S205、根据当前相互作用力驱动虚拟对象以及机器人。
其中,对虚拟对象施加的第一驱动力与对机器人施加的第二驱动力的数值具有映射关系,方向相反。在虚拟对象的虚拟物理参数与机器人的实际物理参数相同的情况下,对虚拟对象施加的第一驱动力与对机器人施加的第二驱动力的数值相等,方向相反。
在根据运动速度与力的对应关系,将运动速度对应至力的过程中,不考虑加速度带来的影响,也即,运动速度与力的对应关系的模型不存在惯性系数。这样,不会将虚拟对象的加速度直接反馈至机器人,极限运动中的最值大、变化快以及变化幅度大的加速度不会直接反馈至机器人,提高了用户安全;同时,利用当前运动速度差值以及上一时刻的历史运动速度差值确定当前力差值,使当前力差值可反映出虚拟对象的运动状态的变化情况,这样,再依据当前力差值与上一时刻的历史相互作用力的合力,对机器人和虚拟对象进行控制,可使机器人的驱动力随虚拟对象速度的变化而变化,可使用户体验到虚拟对象的惯性,提高了用户体验。
并且进一步地,由于利用当前力差值来反映虚拟对象速度的变化(加速度),即使虚拟对象较大的加速度较大使虚拟对象的速度变化较多,导致当前力差值较大,在将当前力差值叠加至上一时刻的历史相互作用力并获得当前相互作用力的情况下,相对于当前力差值的变化幅度,当前相互作用力相对于历史相互作用力的变化幅度较小,这也提高了用户安全。
以下再对根据运动速度与力的对应关系确定当前运动速度差值以及历史运动速度差值对应的当前力差值的过程,进行进一步地说明。
上述运动速度与力的对应关系,还可通过公式的形式体现。在获得当前运动速度差值以及历史运动速度差值之后,以当前运动速度差值以及历史运动速度作为因变量,代入公式进行计算,公式的计算结果即为当前运动速度差值以及历史运动速度差值对应的当前力差值。
例如,根据运动速度与力的对应关系,确定与当前运动速度差值以及历史运动速度差值对应的当前力差值,可包括:获得当前运动速度差值与第一系数的第一乘积;获得历史运动速度差值与第二系数的第二乘积;将第一乘积与第二乘积的差值,确定为当前力差值。其中,第一系数大于或等于第二系数。
例如,可通过如下公式计算当前力差值以及当前相互作用力:
ΔF=p1×ΔD-p2×ΔD′
Fi=F′i+ΔF
其中,ΔF为当前力差值,p1为第一系数,ΔD为当前运动速度差值,p2为第二系数,ΔD′为历史运动速度差值,Fi为当前相互作用力,F′i为历史相互作用力。
第一系数用于将当前运动速度差值映射为力,第二系数用于将历史运动速度差值映射为力。本领域技术人员可根据经典阻抗控制模式来确定第一系数以及第二系数,该经典阻抗控制模型为:
Figure BDA0003635023120000081
其中,F为力,M为研究对象的惯性系数,B为研究对象的阻尼系数,K为研究对象的弹性系数,
Figure BDA0003635023120000082
为研究对象的加速度,/>
Figure BDA0003635023120000083
为研究对象的速度,x为研究对象的位移。
如果使机器人向用户的反馈比较强烈,可设置较大的第一系数以及第二系数;如果使机器人向用户的反馈比较弱,可设置较小的第一系数以及第二系数。
这样,通过设置第一系数以及第二系数,将当前运动速度差值以及历史运动速度差值映射为可反映虚拟对象的运动变化的当前力差值,在将当前力差值与上一时刻的历史相互作用力叠加后,获得了可反映虚拟对象的运动变化的相互作用力,该相互作用力可用于控制机器人,使机器人的驱动力可反映虚拟对象的运动变化。
以下对第一系数以及第二系数进行详细说明。
在第一系数等于第二系数的情况下,当前力差值可反映虚拟对象的加速度情况,可为机器人通过反映虚拟对象的加速度情况的驱动力,使用户感受到惯性体验。
在第一系数大于第二系数的情况下,在为用户提供惯性体验的基础上,还可以使机器人与虚拟对象的速度更加同步,进一步地提高用户的使用体验。
进一步地,第一系数的确定,可包括:获得当前时刻与上一时刻的间隔时长;根据时长与系数增量的对应关系,确定与间隔时长对应的当前系数增量;根据第二系数与当前系数增量的和,确定第一系数。
时长与系数增量的对应关系为正相关关系,在速度一定的情况下,时长与位移呈正相关关系,这样,该系数增量还具有使虚拟对象和机器人的位移趋近于同步的作用。
利用上述获得的第一系数确定当前力差值,再由当前力差值与历史相互作用力确定当前相互作用力,最后根据这样的当前相互作用力控制虚拟对象以及机器人,有利于虚拟对象和机器人的运动状态趋近于同步。
具体地,根据时长与系数增量的对应关系,确定与间隔时长对应的当前系数增量,可包括:将设定系数与间隔时长的乘积,确定为当前系数增量;设定系数为弹性系数。
可通过如下公式计算当前相互作用力:
ΔF=(p2+kt)×(V1-V2)-p2×(V′1-V′2)
Fi=F′i+ΔF
其中,ΔF为当前力差值,p2为第二系数,k为设定系数,t为间隔时长,V1为当前实际速度(即当前实际运动速度),V2为当前虚拟速度(即当前虚拟运动速度),V′1为历史实际速度(即历史实际运动速度),V′2为历史虚拟速度(即历史虚拟运动速度),Fi为当前相互作用力,F′i为历史相互作用力。
在具体应用中,上述间隔时刻可为单位时长。例如,该间隔时长可为显示虚拟环境的设备的刷新周期。这种情况下,当前时刻可以是刷新为当前帧的时刻,上一时刻可以是刷新为上一帧的时刻。
前述根据第二系数与当前系数增量的和,确定第一系数,可包括:将第二系数与当前系数增量的和确定为第一系数。
在模拟滑翔机的虚拟场景中,虚拟对象为滑翔机,虚拟对象至少包括有一对对称的虚拟操作端,一对对称的虚拟操作端至少沿一轴对称旋转(如图1b所示)。
图3是本申请实施例提供的一种基于物理触觉的机器人控制方法的流程示意图,以虚拟对象为滑翔机为例,对基于物理触觉的机器人控制方法进行示例性说明。该基于物理触觉的机器人控制方法可由机器人的控制器执行,或者,还可由设置于机器人外部的计算机(或服务器)执行。
结合图3所示,基于物理触觉的机器人控制方法包括:
S301、获得机器人当前时刻的当前实际运动速度、上一时刻的历史实际运动速度,以及虚拟对象当前时刻的当前虚拟运动速度、上一时刻的历史虚拟运动速度。
S302、获得当前实际运动速度与当前虚拟运动速度的当前运动速度差值,以及历史实际运动速度与历史虚拟运动速度的历史运动速度差值。
S303、根据运动速度与力的对应关系,确定当前运动速度差值以及历史运动速度差值对应的当前力差值。
其中,当前力差值与当前运动速度差值正相关,当前力差值与历史运动速度差值负相关。
S304、获得上一时刻的历史相互作用力,并根据历史相互作用力与当前力差值的和,确定当前相互作用力。
S305、获得虚拟操作端中的第二操作端对第一操作端施加的第一相互作用力。
其中,第一操作端为一对对称的虚拟操作端中的任一个。
S306、获得当前相互作用力对应的第一操作端的第一驱动力。
例如,在虚拟对象的虚拟质量大于机器人的实际质量的情况下,可将当前相互作用力与大于1的系数的乘积,确定为第一驱动力;在虚拟对象的虚拟质量小于机器人的实际质量的情况下,可将当前相互作用力与小于1的系数的乘积,确定为第一驱动力;在虚拟对象的虚拟质量与机器人的实际质量的情况下,可将当前相互作用力确定为第一驱动力。
S307、根据第一相互作用力和第一驱动力的合力驱动虚拟对象。
第一相互作用力是在第二操作端受力或运动的过程施加给第一操作端的。如图1b所示的虚拟对象,该虚拟对象由通过连杆连接的两个球体构成。为示例性说明,可将左侧球体视为第一操作端,将右侧球体视为第二操作端,在第二操作端运动的情况下,第二操作端会对第一操作端施加作用力,该作用力即为上述第一相互作用力。
在第一操作端运动的情况下,第一操作端还会对第二操作端施加作用力,将该作用力记为第二作用力,则第二相互作用力与第一相互作用力为大小相同方向相反的相互作用力。
S308、根据当前相互作用力驱动机器人。
例如,可获得当前相互作用力对应的第二驱动力,再利用第二驱动力驱动机器人。第二驱动力与第一驱动力的数值具有映射关系,第二驱动力的方向与第一驱动力的方向相反。第二驱动力可通过如下步骤获得:在虚拟对象的虚拟质量大于机器人的实际质量的情况下,可将当前相互作用力与小于1的系数的乘积,确定为第二驱动力;在虚拟对象的虚拟质量小于机器人的实际质量的情况下,可将当前相互作用力与大于1的系数的乘积,确定为第二驱动力。另外,这里的第二驱动力指的是机器人末端所表现出的驱动力,在具体控制过程中,需要根据机器人逆动力学,将该第二驱动力转换为机器人的各个关节的驱动力矩,再依据各个关节的驱动力矩控制每个关节的驱动电机。
在用户操作机器人的过程中,机器人的末端在第二驱动力以及用户施加的力的合力下运动。
上述驱动虚拟对象,指的是根据第一相互作用力和第一驱动力的合力驱动虚拟对象的第一操作端。当然,在驱动虚拟对象的第一操作端及其对应的机器人的一个末端的同时,还需要驱动虚拟对象的第二操作端及其对应的机器人的另一个末端。驱动虚拟对象的第二操作端及其对应的机器人的另一个末端的过程,与驱动虚拟对象的第一操作端及其对应的机器人一个末端的过程相同,只需将上述第一操作端替换为第二操作端,将第一操作端对应的机器人替换为第二操作端对应的机器人,这里不再一一赘述。
在具体应用场景中,用户移动图1a中左侧的机器人末端,图1b中虚拟对象的左侧的球体跟踪左侧机器人末端,由于右侧球体与左侧球体通过连杆连接,两个球体之间存在相互作用力,在左侧球体运动的情况下,右侧球体也适应性运动,图1a中右侧的机器人末端跟踪图1b中的右侧球体的运动状态。这样,将会出现这样一种现象:在用户拖动图1a中左侧的机器人末端的情况下,图1b中右侧的机器人末端也会适应性动作,从而实了对滑翔机的方向舵的模拟,提高了用户的使用体验。
该基于物理触觉的机器人控制方法,可适用于体验式游戏场景,即,用户通过机器人以及显示装置等实现对一些极限运动的体验;该机器人控制方法还可适用于康复训练过程,通过在虚拟环境中模拟运动场景,提高用户对训练过程的兴趣度。
图4是本申请实施例提供的一种基于物理触觉的机器人控制装置的示意图。结合图4所示,基于物理触觉的机器人控制装置包括第一获得模块41、第二获得模块42、第一确定模块43、第二确定模块44以及控制模块45。第一获得模块41用于获得机器人当前时刻的当前实际运动速度、上一时刻的历史实际运动速度,以及虚拟对象当前时刻的当前虚拟运动速度、上一时刻的历史虚拟运动速度;第二获得模块42用于获得当前实际运动速度与当前虚拟运动速度的当前运动速度差值,以及历史实际运动速度与历史虚拟运动速度的历史运动速度差值;第一确定模块43用于根据运动速度与力的对应关系,确定当前运动速度差值以及历史运动速度差值对应的当前力差值;第二确定模块44用于获得上一时刻的历史相互作用力,并根据历史相互作用力与当前力差值的和,确定当前相互作用力;控制模块45用于根据当前相互作用力驱动虚拟对象以及机器人;其中,对虚拟对象施加的第一驱动力与对机器人施加的第二驱动力的数值具有对应关系,方向相反。
可选地,第一确定模块43包括第一获得单元、第二获得单元和第一确定单元;第一获得单元用于获得当前运动速度差值与第一系数的第一乘积;第二获得单元用于获得历史运动速度差值与第二系数的第二乘积;确定单元用于将第一乘积与第二乘积的差值,确定为当前力差值;其中,第一系数大于或等于第二系数。
可选地,第一系数的确定过程包括:获得当前时刻与上一时刻的间隔时长;根据时长与系数增量的对应关系,确定与间隔时长对应的当前系数增量;根据第二系数与当前系数增量的和,确定第一系数。
可选地,根据时长与系数增量的对应关系,确定与间隔时长对应的当前系数增量,包括:将设定系数与间隔时长的乘积,确定为当前系数增量;设定系数为弹性系数。
可选地,根据第二系数与当前系数增量的和,确定第一系数,包括:将第二系数与当前系数增量的和确定为第一系数。
第二确定模块44包括第二确定单元,第二确定单元用于将历史相互作用力与当前力差值的和确定为当前相互作用力。
可选地,虚拟对象至少包括一对对称的虚拟操作端,一对对称的虚拟操作端至少沿一轴对称旋转;
控制模块45包括第二获得单元、第四获得单元和驱动单元;第三获得单元用于获得虚拟操作端中的第二操作端对第一操作端施加的第一相互作用力;第四获得单元用于获得当前相互作用力对应的第一操作端的第一驱动力;驱动单元用于根据第一相互作用力和第一驱动力的合力驱动虚拟对象;第一操作端为一对对称的虚拟操作端中的任一个。
在一些实施例中,基于物理触觉的机器人控制装置包括处理器和存储有程序指令的存储器,处理器被配置为在执行程序指令时,执行前述实施例提供的基于物理触觉的机器人控制方法。
图5是本申请实施例提供的一种基于物理触觉的机器人控制装置的示意图。结合图5所示,基于物理触觉的机器人控制装置包括:
处理器(processor)51和存储器(memory)52,还可以包括通信接口(Communication Interface)53和总线54。其中,处理器51、通信接口53、存储器52可以通过总线54完成相互间的通信。通信接口53可以用于信息传输。处理器51可以调用存储器52中的逻辑指令,以执行前述实施例提供的基于物理触觉的机器人控制方法。
此外,上述的存储器52中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器52作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本申请实施例中的方法对应的程序指令/模块。处理器51通过运行存储在存储器52中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的方法。
存储器52可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非易失性存储器。
本申请实施例提供了一种机器人,包含前述实施例提供的基于物理触觉的机器人控制装置。
本申请实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令设置为执行前述实施例提供的基于物理触觉的机器人控制方法。
本申请实施例提供了一种计算机程序产品,计算机程序产品包括存储在计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行前述实施例提供的基于物理触觉的机器人控制方法。
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
本申请实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或一个以上指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请实施例中方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机读取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
以上描述和附图充分地示出了本申请的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本申请实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本申请实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或一个以上用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

Claims (10)

1.一种基于物理触觉的机器人控制方法,其特征在于,包括:
获得机器人当前时刻的当前实际运动速度、上一时刻的历史实际运动速度,以及虚拟对象当前时刻的当前虚拟运动速度、上一时刻的历史虚拟运动速度;
获得所述当前实际运动速度与所述当前虚拟运动速度的当前运动速度差值,以及所述历史实际运动速度与所述历史虚拟运动速度的历史运动速度差值;
根据运动速度与力的对应关系,确定所述当前运动速度差值以及所述历史运动速度差值对应的当前力差值;所述当前力差值与所述当前运动速度差值正相关,所述当前力差值与所述历史运动速度差值负相关;
获得上一时刻的历史相互作用力,并根据所述历史相互作用力与所述当前力差值的和,确定当前相互作用力;
根据所述当前相互作用力驱动所述虚拟对象以及所述机器人;其中,对所述虚拟对象施加的第一驱动力与对所述机器人施加的第二驱动力的数值具有映射关系,方向相反。
2.根据权利要求1所述的机器人控制方法,其特征在于,根据运动速度与力的对应关系,确定与所述当前运动速度差值以及所述历史运动速度差值对应的当前力差值,包括:
获得所述当前运动速度差值与第一系数的第一乘积;
获得所述历史运动速度差值与第二系数的第二乘积;
将所述第一乘积与所述第二乘积的差值,确定为所述当前力差值;
其中,所述第一系数大于或等于所述第二系数。
3.根据权利要求2所述的机器人控制方法,其特征在于,所述第一系数的确定,包括:
获得所述当前时刻与所述上一时刻的间隔时长;
根据时长与系数增量的对应关系,确定与所述间隔时长对应的当前系数增量;
根据所述第二系数与所述当前系数增量的和,确定所述第一系数。
4.根据权利要求3所述的机器人控制方法,其特征在于,根据时长与系数增量的对应关系,确定与所述间隔时长对应的当前系数增量,包括:
将设定系数与所述间隔时长的乘积,确定为所述当前系数增量;其中,所述设定系数为弹性系数。
5.根据权利要求3所述的机器人控制方法,其特征在于,根据所述第二系数与所述当前系数增量的和,确定所述第一系数,包括:
将所述第二系数与所述当前系数增量的和确定为所述第一系数。
6.根据权利要求1至5任一项所述的机器人控制方法,其特征在于,根据所述历史相互作用力与所述当前力差值的和,确定当前相互作用力,包括:
将所述历史相互作用力与所述当前力差值的和确定为所述当前相互作用力。
7.根据权利要求1至5任一项所述的机器人控制方法,其特征在于,所述虚拟对象至少包括一对对称的虚拟操作端,所述一对对称的虚拟操作端至少沿一轴对称旋转;
根据所述当前相互作用力驱动所述虚拟对象,包括:
获得所述虚拟操作端中的第二操作端对第一操作端施加的第一相互作用力;获得所述当前相互作用力对应的所述第一操作端的第一驱动力;根据所述第一相互作用力和所述第一驱动力的合力驱动所述虚拟对象;所述第一操作端为所述一对对称的虚拟操作端中的任一个。
8.一种基于物理触觉的机器人控制装置,其特征在于,包括:
第一获得模块,用于获得机器人当前时刻的当前实际运动速度、上一时刻的历史实际运动速度,以及虚拟对象当前时刻的当前虚拟运动速度、上一时刻的历史虚拟运动速度;
第二获得模块,用于获得所述当前实际运动速度与所述当前虚拟运动速度的当前运动速度差值,以及所述历史实际运动速度与所述历史虚拟运动速度的历史运动速度差值;
第一确定模块,用于根据运动速度与力的对应关系,确定所述当前运动速度差值以及所述历史运动速度差值对应的当前力差值;
第二确定模块,用于获得上一时刻的历史相互作用力,并根据所述历史相互作用力与所述当前力差值的和,确定当前相互作用力;
控制模块,用于根据所述当前相互作用力驱动所述虚拟对象以及所述机器人;其中,对所述虚拟对象施加的第一驱动力与对所述机器人施加的第二驱动力的数值具有映射关系,方向相反。
9.一种基于物理触觉的机器人控制装置,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在执行所述程序指令时,执行如权利要求1至7任一项所述的基于物理触觉的机器人控制方法。
10.一种基于物理触觉的机器人,其特征在于,包括如权利要求8或9所述的基于物理触觉的机器人控制装置。
CN202210499758.9A 2022-05-09 2022-05-09 基于物理触觉的机器人控制方法、装置及机器人 Active CN114770511B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210499758.9A CN114770511B (zh) 2022-05-09 2022-05-09 基于物理触觉的机器人控制方法、装置及机器人

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210499758.9A CN114770511B (zh) 2022-05-09 2022-05-09 基于物理触觉的机器人控制方法、装置及机器人

Publications (2)

Publication Number Publication Date
CN114770511A CN114770511A (zh) 2022-07-22
CN114770511B true CN114770511B (zh) 2023-06-23

Family

ID=82436957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210499758.9A Active CN114770511B (zh) 2022-05-09 2022-05-09 基于物理触觉的机器人控制方法、装置及机器人

Country Status (1)

Country Link
CN (1) CN114770511B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002023286A1 (en) * 2000-09-13 2002-03-21 University Of Washington Time domain passivity control of haptic interfaces
JP2010204926A (ja) * 2009-03-03 2010-09-16 Softbank Bb Corp モニタリングシステム、モニタリング方法、およびプログラム
JP2011232815A (ja) * 2010-04-23 2011-11-17 Fujitsu Ltd 移動体装置及び移動制御プログラム
WO2015134391A1 (en) * 2014-03-03 2015-09-11 University Of Washington Haptic virtual fixture tools
EP3117967A1 (en) * 2015-07-15 2017-01-18 ETH Zurich Transparency control method for robotic devices and a control device therefor
WO2018028102A1 (zh) * 2016-08-08 2018-02-15 河海大学 一种仿记忆引导的模式识别方法
CN111338287A (zh) * 2020-03-13 2020-06-26 南方科技大学 机器人运动控制方法、装置、系统、机器人及存储介质
US10698493B1 (en) * 2019-06-26 2020-06-30 Fvrvs Limited Virtual reality surgical training systems with advanced haptic feedback
US10987808B1 (en) * 2016-12-14 2021-04-27 The Board Of Trustees Of The Leland Stanford Junior University Systems and methods for providing a control solution for an actuator
CN113069315A (zh) * 2021-03-24 2021-07-06 上海傅利叶智能科技有限公司 机器人提供助力的方法、装置和康复机器人
CN113081666A (zh) * 2021-03-24 2021-07-09 上海傅利叶智能科技有限公司 康复机器人的虚拟限位的方法、装置和康复机器人
CN113568313A (zh) * 2021-09-24 2021-10-29 南京航空航天大学 基于操作意图识别的变导纳辅助大部件装配方法及系统
CN113771043A (zh) * 2021-09-30 2021-12-10 上海傅利叶智能科技有限公司 使机器人跟随虚拟对象的控制方法、装置和康复机器人
CN113829347A (zh) * 2021-09-30 2021-12-24 上海傅利叶智能科技有限公司 基于物理引擎的机器人控制方法、装置和康复机器人

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050009604A1 (en) * 2003-07-11 2005-01-13 Hsien-Ta Huang Monotone voice activation device
US11325029B2 (en) * 2007-09-14 2022-05-10 National Institute Of Advanced Industrial Science And Technology Virtual reality environment generating apparatus and controller apparatus
US9849595B2 (en) * 2015-02-06 2017-12-26 Abb Schweiz Ag Contact force limiting with haptic feedback for a tele-operated robot
JP6956081B2 (ja) * 2015-11-11 2021-10-27 マコ サージカル コーポレーション ロボットシステム及びロボットシステムをバックドライブする方法

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002023286A1 (en) * 2000-09-13 2002-03-21 University Of Washington Time domain passivity control of haptic interfaces
JP2010204926A (ja) * 2009-03-03 2010-09-16 Softbank Bb Corp モニタリングシステム、モニタリング方法、およびプログラム
JP2011232815A (ja) * 2010-04-23 2011-11-17 Fujitsu Ltd 移動体装置及び移動制御プログラム
WO2015134391A1 (en) * 2014-03-03 2015-09-11 University Of Washington Haptic virtual fixture tools
EP3117967A1 (en) * 2015-07-15 2017-01-18 ETH Zurich Transparency control method for robotic devices and a control device therefor
WO2018028102A1 (zh) * 2016-08-08 2018-02-15 河海大学 一种仿记忆引导的模式识别方法
US10987808B1 (en) * 2016-12-14 2021-04-27 The Board Of Trustees Of The Leland Stanford Junior University Systems and methods for providing a control solution for an actuator
US10698493B1 (en) * 2019-06-26 2020-06-30 Fvrvs Limited Virtual reality surgical training systems with advanced haptic feedback
CN111338287A (zh) * 2020-03-13 2020-06-26 南方科技大学 机器人运动控制方法、装置、系统、机器人及存储介质
CN113069315A (zh) * 2021-03-24 2021-07-06 上海傅利叶智能科技有限公司 机器人提供助力的方法、装置和康复机器人
CN113081666A (zh) * 2021-03-24 2021-07-09 上海傅利叶智能科技有限公司 康复机器人的虚拟限位的方法、装置和康复机器人
CN113568313A (zh) * 2021-09-24 2021-10-29 南京航空航天大学 基于操作意图识别的变导纳辅助大部件装配方法及系统
CN113771043A (zh) * 2021-09-30 2021-12-10 上海傅利叶智能科技有限公司 使机器人跟随虚拟对象的控制方法、装置和康复机器人
CN113829347A (zh) * 2021-09-30 2021-12-24 上海傅利叶智能科技有限公司 基于物理引擎的机器人控制方法、装置和康复机器人

Also Published As

Publication number Publication date
CN114770511A (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
CN111028317B (zh) 虚拟对象的动画生成方法、装置、设备及存储介质
CN113771043B (zh) 使机器人跟随虚拟对象的控制方法、装置和康复机器人
CN107403566A (zh) 一种使用虚拟机器人的教育系统
Brooks The cog project
CN111338287A (zh) 机器人运动控制方法、装置、系统、机器人及存储介质
US20230321819A1 (en) Robot control method and device based on physical engine, and rehabilitation robot
CN114770511B (zh) 基于物理触觉的机器人控制方法、装置及机器人
Zhou et al. A mixed reality training system for hand-object interaction in simulated microgravity environments
CN114833826B (zh) 实现机器人碰撞触觉的控制方法、装置以及康复机器人
Besnea et al. Experiments regarding implementation of a virtual training environment for automotive industry
Choi et al. Haptic display in the virtual collaborative workspace shared by multiple users
Corke et al. Human skill transfer using haptic virtual reality technology
Aliaga Virtual and real object collisions in a merged environment
JP2000047563A (ja) 物体の把持動作シミュレーション装置
CN112276947A (zh) 一种机器人动作模仿方法、装置、设备及存储介质
CN107050848B (zh) 基于体域网的体感游戏实现方法以及装置
CN113855474B (zh) 用于控制两个康复机器人的方法、装置和康复机器人系统
JP2001017748A (ja) 動揺装置の動作指令データ生成方法及び動揺装置
CN113829348B (zh) 基于物理引擎的机器人控制方法、装置和康复机器人
CN112989449B (zh) 一种运动刚度优化的触觉力反馈仿真交互方法及装置
CN114770507B (zh) 机器人的控制方法、控制装置及康复机器人
Fellah et al. Fuzzy/PSO Based Washout Filter for Inertial Stimuli Restitution in Flight Simulation
CN110286760B (zh) 一种用于虚拟现实的力反馈控制方法及装置
CN117373313A (zh) 基于混合现实的模拟微重力环境手物抓取方法与装置
WO2024131405A1 (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