CN116276991A - 一种机器人提起处理的方法及机器人 - Google Patents
一种机器人提起处理的方法及机器人 Download PDFInfo
- Publication number
- CN116276991A CN116276991A CN202310212317.0A CN202310212317A CN116276991A CN 116276991 A CN116276991 A CN 116276991A CN 202310212317 A CN202310212317 A CN 202310212317A CN 116276991 A CN116276991 A CN 116276991A
- Authority
- CN
- China
- Prior art keywords
- robot
- lifted
- state
- determining
- current
- 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 42
- 238000004891 communication Methods 0.000 claims description 17
- 230000002159 abnormal effect Effects 0.000 claims description 13
- 230000001133 acceleration Effects 0.000 claims description 12
- 210000001503 joint Anatomy 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 17
- 230000006378 damage Effects 0.000 abstract description 10
- 230000006399 behavior Effects 0.000 abstract description 2
- 238000003672 processing method Methods 0.000 abstract 1
- 238000001514 detection method Methods 0.000 description 8
- 230000005021 gait Effects 0.000 description 7
- 238000012876 topography Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000005484 gravity Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000011217 control strategy Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 206010034701 Peroneal nerve palsy Diseases 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013016 damping Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
- B62D57/02—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
- B62D57/032—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Automation & Control Theory (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Manipulator (AREA)
Abstract
本申请公开了一种机器人提起处理的方法及机器人,用于主动检测机器人运动过程中的被提起行为并采取相应策略避免损伤。本申请方法包括:检测所述机器人是否受到被提起力;若所述机器人受到所述被提起力,则根据所述被提起力判断所述机器人是否处于被提起状态;若所述机器人处于被提起状态,则控制所述机器人开启被提起模式,直到所述机器人恢复至落地状态。
Description
技术领域
本申请涉及机器人控制技术领域,尤其涉及一种机器人提起处理的方法及机器人。
背景技术
机器人正被越来越多的应用于日常生产和生活中,足式机器人相较于传统的轮式机器人和履带式机器人,其优势在于良好的越障性能,足式机器人通过对其各个多自由度腿部关节的控制,能够适应在地面上各复杂地形环境的站立及行走,目前的足式机器人有双足、四足和等多足形式,均具有广泛的应用前景。
现有技术中,足式机器人的足端与地面的接触使得机器人能够保持平衡并按期望运动,但是在足式机器人在地面上站立及行走的过程中,如果足式机器人的躯干受到与重力方向相反的已知外力或其它干扰外力的影响,会导致足式机器人的机身被逐渐提起并最终处于空中、导致足端离开地面的情况发生。
在足式机器人被提起的过程中,足式机器人缺乏机身的外力感知能力、环境感知能力以及机身距离地面的高度真实值,会导致足式机器人在空中的不受控运动,从而造成足式机器人自身硬件的损伤,以及产生对周围环境的伤害。
发明内容
本申请提供了一种机器人提起处理的方法及机器人,用于主动检测机器人运动过程中的被提起行为并采取相应策略避免损伤。
本申请第一方面提供了一种足式机器人提起处理的方法,包括:
检测所述机器人是否受到被提起力;
若所述机器人受到所述被提起力,则根据所述被提起力判断所述机器人是否处于被提起状态;
若所述机器人处于被提起状态,则控制所述机器人开启被提起模式,直到所述机器人恢复至落地状态。
可选的,所述根据所述被提起力判断机器人是否处于被提起状态,包括:
若所述被提起力小于或等于第一阈值,则确定所述机器人不处于被提起状态;
若所述被提起力大于所述第一阈值且小于第二阈值,则基于所述机器人的足端触地状态和/或所述机器人的腿部工作空间确定所述机器人是否处于所述被提起状态;
若所述被提起力大于或等于所述第二阈值,则确定所述机器人处于所述被提起状态。
可选的,所述基于所述机器人的足端触地状态确定所述机器人是否处于所述被提起状态,包括:
判断所述机器人的足端触地状态是否为异常状态,所述异常状态为所述机器人至少一个足端的实际触地状态与期望触地状态不符且持续预设时间;
若是,则确定所述机器人处于所述被提起状态;
若否,则确定所述机器人不处于所述被提起状态。
本申请第二方面提供了一种机器人,包括:机身和至少两条腿;
所述机器人还包括与所述至少两条腿通信的控制系统,控制系统包括数据处理器和与数据处理器通信的存储器,存储器存储指令,当在数据处理器上执行时,指令使得数据处理器执行操作,包括:
检测所述机器人是否受到被提起力;
若所述机器人受到被提起力,则根据所述被提起力判断所述机器人是否处于被提起状态;
若所述机器人处于被提起状态,则控制所述机器人开启被提起模式,直到所述机器人恢复至落地状态。
可选的,所述操作中根据所述被提起力判断所述机器人是否处于被提起状态具体包括:
若所述被提起力小于或等于第一阈值,则确定所述机器人不处于被提起状态;
若所述被提起力大于所述第一阈值且小于第二阈值,则基于所述机器人的足端触地状态和/或所述机器人的腿部工作空间确定所述机器人是否处于所述被提起状态;
若所述被提起力大于或等于所述第二阈值,则确定所述机器人处于所述被提起状态。
可选的,所述操作中基于所述机器人的足端触地状态确定所述机器人是否处于所述被提起状态具体包括:
判断所述机器人的足端触地状态是否为异常状态,所述异常状态为所述机器人至少一个足端的实际触地状态与期望触地状态不符且持续预设时间;
若是,则确定所述机器人处于所述被提起状态;
若否,则确定所述机器人不处于所述被提起状态。
可选的,所述操作中基于所述机器人的腿部工作空间确定所述机器人是否处于所述被提起状态具体包括:
获取所述机器人足端当前所处地形的平面;
根据所述机器人的当前机身位姿和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的实际垂直距离,根据所述当前垂直距离获取机器人腿部的当前工作空间;
根据所述机器人的当前机身位姿、期望机身原点高度和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的期望垂直距离,根据所述期望垂直距离获取机器人腿部的期望工作空间;
判断所述当前工作空间与所述期望工作空间的差值是否大于预设阈值;
若是,则确定所述机器人处于所述被提起状态;
若否,则确定所述机器人不处于所述被提起状态。
可选的,所述被提起模式包括:
控制所述机器人的足端向第一目标位置移动,所述第一目标位置为所述机器人的腿部处于站立状态或收拢状态时的足端位置;
或,
控制所述机器人的腿部保持进入被提起状态时的腿部与机身的相对位置。
可选的,所述操作中控制所述机器人开启被提起模式具体包括:
确定所述机器人进入被提起状态时的姿态与期望姿态之间的差值;
若所述差值大于预设差值,则控制所述机器人的足端向第二目标位置移动,所述第二目标位置为所述机器人的腿部处于站立状态或收拢状态时的足端位置;
若所述差值小于或等于所述预设差值,则控制所述机器人的足端向第三目标位置移动,所述第三目标位置为使所述机器人的腿部处于站立状态的位置。
可选的,所述操作中确定所述机器人当前姿态与期望姿态之间的差值具体包括:
确定所述机器人机身的当前角度与期望角度之间的差值;
或,确定所述机器人机身的当前速度与期望速度之间的差值;
或,确定所述机器人机身的当前加速度与期望加速度之间的差值;
或,确定所述机器人足端的当前位姿与期望位姿之间的差值;
或,确定所述机器人足端的当前位置与期望位置之间的差值。
从以上技术方案可以看出,本申请具有以下优点:
通过检测机器人是否受到被提起力,进而判断机器人是否处于被提起状态,并在被提起状态下对其采取相应的控制行为,使得机器人运动过程中能够主动检测到被提起的情况,从而能够在被提起时采取合适的策略避免其自身的损伤及对外界人或物的伤害,保证机器人的运动稳定性。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的机器人的硬件结构示意图;
图2为本申请提供的机器人的机械结构示意图;
图3为本申请提供的机器人提起处理的方法一个实施例流程示意图;
图4为本申请提供的机器人提起处理的方法另一个实施例流程示意图;
图5为本申请提供的机器人提起处理的方法中机器人腿部工作空间示意图;
图6为本申请提供的机器人一个实施例结构示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示部件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
请参阅图1,图1为本发明其中一个实施方式的机器人100的硬件结构示意图。在图1所示的实施方式中,机器人100包括机械单元101、通讯单元102、传感单元103、接口单元104、存储单元105、控制模块110、电源111。机器人100的各种部件可以以任何方式连接,包括有线或无线连接等。本领域技术人员可以理解,图1中示出的机器人100的具体结构并不构成对机器人100的限定,机器人100可以包括比图示更多或更少的部件,某些部件也并不属于机器人100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略,或者组合某些部件。
下面结合图1对机器人100的各个部件进行具体的介绍:
机械单元101为机器人100的硬件。如图1所示,机械单元101可包括驱动板1011、电机1012、机械结构1013,如图2所示,机械结构1013可包括机身主体1014、可伸展的腿部1015、足部1016,在本申请中,机械结构1013还可包括可伸展的多关节机械结构(图未示)、可转动的头部结构1017、可摇动的尾巴结构1018、载物结构1019、鞍座结构1020、图像采集模块结构1021等。需要说明的是,机械单元101的各个部件模块可以为一个也可以为多个,可根据具体情况设置,比如腿部1015可为4个,每个腿部1015可配置3个电机1012,对应的电机1012为12个。
通讯单元102可用于信号的接收和发送,还可以通过与网络和其他设备通信,比如,接收遥控器或其他机器人100发送的按照特定步态以特定速度值向特定方向移动的指令信息后,传输给控制模块110处理。通讯单元102包括如WiFi模块、4G模块、5G模块、蓝牙模块、红外模块等。
传感单元103用于获取机器人100周围环境的信息数据以及监控机器人100内部各部件的参数数据,并发送给控制模块110。传感单元103包括多种传感器,如获取周围环境信息的传感器:激光雷达(用于远程目标物检测、距离确定和/或速度值确定)、毫米波雷达(用于短程目标物检测、距离确定和/或速度值确定)、图像采集模块、红外图像采集模块、全球导航卫星系统(GNSS,Global Navigation Satellite System)等。如监控机器人100内部各部件的传感器:惯性测量单元(IMU,Inertial Measurement Unit)(用于测量速度值、加速度值和角速度值的值),足底传感器(用于监测足底着力点位置、足底姿态、触地力大小和方向)、温度传感器(用于检测部件温度)。至于机器人100还可配置的载荷传感器、触摸传感器、电机角度传感器、扭矩传感器等其他传感器,在此不再赘述。
接口单元104可以用于接收来自外部装置的输入(例如,数据信息、电力等)并且将接收到的输入传输到机器人100内的一个或多个部件,或者可以用于向外部装置输出(例如,数据信息、电力等)。接口单元104可包括电源端口、数据端口(如USB端口)、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口等。
存储单元105用于存储软件程序以及各种数据。存储单元105可主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统程序、运动控制程序、应用程序(比如文本编辑器)等;数据存储区可存储机器人100在使用中所生成的数据(比如传感单元103获取的各种传感数据,日志文件数据)等。此外,存储单元105可以包括高速随机存取存储器,还可以包括非易失性存储器,例如磁盘存储器、闪存器、或其他易失性固态存储器。
显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1061。
输入单元107可用于接收输入的数字或字符信息。具体地,输入单元107可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户的触摸操作(比如用户使用手掌、手指或适合的附件在触控面板1071上或在触控面板1071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装置1073和触摸控制器1074两个部分。其中,触摸检测装置1073检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器1074;触摸控制器1074从触摸检测装置1073上接收触摸信息,并将它转换成触点坐标,再送给控制模块110,并能接收控制模块110发来的命令并加以执行。除了触控面板1071,输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于遥控操作手柄等中的一种或多种,具体此处不做限定。
进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测到在其上或附近的触摸操作后,传送给控制模块110以确定触摸事件的类型,随后控制模块110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件来分别实现输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现输入和输出功能,具体此处不做限定。
控制模块110是机器人100的控制中心,利用各种接口和线路连接整个机器人100的各个部件,通过运行或执行存储在存储单元105内的软件程序,以及调用存储在存储单元105内的数据,从而对机器人100进行整体控制。
电源111用于给各个部件供电,电源111可包括电池和电源控制板,电源控制板用于控制电池充电、放电、以及功耗管理等功能。在图1所示的实施方式中,电源111电连接控制模块110,在其它的实施方式中,电源111还可以分别与传感单元103(比如图像采集模块、雷达、音箱等)、电机1012电性连接。需要说明的是,各个部件可以各自连接到不同的电源111,或者由相同的电源111供电。
在上述实施方式的基础上,具体地,在一些实施方式中,可以通过终端设备来与机器人100进行通信连接,在终端设备与机器人100进行通信时,可以通过终端设备来向机器人100发送指令信息,机器人100可通过通讯单元102来接收指令信息,并可在接收到指令信息的情况下,将指令信息传输至控制模块110,使得控制模块110可根据指令信息来处理得到目标速度值。终端设备包括但不限于:具备图像拍摄功能的手机、平板电脑、服务器、个人计算机、可穿戴智能设备、其它电器设备。
指令信息可以根据预设条件来确定。在一个实施方式中,机器人100可以包括传感单元103,传感单元103可根据机器人100所在的当前环境可生成指令信息。控制模块110可根据指令信息来判断机器人100的当前速度值是否满足对应的预设条件。若满足,则会保持机器人100的当前速度值和当前步态移动;若不满足,则会根据对应的预设条件来确定目标速度值和相应的目标步态,从而可控制机器人100以目标速度值和相应的目标步态移动。环境传感器可以包括温度传感器、气压传感器、视觉传感器、声音传感器。指令信息可以包括温度信息、气压信息、图像信息、声音信息。环境传感器与控制模块110之间的通信方式可以为有线通信,也可以为无线通信。无线通信的方式包括但不限于:无线网络、移动通信网络(3G、4G、5G等)、蓝牙、红外。
以上对本申请提供的机器人的硬件结构和机械结构进行说明,下面对本申请提供的机器人提起处理的方法进行说明,本申请提供了一种机器人提起处理的方法,用于主动检测机器人运动过程中的被提起行为并采取相应策略避免损伤。请参阅图3,图3为本申请提供的机器人提起处理的方法的一个实施例,该方法包括:
301、检测机器人是否受到被提起力;
本申请中的机器人具体是指足式机器人,对于足式机器人来说,足端与地面的接触使得机器人能够保持平衡并按期望运动,但因外力造成的机器人的提起,将会导致机器人的足端离开地面,进而导致其在空中的运动不受控,从而造成自身硬件的损伤或产生对周围人或环境的伤害。在本实施例中,为了减少这类情况的发生,需要在机器人的运动过程中实时检测机器人当前是否受到被提起力,该被提起力可能来自人为的提起机器人,还可能来自地形的影响。需要说明的是,本申请中的被提起力具体是指在机器人运动过程中受到的主要分力与重力方向相反的已知外力或干扰外力。
在本实施例中,检测机器人是否受到被提起力的方式有多种,可以在机器人的机身等可提起部位上安装的力矩传感器,通过力矩传感器反馈的力矩大小来检测,还可以通过机器人的惯性测量单元IMU或关节电机的电流来实现检测,具体此处不做限定。首先根据机器人的力矩传感器、IMU或关节电机的电流等数据对机器人的实时质量进行估计,再基于机器人的实时质量计算机器人此时受到的地面支撑力,最后根据机器人实际受到的重力与该地面支撑力的差值确定被提起力。
302、若机器人受到被提起力,则根据被提起力判断机器人是否处于被提起状态;
当机器人受到的被提起力较小时,并不会对机器人的正常运动造成影响,此时无需进行干预,但是当机器人受到的被提起力较大时,其腿部会不可避免的伸长,直到离开地面,这种情况下就需要采取相应的控制行为,避免机器人在空中不受控的运动。在本实施例中,通过被提起状态来区分上述两种情况,具体可以根据被提起力的大小来判断机器人是否处于被提起状态,例如设置一个被提起力阈值,如果当前检测到的被提起力大于或等于该被提起力阈值,则判定机器人处于被提起状态,此时再执行步骤303;如果当前检测到的被提起力小于该被提起力阈值,则不认为机器人处于被提起状态,返回步骤301以继续检测。
303、若机器人处于被提起状态,则控制机器人开启被提起模式,直到机器人恢复至落地状态。
如果在步骤302中判定机器人处于被提起状态,则控制机器人开启被提起模式,在该被提起模式下将会以安全的方式控制机器人的足端运动到合适的位置,直到机器人脱离该被提起状态,即恢复至落地状态。
进一步的,在机器人恢复至落地状态以后,还需要判断是否满足预设的运动恢复条件,该运动恢复条件至少包括机器人的所有足端与地面的接触时间达到预设接触时间,当满足预设的运动恢复条件后才恢复机器人的正常运动,设置运动恢复条件的目的是使机器人在各足端重新建立地面的可靠接触后能够自主恢复运动。
在本实施例中,通过检测机器人是否受到被提起力,进而判断机器人是否处于被提起状态,并在被提起状态下对其采取相应的控制行为,使得机器人运动过程中能够主动检测到被提起的情况,从而能够在被提起时采取合适的策略避免其自身的损伤及对外界人或物的伤害,保证机器人的运动稳定性。
下面对本申请提供的机器人提起处理的方法进行详细说明,请参阅图4,图4为本申请提供的提起处理的方法另一个实施例,该方法包括:
401、检测机器人是否受到被提起力;
在本实施例中,步骤401与前述实施例步骤301类似,此处不再赘述。
402、若被提起力小于或等于第一阈值,则确定机器人不处于被提起状态;
当机器人受到的被提起力较小时,并不会对机器人的正常运动造成影响,此时无需进行干预,因此设定一个较小的第一阈值,当检测到的被提起力小于或等于该第一阈值时,确定机器人不处于被提起状态,返回步骤401以维持机器人当前的运动状态并继续检测机器人是否受到被提起力。
403、若被提起力大于第一阈值且小于第二阈值,则基于机器人的足端触地状态和/或机器人的腿部工作空间确定机器人是否处于被提起状态;
由于机器人行走在崎岖的路面或者踩到障碍物的时候,对于步态规划来说此时机器人的足端提前触地,但机器人会以为足端还没跟随到指定位置,会继续跟随,这时候机器人的机身会被顶起来,这会导致机器人的关节电流发生突变,而被提起力基于根据IMU数据或关节电流检测得到,此时机器人会误以为受到被提起力,但实际上并不会对机器人的正常运动造成影响,因此当被提起力大于第一阈值时,还不能简单判定机器人已经被提起,需要作进一步的分析。
在本实施例中,除了较小的第一阈值外,还设置有大于第一阈值的第二阈值,当被提起力大于第一阈值且小于第二阈值时,即当被提起力处于一个中间值时,需要结合机器人的足端触地状态和/或机器人腿部工作空间来判断机器人是否真的被提起,如果满足条件,则判定机器人处于被提起状态;如果不满足条件,则判定机器人不处于被提起状态,以排除掉上述误判的情况。
下面对机器人的足端触地状态以及机器人腿部工作空间的判断条件分别进行说明:
一、机器人的足端触地状态:
根据机器人的足端触地状态来判定机器人是否处于被提起状态具体是指基于机器人所规划的步态设计,根据期望的触地状态以及实际的触地状态之间的区别进行是否被提起的判断。具体的,机器人执行如下步骤A来进行机器人的足端触地状态检测:
A、判断机器人的足端触地状态是否为异常状态,异常状态为机器人至少一个足端的实际触地状态与期望触地状态不符且持续预设时间;若是,则确定机器人处于被提起状态;若否,则确定机器人不处于被提起状态。
机器人步态规划的内容包括了对机器人足端轨迹的规划,机器人在运动过程中会按照预先规划好的足端轨迹来控制足端运动,规划好的足端轨迹中包含各个控制周期内足端的期望触地状态。在机器人运动过程中,如果由触地检测算法或相应传感器检测所得的实际触地状态与期望触地状态不符,即检测到足端触地状态为异常状态,且保持一定时间时,则可判断为机器人由于被提起力导致腿长已接近其工作空间的极限值,导致其腿部基本打直,从而导致其足端离地,造成足端的期望接触状态与实际接触状态在较长时间内保持不匹配的现象发生,因此机器人的足端触地状态可作为机器人被提起的判断依据。需要说明的是,本申请中的足端具体可以是指足端底面的中心、足端的几何中心、足端的重心,或足端上的某个特定点,具体此处不做限定。
二、机器人的腿部工作空间;
请参阅图5,若机器人受到较大的被提起力,则机身会被相应提起,对应的机器人腿部与地面的实际距离与期望距离将产生差值,这个差值即可作为机器人是否被提起的判断依据之一。在本实施例中,可结合机器人的腿部工作空间来判定机器人是否处于被提起状态,具体的,机器人执行如下步骤B1-B4来进行机器人腿部工作空间的检测:
B1、获取机器人足端当前所处地形的平面;
首先需要获取机器人足端当前所处地形的平面,尤其是机器人在非水平面(主要是指斜坡)上运动时,需要结合实际情况确定机器人足端当前所处的地形平面,具体可根据里程计的落足点位置或融合视觉的平面估计方法,对机器人当前所处地形平面进行估计,可得到对应地形的平面拟合方程。
B2、根据机器人的当前机身位姿和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的实际垂直距离,根据当前垂直距离获取机器人腿部的当前工作空间;
关于确定机器人腿部的当前工作空间,需要通过机器人的IMU获取到机器人当前机身位姿(实际只需要获取机身的xy位置和机身的倾斜角度),根据当前机身位姿确定当前腿部关节的位置。结合上述步骤B1中所确定的足端当前所处地形的平面,可计算得到机器人当前腿部关节(具体指机器人腿部与机身连接处的关节)到当前所处地形平面的实际垂直距离,将这个距离确定为机器人腿部的当前工作空间。
B3、根据机器人的当前机身位姿、期望机身原点高度和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的期望垂直距离,根据期望垂直距离获取机器人腿部的期望工作空间;
关于确定机器人腿部的期望工作空间,需要通过机器人的IMU获取到机器人当前机身位姿(实际只需要获取机身的xy位置和机身的倾斜角度),再获取当前控制周期内的期望机身原点高度,结合上述步骤B1中所确定的足端当前所处地形的平面,计算得到机器人当前腿部关节到当前所处地形平面的期望垂直距离,将这个距离确定为机器人腿部的期望工作空间。
B4、判断当前工作空间与期望工作空间的差值是否大于预设阈值;若是,则确定机器人处于被提起状态;若否,则确定机器人不处于被提起状态。
由于机器人被提起时,机身高度会发生变化,其腿部的当前工作空间相对于期望工作空间会增大,因此在得到机器人腿部的当前工作空间和期望工作空间后,则判断当前工作空间与期望工作空间的差值是否大于预设阈值,若是,则认为此时机器人可能受到外力作用导致其机身高度或姿态发生较大变化,进而可确定机器人处于被提起状态。需要说明的是,上述步骤B2、B3中需要分别确定机器人各个腿部的当前工作空间和期望工作空间,在步骤B4进行判断时,只要有任一条腿部的当前工作空间与期望工作空间的差值大于预设阈值,则确定机器人处于被提起状态。
进一步的,出于安全考虑,对于机器人腿部的当前工作空间还可以设置一个上限值,该上限值对应机器人腿部完全伸直时的工况,如果机器人腿部的当前工作空间大于或等于该上限值,则直接可确定机器人处于被提起状态。
需要说明的是,在实际应用中,可以仅使用上述足端触地状态和机器人腿部工作空间的判断条件中的任意一个作为被提起力大于第一阈值且小于第二阈值时的补充判断,但优选同时进行足端触地状态和机器人腿部工作空间的判断,当两个条件都满足时才确定机器人处于被提起状态,两个条件中有任一条件不满足则返回步骤401以维持机器人当前的运动状态并继续检测机器人是否受到被提起力。
除上述机器人的足端触地状态以及机器人腿部工作空间的判断条件之外,还可以添加其它的判断条件,例如使用机身的实际位置/速度/加速度与对应期望值的误差来进行判断。在一些具体的实施例中,机器人运动时机身Z向具有期望位置/速度/加速度,在平稳运行时,机身世界坐标系下的Z向加速度在0附近震荡,若其受到被提起力,则实际的Z向加速度与其期望值会产生误差,由此可作为机器人是否被提起的判断条件之一。
404、若被提起力大于或等于第二阈值,则确定机器人处于被提起状态;
如果被提起力大于或等于所设定的第二阈值,即被提起力较大时,可直接确定机器人处于被提起状态,并执行步骤405以进入被提起模式。
需要说明的是,本实施例中的第一阈值和第二阈值的大小需要根据不同机器人的机身特性、工作场景等条件作具体设定,具体的数值大小此处不做限定。
405、若机器人处于被提起状态,则控制机器人开启被提起模式,直到机器人恢复至落地状态。
在一些具体的实施例中,控制机器人开启被提起模式后,可以控制机器人的足端向第一目标位置移动,该第一目标位置为机器人的腿部处于站立状态或收拢状态时的足端位置,保证机器人被提起后腿部能够复位到站立、收拢等标准姿态下。
在另一些具体的实施例中,控制机器人开启被提起模式后,可以控制机器人的腿部保持进入被提起状态时的腿部与机身的相对位置,有利于机器人落地后快速恢复运动状态。
在另一些具体的实施例中,控制机器人开启被提起模式后,还可以根据机器人进入被提起模式时的姿态好坏来选择不同的控制策略,下面进行具体说明:
C1、确定机器人进入被提起状态时的姿态与期望姿态之间的差值;
首先确定机器人进入被提起状态时的姿态与期望姿态之间的差值,该差值具体可以是:机身的当前角度与期望角度之间的差值、机身的当前速度(包括线速度和角速度)与期望速度之间的差值、机器人足端的当前位姿与期望位姿之间的差值、机器人足端位置与期望位置之间的差值等,具体此处不做限定。
C2、若差值大于预设差值,则控制机器人的足端向第二目标位置移动,第二目标位置为机器人的腿部处于站立状态或收拢状态时的足端位置;
如果上述任一差值大于预设差值,则可认为机器人进入被提起模式时的姿态较差,例如机器人正在跑动时被提起,此时需要将足端按照规划的轨迹移动至第二目标位置,第二目标位置为使机器人的腿部处于站立状态或收拢状态时的足端位置,将机器人调整到正常位姿,以保证硬件、环境的安全性。
可选的,在机器人姿态较差时,还可以选择对机器人进行关节高阻尼控制,进一步保证机器人硬件的安全性。
C3、若差值小于或等于预设差值,则控制机器人的足端向第三目标位置移动,第三目标位置为使机器人的腿部处于站立状态的位置。
如果上述任一差值小于或等于该预设差值,则可认为机器人进入被提起模式时的姿态较好,例如机器人正在走路时被提起,此时将足端按照规划的轨迹柔顺的移动至第三目标位置,该第三目标位置为使机器人的腿部处于站立状态的位置,以此保证机身的平稳性与交互的安全性。例如机器人在过马路的场景,如果机器人走的太慢,用户可以将机器人提起,并在短时间内通过马路后再放下,这种情况下不需要让机器人把腿收拢,直接控制机器人保持站立状态,以使得通过马路后机器人可快速落地并恢复正常行走。
需要说明的是,上述三种控制方式可以共存,由机器人根据被提起时机身加速度计、关节电机电流、力传感器或其他测距传感器等反馈的数据,判断当前应该选择哪一种控制方式。
在本实施例中,通过检测机器人是否受到被提起力,并根据被提起力的大小判断机器人是否处于被提起状态,并且在被提起力处于一个中间值时,结合机器人的足端触地状态以及腿部工作空间来判断机器人是否处于被提起状态。进一步的,本实施例中还机器人处于在被提起状态时提供了至少三种控制策略,使得机器人运动过程中能够主动检测到被提起的情况,在被提起时采取合适的策略避免其自身的损伤及对外界人或物的伤害,保证机器人的运动稳定性。
请参阅图6,图6为本申请提供的机器人,该机器人包括:机身和至少两条腿;
机器人还包括与至少两条腿通信的控制系统,控制系统包括数据处理器601和与数据处理器通信的存储器602,存储器602存储指令,当在数据处理器601上执行时,指令使得数据处理器601执行操作,包括:
检测机器人是否受到被提起力;
若机器人受到被提起力,则根据被提起力判断机器人是否处于被提起状态;
若机器人处于被提起状态,则控制机器人开启被提起模式,直到机器人恢复至落地状态。
可选的,操作中根据被提起力判断机器人是否处于被提起状态具体包括:
若被提起力小于或等于第一阈值,则确定机器人不处于被提起状态;
若被提起力大于第一阈值且小于第二阈值,则基于机器人的足端触地状态和/或机器人的腿部工作空间确定机器人是否处于被提起状态;
若被提起力大于或等于第二阈值,则确定机器人处于被提起状态。
可选的,操作中基于机器人的足端触地状态确定机器人是否处于被提起状态具体包括:
判断机器人的足端触地状态是否为异常状态,异常状态为机器人至少一个足端的实际触地状态与期望触地状态不符且持续预设时间;
若是,则确定机器人处于被提起状态;
若否,则确定机器人不处于被提起状态。
可选的,操作中基于机器人的腿部工作空间确定机器人是否处于被提起状态具体包括:
获取机器人足端当前所处地形的平面;
根据机器人的当前机身位姿和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的实际垂直距离,根据当前垂直距离获取机器人腿部的当前工作空间;
根据机器人的当前机身位姿、期望机身原点高度和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的期望垂直距离,根据期望垂直距离获取机器人腿部的期望工作空间;
判断当前工作空间与期望工作空间的差值是否大于预设阈值;
若是,则确定机器人处于被提起状态;
若否,则确定机器人不处于被提起状态。
可选的,被提起模式包括:
控制机器人的足端向第一目标位置移动,第一目标位置为机器人的腿部处于站立状态或收拢状态时的足端位置;
或,
控制机器人的腿部保持进入被提起状态时的腿部与机身的相对位置。
可选的,操作中控制机器人开启被提起模式具体包括:
确定机器人进入被提起状态时的姿态与期望姿态之间的差值;
若差值大于预设差值,则控制机器人的足端向第二目标位置移动,第二目标位置为机器人的腿部处于站立状态或收拢状态时的足端位置;
若差值小于或等于预设差值,则控制机器人的足端向第三目标位置移动,第三目标位置为使机器人的腿部处于站立状态的位置。
可选的,操作中确定机器人当前姿态与期望姿态之间的差值具体包括:
确定机器人机身的当前角度与期望角度之间的差值;
或,确定机器人机身的当前速度与期望速度之间的差值;
或,确定机器人机身的当前加速度与期望加速度之间的差值;
或,确定机器人足端的当前位姿与期望位姿之间的差值;
或,确定机器人足端的当前位置与期望位置之间的差值。
本实施例提供的机器人中,数据处理器所执行的具体操作与前述图3、图4所示方法实施例中的步骤对应,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的机器人的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种机器人提起处理的方法,其特征在于,所述方法包括:
检测所述机器人是否受到被提起力;
若所述机器人受到所述被提起力,则根据所述被提起力判断所述机器人是否处于被提起状态;
若所述机器人处于被提起状态,则控制所述机器人开启被提起模式,直到所述机器人恢复至落地状态。
2.根据权利要求1所述的方法,其特征在于,所述根据所述被提起力判断机器人是否处于被提起状态,包括:
若所述被提起力小于或等于第一阈值,则确定所述机器人不处于被提起状态;
若所述被提起力大于所述第一阈值且小于第二阈值,则基于所述机器人的足端触地状态和/或所述机器人的腿部工作空间确定所述机器人是否处于所述被提起状态;
若所述被提起力大于或等于所述第二阈值,则确定所述机器人处于所述被提起状态。
3.根据权利要求2所述的方法,其特征在于,所述基于所述机器人的足端触地状态确定所述机器人是否处于所述被提起状态,包括:
判断所述机器人的足端触地状态是否为异常状态,所述异常状态为所述机器人至少一个足端的实际触地状态与期望触地状态不符且持续预设时间;
若是,则确定所述机器人处于所述被提起状态;
若否,则确定所述机器人不处于所述被提起状态。
4.一种机器人,其特征在于,包括:机身和至少两条腿;
所述至少两条腿与所述机身相连接,所述至少两条腿包括摆动腿;
所述机器人还包括与所述至少两条腿通信的控制系统,所述控制系统包括数据处理器和与所述数据处理器通信的存储器,所述存储器存储指令,当在所述数据处理器上执行时,所述指令使得所述数据处理器执行操作,包括:
检测所述机器人是否受到被提起力;
若所述机器人受到被提起力,则根据所述被提起力判断所述机器人是否处于被提起状态;
若所述机器人处于被提起状态,则控制所述机器人开启被提起模式,直到所述机器人恢复至落地状态。
5.根据权利要求4所述的机器人,其特征在于,所述操作中根据所述被提起力判断所述机器人是否处于被提起状态具体包括:
若所述被提起力小于或等于第一阈值,则确定所述机器人不处于被提起状态;
若所述被提起力大于所述第一阈值且小于第二阈值,则基于所述机器人的足端触地状态和/或所述机器人的腿部工作空间确定所述机器人是否处于所述被提起状态;
若所述被提起力大于或等于所述第二阈值,则确定所述机器人处于所述被提起状态。
6.根据权利要求5所述的机器人,其特征在于,所述操作中基于所述机器人的足端触地状态确定所述机器人是否处于所述被提起状态具体包括:
判断所述机器人的足端触地状态是否为异常状态,所述异常状态为所述机器人至少一个足端的实际触地状态与期望触地状态不符且持续预设时间;
若是,则确定所述机器人处于所述被提起状态;
若否,则确定所述机器人不处于所述被提起状态。
7.根据权利要求5所述的机器人,其特征在于,所述操作中基于所述机器人的腿部工作空间确定所述机器人是否处于所述被提起状态具体包括:
获取所述机器人足端当前所处地形的平面;
根据所述机器人的当前机身位姿和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的实际垂直距离,根据所述当前垂直距离获取机器人腿部的当前工作空间;
根据所述机器人的当前机身位姿、期望机身原点高度和机器人足端当前所处地形的平面,获取当前机器人腿部关节到当前所处地形的平面的期望垂直距离,根据所述期望垂直距离获取机器人腿部的期望工作空间;
判断所述当前工作空间与所述期望工作空间的差值是否大于预设阈值;
若是,则确定所述机器人处于所述被提起状态;
若否,则确定所述机器人不处于所述被提起状态。
8.根据权利要求4至7中任一项所述的机器人,其特征在于,所述被提起模式包括:
控制所述机器人的足端向第一目标位置移动,所述第一目标位置为所述机器人的腿部处于站立状态或收拢状态时的足端位置;
或,
控制所述机器人的腿部保持进入被提起状态时的腿部与机身的相对位置。
9.根据权利要求4至7中任一项所述的机器人,其特征在于,所述操作中控制所述机器人开启被提起模式具体包括:
确定所述机器人进入被提起状态时的姿态与期望姿态之间的差值;
若所述差值大于预设差值,则控制所述机器人的足端向第二目标位置移动,所述第二目标位置为所述机器人的腿部处于站立状态或收拢状态时的足端位置;
若所述差值小于或等于所述预设差值,则控制所述机器人的足端向第三目标位置移动,所述第三目标位置为使所述机器人的腿部处于站立状态的位置。
10.根据权利要求9所述的机器人,其特征在于,所述操作中确定所述机器人当前姿态与期望姿态之间的差值具体包括:
确定所述机器人机身的当前角度与期望角度之间的差值;
或,确定所述机器人机身的当前速度与期望速度之间的差值;
或,确定所述机器人机身的当前加速度与期望加速度之间的差值;
或,确定所述机器人足端的当前位姿与期望位姿之间的差值;
或,确定所述机器人足端的当前位置与期望位置之间的差值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310212317.0A CN116276991A (zh) | 2023-02-27 | 2023-02-27 | 一种机器人提起处理的方法及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310212317.0A CN116276991A (zh) | 2023-02-27 | 2023-02-27 | 一种机器人提起处理的方法及机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116276991A true CN116276991A (zh) | 2023-06-23 |
Family
ID=86825164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310212317.0A Pending CN116276991A (zh) | 2023-02-27 | 2023-02-27 | 一种机器人提起处理的方法及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116276991A (zh) |
-
2023
- 2023-02-27 CN CN202310212317.0A patent/CN116276991A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11726481B2 (en) | Auto-swing height adjustment | |
US10668624B2 (en) | Handling gait disturbances with asynchronous timing | |
US10300969B1 (en) | Slip detection for robotic locomotion | |
US20230347524A1 (en) | Generalized coordinate surrogates for integrated estimation and control | |
US11851120B2 (en) | Control of robotic devices with non-constant body pitch | |
JP6483730B2 (ja) | 自然なピッチとロールを得る方法、ロボットおよびコンピュータ可読媒体 | |
US9387896B1 (en) | Slip avoidance | |
CN115344040A (zh) | 一种足式机器人足端轨迹规划的方法、装置及足式机器人 | |
CN114510041A (zh) | 一种机器人运动路径规划方法及机器人 | |
CN114253281A (zh) | 一种四足机器人运动控制方法、相关装置及存储介质 | |
CN116276991A (zh) | 一种机器人提起处理的方法及机器人 | |
CN116358522A (zh) | 局部地图生成方法和装置、机器人、计算机可读存储介质 | |
CN114137992A (zh) | 一种降低足式机器人抖动的方法及相关装置 | |
CN114633826B (zh) | 一种足式机器人腿部磕碰处理的方法及足式机器人 | |
CN115446844B (zh) | 机器人的控制方法、机器人及控制终端 | |
WO2020107279A1 (zh) | 双足机器人及其移动方法、装置和存储介质 | |
CN115922731B (zh) | 一种机器人的控制方法以及机器人 | |
CN115709471B (zh) | 机器人状态值调整方法及机器人 | |
CN115981346B (zh) | 机器人控制方法以及机器人 | |
CN117944783A (zh) | 机器人的步态控制方法、机器人及控制终端 | |
CN117021106A (zh) | 机器人的步态控制方法和机器人 | |
CN114610017A (zh) | 一种足式机器人避免自碰撞的方法、相关装置及存储介质 | |
CN114137954A (zh) | 一种四足机器人质心轨迹规划方法、装置及存储介质 | |
CN116880534A (zh) | 足式机器人控制方法以及机器人 | |
CN115981346A (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 |