CN116893686A - 足式机器人控制方法以及机器人 - Google Patents

足式机器人控制方法以及机器人 Download PDF

Info

Publication number
CN116893686A
CN116893686A CN202311050653.6A CN202311050653A CN116893686A CN 116893686 A CN116893686 A CN 116893686A CN 202311050653 A CN202311050653 A CN 202311050653A CN 116893686 A CN116893686 A CN 116893686A
Authority
CN
China
Prior art keywords
friction coefficient
leg
control period
coefficient
foot end
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311050653.6A
Other languages
English (en)
Inventor
赵丹
达兴烨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Pengxing Intelligent Research Co Ltd
Original Assignee
Shenzhen Pengxing Intelligent Research 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 Shenzhen Pengxing Intelligent Research Co Ltd filed Critical Shenzhen Pengxing Intelligent Research Co Ltd
Priority to CN202311050653.6A priority Critical patent/CN116893686A/zh
Publication of CN116893686A publication Critical patent/CN116893686A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

本申请公开了一种足式机器人控制方法以及机器人。通过若检测到至少一条腿的足端在当前控制周期处于打滑状态,则在第一时间区间内将至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;在第二时间区间内,将至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;第一时间区间的时长小于第二时间区间的时长;第一摩擦系数大于第二摩擦系数。通过在检测到足式机器人的至少一条腿足端的打滑事件时,在较短的第一时间区间内快速降低摩擦系数,并且在检测到至少一条腿的停止打滑事件后,在较长的第二时间区间内使摩擦系数缓慢回升,由此基于摩擦系数在不同情况下的不同改变状态,能够使机器人的控制和运动更加稳定。

Description

足式机器人控制方法以及机器人
技术领域
本申请涉及机器人控制领域,更具体地,涉及一种足式机器人控制方法以及机器人。
背景技术
足式机器人相对于传统的轮式机器人,能够很好的穿越复杂地形环境,如路缘石、楼梯和障碍物等,具有更强的适应能力。通常情况下足式机器人是通过确定支持腿的足端与地面之间的摩擦系数的大小,来确定支撑腿对应的用于保持机器人稳定的足端支撑力的大小。但由于实际地面情况复杂多变,支撑腿的足端与地面之间的摩擦系数可能随时发生变化,例如在支撑腿踩到香蕉皮出现打滑的时候,此时足端与地面之间的摩擦系数快速减小,但机器人往往无法快速检测到实际摩擦系数的变化,也就无法做出相应的调整控制,导致机器人存在侧翻的风险。
发明内容
鉴于上述问题,本申请提出了一种足式机器人控制方法以及机器人,以使机器人足端的摩擦系数响应于打滑状态而快速降低,并在降低后缓慢回升,进而使机器人的运动控制更适应实际环境。
第一方面,本申请实施例提供了一种足式机器人控制方法,所述足式机器人包括至少两条腿,所述方法包括:若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;若检测到所述至少一条腿的足端的停止打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一摩擦系数大于所述第二摩擦系数;在每个控制周期或者每间隔一定数量的控制周期,所述第二摩擦系数将根据所述至少一条腿的足端的打滑的情况进行适应性调整。
第二方面,本申请实施例提供了一种机器人,包括机身和至少两条腿,所述至少两条腿和所述机身相连接;与所述机身通信的控制系统,所述控制系统包括处理器和与所述处理器通信的存储器,所述存储器存储指令,所述指令在所述处理器上被运行时使所述处理器执行操作,所述操作包括:若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;若检测到所述至少一条腿的足端的停止打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一摩擦系数大于所述第二摩擦系数;在每个控制周期或者每间隔一定数量的控制周期,所述第二摩擦系数将根据所述至少一条腿的足端的打滑的情况进行适应性调整。
本申请提供的方案,通过若检测到至少一条腿的足端在当前控制周期处于打滑状态,将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;在第二时间区间内,将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一摩擦系数大于所述第二摩擦系数。通过在检测到足式机器人的至少一条腿足端的打滑事件时,在较短的第一时间区间内快速降低摩擦系数,并且在检测到至少一条腿的停止打滑事件后,在较长的第二时间区间内使摩擦系数缓慢回升,由此基于摩擦系数在不同情况下的不同改变状态,能够使机器人的控制和运动更加稳定。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提供的机器人的硬件结构示意图。
图2示出了本申请实施例提供的机器人的机械结构示意图。
图3示出了本申请一个实施例提供的足式机器人控制方法的流程示意图。
图4示出了本申请另一个实施例提供的足式机器人控制方法的流程示意图。
图5示出了本申请又一个实施例提供的足式机器人控制方法的流程示意图。
图6示出了本申请又一个实施例中步骤S310的具体流程示意图。
图7示出了本申请又一个实施例中步骤S311的具体流程示意图。
图8示出了本申请再一个实施例提供的足式机器人控制方法的流程示意图。
图9示出了本申请实施例提供的一种机器人的结构框图。
图10示出了本申请实施例提供的计算机可读取存储介质的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
发明人提出了本申请实施例提供的足式机器人控制方法以及机器人,通过在检测到足式机器人的至少一条腿足端的打滑事件时,在较短的第一时间区间内快速降低摩擦系数,并且在检测到至少一条腿的停止打滑事件后,在较长的第二时间区间内使摩擦系数缓慢回升,由此基于摩擦系数在不同情况下的不同改变状态,能够使机器人的控制和运动更加稳定。
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示部件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
请参阅图1,图1为本申请其中一个实施例提供的机器人100的硬件结构示意图。机器人100可以是多种形态机器人中的任何一种,具体包括但不限于轮式机器人、足式机器人、履带式机器人、爬行机器人、蠕动式机器人或者游动式机器人等中的至少一种,例如机器人100具体可以是足式机器人,也可以是足式与轮式相结合的机器人。其中,足式机器人包括单足机器人、双足机器人或者多足机器人。多足机器人是指具有三个足或者三个以上的足式机器人,例如多足机器人具体可以是四足机器人。机器人是指一种能够半自主或全自主执行工作的机器,机器人并不限定于人形的机器装置,还可以包括例如狗、马、蛇、鱼、猿或猴等构型的机器人,例如机器人具体可以是一种四足的机器马。在图1所示的实施方式中,机器人100包括机械单元101、通讯单元102、传感单元103、接口单元104、存储单元105、显示单元106、输入单元107、控制模块110、电源111。机器人100的各种部件可以以任何方式连接,包括有线或无线连接等。本领域技术人员可以理解,图1中示出的机器人100的具体结构并不构成对机器人100的限定,机器人100可以包括比图示更多或更少的部件,某些部件也并不属于机器人100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略,或者组合某些部件。
图2是根据本申请一个实施例提供的机器人的机械结构示意图。下面结合图1和图2对机器人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示出了本申请一个实施例提供的足式机器人控制方法的流程示意图,所述足式机器人包括至少两条腿,下面将针对图3所示流程进行详细阐述,所述足式机器人控制方法具体可以包括以下步骤:
步骤S110:若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数。
在本申请实施例中,足式机器人的至少一条腿存在摆动相与支撑相两种状态,并且至少一条腿可以通过在摆动相与支撑相之间进行相互转换,以实现机器人机身的移动。其中,在至少一条腿处于支撑相的情况下,机器人可以实时检测至少一条腿的足端是否存在打滑事件,用以在至少一条腿发生打滑事件时能够及时获取足端状态的变化,进而及时调整至少一条腿足端与地面之间的摩擦系数,以便于后续机器人可以基于实时更新的摩擦系数调整至少一条腿对应的足底力,以使机身能够适应足端与地面之间的摩擦系数的变化,避免打滑事件持续发生。其中,至少一条腿的足端发生打滑事件,表明此时至少一条腿的足端发生打滑并且足端的打滑速度不断增加,也就是打滑状态在持续恶化的过程中。此时机器人需要及时快速地将足端对应的摩擦系数降低,以使其更符合足端与地面之间的摩擦系数的实际变化情况。
具体来说,若机器人在当前控制周期检测到至少一条腿的足端发生打滑事件,那么机器人可以将至少一条腿的足端对应的摩擦系数降低,将摩擦系数从第一摩擦系数调整至第二摩擦系数。其中,若在所述当前控制周期检测到所述至少一条腿的足端的打滑事件,则从当前控制周期或当前控制周期之后的控制周期开始计时,在第一时间区间内将所述至少一条腿的足端所对应的摩擦系数从所述第一摩擦系数调整到所述第二摩擦系数。在一些实施方式中,机器人可以在2-3个控制周期内将第一摩擦系数降低为第二摩擦系数。由此可以使至少一条腿足端的摩擦系数在较短的第一时间区间内快速降低,由此摩擦系数能够快速地响应于足端与地面之间的实际摩擦系数的变化,从而机器人后续基于更符合实际情况的摩擦系数,就能够对至少一条腿上的受力情况进行调整,使其更适应于实际地面的打滑情况。
其中,足式机器人包括至少两条腿,足式机器人对于这两条腿的控制和检测都是相互独立、互不影响的。
可以理解的,足式机器人包括至少两条腿,并通过至少两条腿之间的交互摆动,使机器人的机身按照预定轨迹运动。其中,足式机器人的至少两条腿可以包括处于支撑相的至少一条腿以及处于摆动相的至少一条腿,例如,若足式机器人包括两条腿,那么其中必然存在至少一条腿处于支撑相,若机器人处于运动状态,那么必然还存在一条腿处于摆动相,若足式机器人包括四条腿且处于运动状态,以Trot(小跑)步态为例,Trot步态的特征是对角的两条腿运动一致,同时抬起并同时着地,两条腿为支撑相,另外两条腿为摆动相。其中,处于支撑相的至少一条腿用于支撑机器人机身的重量,保持机身的稳定,处于摆动相的至少一条腿用于按照预定轨迹运动,以改变机器人机身的位置,实现机身的移动。在摆动腿触地后,机器人会通过改变摆动腿上受力情况,将其转换为支撑相,以在下一阶段支撑机身重量,机器人还会改变原本支撑腿上的受力情况,将其转换为摆动相,以在下一阶段中通过摆动改变机身位置。由此机器人可以通过支撑腿与摆动腿之间的交互摆动,使机器人按照预定轨迹移动。
步骤S120:若检测到所述至少一条腿的足端的停止打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数,所述第一摩擦系数大于所述第二摩擦系数,在每个控制周期或者每间隔一定数量的控制周期,所述第二摩擦系数将根据所述至少一条腿的足端的打滑的情况进行适应性调整。
在本申请实施例中,若足式机器人在当前控制周期检测到至少一条腿的足端发生停止打滑事件,则可以将至少一条腿足端对应摩擦系数回升至第一摩擦系数。其中,至少一条腿的足端发生停止打滑事件,可以是至少一条腿的足端的打滑速度较小或者打滑速度为零。此时机器人可以认为已经抑制了足端继续打滑的趋势,那么这种情况下,机器人可以将至少一条腿的足端对应的摩擦系数从第二摩擦系数调整回升至第一摩擦系数,以使摩擦系数与足端与地面之间的实际摩擦系数更加接近,避免由于较小的摩擦系数对机器人足端的控制产生影响。
具体来说,若检测到所述至少一条腿的足端的停止打滑事件,则从检测到所述至少一条腿的足端的停止打滑事件的控制周期或者之后的控制周期开始计时,在第二时间区间内,将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一时间区间的时长小于所述第二时间区间的时长,所述第一时间区间和所述第二时间区间均包括各自相应的起始时间点和结束时间点,且所述第二时间区间的起始时间点在所述第一时间区间结束时间点之后。
在一些实施方式中,机器人在通过上述步骤,在足端发生打滑事件快速降低摩擦系数之后,即使当前控制周期已经确认了足端的停止打滑事件,但为了避免在后续运动控制的过程中,足端再次打滑却无法及时响应进而影响机身的运动和平衡,机器人可以将足端的摩擦系数的回升周期延长。例如,机器人可以在500个控制周期(约1-2秒)内,均匀地将至少一条腿的足端对应的摩擦系数,从第二摩擦系数回升调整至第一摩擦系数。由此,在这个摩擦系数缓慢调整回升的过程中,如果至少一条腿的足端再次发生打滑事件,机器人就可以快速的从当前的摩擦系数,再次将其降低至第二摩擦系数,由此机器人对于打滑事件的反应可以更加迅速。
本申请实施例提供的足式机器人控制方法,通过若检测到至少一条腿的足端在当前控制周期处于打滑状态,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;在第二时间区间内,将至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;第一时间区间的时长小于第二时间区间的时长,第一时间区间和第二时间区间均包括各自相应的起始时间点和结束时间点,且第二时间区间的起始时间点在第一时间区间结束时间点之后;第一摩擦系数大于第二摩擦系数。通过在检测到足式机器人的至少一条腿足端的打滑事件时,在较短的第一时间区间内快速降低摩擦系数,并且在检测到至少一条腿的停止打滑事件后,在较长的第二时间区间内使摩擦系数缓慢回升,由此基于摩擦系数在不同情况下的不同改变状态,能够使机器人的控制和运动更加稳定。
请参阅图4,图4示出了本申请另一个实施例提供的足式机器人控制方法的流程示意图,所述足式机器人包括至少两条腿,下面将针对图4所示流程进行详细阐述,所述足式机器人控制方法具体可以包括以下步骤:
步骤S210:若检测到至少一条腿的足端在当前控制周期处于打滑状态,则确定所述至少一条腿在所述打滑状态中所处的运动状态,所述运动状态包括第一状态以及第二状态。
在本申请实施例中,若机器人在当前控制周期检测到至少一条腿的足端在当前控制周期处于打滑状态,那么此时机器人可以进一步判断至少一条腿在打滑状态中的运动状态,也就是判断至少一条腿的足端的打滑趋势是在继续扩大,或者已经得到了足够的抑制。一方面,若至少一条腿的足端还在持续打滑,并且滑动速度逐渐增大,那么机器人可以确定此时至少一条腿处于打滑状态中的第一状态,即打滑趋势还在不断恶化的状态,也就是至少一条腿的足端发生打滑事件。显然,此时机器人需要对足端施加补偿力,以降低足端的打滑速度,可以通过快速降低足端与地面之间的摩擦系数,进而可以基于较小的摩擦系数调整当前控制周期至少一条腿的足端对应的足底力。另一方面,若至少一条腿的足端的打滑趋势已经得到抑制,即此时足端的滑动速度已经较小甚至为零,那么机器人可以确定此时至少一条腿处于打滑状态中的第二状态,也就是至少一条腿的足端发生停止打滑事件。值得注意的是,虽然此时至少一条腿可能还在缓慢滑动,但机器人已经可以逐渐将至少一条腿的足端对应的摩擦系数进行回升。
可以理解的,至少一条腿的足端所处的打滑状态,包括打滑状况持续恶化的第一状态,以及打滑状况得到抑制的第二状态,其中,在打滑状况得到抑制的第二状态中,也包括了足端处于静止的状态。也就是说,若检测到至少一条腿的足端处于打滑状态,但并不能确保此时至少一条腿的足端是在移动的过程中的,在一些情况下,至少一条腿的足端也可能处于静止状态。其中,如果至少一条腿的足端处于打滑状态,但足端却是静止的,这可能是因为此时机器人已经对至少一条腿施加了防打滑的补偿力,至少一条腿的足端在补偿力的作用下可以停止滑动,但是此时补偿力仍然必须持续的作用于至少一条腿,如果此时机器人将补偿力撤消,那么至少一条腿的足端会再次回到第一状态,也就是足端会再次滑动。
但应当理解的是,第一状态和第二状态可以表征至少一条腿的足端的打滑趋势是否得到的抑制,若打滑趋势尚未得到抑制,则至少一条腿处于第一状态,若得到了抑制,则处于第二状态。机器人在确定至少一条腿处于打滑状态的情况下,可以进一步基于至少一条腿处于第一状态或者第二状态,确定对于至少一条腿的足端对应的摩擦系数的调整方向,即是降低足端对应的摩擦系数,或者增加足端对应的摩擦系数。
步骤S220:基于所述运动状态,确定所述至少一条腿在所述当前控制周期对应的当前摩擦系数,所述当前摩擦系数小于或等于所述第一摩擦系数,所述当前摩擦系数大于或等于所述第二摩擦系数。
在本申请实施例中,机器人可以通过至少一条腿的运动状态处于第一状态还是第二状态,也就是通过确定至少一条腿的足端的打滑趋势是否已经得到有效抑制,来确定对至少一条腿的足端对应的摩擦系数的调整方向,即是降低摩擦系数或者增加摩擦系数。具体来说,若至少一条腿在当前控制周期内处于第一状态,表明此时机器人还未将至少一条腿的滑动状态抑制下来,因此,机器人还需要通过继续降低至少一条腿足端对应的当前摩擦系数,以便于机器人在当前控制周期可以基于更小的当前摩擦系数,增加至少一条腿在当前控制周期对应的足底力,进而通过更大的足底力进一步抑制至少一条腿的滑动状态。另一种情况,若至少一条腿在当前控制周期内处于第二状态,表明机器人已经在之前的控制周期内,通过增加足底力使至少一条腿足端的打滑趋势得到了有效地抑制,此时机器人可以控制至少一条腿在当前控制周期对应的当前摩擦系数进行缓慢地回升,也就是增加至少一条腿足端对应的当前摩擦系数,以避免过小的摩擦系数对机器人后续的运动控制产生影响。
也就是说,机器人在确定至少一条腿的足端在当前控制周期处于打滑状态后,还可以进一步基于至少一条腿在打滑状态中的第一状态和第二状态,确认是降低至少一条腿在当前控制周期对应的当前摩擦系数,还是增加当前摩擦系数。由此,当前摩擦系数与至少一条腿在前一控制周期对应的参考摩擦系数之间的第一差值与运动状态对应。具体来说,第一差值的正负与运动状态对应,若运动状态为第一状态,则第一差值为负,即若至少一条腿在当前控制周期处于第一状态,那么至少一条腿在当前控制周期对应的当前摩擦系数会小于前一控制周期对应的参考摩擦系数;若运动状态为第二状态,则第一差值为正,即至少一条腿在当前控制周期对应的当前摩擦系数会大于前一控制周期对应的参考摩擦系数。
步骤S230:基于所述当前控制周期对应的当前摩擦系数,确定所述至少一条腿在所述当前控制周期对应的第一足底力,以减少所述至少一条腿的足底力在打滑方向上的分力,使所述至少一条腿的足端打滑速度降低,或者停止打滑。
在本申请实施例中,机器人在确定至少一条腿在当前控制周期处于打滑状态后,可以基于至少一条腿的足端在当前控制周期对应的当前摩擦系数,确定至少一条腿在当前控制周期对应的第一足底力,以通过与当前摩擦系数相关的第一足底力减少至少一条腿的足底力在打滑方向上的分力,使至少一条腿的足端打滑速度降低,或者停止打滑。具体来说,若至少一条腿在当前控制周期对应的当前摩擦系数较小,那么机器人可以基于这个较小的当前摩擦系数确定一个较大的第一足底力,以通过较大的第一足底力使至少一条腿的足端的打滑速度降低,甚至使至少一条腿停止打滑。当然,若至少一条腿在当前控制周期对应的当前摩擦系数大于前一控制周期对应的参考摩擦系数,即至少一条腿的足端的摩擦系数已经开始回升,那么机器人可以在当前控制周期以及之后的控制周期内,继续逐渐将至少一条腿足端的足底力回升至进入打滑状态之前的大小。
在一些实施方式中,机器人通过当前摩擦系数确定的至少一条腿对应的第一足底力,是基于至少一条腿处于打滑状态而确定的,用于抑制至少一条腿的打滑状态的力,而原本至少一条腿在支撑相用于支撑机器人机身重量的足底力并不会改变。机器人是通过第一足底力对原本的足底力进行补偿,以使补偿后的足底力能够减少在打滑方向上的分力,进而使至少一条腿足端的打滑速度降低,或者停止打滑。
本申请实施例提供的足式机器人控制方法,通过在检测到至少一条腿的足端在当前控制周期处于打滑状态时,获取至少一条腿在打滑状态中所处的运动状态,运动状态包括第一状态以及第二状态;基于不同的运动状态,确定至少一条腿在当前控制周期对应的当前摩擦系数;基于当前摩擦系数,确定至少一条腿在当前控制周期对应的第一足底力,以减少至少一条腿的足底力在打滑方向上的分力,使至少一条腿的足端打滑速度降低,或者停止打滑。通过至少一条腿在不同的运动状态,确定当前控制周期对应的不同的当前摩擦系数,使当前摩擦系数能够在至少一条腿的足端的打滑趋势无法抑制时快速地降低,也能够在至少一条腿的足端的打滑趋势得到有效抑制时缓慢地回升,使机器人对至少一条腿的控制更加适应实际环境,使机身的运动更加稳定。
请参阅图5,图5示出了本申请又一个实施例提供的足式机器人控制方法的流程示意图,所述足式机器人包括至少两条腿,下面将针对图5所示流程进行详细阐述,所述足式机器人控制方法具体可以包括以下步骤:
步骤S310:若检测到至少一条腿的足端在当前控制周期处于打滑状态,则获取所述当前控制周期对应的参考摩擦系数衰减量,以及所述前一控制周期对应的实际摩擦系数衰减量。
在本申请实施例中,若检测到至少一条腿的足端在当前控制周期处于打滑状态,那么机器人可以通过获取当前控制周期对应的参考摩擦系数衰减量,以及前一控制周期对应的实际摩擦系数衰减量,以便于通过参考摩擦系数衰减量以及实际摩擦系数衰减量之间的大小关系,判断至少一条腿在打滑状态中所处的运动状态为第一状态或者第二状态。具体来说,机器人在当前控制周期对应的参考摩擦系数衰减量,用于表征当前控制周期对应的当前摩擦系数相对于前一控制周期对应的参考摩擦系数的衰减量,机器人可以基于前一控制周期对应的参考摩擦系数以及至少一条腿在打滑状态下的滑动距离,来确定当前控制周期对应的参考摩擦系数衰减量。
在一些实施方式中,根据相同的方法,机器人在处于打滑状态下的每个控制周期内,都可以得到该控制周期对应的参考摩擦系数衰减量,并且可以基于当前控制周期对应的参考摩擦系数衰减量,以及相邻的前一控制周期对应的实际摩擦系数衰减量,确定当前控制周期对应的实际摩擦系数衰减量。由此在相邻的下一控制周期内,机器人又可以基于当前控制周期对应的实际摩擦系数衰减量,以及相邻的下一控制周期对应的参考摩擦系数衰减量,确定下一控制周期对应的实际摩擦系数衰减量。
可以理解的,参考摩擦系数衰减量用于表征当前控制周期对应的当前摩擦系数相对于前一控制周期对应的参考摩擦系数的衰减量,但显然在当前控制周期内,此时机器人还没有确定当前控制周期对应的当前摩擦系数,因此并不能直接获取前一控制周期对应的参考摩擦系数与当前控制周期对应的当前摩擦系数之间的差值。也就是说机器人此时实际上并不能准确的确定当前控制周期对应的摩擦系数的衰减量,而是需要间接的通过前一控制周期对应的参考摩擦系数,来确定当前控制周期对应的摩擦系数衰减量。
在一些实施方式中,机器人还可以通过机身安装的视觉传感器,判断机身当前所处的环境中,是否存在可能打滑的目标区域,并且在机器人的至少一条腿进入该区域时,发出提示信息,并且确定至少一条腿处于打滑状态中的第一状态,即控制至少一条腿的足端对应的摩擦系数快速降低;机器人还可以在通过视觉传感器获取的信息确定机器人离开可能打滑的目标区域后,确定至少一条腿处于打滑状态中的第二状态,即控制至少一条腿的足端对应的摩擦系数缓慢回升。
在另一些实施方式中,机器人还可以在确定至少一条腿处于第一状态后,在第一时间区间内,将至少一条腿的足端对应的摩擦系数快速降低至第二摩擦系数,并且,机器人还可以在第一时间区间到期之后,自动将至少一条腿的足端对应的摩擦系数缓慢的回升至第一摩擦系数。
在一些实施方式中,如图6所示,机器人可以通过下述步骤获取当前控制周期对应的参考摩擦系数衰减量:
步骤S311:获取所述当前控制周期对应的衰减系数,所述衰减系数小于1。
在本申请实施例中,当前控制周期对应的衰减系数用于对前一控制周期对应的参考摩擦系数进行修正,以将修正后的参考摩擦系数作为当前控制周期对应的参考摩擦系数衰减量,因此,为了避免最终得到的当前控制周期对应的参考摩擦系数衰减量过大,导致最终得到的当前控制周期对应的当前摩擦系数一次性衰减过多,机器人可以对当前控制周期对应的衰减系数的大小进行限制。在一些实施方式中,机器人可以在按照下述方法计算得到的衰减系数小于限制值0.9的情况下,将该衰减系数作为当前控制周期对应的衰减系数,但若计算都得的衰减系数大于或等于限制值0.9,那么机器人可以直接将0.9的数值作为当前控制周期对应的衰减系数,由此可以确保当前控制周期对应的衰减系数小于1。
具体可以参阅下述公式确定当前控制周期对应的衰减系数:
αk,0=min(αk,0.9)
其中,αk,0为最终确定的当前控制周期对应的衰减系数,αk为下述方法中基于至少一条腿在当前控制周期对应的滑动距离计算得到的衰减系数。显然,最终确定的当前控制周期对应的衰减系数为αk与0.9之间的最小值。在一些实施方式中,0.9的限制值可以由技术人员根据实际情况进行调整,只需确保小于1即可,在此不做具体限定。
在一些实施方式中,如图7所示,机器人确定当前控制周期对应的衰减系数的方法,可以通过下述步骤实现:
步骤S3111:获取所述至少一条腿从摆动相切换到支撑相时的初始位置向量,以及所述至少一条腿从所述初始位置向量滑动到当前控制周期时对应的第一位置向量。
步骤S3112:基于所述第一位置向量以及所述初始位置向量,确定所述至少一条腿在所述当前控制周期对应的所述滑动距离。
步骤S3113:基于所述滑动距离,确定所述当前控制周期对应的衰减系数,所述衰减系数与所述滑动距离呈正相关。
具体来说,机器人处于支撑相的至少一条腿在进入支撑相的时候,存在一个对应的初始位置向量,而至少一条腿在支撑相内进入当前控制周期的时候,也存在一个对应的第一位置向量。可以理解的,若至少一条腿没有处于打滑状态,也就是至少一条腿的足端在处于支撑相的期间都不存在滑动,那么初始位置向量与第一位置向量应该是相同的。但若至少一条腿在当前控制周期内处于打滑状态,也就是至少一条腿的足端在当前控制周期发生了位移,那么显然初始位置向量与第一位置向量就不再相同。此时,为了进一步了解至少一条腿的打滑状态是否严重,机器人可以通过至少一条腿对应的初始位置向量以及第一位置向量,确定至少一条腿在当前控制周期对应的滑动距离。
显然,机器人此时基于初始位置向量以及第一位置向量所确定的滑动距离,是指机器人的至少一条腿进入支撑相的初始位置与进入当前控制周期时的当前位置之间的距离,而不是至少一条腿在进入前一控制周期的位置与进入当前控制周期时的位置之间的距离。在一些实施方式中,机器人可以直接通过第一位置向量与初始位置向量之差的绝对值作为至少一条腿对应的滑动距离。
其后,机器人在确定至少一条腿在当前控制周期对应的滑动距离后,可以将滑动距离与预设距离进行比较,若滑动距离小于预设距离,则将滑动距离与预设距离之间的第一比值作为至少一条腿在当前控制周期对应的衰减系数,由此,衰减系数能够与滑动距离呈正相关。另一种情况下,若滑动距离小于或等于预设距离,那么机器人可以直接将衰减系数赋值为1,由此,在机器人最终确定衰减系数的过程中,由于此时计算得到的衰减系数必然大于了限制值0.9,因此,机器人最终会将限制值0.9作为当前控制周期对应的衰减系数。
具体来说,机器人可以参照下述公式计算衰减系数:
其中,Ps为至少一条腿从摆动相切换到支撑相时的初始位置向量,Pc为至少一条腿在当前控制周期对应的第一位置向量,‖Ps-Pc‖即至少一条腿在当前控制周期对应的滑动距离。Dr为预设距离,通常情况下可以通过下述公式选取参考值:
其中,Mg为机器人重力,n为机器人处于支撑相的至少一条腿的数量(常使用n=2),Kp位置反馈系数。
步骤S312:确定所述衰减系数与所述参考摩擦系数的乘积,并将所述乘积作为所述当前控制周期对应的所述参考摩擦系数衰减量。
在本申请实施例中,机器人在通过上述步骤最终确定当前控制周期对应的衰减系数后,可以直接将小于1的衰减系数与前一控制周期对应的参考摩擦系数相乘,并将乘积作为当前控制周期对应的参考摩擦系数衰减量。可以理解的,小于1的衰减系数与参考摩擦系数的乘积必然小于原本的参考摩擦系数,并且最终得到的参考摩擦系数衰减量与至少一条腿在当前控制周期对应的滑动距离呈正相关,也就是说,在小于预设距离的范围内,滑动距离越大,最终得到的参考摩擦系数衰减量也越大,由此机器人后续可以基于当前控制周期对应的参考摩擦系数衰减量以及前一控制周期对应的实际摩擦系数衰减量,确定当前控制周期的实际摩擦系数衰减量,以及当前控制周期对应的当前摩擦系数。
具体可以参阅下述公式确定当前控制周期对应的参考摩擦系数衰减量:
Δμk,0=αk,0×μk-1
其中,Δμk,0为当前控制周期对应的参考摩擦系数衰减量,αk,0为最终求得的当前控制周期对应的衰减系数,μk-1为前一控制周期对应的参考摩擦系数。
步骤S320:若所述参考摩擦系数衰减量大于所述实际摩擦系数衰减量,则确定所述至少一条腿在所述打滑状态中处于所述第一状态。
在本申请实施例中,机器人在获取至少一条腿在当前控制周期对应的参考摩擦系数衰减量,以及至少一条腿在前一控制周期对应的实际摩擦系数衰减量后,可以基于参考摩擦系数衰减量与实际摩擦系数衰减量的大小关系,判断至少一条腿在打滑状态中的第一状态。其中,若参考摩擦系数衰减量大于实际摩擦系数衰减量,表明此时至少一条腿仍然处于第一状态,也就是至少一条腿的足端的打滑趋势尚未得到抑制,还在不断恶化;若参考摩擦系数衰减量小于或等于实际摩擦系数衰减量,表明此时至少一条腿的足端处于第二状态,也就是至少一条腿的打滑趋势已经在之前的控制周期内得到了有效的抑制。
可以理解的,参考摩擦系数衰减量为预测的当前控制周期的当前摩擦系数相较于前一控制周期对应的参考摩擦系数的差值。而前一控制周期对应的实际摩擦系数衰减量,用于表征前一控制周期对应的摩擦系数相较于相邻的之前的控制周期对应的摩擦系数的衰减量。显然,若参考摩擦系数衰减量大于实际摩擦系数衰减量,表明当前控制周期对应的预测的摩擦系数在持续降低,此时机器人需要通过降低当前控制周期对应的当前摩擦系数至第二摩擦系数,以便于后续确定的至少一条腿在当前控制周期对应的足底力能够更大,因此可以直接将参考摩擦系数衰减量作为当前控制周期对应的实际摩擦系数衰减量。另一种情况,若参考摩擦系数衰减量小于或等于实际摩擦系数衰减量,表明当前控制周期对应的预测的摩擦系数的降低速度变慢,也就是此时机器人可以不用再快速降低足端的摩擦系数,也就是说,至少一条腿的足端的打滑趋势已经得到的抑制,因此,机器人可以逐渐将至少一条腿足端对应的当前摩擦系数提升至第一摩擦系数,具体来说,机器人可以在对参考摩擦系数衰减量进行修正之后确定当前控制周期对应的实际摩擦系数衰减量。
步骤S330:若所述至少一条腿处于所述第一状态,则确定标准摩擦系数与所述当前控制周期对应的实际摩擦系数衰减量之间的差值,并将所述差值作为所述至少一条腿在所述当前控制周期对应的当前摩擦系数。
在本申请实施例中,机器人在通过上述步骤确定至少一条腿处于第一状态,并且通过当前控制周期对应的参考摩擦系数衰减量确定当前控制周期对应的实际摩擦系数衰减量后,可以基于标准摩擦系数以及当前控制周期对应的实际摩擦系数衰减量,确定至少一条腿在当前控制周期对应的当前摩擦系数。具体来说,可以通过下述公式确定当前控制周期对应的当前摩擦系数:
μk=μk,std-Δμk
其中,μk为当前控制周期对应的当前摩擦系数,μk,std为标准摩擦系数,即预设的摩擦系数标准值,Δμk为当前控制周期对应的实际摩擦系数衰减量。
可以理解的,标准摩擦系数是一个标准的固定值,因此当前控制周期对应的当前摩擦系数与实际摩擦系数衰减量呈负相关,也就是当前控制周期对应的实际摩擦系数衰减量越大,那么当前摩擦系数越小。而当前控制周期对应的实际摩擦系数衰减量,在至少一条腿处于第一状态的情况下,等于当前控制周期对应的参考摩擦系数衰减量。而通过上述分析可知,当前控制周期对应的参考摩擦系数衰减量与至少一条腿在当前控制周期对应的滑动距离呈正相关,也就是滑动距离越大,参考摩擦系数衰减量越大,进而当前控制周期对应的当前摩擦系数越小。由此在至少一条腿处于滑动状态的情况下,机器人可以实现使当前控制周期对应的当前摩擦系数自动响应于滑动距离快速的降低。
步骤S340:若所述参考摩擦系数衰减量小于或等于所述实际摩擦系数衰减量,则确定所述至少一条腿在所述打滑状态中处于所述第二状态。
在本申请实施例中,根据上述分析可知,若当前控制周期对应的参考摩擦系数衰减量小于或等于前一控制周期对应的实际摩擦系数衰减量,那么机器人可以认为此时至少一条腿的足端的打滑趋势已经得到有效抑制。此时机器人可以在当前控制周期以及其后的数个控制周期内,逐步将至少一条腿足端对应的摩擦系数提升至第一摩擦系数。
具体来说,机器人可以通过下述公式确定至少一条腿在打滑状态中处于第一状态或者第二状态,并基于当前控制周期对应的参考摩擦系数衰减量或者前一控制周期对应的实际摩擦系数衰减量,计算得到当前控制周期对应的实际摩擦系数衰减量:
其中,Δμk为当前控制周期对应的实际摩擦系数衰减量,Δμk,0为当前控制周期对应的参考摩擦系数衰减量,Δμk-1为前一控制周期对应的实际摩擦系数衰减量,σ为衰减滤波系数,其中σ∈(0,1),衰减滤波系数能够确定实际摩擦系数衰减量的记忆时长,也就是在至少一条腿的打滑趋势得到抑制后,决定足端对应的摩擦系数回升至第一摩擦系数的速度的快慢。
步骤S350:若所述至少一条腿处于所述第二状态,则基于所述标准摩擦系数、所述前一控制周期对应的实际摩擦系数衰减量以及衰减滤波系数,确定所述至少一条第一腿在所述当前控制周期对应的当前摩擦系数。
在本申请实施例中,机器人在通过上述步骤确定至少一条腿处于第二状态,并且通过前一控制周期对应的实际摩擦系数衰减量以及衰减滤波系数,确定当前控制周期对应的实际摩擦系数衰减量后,可以基于标准摩擦系数以及当前控制周期对应的实际摩擦系数衰减量,确定至少一条腿在当前控制周期对应的当前摩擦系数。具体可以参照前述公式,在此不做赘述。
步骤S360:基于所述当前控制周期对应的当前摩擦系数,确定所述至少一条腿在所述当前控制周期对应的第一足底力,以减少所述至少一条腿的足底力在打滑方向上的分力,使所述至少一条腿的足端打滑速度降低,或者停止打滑。
在本申请实施例中,步骤S360可以参阅其他实施例,在此不做具体阐述。
本申请实施例提供的足式机器人控制方法,通过若检测到至少一条腿的足端在当前控制周期处于打滑状态,则获取当前控制周期对应的参考摩擦系数衰减量,以及前一控制周期对应的实际摩擦系数衰减量;若参考摩擦系数衰减量大于实际摩擦系数衰减量,则确定至少一条腿在打滑状态中处于第一状态,并确定标准摩擦系数与当前控制周期对应的实际摩擦系数衰减量之间的差值,将差值作为至少一条腿在当前控制周期对应的当前摩擦系数;若参考摩擦系数衰减量小于或等于实际摩擦系数衰减量,则确定至少一条腿在打滑状态中处于第二状态,并基于标准摩擦系数、前一控制周期对应的实际摩擦系数衰减量以及衰减滤波系数,确定至少一条第一腿在当前控制周期对应的当前摩擦系数。由此通过至少一条腿在不同的运动状态,确定当前控制周期对应的不同的当前摩擦系数,使当前摩擦系数能够在至少一条腿发生打滑事件时快速降低,也能够在至少一条腿发生停止打滑事件时缓慢回升,使机器人对至少一条腿的控制更加适应实际环境,使机身的运动更加稳定。
请参阅图8,图8示出了本申请再一个实施例提供的足式机器人控制方法的流程示意图,所述足式机器人包括至少两条腿,下面将针对图8所示流程进行详细阐述,所述足式机器人控制方法具体可以包括以下步骤:
步骤S410:若检测到至少一条腿的足端在当前控制周期处于打滑状态,则获取所述至少一条腿在所述当前控制周期对应的滑动速度。
在本申请实施例中,若检测到至少一条腿的足端在当前控制周期处于打滑状态,那么机器人可以通过获取至少一条腿在当前控制周期对应的滑动速度,确定至少一条腿在打滑状态中处于第一状态或者第二状态。
具体来说,机器人可以通过下述公式获取至少一条腿在当前控制周期对应的滑动速度:
其中,为至少一条腿在当前控制周期的滑动速度,/>为前一控制周期对应的滑动速度,/>为当前控制周期对应的滑动速度,β为速度滤波系数,其中,β∈(0,1)区间。
步骤S420:若所述滑动速度大于第一速度阈值,则确定所述至少一条腿在所述打滑状态中处于所述第一状态。
步骤S430:若所述至少一条腿处于所述第一状态,则基于下限摩擦系数、所述下限摩擦系数对应的第一权重值、所述参考摩擦系数以及所述参考摩擦系数对应的第二权重值,确定所述至少一条腿在所述当前控制周期对应的所述当前摩擦系数,所述第一权重值与所述第二权重值之和为1。
在本申请实施例中,机器人在获取至少一条腿在当前控制周期对应的滑动速度后,可以基于滑动速度与第一速度阈值之间的大小关系,判断至少一条腿在打滑状态中处于第一状态或者第二状态。具体来说,若滑动速度大于第一速度阈值,则表明此时至少一条腿的足端对应的滑动速度仍然较大,那么机器人可以认为此时至少一条腿处于第一状态即滑动状态,由此进一步基于下限摩擦系数、下限摩擦系数对应的第一权重值、参考摩擦系数以及参考摩擦系数对应的第二权重值,确定至少一条腿在当前控制周期对应的当前摩擦系数。具体来说,机器人可以基于下限摩擦系数以及参考摩擦系数分别对应的权重值,对下限摩擦系数以及参考摩擦系数进行加权求和,并将最终计算得到的结果作为至少一条腿在当前控制周期对应的当前摩擦系数。
其中,下限摩擦系数为机器人至少一条腿的足端对应的摩擦系数的下限值。在确认至少一条腿处于滑动状态的情况下,机器人可以通过上述方式,在下限摩擦系数的基础上基于前一控制周期对应的参考摩擦系数,确定当前摩擦系数的大小,由此可以使当前摩擦系数在进入滑动状态时快速的降低,也就是使当前摩擦系数可以快速地响应于至少一条腿的打滑状态,进而能够使基于当前摩擦系数确定的至少一条腿的第一足底力更加适应于当前控制周期的打滑状态。
步骤S440:若所述滑动速度小于或等于所述第一速度阈值,则确定所述至少一条腿在所述打滑状态中处于所述第二状态。
步骤S450:若所述至少一条腿处于所述第二状态,则基于标准摩擦系数、所述标准摩擦系数对应的第三权重值、所述参考摩擦系数以及所述参考摩擦系数对应的第四权重值,确定所述至少一条腿在所述当前控制周期对应的所述当前摩擦系数,所述第三权重值与所述第四权重值之和为1,所述第一权重值大于所述第三权重值,所述第二权重值小于所述第四权重值。
在本申请实施例中,机器人在获取至少一条腿在当前控制周期对应的滑动速度后,可以基于滑动速度与第一速度阈值之间的大小关系,判断至少一条腿在打滑状态中处于第一状态或者第二状态。具体来说,若滑动速度小于或等于第一速度阈值,则表明此时至少一条腿的足端对应的滑动速度较小,那么机器人可以认为此时至少一条腿处于第一状态即第二状态,由此进一步基于标准摩擦系数、标准摩擦系数对应的第三权重值、参考摩擦系数以及参考摩擦系数对应的第四权重值,确定至少一条腿在当前控制周期对应的当前摩擦系数。具体来说,机器人可以基于标准摩擦系数以及参考摩擦系数分别对应的权重值,对标准摩擦系数以及参考摩擦系数进行加权求和,并将最终计算得到的结果作为至少一条腿在当前控制周期对应的当前摩擦系数。
其中,标准摩擦系数为机器人至少一条腿的足端对应的摩擦系数的标准值。在确认至少一条腿处于第二状态的情况下,机器人可以通过上述方式,在标准摩擦系数的基础上基于前一控制周期对应的参考摩擦系数,确定当前摩擦系数的大小,由此可以使当前摩擦系数在进入第二状态时缓慢地回升至第二摩擦系数,也就是使当前摩擦系数可以打滑状态被抑制后,缓慢地回到初始状态,避免后续再次进入打滑状态时响应不及时。
具体来说,机器人可以通过下述公式,确定当前控制周期对应的当前摩擦系数:
其中,μk,n为当前控制周期对应的当前摩擦系数,μk,n-1前一控制周期对应的参考摩擦系数,μlow为下限摩擦系数,μstd为标准摩擦系数。
步骤S460:基于所述当前控制周期对应的当前摩擦系数,确定所述至少一条腿在所述当前控制周期对应的第一足底力,以减少所述至少一条腿的足底力在打滑方向上的分力,使所述至少一条腿的足端打滑速度降低,或者停止打滑。
在本申请实施例中,步骤S460可以参阅其他实施例,在此不做具体阐述。
本申请实施例提供的足式机器人控制方法,若检测到至少一条腿的足端在当前控制周期处于打滑状态,则获取至少一条腿在当前控制周期对应的滑动速度;若滑动速度大于第一速度阈值,则确定至少一条腿在打滑状态中处于第一状态,并基于下限摩擦系数、下限摩擦系数对应的第一权重值、参考摩擦系数以及参考摩擦系数对应的第二权重值,确定至少一条腿在所述当前控制周期对应的当前摩擦系数,第一权重值与第二权重值之和为1;若滑动速度小于或等于第一速度阈值,则确定至少一条腿在打滑状态中处于第二状态,并基于标准摩擦系数、标准摩擦系数对应的第三权重值、参考摩擦系数以及参考摩擦系数对应的第四权重值,确定至少一条腿在当前控制周期对应的当前摩擦系数,第三权重值与第四权重值之和为1,第一权重值大于第三权重值,第二权重值小于第四权重值。由此可以通过在检测到足式机器人的至少一条腿处于第一状态时,在较短的第一时间区间内快速降低摩擦系数,并且在打滑趋势得到抑制后较长的第二时间区间内使摩擦系数缓慢回升,由此基于摩擦系数在不同情况下的不同改变状态,能够使机器人的控制和运动更加稳定。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本申请实施例提供一种机器人50,包括机身51和至少两条腿,至少两条腿和机身51相连接;与机身51通信的控制系统,控制系统包括处理器和与处理器通信的存储器,存储器存储指令,指令在处理器上被运行时使处理器执行操作,操作包括:若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;若检测到所述至少一条腿的足端的停止打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一摩擦系数大于所述第二摩擦系数;在每个控制周期或者每间隔一定数量的控制周期,所述第二摩擦系数将根据所述至少一条腿的足端的打滑的情况进行适应性调整。
机器人50所执行的操作还包括:若在所述当前控制周期检测到所述至少一条腿的足端的打滑事件,则从当前控制周期或之后的控制周期开始计时,在第一时间区间内将所述至少一条腿的足端所对应的摩擦系数从所述第一摩擦系数调整到所述第二摩擦系数;若检测到所述至少一条腿的足端的停止打滑事件,则从检测到所述至少一条腿的足端的停止打滑事件的控制周期或者之后的控制周期开始计时,在第二时间区间内,将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一时间区间的时长小于所述第二时间区间的时长,所述第一时间区间和所述第二时间区间均包括各自相应的起始时间点和结束时间点,且所述第二时间区间的起始时间点在所述第一时间区间结束时间点之后。
机器人50所执行的操作还包括:若检测到至少一条腿的足端在当前控制周期处于打滑状态,则确定所述至少一条腿在所述打滑状态中所处的运动状态,所述运动状态包括第一状态以及第二状态;基于所述运动状态,确定所述至少一条腿在所述当前控制周期对应的当前摩擦系数,所述当前摩擦系数小于或等于所述第一摩擦系数,所述当前摩擦系数大于或等于所述第二摩擦系数;基于所述当前控制周期对应的当前摩擦系数,确定所述至少一条腿在所述当前控制周期对应的第一足底力,以减少所述至少一条腿的足底力在打滑方向上的分力,使所述至少一条腿的足端打滑速度降低,或者停止打滑。
机器人50所执行的操作还包括:获取当前控制周期对应的参考摩擦系数衰减量,以及前一控制周期对应的实际摩擦系数衰减量;若参考摩擦系数衰减量大于实际摩擦系数衰减量,则确定至少一条腿在打滑状态中处于第一状态;若参考摩擦系数衰减量小于或等于实际摩擦系数衰减量,则确定至少一条腿在打滑状态中处于第二状态。
机器人50所执行的操作还包括:若至少一条腿处于第一状态,则确定标准摩擦系数与当前控制周期对应的实际摩擦系数衰减量之间的差值,并将差值作为至少一条腿在当前控制周期对应的当前摩擦系数;若至少一条腿处于第二状态,则基于标准摩擦系数、前一控制周期对应的实际摩擦系数衰减量以及衰减滤波系数,确定至少一条第一腿在当前控制周期对应的当前摩擦系数。
机器人50所执行的操作还包括:获取当前控制周期对应的衰减系数,衰减系数小于1;确定衰减系数与参考摩擦系数的乘积,并将乘积作为当前控制周期对应的参考摩擦系数衰减量。
综上所述,本申请提供的方案,通过若检测到至少一条腿的足端在当前控制周期处于打滑状态,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;在第二时间区间内,将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一摩擦系数大于所述第二摩擦系数。通过在检测到足式机器人的至少一条腿足端的打滑事件时,在较短的第一时间区间内快速降低摩擦系数,并且在检测到至少一条腿的停止打滑事件后,在较长的第二时间区间内使摩擦系数缓慢回升,由此基于摩擦系数在不同情况下的不同改变状态,能够使机器人的控制和运动更加稳定。
请参考图9,其示出了本申请实施例提供的一种机器人400的结构框图。本申请中的机器人400可以包括一个或多个如下部件:处理器410、存储器420、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器420中并被配置为由一个或多个处理器410执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器410可以包括一个或者多个处理核。处理器410利用各种接口和线路连接整个机器人内的各个部分,通过运行或执行存储在存储器420内的指令、程序、代码集或指令集,以及调用存储在存储器420内的数据,执行机器人的各种功能和处理数据。可选地,处理器410可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器410可集成中央处理器(CentralProcessing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器410中,单独通过一块通信芯片进行实现。
存储器420可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器420可用于存储指令、程序、代码、代码集或指令集。存储器420可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储机器人在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图10,其示出了本申请实施例提供的一种计算机可读取存储介质的结构框图。该计算机可读取存储介质900中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读取存储介质900可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质900包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读取存储介质900具有执行上述方法中的任何方法步骤的程序代码910的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码910可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (12)

1.一种足式机器人控制方法,其特征在于,所述足式机器人包括至少两条腿,所述方法包括:
若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;
若检测到所述至少一条腿的足端的停止打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;
所述第一摩擦系数大于所述第二摩擦系数;
在每个控制周期或者每间隔一定数量的控制周期,所述第二摩擦系数将根据所述至少一条腿的足端的打滑的情况进行适应性调整。
2.根据权利要求1所述的方法,其特征在于,所述若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数,包括:
若在所述当前控制周期检测到所述至少一条腿的足端的打滑事件,则从当前控制周期或之后的控制周期开始计时,在第一时间区间内将所述至少一条腿的足端所对应的摩擦系数从所述第一摩擦系数调整到所述第二摩擦系数;
所述若检测到所述至少一条腿的足端的停止打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数,包括:
若检测到所述至少一条腿的足端的停止打滑事件,则从检测到所述至少一条腿的足端的停止打滑事件的控制周期或者之后的控制周期开始计时,在第二时间区间内,将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;
所述第一时间区间的时长小于所述第二时间区间的时长,所述第一时间区间和所述第二时间区间均包括各自相应的起始时间点和结束时间点,且所述第二时间区间的起始时间点在所述第一时间区间结束时间点之后。
3.根据权利要求2所述的方法,其特征在于,在所述若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数之前,所述方法还包括:
若检测到至少一条腿的足端在当前控制周期处于打滑状态,则确定所述至少一条腿在所述打滑状态中所处的运动状态,所述运动状态包括第一状态以及第二状态;
基于所述运动状态,确定所述至少一条腿在所述当前控制周期对应的当前摩擦系数,所述当前摩擦系数小于或等于所述第一摩擦系数,所述当前摩擦系数大于或等于所述第二摩擦系数;
在所述将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数之后,所述方法还包括:
基于所述当前控制周期对应的当前摩擦系数,确定所述至少一条腿在所述当前控制周期对应的第一足底力,以减少所述至少一条腿的足底力在打滑方向上的分力,使所述至少一条腿的足端打滑速度降低,或者停止打滑。
4.根据权利要求3所述的方法,其特征在于,所述若检测到至少一条腿的足端在当前控制周期处于打滑状态,则确定所述至少一条腿在所述打滑状态中所处的运动状态,包括:
获取所述当前控制周期对应的参考摩擦系数衰减量,以及所述前一控制周期对应的实际摩擦系数衰减量;
若所述参考摩擦系数衰减量大于所述实际摩擦系数衰减量,则确定所述至少一条腿在所述打滑状态中处于所述第一状态;
若所述参考摩擦系数衰减量小于或等于所述实际摩擦系数衰减量,则确定所述至少一条腿在所述打滑状态中处于所述第二状态。
5.根据权利要求4所述的方法,其特征在于,所述基于所述运动状态,确定所述至少一条腿在所述当前控制周期对应的当前摩擦系数,包括:
若所述至少一条腿处于所述第一状态,则确定标准摩擦系数与所述当前控制周期对应的实际摩擦系数衰减量之间的差值,并将所述差值作为所述至少一条腿在所述当前控制周期对应的当前摩擦系数;
若所述至少一条腿处于所述第二状态,则基于所述标准摩擦系数、所述前一控制周期对应的实际摩擦系数衰减量以及衰减滤波系数,确定所述至少一条第一腿在所述当前控制周期对应的当前摩擦系数。
6.根据权利要求4所述的方法,其特征在于,所述获取所述当前控制周期对应的参考摩擦系数衰减量,包括:
获取所述当前控制周期对应的衰减系数,所述衰减系数小于1;
确定所述衰减系数与所述参考摩擦系数的乘积,并将所述乘积作为所述当前控制周期对应的所述参考摩擦系数衰减量。
7.一种机器人,其特征在于,所述机器人包括:
机身和至少两条腿,所述至少两条腿和所述机身相连接;
与所述机身通信的控制系统,所述控制系统包括处理器和与所述处理器通信的存储器,所述存储器存储指令,所述指令在所述处理器上被运行时使所述处理器执行操作,所述操作包括:若在当前控制周期检测到至少一条腿的足端的打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第一摩擦系数调整到第二摩擦系数;若检测到所述至少一条腿的足端的停止打滑事件,则将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一摩擦系数大于所述第二摩擦系数;在每个控制周期或者每间隔一定数量的控制周期,所述第二摩擦系数将根据所述至少一条腿的足端的打滑的情况进行适应性调整。
8.根据权利要求7所述的机器人,其特征在于,所述操作还包括:
若在所述当前控制周期检测到所述至少一条腿的足端的打滑事件,则从当前控制周期或之后的控制周期开始计时,在第一时间区间内将所述至少一条腿的足端所对应的摩擦系数从所述第一摩擦系数调整到所述第二摩擦系数;若检测到所述至少一条腿的足端的停止打滑事件,则从检测到所述至少一条腿的足端的停止打滑事件的控制周期或者之后的控制周期开始计时,在第二时间区间内,将所述至少一条腿的足端所对应的摩擦系数从第二摩擦系数调整到第一摩擦系数;所述第一时间区间的时长小于所述第二时间区间的时长,所述第一时间区间和所述第二时间区间均包括各自相应的起始时间点和结束时间点,且所述第二时间区间的起始时间点在所述第一时间区间结束时间点之后。
9.根据权利要求8所述的机器人,其特征在于,所述操作还包括:
若检测到至少一条腿的足端在当前控制周期处于打滑状态,则确定所述至少一条腿在所述打滑状态中所处的运动状态,所述运动状态包括第一状态以及第二状态;基于所述运动状态,确定所述至少一条腿在所述当前控制周期对应的当前摩擦系数,所述当前摩擦系数小于或等于所述第一摩擦系数,所述当前摩擦系数大于或等于所述第二摩擦系数;基于所述当前控制周期对应的当前摩擦系数,确定所述至少一条腿在所述当前控制周期对应的第一足底力,以减少所述至少一条腿的足底力在打滑方向上的分力,使所述至少一条腿的足端打滑速度降低,或者停止打滑。
10.根据权利要求9所述的机器人,其特征在于,所述操作还包括:
获取所述当前控制周期对应的参考摩擦系数衰减量,以及所述前一控制周期对应的实际摩擦系数衰减量;
若所述参考摩擦系数衰减量大于所述实际摩擦系数衰减量,则确定所述至少一条腿在所述打滑状态中处于所述第一状态;
若所述参考摩擦系数衰减量小于或等于所述实际摩擦系数衰减量,则确定所述至少一条腿在所述打滑状态中处于所述第二状态。
11.根据权利要求10所述的机器人,其特征在于,所述操作还包括:
若所述至少一条腿处于所述第一状态,则确定标准摩擦系数与所述当前控制周期对应的实际摩擦系数衰减量之间的差值,并将所述差值作为所述至少一条腿在所述当前控制周期对应的当前摩擦系数;
若所述至少一条腿处于所述第二状态,则基于所述标准摩擦系数、所述前一控制周期对应的实际摩擦系数衰减量以及衰减滤波系数,确定所述至少一条第一腿在所述当前控制周期对应的当前摩擦系数。
12.根据权利要求10所述的机器人,其特征在于,所述操作还包括:
获取所述当前控制周期对应的衰减系数,所述衰减系数小于1;
确定所述衰减系数与所述参考摩擦系数的乘积,并将所述乘积作为所述当前控制周期对应的所述参考摩擦系数衰减量。
CN202311050653.6A 2023-08-18 2023-08-18 足式机器人控制方法以及机器人 Pending CN116893686A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311050653.6A CN116893686A (zh) 2023-08-18 2023-08-18 足式机器人控制方法以及机器人

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311050653.6A CN116893686A (zh) 2023-08-18 2023-08-18 足式机器人控制方法以及机器人

Publications (1)

Publication Number Publication Date
CN116893686A true CN116893686A (zh) 2023-10-17

Family

ID=88310944

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311050653.6A Pending CN116893686A (zh) 2023-08-18 2023-08-18 足式机器人控制方法以及机器人

Country Status (1)

Country Link
CN (1) CN116893686A (zh)

Similar Documents

Publication Publication Date Title
US10668624B2 (en) Handling gait disturbances with asynchronous timing
CN110147091B (zh) 机器人运动控制方法、装置及机器人
JP2020183035A5 (zh)
US20200092817A1 (en) Method for Power Saving Control and Related Products
US20150306767A1 (en) Motion limiting device and motion limiting method
CN111645070B (zh) 机器人的安全防护方法、装置与机器人
US20180364787A1 (en) Information processing device, information processing method, and program
US20130024065A1 (en) Autonomous Electronic Device and Method of Controlling Motion of the Autonomous Electronic Device Thereof
US20210380185A1 (en) Mitigating Sensor Noise in Legged Robots
US20240189992A1 (en) Robot control device, robot control method, and program
US20200226840A1 (en) Motion sensing
CN111037564B (zh) 机器人碰撞检测方法、装置、设备及计算机可读存储介质
JP2017539056A5 (zh)
MX2022001788A (es) Plataforma movil para monitoreo y tratamiento de cultivos.
CN116893686A (zh) 足式机器人控制方法以及机器人
CN117073662A (zh) 地图构建方法、装置、机器人以及存储介质
CN114253281A (zh) 一种四足机器人运动控制方法、相关装置及存储介质
KR101021694B1 (ko) 휴대 단말 기반의 이동 로봇 제어 시스템 및 방법
WO2018029904A1 (ja) 運転性向判定装置および運転性向判定システム
CN116880534A (zh) 足式机器人控制方法以及机器人
CN115981346B (zh) 机器人控制方法以及机器人
CN115446844B (zh) 机器人的控制方法、机器人及控制终端
CN113848968A (zh) 步态调整方法、多足机器人、计算机可读存储介质
CN114063768A (zh) 信息处理方法、非暂时性记录介质以及信息处理装置
CN117808709A (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