移动机器人的运动控制方法和移动机器人
文献发布时间:2024-04-18 19:57:31
技术领域
本申请涉及机器人领域,特别涉及一种移动机器人的运动控制方法和移动机器人。
背景技术
以移动机器人是欠驱动系统机器人为例,欠驱动系统机器人是指驱动数量少于关节自由度数量的机器人,在该类机器人中的典型表现是机器人存在平衡问题。
以欠驱动系统机器人是轮腿式机器人为例。对于双轮平衡的轮腿式机器人而言,其腿部的运动平面没有横滚角(roll)方向的自由度。以轮腿式机器人包括第一车轮部、第二车轮部、以及与第一车轮部和第二车轮部连接的基座部为例,第一车轮部和第二车轮部的腿部的运动平面与基座部保持垂直。因此,在实际使用过程中,通常是通过控制轮腿式机器人的车轮进行滚动,以实现机器人的运动。
发明内容
本申请实施例提供了一种移动机器人的运动控制方法和移动机器人,可实现移动机器人的类双足运动,所述技术方案至少包括如下方案:
根据本申请的一个方面,提供了一种移动机器人的运动控制方法,移动机器人包括具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部、以及与第一车轮部和第二车轮部连接的基座部,所述方法包括:
控制第一车轮部和第二车轮部处于站立平衡状态;
控制移动机器人基于站立平衡状态进行类双足运动;
其中,基座部在站立平衡状态下与水平基准面平行,在类双足运动的过程中,第一车轮部和第二车轮部交替着地,基座部倾斜摇摆。
根据本申请的一个方面,提供了一种移动机器人,移动机器人包括具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部、以及与第一车轮部和第二车轮部连接的基座部;
移动机器人中设置有控制器,控制器用于控制移动机器人实现如上所述的移动机器人的运动控制方法。
根据本申请的一个方面,提供了一种移动机器人的运动控制装置,所述装置包括:
控制模块,用于控制移动机器人包括的具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部处于站立平衡状态;
控制模块,还用于控制移动机器人基于站立平衡状态进行类双足运动;
其中,移动机器人的基座部在站立平衡状态下与水平基准面平行,在类双足运动的过程中,第一车轮部和第二车轮部交替着地,基座部倾斜摇摆。
根据本申请的一个方面,提供了一种计算机设备,该计算机设备包括存储器和处理器;存储器中存储有至少一条程序代码,程序代码由处理器加载并执行以实现如上所述的移动机器人的运动控制方法。
根据本申请的一个方面,提供了一种计算机可读存储介质,存储介质中存储有计算机程序,所述计算机程序用于被处理器执行,以实现如上所述的移动机器人的运动控制方法。
根据本申请的一个方面,提供了一种芯片,芯片包括可编程逻辑电路和/或程序指令,当安装有芯片的电子设备运行时,用于实现如上所述的移动机器人的运动控制方法。
根据本申请的一个方面,提供了一种计算机程序产品,计算机程序产品包括计算机指令,计算机指令存储在计算机可读存储介质中,处理器从计算机可读存储介质读取并执行计算机指令,以实现如上所述的移动机器人的运动控制方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部,控制移动机器人基于站立平衡状态进行类双足运动,从而为移动机器人提供了一种新的运动方式。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的轮腿式机器人的结构示意图;
图2是本申请一个示例性实施例提供的轮腿式机器人的局部示意图;
图3是本申请一个示例性实施例提供的轮腿式机器人处于两轮站立情况下的主视图;
图4是本申请一个示例性实施例提供的轮腿式机器人处于两轮站立情况下的侧视图;
图5是本申请一个示例性实施例提供的轮腿式机器人处于两轮站立情况下的俯视图;
图6示出了本申请一个示例性实施例提供的轮腿式机器人在配重腿处于内收状态下的立体示意图;
图7是本申请一个示例性实施例提供的轮腿式机器人处于三轮站立情况下的主视图;
图8是本申请一个示例性实施例提供的轮腿式机器人处于三轮站立情况下的侧视图;
图9是本申请一个示例性实施例提供的轮腿式机器人处于三轮站立情况下的俯视图;
图10是本申请一个示例性实施例提供的轮腿式机器人处于三轮站立情况下的立体示意图;
图11是本申请一个示例性实施例提供的轮腿式机器人处于三轮站立情况下的另一种立体示意图;
图12是本申请一个示例性实施例提供的轮腿式机器人的形态示意图;
图13是本申请一个示例性实施例提供的三个空间角度的示意图;
图14是本申请一个示例性实施例提供的俯仰角方向的平衡控制的框图;
图15是本申请一个示例性实施例提供的横滚角方向平衡控制示意图;
图16是本申请一个示例性实施例提供的偏航角方向平衡控制示意图;
图17是本申请一个示例性实施例提供的移动机器人的运动控制方法的流程图;
图18是本申请一个示例性实施例提供的站立平衡状态的示意图;
图19是本申请一个示例性实施例提供的移动机器人的运动控制方法的流程图;
图20是本申请一个示例性实施例提供的类双足运动的动作分解图;
图21是本申请一个示例性实施例提供的第一倾斜状态的示意图;
图22是本申请一个示例性实施例提供的第一单轮着地状态的示意图;
图23是本申请一个示例性实施例提供的第二倾斜状态的示意图;
图24是本申请一个示例性实施例提供的第二单轮着地状态的示意图;
图25是本申请一个示例性实施例提供的类双足运动的动作分解图;
图26是本申请一个示例性实施例提供的站立平衡状态变为第一倾斜状态的示意图;
图27是本申请一个示例性实施例提供的第一倾斜状态恢复为站立平衡状态的示意图;
图28是本申请一个示例性实施例提供的站立平衡状态变为第二倾斜状态的示意图;
图29是本申请一个示例性实施例提供的第二倾斜状态恢复为站立平衡状态的示意图;
图30是本申请一个示例性实施例提供的以轮腿式机器人横截面模拟推导关节角度信息的示意图;
图31是本申请一个示例性实施例提供的移动机器人处于第一倾斜状态或第二倾斜状态下确定腿部变化量的示意图;
图32是本申请一个示例性实施例提供的移动机器人的运动控制装置的示意图;
图33是本申请一个示例性实施例提供的电子设备的框图。
下面对附图中的各个标号进行说明:
10-轮腿式机器人;
11-基座部;
12-车轮部:
121-大腿单元;
122-小腿单元;
123-主动轮;
124-驱动单元:1241-第一电机;1242-第二电机;
13-尾部:
131-配重腿;
132-被动轮;
133-第三电机;
01-扭簧;02-转动轴;03-同步带;04-同步带轮。
具体实施方式
除非另有定义,本申请实施例所用的所有技术术语均具有与本领域技术人员通常理解的相同的含义。
在本申请实施例中,所涉及的“前”、“后”均以附图中所示的前和后为基准。“第一端”、“第二端”为相对的两端。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实施例提供的移动机器人的运动控制方法,可用于冗余驱动系统机器人、完全驱动系统机器人和欠驱动系统机器人中的任意一种机器人。其中,冗余驱动系统机器人是指驱动数量大于关节自由度数量的机器人;完全驱动系统机器人是指驱动数量等于关节自由度数量的机器人;欠驱动系统机器人是指驱动数量少于关节自由度数量的机器人,欠驱动系统机器人均存在机身平衡问题。
应当理解的是,欠驱动系统机器人具有不稳定性,存在机身平衡问题,从而导致其运动控制相较于其他两种类型的机器人更具难度。以轮腿式机器人为例,其平衡控制具有挑战性,需要借助线性和非线性控制技术来实现。
在一些实施例中,本申请实施例提供的运动控制方法,应用于欠驱动系统机器人。可选的,本申请实施例提供的运动控制方法,应用于轮腿式机器人。以下均以欠驱动系统机器人为例进行描述,冗余驱动系统机器人和完全驱动系统机器人与之类似,可作参考,不再赘述。
图1示出了本申请一个示例性实施例提供的轮腿式机器人10,轮腿式机器人10是欠驱动系统机器人中的一种。轮腿式机器人10结合了轮式机器人和足式机器人的优点,具有很高的车轮能量效率和很强的适应能力,可以在不平坦的地形上利用腿避开障碍物。轮腿式机器人10是不稳定的欠驱动系统,地面与车轮/支脚之间只有两个接触点,从而使得轮腿式机器人10的平衡控制具有挑战性,因为较难获得机身平衡。
示意性的,轮腿式机器人10包括基座部11、车轮部12和尾部13,车轮部12和尾部13分别与基座部11传动连接。可选的,车轮部12可分为左右两侧,且左右两侧可以是完全对称的,也可以是不完全对称的。
示意性的,车轮部12包括腿部和轮部。其中,腿部包括大腿单元121和小腿单元122,轮部包括主动轮123。以大腿单元121由两杆件组成,小腿单元122由两杆件组成为例,大腿单元121包括的两杆件、小腿单元122包括的两杆件和基座部11构成平面五连杆机构。
可选的,第一电机1241固定于基座部11上,用于向大腿单元121提供驱动力。
以第一电机1241包括两个电机为例,大腿单元121包括的两杆件分别与第一电机1241包括的两个电机的输出轴固定连接,大腿单元121包括的两杆件、小腿单元122包括的两杆件相连的一端均以转动副形式连接,以构成平面五连杆机构。
可选的,第二电机1242固定于小腿单元122的某一个杆件上,用于向主动轮123提供驱动力。
参考图2示出的轮腿式机器人10的局部示意图,主动轮123的驱动可通过如下方式实现:第二电机1242通过皮带传动驱动主动轮123的转动轴02,转动轴02与小腿单元122包括的两杆件之间转动副的轴向共轴,扭簧01套装在转动轴02上,扭簧01的臂分别固定在小腿单元122包括的两杆件上。
可选的,第二电机1242的输出轴上安装有同步带轮04,同步带轮04固定在转动轴02上,主动轮123固定在转动轴02的另一段上,同步带03套接在同步带轮04上,第二电机1242通过驱动同步带03驱动同步带轮04进行转动,从而带动主动轮123的转动。
可选的,本申请实施例提供的轮腿式机器人10中,尾部13包括配重腿131、被动轮132和第三电机133。其中,配重腿131在轮腿式机器人10的运动过程中实现平衡功能,第三电机133用于向被动轮132提供驱动力。
图3-5分别示出了轮腿式机器人10处于两轮站立情况下的主视图、左视图和俯视图;图6示出了轮腿式机器人10在配重腿131处于内收状态下的立体示意图。
在一种可选的实施场景下,轮腿式机器人10还可以处于三轮站立状态。其中。在轮腿式机器人10处于三轮站立情况下,图7-9示出了轮腿式机器人10处于三轮站立情况下的主视图、左视图和俯视图;图10和11分别示出了轮腿式机器人10处于三轮站立情况下的不同立体图。
参考图7,以大腿单元121包括的两杆件的轴心线构成的位置角度是θ为例,位置角度θ<180°,机构可处于自稳状态。
在一种可选的实施场景下,轮腿式机器人10还可以具有其他形态,图12给出了一种形态的示例。
应当理解的是,轮腿式机器人10作为欠驱动系统机器人中的一种,本申请以下实施例仅以轮腿式机器人10来进行示例,轮腿式机器人10的具体结构和所具有的形态可根据实际情况设定,不对本申请构成限定。
为实现轮腿式机器人10的平衡,通常需要对轮腿式机器人10进行平衡反馈控制。平衡反馈控制主要是,将自我平衡测量值反馈给控制系统,使最后的平衡测量值达到标准。
示意性的,图13是本申请一个示例性实施例提供的三个空间角度的示意图,本申请实施例主要通过三个空间角度进行平衡:俯仰角(pitch)、偏航角(yaw)以及横滚角(roll)。
参考图13,针对轮腿式机器人10建立三维控件的右手笛卡尔坐标系,其中,俯仰角是围绕x轴旋转的角,x轴为沿轮腿式机器人10前进方向的坐标轴,对应横滚角,后续使用θ表示;偏航角是围绕y轴旋转的角,y轴为沿轮腿式机器人10双轮连接方向的坐标轴,对应俯仰角,后续使用φ表示;翻滚角是围绕z轴旋转的角,z轴为竖直向上方向的坐标轴,对应偏航角,后续使用
针对三个空间角度方向的平衡控制分别进行说明:
俯仰角pitch方向的平衡控制:
pitch方向的角度表示轮腿式机器人10在前进方向上的摆动幅度,也即,pitch方向的角度表示轮腿式机器人10在车轮转动的控制方向上前后摇摆的角度,是由于每个车轮与运动面之间仅存在单接触点,且轮腿式机器人10的车轮横向排列产生的。
pitch方向上的控制由多闭环比例-积分-微分(PID)控制器组成。其中,将轮腿式机器人10投影至二维平面上,形成二维平面简化模型,X表示车轮中心在二维平面简化模型中横向移动的距离,假设轮子不打滑不离地的情况下,X等于轮子转动的角度与轮子的半径的乘积。
示意性的,
图14示出本申请实施例一个示例性实施例提供的pitch方向的平衡控制的框图。其中,最外层的控制参考量是轮子中心移动的速度参考值
首先,获取车轮中心移动的参考速度
其次,该θ
同时,轮腿式机器人10的状态发生相应的改变后,θ、
根据上述平衡控制得到的τ可作为轮腿式机器人10的全身的类型控制器的轮子转动参考信号,该参考信号的计算生成方法有多种实现方式,本申请仅为示例性举例,其他获取τ的计算生成方法不对本申请造成限制。
横滚角roll方向的平衡控制:
可选地,roll方向的角度表示轮腿式机器人在两腿长度不一致,或者两腿所处高度不一致而导致的横向摆动幅度,则向PID控制器输入理想角度,并根据当前的roll角度与理想角度之差对轮腿式机器人的腿长进行控制,从而保持轮腿式机器人的两腿支撑轮腿式机器人主体部分达到的高度一致。通常,理想角度为0,根据PID控制器计算在当前roll角度下,需要变化的腿长,并根据需要变化的腿长计算关节角度变化量,从而对腿部构型的关节角度进行控制。
示意性的,请参考图15,将理想角度
偏航角yaw方向的平衡控制:
yaw方向的角度表示轮腿式机器人在旋转过程中产生的角度,本实施例中,用φ表示轮腿式机器人的偏航角,
基于前述内容,本申请提供了一种移动机器人的运动控制方法,能够使得移动机器人实现类双足运动。应当理解的是,类双足运动是模仿人类进行左右腿交替运动的一种步态运动,该步态运动可以具体实现为交替行走、原地踏步等多种方式。比如,移动机器人进行原地踏步运动,移动机器人的第一车轮部和第二车轮部的着地位置保持不变;又如,移动机器人以交替行走的步态进行直线运动、曲线运动、跨越障碍运动等,移动机器人的第一车轮部和第二车轮部根据不同的运动发生位移。
在一些实施例中,移动机器人是欠驱动系统机器人。其中,欠驱动系统机器人是指驱动数量少于关节自由度数量的机器人。其中,欠驱动系统机器人的轮子电机在俯仰角(pitch)方向上,用于负责控制轮子的转动位置,且负责基座部的姿态平衡控制和pitch姿态的调整。这是基于:基座部的姿态和轮子的转动距离在动力学上是耦合的,可通过二者之间的动力学关系,根据动力学关系来实现控制。
示例性的,双轮平衡的轮腿式机器人是欠驱动系统机器人的一种类型。相较于传统的两足机器人,这一类型的机器人存在一个共同的特性,也即,腿部所能运动的平面与基座部是垂直的,也即,腿部的运动平面没有横滚角(roll)方向的自由度。
可以理解为,本申请实施例中,欠驱动系统机器人是在空间中缺乏一个自由度的机器人。可选的,本申请实施例提供的欠驱动系统机器人是实现双轮平衡的轮腿式机器人,其腿部的运动平面和基座部之间缺乏横滚角方向自由度。以轮腿式机器人包括第一车轮部、第二车轮部、以及与第一车轮部和第二车轮部连接的基座部为例,第一车轮部和第二车轮部的腿部的运动平面与基座部保持垂直。
对于两足机器人而言,由于两足机器人具有足部,从而使得两足机器人在俯仰角方向上本身就具有平衡性;而对于欠驱动系统机器人而言,其单个腿部的运动平面与基座部处于位置固定(比如垂直)的关系,从而使得腿部的运动仅具有横滚角方向和偏航角方向上的自由度,而缺乏俯仰角方向上的自由度,且腿部的运动缺乏横滚角方向上的旋转自由度。
基于此,双足机器人的运动控制方法将无法实现机器人的质心在指定方向上的稳态调整,从而无法用于实现对腿部的运动平面和基座部之间缺乏横滚角方向自由度的机器人的迈步动作生成和运动控制。
以类双足运动是原地踏步运动为例,双足机器人可通过零力矩点(Zero MomentPoint,ZMP)来生成运动轨迹,该种运动轨迹的生成方式不需要考虑俯仰角方向上的平衡控制。而对于欠驱动系统机器人而言,需要考虑俯仰角方向和横滚角方向上的平衡控制。示意性的,本申请实施例提供的欠驱动系统机器人的运动控制方法中,可通过欠驱动系统机器人的腿部的长度变化、车轮与地面的接触力等相关信息,来改变欠驱动系统机器人的质心位置的改变和姿态变化,从而实现欠驱动系统机器人的平衡控制,使得类双足运动的步态应用于欠驱动系统机器人成为可能。
应当理解的是,本申请实施例涉及的移动机器人,可以是欠驱动系统机器人。更进一步的,本申请实施例涉及的移动机器人,是能够实现双轮平衡的欠驱动系统机器人,比如实现双轮平衡的轮腿式机器人。其中,该种类型的机器人的腿部的运动平面和基座部之间缺乏横滚角方向自由度。以轮腿式机器人包括第一车轮部、第二车轮部、以及与第一车轮部和第二车轮部连接的基座部为例,第一车轮部和第二车轮部的腿部的运动平面与基座部保持垂直。
图17示出了本申请一个示例性实施例提供的移动机器人的运动控制方法的流程图。
在一些实施例中,移动机器人是欠驱动系统机器人。
其中,移动机器人包括具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部、以及与第一车轮部和第二车轮部连接的基座部。参考图1,以欠驱动系统机器人是轮腿式机器人10为例,轮腿式机器人10包括两个车轮部12,这两个车轮部12即可理解为第一车轮部和第二车轮部。
图1示出的轮腿式机器人10的尾部13处于展开状态,图6示出的轮腿式机器人10的尾部13处于收起状态。示例性的,以尾部13处于收起状态为例,轮腿式机器人10的前进方向为由配重腿131指向被动轮132的方向。
以下实施例中,均以第一车轮部是位于轮腿式机器人10的前进方向的左侧的车轮部12,第二车轮部是位于轮腿式机器人10的前进方向的右侧的车轮部12为例进行描述。
其中,第一车轮部包括第一腿部和第一车轮,第二车轮部包括第二腿部和第二车轮,第一腿部和第二腿部均包括大腿单元121和小腿单元122。应当理解的是,第一腿部和第二腿部具有伸缩功能,第一车轮部对应有第一驱动电机,第二车轮部对应有第二驱动电机,第一驱动电机和第二驱动电机分别用于驱动不同的车轮部进行运动,具体驱动方式可参考前述内容,不再赘述。
应当理解的是,本申请实施例涉及的移动机器人可以是欠驱动系统机器人。更进一步的,本申请实施例涉及的移动机器人,是能够实现双轮平衡的欠驱动系统机器人,比如实现双轮平衡的轮腿式机器人。其中,该种类型的机器人的腿部的运动平面和基座部之间缺乏横滚角方向自由度。以轮腿式机器人包括第一车轮部、第二车轮部、以及与第一车轮部和第二车轮部连接的基座部为例,第一车轮部和第二车轮部的腿部的运动平面与基座部保持垂直。
以下均以移动机器人是欠驱动系统机器人进行详细说明:
示意性的,本申请实施例提供的运动控制方法包括:
步骤102:控制第一车轮部和第二车轮部处于站立平衡状态。
示意性的,基座部在站立平衡状态下与水平基准面平行。
其中,基准面是指用来定义三维地球形状的一组参数和控制点,水平基准面是基准面的一种,水平基准面上的任意一点与地心的连线均垂直于该点的地面切线。
在一种可选的实施场景下,移动机器人位于平地上,基座部在站立平衡状态下与地面保持平行;在另一种可选的实现场景下,移动机器人位于斜坡上,基座部在站立平衡状态下与水平基准面保持平行。也可以理解为,在移动机器人的控制场景中,移动机器人可能面对多种路况。以路况包括平地路况和斜坡路况为例,无论移动机器人在何种路况下进行运动,若移动机器人进行类双足运动,则基座部在站立平衡状态下均与平地路况时的地面保持平行。
可以理解为,站立平衡状态是移动机器人处于静态平衡或动态平衡的一种状态,在该种状态下,基座部保持与水平基准面平行,且移动机器人保持机身平衡。在一些实施例中,移动机器人在站立平衡状态下的位置保持不变,也即不存在位移;在另一些实施例中,移动机器人在站立平衡状态下进行运动,也即存在位移。以下实施例均以移动机器人在站立平衡状态下的位置保持不变为例。
以欠驱动系统机器人是轮腿式机器人为例,图18示出了本申请一个示例性实施例提供的站立平衡状态的示意图。其中,轮腿式机器人10包括基座部11、第一车轮部1201和第二车轮部1202。
参考前述内容,轮腿式机器人10的前进方向为由配重腿131指向被动轮132的方向,也可以理解为被动轮132指向纸面的方向。示例性的,第一车轮部1201是位于轮腿式机器人10的前进方向的左侧的车轮部,第二车轮部1202是位于轮腿式机器人10的前进方向的右侧的车轮部。
参考图18,轮腿式机器人10位于平地上,在站立平衡状态下,第一车轮部1201和第二车轮部1202均着地,基座部11与地面保持平行。可选的,第一车轮部1201和第二车轮部1202的高度相同,也即,第一车轮部1201和第二车轮部1202在站立平衡状态下处于等高状态。因此,在欠驱动系统机器人位于平地上时,站立平衡状态也可理解为等高状态。
步骤104:控制移动机器人基于站立平衡状态进行类双足运动。
示意性的,在类双足运动的过程中,第一车轮部和第二车轮部交替着地,基座部倾斜摇摆。
其中,类双足运动是模仿人类进行左右腿交替运动的一种步态运动,该步态运动可具体实现为交替行走、原地踏步等多种方式。比如,移动机器人进行原地踏步运动,移动机器人的第一车轮部和第二车轮部的着地位置保持不变;又如,移动机器人以交替行走的步态进行直线运动、曲线运动、跨越障碍运动等,移动机器人的第一车轮部和第二车轮部根据不同的运动状态发生位移。
以类双足运动是原地踏步运动为例,在原地踏步运动的过程中,第一车轮部和第二车轮部模仿人类的双足,进行交替抬举的动作,以实现原地踏步。
根据前述内容,第一车轮部和第二车轮部具有伸缩腿部。以第一车轮部包括第一腿部,第二车轮部包括第二腿部为例,第一车轮部和第二车轮部的交替着地、基座部的倾斜摇摆可通过第一腿部和第二腿部的交替伸缩实现。
示例性的,在站立平衡状态下,控制第一腿部缩短且第二腿部伸长,以使得基座部向第一方向发生倾斜,此时的第一车轮部和第二车轮部持续保持着地的状态;随后可控制第一腿部伸长且第二腿部缩短,以使得第二车轮部抬举而离地悬空;在第一腿部持续伸长且第二腿部持续缩短一定时长后,第二车轮部将由离地悬空重新变为着地,此时的基座部也将恢复为与水平基准面平行的状态,也即移动机器人恢复为站立平衡状态;随后可控制第一腿部继续伸长且第二腿部继续缩短,以使得基座部向第二方向发生倾斜,此时的第一车轮部和第二车轮部持续保持着地的状态,且第一方向和第二方向是相反的方向;随后可控制第一腿部缩短且第二腿部伸长,以使得第一车轮部抬举而离地悬空,在第一腿部持续缩短且第二腿部持续伸长一定时长后,第一车轮部将由离地悬空重新变为着地,此时的基座部也将恢复为与水平基准面平行的状态,也即移动机器人恢复为站立平衡状态。
基于上述过程,移动机器人完成了一个周期的原地踏步运动。随后,可基于前述内容给出的过程进行循环控制,以实现移动机器人的多个周期的原地踏步运动。
综上所述,本申请实施例提供的移动机器人的运动控制方法中,通过具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部,实现了控制移动机器人基于站立平衡状态进行类双足运动,从而为移动机器人提供了一种新的运动方式。其中,类双足运动具有较高的地形适应性、较强的应用价值以及较强的鲁棒性和稳定性。
基于图17,图19是本申请一个示例性实施例提供的移动机器人的运动控制方法的流程图,步骤104可实现为步骤1041、步骤1042、步骤1043和步骤1044,将移动机器人的类双足运动分为站立平衡状态、第一倾斜状态、站立平衡状态、第二倾斜状态、站立平衡状态的循环转换。
以第一车轮部包括第一腿部和第一车轮,第二车轮部包括第二腿部和第二车轮为例,图20是本申请一个示例性实施例提供的类双足运动的动作分解图。
在一些实施例中,移动机器人是欠驱动系统机器人。
以欠驱动系统机器人在平地上运动为例,若需要控制欠驱动系统机器人进行类双足运动,首先控制第一车轮部和第二车轮部处于站立平衡状态。其中,在站立平衡状态下,第一车轮和第二车轮着地,基座部与地面保持平行。
可选的,以第一车轮部位于基座部的第一方向,第二车轮部位于基座部的第二方向为例,欠驱动系统机器人的类双足运动可实现为如下:
1、控制欠驱动系统机器人从站立平衡状态变化为第一倾斜状态。
示意性的,在站立平衡状态下,控制第一车轮部的第一腿部缩短,第二车轮部的第二腿部伸长,以使得欠驱动系统机器变化为第一倾斜状态。
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐从由平行于地面的水平状态向第一方向倾斜,第一车轮和第二车轮均着地。
参考图20,欠驱动系统机器人位于平地路况中。在站立平衡状态下,欠驱动系统机器人保持静止平衡,第一车轮部和第二车轮部的高度相同,以使得基座部与地面保持平行。
随后,通过电机驱动第一车轮部和第二车轮部,以控制第一腿部缩短且第二腿部伸长。此时,基于第一腿部和第二腿部与基座部相连,将带动基座部发生倾斜,基座部将由平行于地面的水平状态向第一方向倾斜。同时,控制第一车轮和第二车轮保持着地状态。
2、欠驱动系统机器人从第一倾斜状态变化为第一单轮着地状态。
示意性的,在第一倾斜状态下,控制第一车轮部的第一腿部伸长,且第二车轮部的第二腿部缩短,以使得欠驱动系统机器人变化为第一单轮着地状态。
其中,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态。
参考图20,在第一腿部缩短且第二腿部伸长的过程,第一车轮和第二车轮始终保持着地状态。可选的,在欠驱动系统机器人的机身的倾斜程度满足切换状态条件的情况下,通过电机驱动第一车轮部和第二车轮部,以控制第一腿部伸长且第二腿部缩短。应当理解的是,在满足切换状态条件的时刻,基座部在第一方向上的倾斜角度将达到最大;在从第一倾斜状态向第一单轮着地状态变化时,第一腿部的伸长和第二腿部的缩短是同时进行的,且基座部逐渐向第二方向倾斜。
随后,基于第一腿部和第二腿部的长度变化,将导致第一车轮仍然保持着地状态,但第二车轮抬高而离地悬空。此时,欠驱动系统机器人仍然保持机身平衡,且基座部在第一方向上的倾斜角度将随着第一腿部和第二腿部的伸缩逐渐变小。
3、控制欠驱动系统机器人从第一单轮着地状态恢复为站立平衡状态。
示意性的,在第一单轮着地状态下,控制第一腿部持续伸长,且第二腿部持续缩短,以使得欠驱动系统机器从第一单轮着地状态恢复为站立平衡状态。
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐向第二方向倾斜直至恢复为平行于地面的水平状态,第二车轮由悬空恢复着地。
参考图20,随着第一腿部的持续伸长和第二腿部的持续缩短,基于第一腿部和第二腿部的长度变化,基座部向第二方向的倾斜将导致基座部在第一方向上的倾斜角度逐渐缩小,直至恢复为平行于地面。此时,第二车轮将由悬空恢复为着地,从而使得欠驱动系统机器人恢复为站立平衡状态。
4、控制欠驱动系统机器人从站立平衡状态变化为第二倾斜状态。
示意性的,在站立平衡状态下,控制第一车轮部的第一腿部伸长,第二车轮部的第二腿部缩短,以使得欠驱动系统机器变化为第二倾斜状态。
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐从由平行于地面的水平状态向第二方向倾斜,第一车轮和第二车轮均着地。
参考图20,欠驱动系统机器人恢复站立平衡状态后,可通过驱动第一车轮部和第二车轮部,以控制第一腿部伸长且第二腿部缩短。此时,基于第一腿部和第二腿部与基座部相连,将带动基座部发生倾斜,基座部将由平行于地面的水平状态向第二方向倾斜。同时,控制第一车轮和第二车轮保持着地状态。
5、欠驱动系统机器人从第二倾斜状态变化为第二单轮着地状态。
示意性的,在第二倾斜状态下,控制第一车轮部的第一腿部缩短,且第二车轮部的第二腿部伸长,以使得欠驱动系统机器人变化为第二单轮着地状态。
其中,第二单轮着地状态是第一车轮悬空且第二车轮着地的状态。
参考图20,在第一腿部伸长且第二腿部缩短的过程,第一车轮和第二车轮始终保持着地状态。可选的,在欠驱动系统机器人的机身的倾斜程度满足切换状态条件的情况下,通过电机驱动第一车轮部和第二车轮部,以控制第一腿部缩短且第二腿部伸长。应当理解的是,在满足切换状态条件的时刻,基座部在第二方向上的倾斜角度将达到最大;在从第二倾斜状态向第二单轮着地状态变化时,第一腿部的缩短和第二腿部的伸长是同时进行的,且基座部逐渐向第一方向倾斜。
随后,基于第一腿部和第二腿部的长度变化,将导致第二车轮仍然保持着地状态,但第一车轮抬高而离地悬空。此时,欠驱动系统机器人仍然保持机身平衡,且基座部在第二方向上的倾斜角度将随着第一腿部和第二腿部的伸缩逐渐变小。
6、控制欠驱动系统机器人从第二单轮着地状态恢复为站立平衡状态。
示意性的,在第二单轮着地状态下,控制第一腿部持续缩短,且第二腿部持续伸长,以使得欠驱动系统机器从第二单轮着地状态恢复为站立平衡状态。
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐向第一方向倾斜直至恢复为平行于地面的水平状态,第一车轮由着地变为悬空后再次恢复着地。
参考图20,随着第一腿部的持续缩短和第二腿部的持续伸长,基于第一腿部和第二腿部的长度变化,基座部向第一方向的倾斜将导致基座部在第二方向上的倾斜角度逐渐缩小,直至恢复为平行于地面。此时,第一车轮将由悬空恢复为着地,从而使得欠驱动系统机器人恢复为站立平衡状态。
上述过程给出了欠驱动系统机器人在类双足运动中的一个运动周期。其中,在一个运动周期内,基座部逐步经历与地面平行、向第一方向倾斜、恢复为与地面平行、向第二方向倾斜、恢复为与地面平行的过程,以形成了基座部的倾斜摇摆。
应当理解的是,循环重复上述过程给出的六个步骤,能够实现类双足运动的多个运动周期,不再赘述。
参考图19,以第一车轮部位于基座部的第一方向,第二车轮部位于基座部的第二方向为例,步骤1041、步骤1042、步骤1043和步骤1044具体如下:
步骤1041:控制移动机器人从站立平衡状态变化为第一倾斜状态。
示意性的,第一倾斜状态是基座部向第一方向倾斜的状态。
在一些实施例中,移动机器人是欠驱动系统机器人。
以欠驱动系统机器人是轮腿式机器人为例,图21示出了本申请一个示例性实施例提供的第一倾斜状态的示意图。其中,轮腿式机器人10包括基座部11、第一车轮部1201和第二车轮部1202。
参考前述内容,轮腿式机器人10的前进方向为由配重腿131指向被动轮132的方向,也可以理解为被动轮132指向纸面的方向。示例性的,第一车轮部1201是位于轮腿式机器人10的前进方向的左侧的车轮部,第二车轮部1202是位于轮腿式机器人10的前进方向的右侧的车轮部。
参考图21,轮腿式机器人10位于平地上,在第一倾斜状态下,第一车轮部1201和第二车轮部1202均着地,基座部11向第一方向倾斜。其中,基座部11向第一方向的倾斜将导致轮腿式机器人10的机身的倾斜。可选的,轮腿式机器人10的倾斜角度用于指示轮腿式机器人10的机身的倾斜角度。参考图21,该倾斜角度用于指示基座部11与地面的水平面的夹角。
可选的,步骤1041可实现为如下:
控制第一车轮部的第一腿部缩短,第二车轮部的第二腿部伸长,以使得欠驱动系统机器处于第一倾斜状态;
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐从由平行于水平基准面的水平状态向第一方向倾斜,第一车轮和第二车轮均着地。
在一种可选的实现场景下,移动机器人位于平地上,第一腿部和第二腿部在站立平衡状态下的高度相等。随后,控制第一腿部缩短且第二腿部伸长,以使得第一腿部的高度降低且第二腿部的高度增加。
在另一种可选的实现场景下,移动机器人位于斜坡上,第一腿部和第二腿部在站立平衡状态下的高度不同。以第一腿部高于第二腿部为例,在控制第一腿部缩短且第二腿部伸长的过程中,在第一时间段内的第一腿部的高度将仍然高于第二腿部的高度。若持续控制第一腿部缩短且第二腿部伸长,则在第一时段过后的某一时刻,第一腿部和第二腿部的高度可能达到相等。随后,若持续控制第一腿部缩短且第二腿部伸长,则在第二时间段内的第一腿部的高度将低于第二腿部的高度,第二时间段是第一时间段后的时间段。
步骤1042:控制移动机器人从第一倾斜状态恢复为站立平衡状态。
示意性的,在移动机器人从第一倾斜状态恢复为站立平衡状态的过程中,第一车轮部的第一车轮着地,第二车轮部的第二车轮悬空。
参考前述内容,移动机器人从第一倾斜状态恢复到站立平衡状态的过程中,第一车轮保持着地状态,第二车轮将依次经历着地、悬空、恢复着地的变化。其中,在第一车轮着地且第二车轮悬空的情况下,可将移动机器人的状态视为第一单轮着地状态。
可选的,步骤1042可实现为如下:
控制第一车轮部的第一腿部伸长,且第二车轮部的第二腿部缩短,以使得移动机器人处于第一单轮着地状态,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态;
控制第一腿部持续伸长,且第二腿部持续缩短,以使得欠驱动系统机器从第一单轮着地状态恢复为站立平衡状态;
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐向第二方向倾斜直至恢复为平行于水平基准面的水平状态,第二车轮由着地变为悬空后再次恢复着地。
在一些实施例中,移动机器人是欠驱动系统机器人。
仍然以欠驱动系统机器人是轮腿式机器人为例,图22示出了本申请一个示例性实施例提供的第一单轮着地状态的示意图。其中,轮腿式机器人10包括基座部11、第一车轮部1201和第二车轮部1202,轮腿式机器人10的前进方向为由配重腿131指向被动轮132的方向。
参考图22,在第一单轮着地状态下,第一车轮部1201着地,且第二车轮部1202悬空,基座部11向第一方向倾斜。其中,基座部11向第一方向的倾斜将导致轮腿式机器人10的机身的倾斜。
在一种可选的实现场景下,移动机器人位于平地上,则第一腿部的长度和第二腿部在站立平衡状态下的高度相同。此时,在移动机器人从第一倾斜状态恢复为站立平衡状态的过程中,第一腿部和第二腿部的高度将发生变化,该变化也可采用第一腿部和第二腿部的长度来进行衡量。
可选的,在第一腿部的长度和第二腿部的长度在站立平衡状态下相同的情况下(也即移动机器人位于平地上),移动机器人在第一时长内处于第一单轮着地状态。其中:
在第一时长内,第一腿部的长度短于第二腿部的长度;
在第一时长的终止节点下,第一腿部和第二腿部等长。
其中,在第一时长的初始节点的前一个时间节点下,移动机器人仍然处于第一倾斜状态。此时,第一腿部的长度将远小于第二腿部的长度;且基于第一腿部的长度缩短至最短且第二腿部的长度伸长至最长,基座部在第一方向上的倾斜角度达到最大。
随后,在第一时长的初始节点下,控制第一腿部伸长且第二腿部缩短,此时的第一腿部的长度仍然小于第二腿部的长度。随着时间推移,基于第一腿部的持续伸长且第二腿部持续缩短,第一腿部和第二腿部的长度差距逐渐缩小;直至达到第一时长的终止节点下,第一腿部和第二腿部的长度相同。
步骤1043:控制移动机器人从站立平衡状态变化为第二倾斜状态。
示意性的,第二倾斜状态是基座部向第二方向倾斜的状态。
在一些实施例中,移动机器人是欠驱动系统机器人。
以欠驱动系统机器人是轮腿式机器人为例,图23示出了本申请一个示例性实施例提供的第二倾斜状态的示意图。其中,轮腿式机器人10包括基座部11、第一车轮部1201和第二车轮部1202,轮腿式机器人10的前进方向为由配重腿131指向被动轮132的方向。
参考图23,轮腿式机器人10位于平地上,在第二倾斜状态下,第一车轮部1201和第二车轮部1202均着地,基座部11向第二方向倾斜。其中,基座部11向第二方向的倾斜将导致轮腿式机器人10的机身的倾斜。
可选的,步骤1043可实现为如下:
控制第一车轮部的第一腿部伸长,第二车轮部的第二腿部缩短,以使得欠驱动系统机器处于第二倾斜状态;
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐从由平行于水平基准面的水平状态向第二方向倾斜,第一车轮和第二车轮均着地。
在一种可选的实现场景下,移动机器人位于平地上,第一腿部和第二腿部恢复站立平衡状态后的高度相等。随后,控制第一腿部伸长且第二腿部缩短,以使得第一腿部的高度增加且第二腿部的高度降低。
在另一种可选的实现场景下,移动机器人位于斜坡上,第一腿部和第二腿部恢复站立平衡状态后的高度不同。以第一腿部高于第二腿部为例,在控制第一腿部伸长且第二腿部缩短的过程中,在第三时间段内的第一腿部的高度将仍然高于第二腿部的高度,第三时间段是第二时间段后的时间段,第二时间段的描述可参考前述内容。若持续控制第一腿部伸长且第二腿部缩短,则在第三时段过后的某一时刻,第一腿部和第二腿部的高度可能达到相等。随后,若持续控制第一腿部伸长且第二腿部缩短,则在第四时间段内的第一腿部的高度将低于第二腿部的高度,第四时间段是第三时间段后的时间段。
步骤1044:控制移动机器人从第二倾斜状态恢复为站立平衡状态。
示意性的,在移动机器人从第二倾斜状态恢复为站立平衡状态的过程中,第二车轮着地,第一车轮悬空。
参考前述内容,移动机器人从第二倾斜状态恢复到站立平衡状态的过程中,第二车轮保持着地状态,第一车轮将依次经历着地、悬空、恢复着地的变化。其中,在第一车轮悬空且第二车轮着地的情况下,可将移动机器人的状态视为第二单轮着地状态。
可选的,步骤1044可实现为如下:
控制第一车轮部的第一腿部缩短,且第二车轮部的第二腿部伸长,以使得移动机器人处于第二单轮着地状态,第二单轮着地状态是第一车轮悬空且第二车轮着地的状态;
控制第一腿部持续缩短,且第二腿部持续伸长,以使得欠驱动系统机器从第二单轮着地状态恢复为站立平衡状态;
其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐向第一方向倾斜直至恢复为平行于水平基准面的水平状态,第一车轮由着地变为悬空后再次恢复着地。
在一些实施例中,移动机器人是欠驱动系统机器人。
仍然以欠驱动系统机器人是轮腿式机器人为例,图24示出了本申请一个示例性实施例提供的第二单轮着地状态的示意图。其中,轮腿式机器人10包括基座部11、第一车轮部1201和第二车轮部1202,轮腿式机器人10的前进方向为由配重腿131指向被动轮132的方向。
参考图24,在第二单轮着地状态下,第一车轮部1201悬空,且第二车轮部1202着地,基座部11向第二向倾斜。其中,基座部11向第二方向的倾斜将导致轮腿式机器人10的机身的倾斜。
在一种可选的实现场景下,移动机器人位于平地上,则第一腿部的长度和第二腿部在站立平衡状态下的高度相同。此时,在移动机器人从第二倾斜状态恢复为站立平衡状态的过程中,第一腿部和第二腿部的高度将发生变化,该变化也可采用第一腿部和第二腿部的长度来进行衡量。
可选的,在第一腿部的长度和第二腿部的长度在站立平衡状态下相同的情况下(也即移动机器人位于平地上),移动机器人在第二时长内处于第二单轮着地状态,其中:
在第二时长内,第一腿部的长度长于第二腿部的长度;
在第二时长的终止节点下,第一腿部和第二腿部等长。
其中,在第二时长的初始节点的前一个时间节点下,移动机器人仍然处于第二倾斜状态。此时,第一腿部的长度将远长于第二腿部的长度;且基于第一腿部的长度伸长至最长且第二腿部的长度缩短至最短,基座部在第二方向上的倾斜角度达到最大。
随后,在第二时长的初始节点下,控制第一腿部缩短且第二腿部伸长,此时的第一腿部的长度仍然长于第二腿部的长度。随着时间推移,基于第一腿部的持续缩短且第二腿部持续伸长,第一腿部和第二腿部的长度差距逐渐缩小;直至达到第二时长的终止节点下,第一腿部和第二腿部的长度相同。
以第一倾斜状态为左倾状态,第二倾斜状态为右倾状态为例,图25是本申请一个示例性实施例提供的类双足运动的动作分解图。其中,图中的左侧垂线用于标识左侧车轮部,右侧垂线用于标识右侧车轮部,两条垂线与两条水平线的围合区域用于标识基座部。
参考图25,以移动机器人位于平地为例,类双足运动可实现为如下:
控制左侧车轮部和右侧车轮部处于等高状态,以使得基座部与地面保持平行。
控制左侧车轮部的腿部缩短且右侧车轮部的腿部伸长,以使得基座部随两侧车轮部的伸缩而向左侧倾斜。同时,控制两侧车轮部的轮子保持着地状态,以使得移动机器人从两侧车轮部的等高状态逐渐变化为左倾状态。可选的,在移动机器人的倾斜角度达到第一极限值时,停止对两侧车轮部的伸缩控制,以避免移动机器人侧翻。其中,移动机器人的倾斜角度的第一极限值可根据实际需要设定,如根据移动机器人的质量、两侧车轮部的腿部的长度变化来确定。
在移动机器人的倾斜角度达到第一极限值的情况下,控制左侧车轮部的腿部伸长且右侧车轮部的腿部缩短。此时的右侧车轮部的轮子将悬空离地,移动机器人进入第一单轮着地状态。随着左侧车轮部的腿部伸长和右侧车轮部的腿部缩短,两侧车轮部的腿部长度将在第一单轮着地状态的终止时刻达到相同,移动机器人也将从第一单轮着地状态恢复为站立平衡状态。此时,受两侧车轮部的伸缩,基座部也由左倾恢复为与地面平行。
与左倾状态类似,在移动机器人恢复为站立平衡状态后,控制左侧车轮部的腿部伸长且右侧车轮部的腿部缩短,以使得基座部随两侧车轮部的伸缩而向右侧倾斜。同时,控制两侧车轮部的轮子保持着地状态,以使得移动机器人从两侧车轮部的等高状态逐渐变化为右倾状态。可选的,在移动机器人的倾斜角度达到第二极限值时,停止对两侧车轮部的伸缩控制,以避免移动机器人侧翻。其中,移动机器人的倾斜角度的第二极限值可根据实际需要设定,如根据移动机器人的质量、两侧车轮部的腿部的长度变化来确定。
在移动机器人的倾斜角度达到第二极限值的情况下,控制左侧车轮部的腿部缩短且右侧车轮部的腿部伸长。此时的左侧车轮部的轮子将悬空离地,移动机器人进入第二单轮着地状态。随着左侧车轮部的腿部缩短和右侧车轮部的腿部伸长,两侧车轮部的腿部长度将在第二单轮着地状态的终止时刻达到相同,移动机器人也将从第二单轮着地状态恢复为站立平衡状态。此时,受两侧车轮部的伸缩,基座部也由右倾恢复为与地面平行。
综上所述,本申请实施例提供的移动机器人的运动控制方法中,给出了类双足运动的一个运动周期的具体过程。其中,通过对具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部的伸缩控制,能够实现移动机器人的类双足运动,以提高移动机器人的灵活性。
类双足运动过程中的状态切换条件:
根据前述内容,为实现对移动机器人的类双足运动的运动控制,可在满足不同条件的情况下可在移动机器人进行状态切换。
可选的,在移动机器人的倾斜角度达到指定限幅的情况下,进行移动机器人的状态切换。其中,移动机器人的倾斜角度用于指示基座部所在的平面与平行于水平基准面的平面的夹角。参考图25,以移动机器人位于平地为例,移动机器人的倾斜角度可理解为第一平面和第二平面的夹角。其中,第一平面是基座部所在平面,第二平面是平行于地面的平面。
可选的,以移动机器人的倾斜角度作为状态切换条件,具体可包括如下四种情况:
1、移动机器人的倾斜角度达到第一限幅。
可选的,步骤1041可实现为如下:在移动机器人的倾斜角度达到第一限幅时,控制移动机器人从站立平衡状态变化为第一倾斜状态。
以移动机器人位于平地上为例,图26示出了本申请一个示例性实施例提供的站立平衡状态变为第一倾斜状态的示意图。移动机器人在站立平衡状态下时,第一车轮部和第二车轮部等高。随后,控制第一车轮部缩短且第二车轮部伸长。在这一过程中,移动机器人发生姿态变化,基座部向第一车轮部所在的第一方向倾斜。
示意性的,控制第一车轮部缩短且第二车轮部伸长的实现,需要满足如下条件:移动机器人的倾斜角度达到第一限幅θ1。参考图26,θ1可以是0度,也即基座部与地面平行。在另一种可选的实现场景,移动机器人位于斜坡上,θ1仍然可以是0度,此时基座部与地面不再保持平行。
2、移动机器人的倾斜角度达到第二限幅。
可选的,步骤1042可实现为如下:在移动机器人的倾斜角度达到第二限幅时,控制移动机器人从第一倾斜状态恢复为站立平衡状态。
以移动机器人位于平地上为例,图27示出了本申请一个示例性实施例提供的第一倾斜状态恢复为站立平衡状态的示意图。参考图26,在第一倾斜状态下,第一车轮部和第二车轮部着地,随后控制第一车轮部伸长且控制第二车轮部缩短,以使得移动机器人从第一倾斜状态变化为第一单轮着地状态。图27中左侧示出的即为第一倾斜状态变化后的第一单轮着地状态,此时的第一车轮部着地,第二车轮部悬空。随后,继续控制第一车轮部伸长且第二车轮部缩短。在这一过程中,移动机器人发生姿态变化,基座部向第二车轮部所在的第二方向倾斜直至恢复为与地面平行。
示意性的,控制第一车轮部伸长且第二车轮部缩短的实现,需要满足如下条件:移动机器人的倾斜角度达到第二限幅θ2。参考图26和图27,在移动机器人的倾斜角度达到θ1时,控制移动机器人从站立平衡状态向第一倾斜状态变化;在移动机器人的倾斜角度达到θ2时,控制移动机器人从第一倾斜状态向第一单轮着地状态变化,直至恢复为站立平衡状态。
应当理解的是,θ2的取值可根据实际需要进行设定。
示例性的,结合移动机器人的机械结构和质量分布,根据第一车轮部和第二车轮部的腿部的长度大小的变化以及变化速度计算得到移动机器人在类双足运动过程中的中心在地面投影的偏转范围。其中,该偏转范围对移动机器人的姿态变化造成影响,可根据计算得到的偏转范围确定θ2的取值。比如,θ2的取值为10度、15度、20度、25度、30度、35度、40度、45度中的一个。
3、移动机器人的倾斜角度达到第三限幅。
可选的,步骤1043可实现为如下:在移动机器人的倾斜角度达到第三限幅时,控制移动机器人从站立平衡状态变化为第二倾斜状态。
以移动机器人位于平地上为例,图28示出了本申请一个示例性实施例提供的站立平衡状态变为第二倾斜状态的示意图。在恢复站立平衡状态后,第一车轮部和第二车轮部恢复等高。随后,控制第一车轮部伸长且第二车轮部缩短。在这一过程中,移动机器人发生姿态变化,基座部向第二车轮部所在的第二方向倾斜。
示意性的,控制第一车轮部伸长且第二车轮部缩短的实现,需要满足如下条件:移动机器人的倾斜角度达到第三限幅θ3。参考图28,与第一限幅类似,θ3可以是0度,也即基座部与地面平行。在另一种可选的实现场景,移动机器人位于斜坡上,θ3仍然可以是0度,此时基座部与地面不再保持平行。
4、移动机器人的倾斜角度达到第四限幅。
可选的,步骤1044可实现为如下:在移动机器人的倾斜角度达到第四限幅时,控制移动机器人从第二倾斜状态恢复为站立平衡状态。
以移动机器人位于平地上为例,图29示出了本申请一个示例性实施例提供的第二倾斜状态恢复为站立平衡状态的示意图。参考图28,在第二倾斜状态下,第一车轮部和第二车轮部着地,随后控制第一车轮部缩短且控制第二车轮部伸长,以使得移动机器人从第二倾斜状态变化为第二单轮着地状态。图29中左侧示出的即为第二倾斜状态变化后的第二单轮着地状态,此时的第一车轮部悬空,第二车轮部着地。随后,继续控制第一车轮部缩短且第二车轮部伸长。在这一过程中,移动机器人发生姿态变化,基座部向第一车轮部所在的第一方向倾斜直至恢复为与地面平行。
示意性的,控制第一车轮部缩短且第二车轮部伸长的实现,需要满足如下条件:移动机器人的倾斜角度达到第四限幅θ4。参考图26和图27,与第二限幅类似,在移动机器人的倾斜角度达到θ3时,控制移动机器人从站立平衡状态向第二倾斜状态变化;在移动机器人的倾斜角度达到θ4时,控制移动机器人从第二倾斜状态向第二单轮着地状态变化,直至恢复为站立平衡状态。
应当理解的是,θ4的取值可根据实际需要进行设定。
示例性的,结合移动机器人的机械结构和质量分布,根据第一车轮部和第二车轮部的腿部的长度大小的变化以及变化速度计算得到移动机器人在类双足运动过程中的中心在地面投影的偏转范围。其中,该偏转范围对移动机器人的姿态变化造成影响,可根据计算得到的偏转范围确定θ4的取值。比如,θ4的取值为10度、15度、20度、25度、30度、35度、40度、45度中的一个。
类双足运动的分类:
根据前述内容,应当理解的是,类双足运动是模仿人类进行左右腿交替运动的一种步态运动,该步态运动可以具体实现为交替行走、原地踏步等多种方式。
可选的,类双足运动包括如下运动中的至少一种:
·原地踏步运动;
·直线运动;
·曲线运动;
·原地转圈踏步运动;
·跨越障碍运动。
其中,原地踏步运动还可以理解为移动机器人不发生位移的运动,在移动机器人进行原地踏步运动的过程,移动机器人的第一车轮部和第二车轮部的着地位置保持不变。直线运动、曲线运动、跨越障碍运动也可以理解为移动机器人发生位移的运动,在移动机器人以交替行走的步态进行直线运动、曲线运动、原地转圈踏步运动、跨越障碍运动的过程中,移动机器人的第一车轮部和第二车轮部根据不同的运动发生位移。
可选的,类双足运动包括原地踏步运动;在原地踏步运动的过程中,第一车轮部和第二车轮部悬空后的着地位置与初始着地位置相同,或距离差小于第一容差值。
在移动机器人模仿人类进行左右脚交替抬举来实现原地踏步运动的过程中,移动机器人不发生位移,从而使得第一车轮部和第二车轮部在初始着地位置进行悬空和落地。
示意性的,可将第一容差值理解为距离差的误差值,第一容差值可根据实际需要设定。应当理解的是,第一车轮部和第二车轮部悬空后的着地位置与初始着地位置应当是在同一个位置上。为保证移动机器人的机身平衡,可为两个位置的距离差设定一个比较小的容差范围,第一容差值即为该容差范围中的一个数值,如容差范围的最大值。
可选的,类双足运动包括直线运动、曲线运动、原地转圈踏步运动、跨越障碍运动中的至少一种;在直线运动、或曲线运动、或原地转圈踏步运动、或跨越障碍运动的过程中,第一车轮部或第二车轮部悬空后的着地位置与悬空前的着地位置不同,且距离差不小于第二容差值;基座部交替向第三方向和第四方向进行倾斜摇摆,第三方向或第四方向与移动机器人的前进方向的夹角为锐角。
其中,直线运动可以理解为移动机器人模仿人类进行左右脚交替的向前或向后行走,曲线运动可以理解为移动机器人模仿人类进行左右脚交替的S线、8字型、绕桩等多种曲线轨迹的非直线行走,跨越障碍运动可以理解为移动机器人模仿人类进行左右脚交替的翻越如小土堆等障碍的直线或曲线行走。
示意性的,第二容差值可根据实际需要设定。应当理解的是,基于直线运动、曲线运动、原地转圈踏步运动、跨越障碍运动中需要发生位移和/或姿态调整,第一车轮部和第二车轮部悬空后的着地位置与初始着地位置应当是在不同的位置。为实现移动机器人的位移和/或姿态调整,可为两个位置的距离差设定一个预设的容差范围,第二容差值即为该容差范围中的一个数值,如容差范围的最小值。
上述三种运动中,移动机器人均发生位移,从而使得第一车轮部和第二车轮部悬空后的着地位置与悬空前的着地位置不同。同时,基于移动机器人需要发生位移,也将导致移动机器人的质心位置跟随移动机器人的前进方向发生变化。
以曲线运动为例,在移动机器人从站立平衡状态变为第一倾斜状态时,第一车轮部和第二车轮部保持着地。控制移动机器人从第一倾斜状态向第一单轮着地状态变化,此时将控制移动机器人的第一车轮部进行转向,比如控制第一车轮部转向初始前进方向的右前方(可以理解为第三方向);随后,控制移动机器人从第一单轮着地状态恢复为站立平衡状态,则移动机器人的前进方向发生改变,移动机器人将面朝左前方,移动机器人的质心位置也朝向初始前进方向的右前方进行移动。
控制移动机器人从站立平衡状态变为第二倾斜状态,第一车轮部和第二车轮部保持着地。随后,控制移动机器人从第二倾斜状态向第二单轮着地状态变化,此时将控制移动机器人的第二车轮部进行转向,比如控制第二车轮部转向初始前进方向的左前方(可以理解为第四方向);随后,控制移动机器人从第二单轮着地状态恢复为站立平衡状态,则移动机器人的前进方向发生改变,移动机器人将面朝右前方,移动机器人的质心位置也朝向初始前进方向的左前方进行移动。
上述过程中,左前方和右前方与移动机器人的前进方向的夹角为锐角。可以理解为,移动机器人在曲线运动过程中,可以朝向原始前进方向的任意一个子方向前进。
根据前述内容,类双足运动中,在移动机器人从第一车轮着地状态变为第二单轮着地状态的过程中,需要经过一个站立平衡状态进行过渡,以使得移动机器人保持机身平衡。
在一些实施例中,移动机器人还包括与基座部传动连接的尾部,尾部上设置有第三车轮,尾部在站立平衡状态下收起,第三车轮不着地。参考图1示出的轮腿式机器人10,第三车轮即为尾部13上设置的被动轮132;参考图6,尾部13处于收起状态的情况下,被动轮132不着地,可固定在基座部11的底部,避免影响车轮部12的运动。
可选的,步骤104可实现为如下:
控制移动机器人从站立平衡状态变化为第一单轮着地状态,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态;
控制尾部展开,直至第三车轮着地;
控制第一车轮部的第一腿部缩短且第二车轮部的第二腿部伸长,以使得移动机器人从第一单轮着地状态变化为第二单轮着地状态,第二单轮着地状态是第一车轮悬空且第二车轮着地的状态;
控制移动机器人从第二单轮着地状态恢复为站立平衡状态。
其中,移动机器人从站立平衡状态变化为第一单轮着地状态的具体描述可参考前述内容。应当理解的是,当移动机器人处于第二单轮着地状态的情况下,同样可以通过尾部来调整着地的车轮,具体可参考下述内容,不再赘述。
在第一单轮着地状态下,可控制尾部展开直至第三车轮着地,以使得移动机器人在第一车轮和第二车轮着地的状态下保持机身平衡,提高移动机器人的稳定性。
随后,控制第一车轮的第一腿部缩短且第二车轮部的第二腿部伸长,可以理解为,移动机器人的第一腿部抬起且第二腿部放下,直至第二车轮着地。在这一过程中,移动机器人仅有尾部上设置的第三车轮着地;在第二车轮着地后,第一车轮不再缩短,保持悬空,从而使得移动机器人从第一单轮着地状态变化为第二单轮着地状态。
随后,可控制移动机器人从第二单轮着地状态恢复为站立平衡状态。该过程具体可参考前述内容,不再赘述。
根据上述内容,类双足运动中,在移动机器人从第一车轮着地状态变为第二单轮着地状态的过程中,不再需要经过一个站立平衡状态进行过渡,可通过尾部进行辅助,以使得着地的车轮得以更换。
示意性的上述内容给出的从第一车轮着地状态到第二单轮着地状态的变化方式,均可应用于移动机器人的类双足运动,不再赘述。
类双足运动有多种实现方式,上述多个举例中给出了原地踏步运动、直线运动、曲线运动、原地转圈踏步运动、跨越障碍运动的多种具体的实现方式。应当理解的是,其他可实现模仿双足运动的方式均在本申请保护范围之列,不再赘述。
比如,在第一车轮部和第二车轮部之间增加其他运动方式。可选的,本申请实施例所提供的移动机器人的运动控制方法,还包括:
在所述类双足运动中,控制所述第一车轮部和所述第二车轮部进行运动。
示例性的,步骤104可实现为如下:
控制移动机器人从站立平衡状态变化为第一单轮着地状态,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态;
控制第一车轮离地,以使得移动机器人进行至少一次跳跃运动;
控制移动机器人从第一单轮着地状态变化为第二单轮着地状态,第二单轮着地状态是第一车轮悬空且第二车轮着地的状态;
控制第二车轮离地,以使得移动机器人进行至少一次跳跃运动;
控制移动机器人从第二单轮着地状态恢复为站立平衡状态。
其中,移动机器人从站立平衡状态变化为第一单轮着地状态、从第一单轮着地状态变化为第二单轮着地状态、以及从第二单轮着地状态恢复为站立平衡状态均可参考前述内容,不再赘述。
在单轮着地的状态下,可控制着地的车轮离地,以使得移动机器人进行至少一次跳跃动作,从而模仿一种类人的单脚跳动作。应当理解的是,移动机器人的单脚跳次数可根据实际需要进行设定。比如,在第一单轮着地状态下,控制第一车轮离地两次,以使得移动机器人进行两次跳跃运动;随后变为第二单轮着地状态,控制第二车轮离地两次。
类双足运动过程中的车轮状态:
在移动机器人进行类双足运动的过程中,移动机器人处于模仿人类进行左右腿交替运动的状态。参考前述内容,第一车轮部和第二车轮部均包括车轮,相较于人类进行的双足运动,移动机器人还可通过控制车轮进行滑动。
示意性的,在移动机器人进行类双足运动的过程中,还对第一车轮部的第一车轮和/或所述第二车轮部的第二车轮进行锁定或解锁,以使得类双足运动更具灵活性。
可选的,在类双足运动的过程中,第一车轮和第二车轮处于锁定状态。
可选的,在类双足运动的过程中,第一车轮和/或第二车轮处于解锁状态。
在一种可选的实现场景下,第一车轮和第二车轮处于锁定状态,第一车轮和第二车轮被锁死,以使得移动机器人的类双足运动中不再出现车轮滑动的情况。
其中,锁定状态可以理解为,为第一车轮和/或第二车轮确定一个位置不变的参考信号。基于该参考信号,第一车轮和/或第二车轮可在参考点附近进行轻微运动。也即,锁定状态下第一车轮和/或第二车轮在参考点存在运动误差,该误差用于实现移动机器人的机身平衡。应当理解的是,第一车轮和/或第二车轮在参考点的运动误差较小,可忽略不计。
在另一种可选的实现场景下,第一车轮和第二车轮中的至少一个处于解锁状态,以实现解锁状态下的车轮的转向和/或滑动。
可选的,本申请实施例提供的移动机器人的运动控制方法,还包括:
在类双足运动的过程中,控制处于解锁状态的第一车轮部和/或第二车轮部进行运动。
示意性的,第一车轮部和/或第二车轮部在类双足运动中的进行的运动,可以是滑动运动、跳跃运动、旋转运动中的一种。
应当理解的是,第一车轮部和/或第二车轮部在类双足运动中的进行的运动,可以是在站立平衡状态、第一倾斜状态、第一单轮着地状态、第二倾斜状态、第二单轮着地状态中的任意一种状态进行的。
以下以滑动运动为例进行两种不同的举例:
比如,控制第一车轮部和第二车轮部处于站立平衡状态,随后控制移动机器人从站立平衡状态变化为第一倾斜状态。在移动机器人处于第一倾斜状态下,控制第一车轮和第二车轮解锁,随后向第一车轮和第二车轮提供驱动力,以使得第一车轮和第二车轮带动移动机器人以机身倾斜的状态进行滑动。
又如,控制第一车轮部和第二车轮部处于站立平衡状态,随后控制移动机器人从站立平衡状态逐渐变化为第一单轮着地状态。在移动机器人处于第一单轮着地状态下,控制第一车轮解锁,随后控制第一车轮滑动,以使得移动机器人模仿单腿滑冰动作。
示例性的,第一车轮和/或第二车轮的锁定和解锁可在类双足运动中多次进行,从而使得移动机器人可实现滑动和左右车轮部交替着地的混合,进一步提高移动机器人的灵活性。比如,在类双足运动的过程中,多次对第一车轮和/或第二车轮进行锁定和解锁,控制移动机器人进行拟人滑冰表演。
可选的,在类双足运动的过程中,控制处于解锁状态的第一车轮部和/或第二车轮部进行运动,可实现为如下实现方式中的至少一种:
(1)移动机器人做单轮滑动运动。
控制移动机器人从站立平衡状态变化为第一单轮着地状态,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态;
在第一车轮处于解锁状态的情况下,控制第一车轮滑动第一距离。
其中,移动机器人从站立平衡状态变化为第一单轮着地状态的具体描述可参考前述内容。应当理解的是,当移动机器人处于第二单轮着地状态的情况下,同样可以做单轮滑动运动,具体可参考下述内容,不再赘述。
示意性的,在单轮着地的状态下,可对着地的车轮进行解锁,以使其能够处于解锁状态,悬空的车轮可解锁也可不解锁。随后,控制着地的车轮进行滑动以使得移动机器人产生位移。比如,对第一车轮解锁以使其处于解锁状态,第二车轮处于锁定状态;控制第一车轮进行滑动。
其中,第一距离可根据实际需要进行设定,本申请对此不做限定。
在一些实施例中,移动机器人可在第一单轮着地状态或第二单轮着地状态循环进行单轮滑动运动。比如,移动机器人从站立平衡状态变为第一单轮着地状态,随后进行单轮滑动运动;在滑动时长1后,控制移动机器人从第一单轮着地状态变为第二单轮着地状态,随后进行单轮滑动运动。
(2)移动机器人做单轮旋转运动。
控制移动机器人从站立平衡状态变化为第一单轮着地状态,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态;
在第一车轮处于解锁状态的情况下,控制第一车轮进行旋转。
其中,移动机器人从站立平衡状态变化为第一单轮着地状态的具体描述可参考前述内容。应当理解的是,当移动机器人处于第二单轮着地状态的情况下,同样可以做单轮滑动运动,具体可参考下述内容,不再赘述。
示意性的,在单轮着地的状态下,可对着地的车轮进行解锁,以使其能够处于解锁状态,悬空的车轮可解锁也可不解锁。随后,控制着地的车轮进行旋转以使得移动机器人的前进方向发生改变。比如,对第一车轮解锁以使其处于解锁状态,第二车轮处于锁定状态;控制第一车轮进行旋转。
其中,第一车轮的旋转角度可根据实际需要进行设定,本申请对此不做限定。示例性的,第一车轮的旋转角度为360度,以使得移动机器人可模仿进行原地旋转一周的运动。或者,第一车轮的旋转角度可根据移动机器人所处的环境信息确定,环境信息至少包括移动机器人所处的路况信息、周侧障碍物信息等。比如,在移动机器人的周侧有柱体障碍物,可控制第一车轮旋转90度,以改变移动机器人的前进方向,避开障碍物。
在一些实施例中,移动机器人可在第一单轮着地状态或第二单轮着地状态循环进行单轮旋转。比如,移动机器人从站立平衡状态变为第一单轮着地状态,随后控制第一车轮进行单轮旋转90度;在滑动时长2后,控制移动机器人从第一单轮着地状态变为第二单轮着地状态,随后控制第二车轮进行单轮旋转180度;在滑动时长3后,控制移动机器人从第二单轮着地状态变为第一单轮着地状态,随后控制第二车轮进行单轮旋转270度。
(3)移动机器人做滑板运动。
控制移动机器人从站立平衡状态变化为第一单轮着地状态,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态;
在第一车轮处于解锁状态的情况下,控制第一车轮滑动第二距离;
在第二车轮处于锁定状态的情况下,控制第二车轮部的第二腿部伸长直至第二车轮着地后,控制第二腿部缩短直至第二腿部恢复到处于锁定状态时的长度。
其中,移动机器人从站立平衡状态变化为第一单轮着地状态的具体描述可参考前述内容。应当理解的是,当移动机器人处于第二单轮着地状态的情况下,同样可以做滑板运动,具体可参考下述内容,不再赘述。
示意性的,在单轮着地的状态下,可对着地的车轮进行解锁以使其能够处于解锁状态,可对悬空的车轮不解锁以使其处于锁定状态。随后,控制着地的车轮进行滑动以使得移动机器人产生位移;在滑动一定距离后,控制悬空的车轮着地一次后抬起,继续控制着地的车轮进行滑动。比如,对第一车轮解锁以使其处于解锁状态,且不对第二车轮进行解锁以使其处于锁定状态;控制第一车轮滑动第二距离后,控制第二车轮部的第二腿部伸长再缩短,以使得第二车轮做一个类似于单点着地再收起的动作;随后继续控制第一车轮进行滑动。
其中,第二距离可根据实际需要进行设定,本申请对此不做限定。
应当理解的是,第一车轮和第二车轮的解锁或锁定状态,既可以在移动机器人处于站立平衡状态下进行控制,也可在移动机器人处于单轮着地得状态下进行控制,本申请对此不做限定。
应当理解的是,上述内容仅为示例性举例,结合车轮部的其他运动方式和左右车轮部交替着地的运动均在本申请保护范围之列,不再赘述。
前述多个实施例中给出了类双足运动的实现方式。其中,每种实现方式下,第一车轮和第二车轮可进行多种不同类型的滑动、旋转、跳动等动作。应当理解的是,上述多种类双足运动的实现方式和第一车轮、第二车轮的多种类型的动作,均可组合实现。
比如,控制移动机器人变为第一单足着地状态;随后解锁第一车轮,控制第一车轮进行旋转,以使得移动机器人进行原地旋转一周的动作;随后控制移动机器人变为第二倾斜状态,解锁第一车轮和第二车轮,控制第一车轮和第二车轮滑动,以使得移动机器人进行一个侧身滑动的动作;随后控制移动机器人变为第二单足着地状态,解锁第二车轮,控制第二车轮进行滑动,以使得移动机器人进行单轮滑动运动。
基于此,能够控制移动机器人实现更为复杂且更丰富的类双足运动。例如,控制移动机器人模仿人类进行一套花样滑冰的类双足运动。
根据前述内容,在类双足运动的过程中,第一车轮部和第二车轮部交替着地,则第一车轮部和第二车轮部的腿部的长度不再保持相同,两个车轮的高度将发生改变。
在一些实施例中,移动机器人是欠驱动系统机器人。
以欠驱动系统机器人是轮腿式机器人为例,参考图13和14,轮腿式机器人10建立三维控件的右手笛卡尔坐标系中,针对俯仰角方向的平衡控制,根据第一车轮和第二车轮的着地情况的不同,对应的车轮部的电机力矩也不同。
可选的,在第一车轮部和第二车轮部均着地的情况下,第一车轮部对应的第一驱动电机和第二车轮部对应的第二驱动电机的电机力矩之和为第一力矩;
在第一车轮部着地且第二车轮部悬空的情况下,第一驱动电机的电机力矩为第一力矩;
在第二车轮部着地且第一车轮部悬空的情况下,第二驱动电机的电机力矩为第一力矩。
示意性的,在站立平衡状态、第一倾斜状态和第二倾斜状态下,第一车轮和第二车轮着地,也即,欠驱动系统机器人与地面之间的接触点为两个轮子。此时,根据PID控制器能够得到第一车轮部对应的第一驱动电机和第二车轮部对应的第二驱动电机的电机力矩均为τ。
示意性的,在第一单轮着地状态下,第一车轮部着地且第二车轮部悬空;在第二单轮着地状态下,第二车轮部着地且第一车轮部悬空。也即,在第一单轮着地状态或第二单轮着地状态下,欠驱动系统机器人与地面之间的接触点为单个轮子。此时,根据PID控制器能够得到着地的车轮部对应的驱动电机的电机力矩为2τ,以此来使用单个轮子与地面的接触力矩实现机器人在类双足运动过程中的pitch方向的平衡控制。
根据前述内容,可通过规划移动机器人的第一车轮部和第二车轮部的腿部的长度变化以及变化速度,来控制移动机器人实现类双足运动。其中,可通过分析移动机器人的运动与结构特点,将类双足运动分为前述内容涉及的多个状态。在状态变化过程中控制移动机器人执行规划的动作。同时,结合移动机器人的机械结构及质量分布,可以计算出机器人在整个运动过程中重心在地面投影的偏转范围,以确定不同状态的状态切换条件。具体可参考前述内容,不再赘述。
示意性的,在类双足运动的过程中,移动机器人的各个关节的控制信息可通过如下方式确定:在确定类双足运动后,可对类双足运动进行分解,将其划分为多个状态,每个状态下对应于一组控制参数,一组控制参数可用于确定各个关节的位置、角度、力矩等信息;随后,将一组控制参数和移动机器人的全身动力学模型作为输入,经过移动机器人的控制器处理,以得到该组控制参数下的控制信息,控制信息至少包括各个关节的关节力矩、关节角速度、基座倾斜度等信息,根据这些控制信息来实现对机器人的控制。
应当理解的是,上述过程仅为示例性举例,具体可根据实际需要进行调整,本申请对此不做限定。
可选的,在类双足运动的过程中,第一车轮部、第二车轮部和基座部的运动根据如下信息中的至少一种进行控制:
·第一车轮部的第一腿部的长度变化;
·第一腿部的至少一个关节电机的角度及变化量;
·第二车轮部的第二腿部的长度变化;
·第二腿部的至少一个关节电机的角度及变化量
·第一车轮部的第一车轮与地面的接触力;
·第二车轮部的第二车轮与地面的接触力;
·移动机器人的俯仰角度信息及角速度;
·移动机器人的横滚角度信息及角速度;
·移动机器人的偏航角度信息及角速度。
在一些实施例中,移动机器人是欠驱动系统机器人。
以欠驱动系统机器人是轮腿式机器人为例,参考图13示出的轮腿式机器人10的右手笛卡尔坐标系,图30示出了本申请一个示例性实施例提供的以轮腿式机器人10横截面模拟推导关节角度信息的示意图。
参考图13,图30示出了对应轮腿式机器人10的横截面构建的XZ坐标系,车轮3300可以是第一车轮和第二车轮中的一个。其中,原点位于点x
由于车轮3300的坐标已知,且x
公式一:
公式二:
由于轮腿的长度l
公式三:
同理可得关节角3320、关节角3330以及关节角3340。
基于计算得到的关节角,将其输入车轮3300对应的驱动电机中,即可通过控制器输出电机力矩,以控制车轮3300对应的腿部构型转动至相应的关节角,从而控制车轮3300到达指定位置(x
图31示出了本申请一个示例性实施例提供的移动机器人处于第一倾斜状态或第二倾斜状态下确定腿部变化量的示意图,移动机器人是欠驱动系统机器人。其中,在三角形ACD中,DC的长度为0.5l
公式四:
其中,Δl表示轮腿变化长度,
在一些实施例中,当欠驱动系统机器人的第一车轮和/或第二车轮发生转向时,车身产生横滚角倾斜,机器人将产生离心力,离心力的大小与水平的速度v相关,为了保持平衡需要倾斜车身,使重力产生一部分分量平衡离心力的大小,倾斜车身对应的横滚角大小
公式五:
其中,m表示欠驱动系统机器人的重量,R表示转向半径。
示意性的,欠驱动系统机器人轮腿的变化量分为如下两种情况:
第一种,欠驱动系统机器人产生的横滚角较小。
示意性的,欠驱动系统机器人产生的横滚角小于(或者等于)预设角度阈值。当横滚角较小时,
公式六:
第二种,欠驱动系统机器人产生的横滚角较大。
示意性的,欠驱动系统机器人产生的横滚角大于(或者等于)预设角度阈值。当横滚角较大时,则轮腿变化量的计算如下公式七和公式八所示:
公式七:
公式八:
根据前述内容,以移动机器人是欠驱动系统机器人为例,在类双足运动的过程中,可通过如下步骤实现对欠驱动系统机器人的第一车轮部和第二车轮部的控制:
1、获取轨迹规划信息,轨迹规划信息用于表示欠驱动系统机器人的目标运动轨
其中,轨迹规划信息可以是预先设定好的信息,或者,轨迹规划信息为欠驱动系统机器人实时采集道路信息后生成的。
轨迹规划信息为预先设定好的信息时,可根据道路信息设定欠驱动系统机器人的轨迹,并将轨迹输入欠驱动系统机器人的存储器中生成轨迹规划信息,欠驱动系统机器人根据轨迹规划信息按照已经设定好的轨迹进行运动。当轨迹规划信息为欠驱动系统机器人实时采集道路信息生成的时,欠驱动系统机器人中包括道路扫描设备。可选的,欠驱动系统机器人中包括摄像头,用于对道路进行图像采集,根据采集到的图像进行道路规划。
2、基于轨迹规划信息对欠驱动系统机器人的腿部构型进行调整,以及基于轨迹规
其中,参考运动状态数据用于表示欠驱动系统机器人以目标运动轨迹运动时的运动状态,机器人姿态数据用于表示欠驱动系统机器人以目标运动轨迹运动时的结构状态。
在一些实施例中,参考运动状态数据用于表示欠驱动系统机器人在以符合目标运动轨迹的方式运动时,运动状态需要达到的要求,也即,在确定参考运动状态数据后,欠驱动系统机器人需要以参考运动状态数据为目标对当前运动状态进行调整。在一些实施例中,参考运动状态数据包括参考速度信息、参考偏航角信息、参考运动曲率半径信息等。在一些实施例中,参考运动状态数据为根据轨迹规划信息计算得到的,或者,参考运动状态数据为根据轨迹规划信息预先存储的,也即,在设定欠驱动系统机器人的运动轨迹时,针对在运动轨迹上指定位置处的运动状态数据进行预先设定,得到指定位置处对应的参考运动状态数据,并将参考运动状态数据与轨迹规划信息对应存储。从而,当欠驱动系统机器人运动至指定位置处时,即可从已存储的数据中获取参考运动状态数据。
示意性的,参考运动状态数据的获取方式包括如下方式中的至少一种:
第一,接收遥控器的控制操作,根据遥控器的控制操作确定参考运动状态数据。其中,遥控器可以对欠驱动系统机器人的运动速度、运动方向、运动模式等进行控制,根据遥控器的控制操作确定欠驱动系统机器人的运动状态变化,从而确定参考运动状态数据。
第二,读取数据文件,从数据文件中获取当前欠驱动系统机器人的参考运动状态数据。也即,欠驱动系统机器人在不同位置处的参考运动状态数据为预先设定并存储在数据文件中的,根据当前欠驱动系统机器人所处的位置确定对应的参考运动状态数据。
第三,采集欠驱动系统机器人的视觉信息,基于视觉信息生成参考运动状态数据。也即,欠驱动系统机器人上设置有摄像头,通过摄像头采集欠驱动系统机器人在规划轨迹上的道路信息,并根据道路信息计算得到下一步运动的参考运动状态数据。
值得注意的是,上述获取参考运动状态数据的方式仅为示意性的举例,本申请实施例对参考运动状态数据的获取方式不加以限定。
与之类似的,欠驱动系统机器人的类双足运动的控制信号可由遥控器给出,或者,类双足运动的控制信号基于视觉信息和/或触觉信息分析得到。可选的,欠驱动系统机器人上设置有摄像头和/或触觉传感器,以采集欠驱动系统机器人的道路信息和受力情况,通过对道路信息和受力情况的分析确定是否控制欠驱动系统机器人进行类双足运动。
在一些实施例中,参考运动状态数据中包括参考速度信息,则获取欠驱动系统机器人的俯仰角度信息,该俯仰角度信息表示欠驱动系统机器人在前进后退方向上的角度,也即欠驱动系统机器人在车轮控制作用下向前进方向俯或者向后退方向仰的角度。基于参考速度信息和俯仰角度信息确定对欠驱动系统机器人进行控制的平衡控制力矩,平衡控制力矩是指用于保持欠驱动系统机器人处于平衡状态的力矩,从而基于平衡控制力矩确定对欠驱动系统机器人进行控制的力矩。其中,平衡状态是指欠驱动系统机器人在俯仰角方向上保持平衡的状态,也即,在平衡状态下,欠驱动系统机器人不存在向前或者向后倾倒的趋势。其中,在欠驱动系统机器人保持静止时,平衡状态是指欠驱动系统机器人保持稳定不动,无向前或向后倾倒趋势的状态;在欠驱动系统机器人进行运动时,平衡状态是指欠驱动系统机器人跟随车轮转动而平衡移动的状态,其中,欠驱动系统机器人的主体部分由轮腿部分支撑保持竖直状态,且不存在向前或向后倾倒的趋势。
在一些实施例中,当控制欠驱动系统机器人在直线上行进时,直接将平衡控制力矩输入车轮控制电机,控制车轮转动,从而控制欠驱动系统机器人的运动;在另一个实施例中,当控制欠驱动系统机器人在曲线轨迹上行进时,对欠驱动系统机器人双轮分别对应的电机施加的力矩不同,从而实现一个车轮行驶速度快,另一个车轮行驶速度慢,从而实现欠驱动系统机器人的曲线行进,其中,根据曲线轨迹确定参考偏航角信息后,基于参考偏航角信息确定向不同车轮对应的电机施加的增量力矩。
在一些实施例中,根据轨迹规划信息对欠驱动系统机器人的双轮腿弯曲程度进行调整,欠驱动系统机器人的轮腿弯曲程度与轮腿长度相关。可选地,欠驱动系统机器人的轮腿弯曲程度越大,轮腿长度对应越短。
在一些实施例中,机器人姿态数据中包括第一车轮部和第二车轮部的轮腿调整数据,也即,基于轨迹规划信息确定轮腿调整数据。在一些实施例中,根据轨迹规划信息首先确定欠驱动系统机器人需要产生横滚角大小,也即,在给定横滚角的基础上,确定欠驱动系统机器人的轮腿调整数据。
可选地,根据轨迹规划信息确定的横滚角大小为在预设横滚角范围内的数值,避免横滚角超出预设横滚角范围而导致过度控制产生的不平衡问题。
3、基于调整后的腿部构型,根据参考运动状态数据和/或机器人姿态数据,控制欠
根据前述内容,欠驱动系统机器人包括第一车轮和第二车轮,其中,第一车轮和第二车轮分别设置在欠驱动系统机器人的两侧,第一车轮通过第一驱动电机驱动控制,第二车轮通过第二驱动电机驱动控制,在确定对欠驱动系统机器人进行控制的电机力矩时,确定对第一驱动电机进行驱动的第一力矩,以及对第二驱动电机进行驱动的第二力矩。
将第一力矩输入第一驱动电机,通过第一驱动电机驱动第一车轮转动;将第二力矩输入第二驱动电机,通过第二驱动电机驱动第二车轮转动。从而根据第一车轮的转动和第二车轮的转动带动欠驱动系统机器人沿目标运动轨迹进行类双足运动。
在一些实施例中,在根据参考运动状态数据控制欠驱动系统机器人进行类双足运动时,还需要通过惯性传感器(Inertial Measurement Unit,IMU)采集得到欠驱动系统机器人的俯仰角度信息和/或偏航角信息。其中,俯仰角度信息表示欠驱动系统机器人在前进后退方向上的角度信息,偏航角信息表示欠驱动系统机器人在围绕竖直旋转轴方向上的角度信息。
随后,基于俯仰角度信息和/或偏航角信息确定欠驱动系统机器人的平衡控制力矩和增量力矩。其中,平衡控制力矩可参考图13的相关描述,增量力矩是指用于控制欠驱动系统机器人旋转的力矩。随后,通过平衡控制力矩和增量力矩的结合,来实现对欠驱动系统机器人的控制。
在一些实施例中,在根据机器人姿态数据控制欠驱动系统机器人进行类双足运动时,机器人姿态数据中包括轮腿调整数据,也即轮腿变化量。以轮腿变化量为Δl为例,则通过轮腿变化量将一条轮腿伸展,并将另一条轮腿缩短。
在一些实施例中,根据轮腿变化量确定车轮在调整后的位置坐标,并根据调整后的位置坐标计算轮腿的关节角度,将关节角度输入控制轮腿的电机实现对轮腿的调整。
示意性的,本申请实施例还提供了一种移动机器人。
示意性的,移动机器人包括具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部、以及与第一车轮部和第二车轮部连接的基座部;移动机器人中设置有控制器,控制器用于控制移动机器人实现如上所述的移动机器人的运动控制方法。
应当理解的是,本申请实施例涉及的移动机器人,可以是欠驱动系统机器人。更进一步的,本申请实施例涉及的移动机器人,是能够实现双轮平衡的移动机器人,比如实现双轮平衡的轮腿式机器人。
其中,该种类型的机器人的腿部的运动平面和基座部之间缺乏横滚角方向自由度。以轮腿式机器人包括第一车轮部、第二车轮部、以及与第一车轮部和第二车轮部连接的基座部为例,第一车轮部和第二车轮部的腿部的运动平面与基座部保持垂直。
其中,控制器的设置可根据实际需要设置,本申请对此不做限定,凡是能够通过控制器的运动控制,以实现负载物体保持在基座部上不掉落的目标的移动机器人均在本申请保护范围之内。移动机器人的运动控制方法在前述内容中已详细描写,可作参考,不再赘述。
以下为本申请的装置实施例,对于装置实施例中未详细描述的细节,可以结合参考上述方法实施例中相应的记载,本文不再赘述。
图32示出了本申请一个示例性实施例提供的移动机器人的运动控制装置的示意图。该装置包括:
控制模块3220,用于控制移动机器人包括的具有伸缩腿部的第一车轮部和具有伸缩腿部的第二车轮部处于站立平衡状态;
控制模块3220,还用于控制移动机器人基于站立平衡状态进行类双足运动;
其中,移动机器人的基座部在站立平衡状态下与水平基准面平行,在类双足运动的过程中,第一车轮部和第二车轮部交替着地,基座部倾斜摇摆。
可选的,第一车轮部位于基座部的第一方向,第二车轮部位于基座部的第二方向;控制模块3220,用于控制移动机器人从站立平衡状态变化为第一倾斜状态,第一倾斜状态是基座部向第一方向倾斜的状态;控制移动机器人从第一倾斜状态恢复为站立平衡状态;控制移动机器人从站立平衡状态变化为第二倾斜状态,第二倾斜状态是基座部向第二方向倾斜的状态;控制移动机器人从第二倾斜状态恢复为站立平衡状态;其中,在移动机器人从第一倾斜状态恢复为站立平衡状态的过程中,第一车轮部的第一车轮着地,第二车轮部的第二车轮悬空;在移动机器人从第二倾斜状态恢复为站立平衡状态的过程中,第二车轮着地,第一车轮悬空。
可选的,控制模块3220,用于控制第一车轮部的第一腿部缩短,第二车轮部的第二腿部伸长,以使得欠驱动系统机器处于第一倾斜状态;其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐从由平行于水平基准面的水平状态向第一方向倾斜,第一车轮和第二车轮均着地。
可选的,控制模块3220,用于控制第一车轮部的第一腿部伸长,且第二车轮部的第二腿部缩短,以使得移动机器人处于第一单轮着地状态,第一单轮着地状态是第一车轮着地且第二车轮悬空的状态;控制第一腿部持续伸长,且第二腿部持续缩短,以使得欠驱动系统机器从第一单轮着地状态恢复为站立平衡状态;其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐向第二方向倾斜直至恢复为平行于水平基准面的水平状态,第二车轮由着地变为悬空后再次恢复着地。
可选的,第一腿部的长度和第二腿部的长度在站立平衡状态下相同,移动机器人在第一时长内处于第一单轮着地状态,其中:在第一时长内,第一腿部的长度短于第二腿部的长度;在第一时长的终止节点下,第一腿部和第二腿部等长。
可选的,控制模块3220,用于控制第一车轮部的第一腿部伸长,第二车轮部的第二腿部缩短,以使得欠驱动系统机器处于第二倾斜状态;其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐从由平行于水平基准面的水平状态向第二方向倾斜,第一车轮和第二车轮均着地。
可选的,控制模块3220,用于控制第一车轮部的第一腿部缩短,且第二车轮部的第二腿部伸长,以使得移动机器人处于第二单轮着地状态,第二单轮着地状态是第一车轮悬空且第二车轮着地的状态;控制第一腿部持续缩短,且第二腿部持续伸长,以使得欠驱动系统机器从第二单轮着地状态恢复为站立平衡状态;其中,在第一腿部和第二腿部的伸缩过程中,基座部逐渐向第一方向倾斜直至恢复为平行于水平基准面的水平状态,第一车轮由着地变为悬空后再次恢复着地。
可选的,第一腿部的长度和第二腿部的长度在站立平衡状态下相同,移动机器人在第二时长内处于第二单轮着地状态,其中:在第二时长内,第一腿部的长度长于第二腿部的长度;在第二时长的终止节点下,第一腿部和第二腿部等长。
可选的,控制模块3220,用于在移动机器人的倾斜角度达到第一限幅时,控制移动机器人从站立平衡状态变化为第一倾斜状态;其中,移动机器人的倾斜角度用于指示基座部所在的平面与平行于水平基准面的平面的夹角。
可选的,控制模块3220,用于在移动机器人的倾斜角度达到第二限幅时,控制移动机器人从第一倾斜状态恢复为站立平衡状态;其中,移动机器人的倾斜角度用于指示基座部所在的平面与平行于水平基准面的平面的夹角。
可选的,控制模块3220,用于在移动机器人的倾斜角度达到第三限幅时,控制移动机器人从站立平衡状态变化为第二倾斜状态;其中,移动机器人的倾斜角度用于指示基座部所在的平面与平行于水平基准面的平面的夹角。
可选的,控制模块3220,用于在移动机器人的倾斜角度达到第四限幅时,控制移动机器人从第二倾斜状态恢复为站立平衡状态;其中,移动机器人的倾斜角度用于指示基座部所在的平面与平行于水平基准面的平面的夹角。
可选的,类双足运动包括如下运动中的至少一种:原地踏步运动;直线运动;曲线运动;原地转圈踏步运动;跨越障碍运动。
可选的,类双足运动包括原地踏步运动;在原地踏步运动的过程中,第一车轮部和第二车轮部悬空后的着地位置与初始着地位置相同,或距离差小于第一容差值。
可选的,类双足运动包括直线运动、曲线运动、原地转圈踏步运动、跨越障碍运动中的至少一种;在直线运动、或曲线运动、或原地转圈踏步运动、或跨越障碍运动的过程中,第一车轮部或第二车轮部悬空后的着地位置与悬空前的着地位置不同,且距离差不小于第二容差值;基座部交替向第三方向和第四方向进行倾斜摇摆,第三方向或第四方向与移动机器人的前进方向的夹角为锐角。
可选的,在类双足运动的过程中,第一车轮部的第一车轮和第二车轮部的第二车轮处于锁定状态。
可选的,在类双足运动的过程中,第一车轮部的第一车轮和/或第二车轮部的第二车轮处于解锁状态。
可选的,控制模块3220,还用于在类双足运动的过程中,控制处于解锁状态的第一车轮部和/或第二车轮部进行滑动运动。
可选的,在类双足运动的过程中,第一车轮部、第二车轮部和基座部的运动根据如下信息中的至少一种进行控制:第一车轮部的第一腿部的长度变化;第一腿部的至少一个关节电机的角度及变化量;第二车轮部的第二腿部的长度变化;第二腿部的至少一个关节电机的角度及变化量;第一车轮部的第一车轮与地面的接触力;第二车轮部的第二车轮与地面的接触力;移动机器人的俯仰角度信息及角速度;移动机器人的横滚角度信息及角速度;移动机器人的偏航角度信息及角速度。
可选的,在第一车轮部和第二车轮部均着地的情况下,第一车轮部对应的第一驱动电机和第二车轮部对应的第二驱动电机的电机力矩之和为第一力矩;在第一车轮部着地且第二车轮部悬空的情况下,第一驱动电机的电机力矩为第一力矩;在第二车轮部着地且第一车轮部悬空的情况下,第二驱动电机的电机力矩为第一力矩。
图33示出了本申请一个示例性实施例提供的电子设备3300的结构框图。
该电子设备3300可以是便携式移动终端,比如:用于实现对移动机器人的控制的电子设备、智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio LayerIII,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group AudioLayer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。电子设备3300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。本申请实施例中,该电子设备3300可实现为机器人中的控制设备部分。
通常,电子设备3300包括有:处理器3301和存储器3302。
处理器3301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器3301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器3301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器3301可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器3301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器3302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器3302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器3302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器3301所执行以实现本申请中方法实施例提供的移动机器人的运动控制方法。
在一些实施例中,电子设备3300还可选包括有:外围设备接口3303和至少一个外围设备。处理器3301、存储器3302和外围设备接口3303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口3303相连。具体地,外围设备包括:射频电路3304、显示屏3305、摄像头组件3306、音频电路3307、定位组件3308和电源3309中的至少一种。
外围设备接口3303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器3301和存储器3302。在一些实施例中,处理器3301、存储器3302和外围设备接口3303被集成在同一芯片或电路板上;在一些其他实施例中,处理器3301、存储器3302和外围设备接口3303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路3304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路3304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路3304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选的,射频电路3304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路3304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或Wi-Fi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路3304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏3305用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏3305是触摸显示屏时,显示屏3305还具有采集在显示屏3305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器3301进行处理。此时,显示屏3305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏3305可以为一个,设置在电子设备3300的前面板;在另一些实施例中,显示屏3305可以为至少两个,分别设置在电子设备3300的不同表面或呈折叠设计;在另一些实施例中,显示屏3305可以是柔性显示屏,设置在电子设备3300的弯曲表面上或折叠面上。甚至,显示屏3305还可以设置成非矩形的不规则图形,也即异形屏。显示屏3305可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件3306用于采集图像或视频。可选的,摄像头组件3306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件3306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路3307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器3301进行处理,或者输入至射频电路3304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在电子设备3300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器3301或射频电路3304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路3307还可以包括耳机插孔。
定位组件3308用于定位电子设备3300的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件3308可以是基于GPS(GlobalPositioning System,全球定位系统)、北斗系统或伽利略系统的定位组件。
电源3309用于为电子设备3300中的各个组件进行供电。电源3309可以是交流电、直流电、一次性电池或可充电电池。当电源3309包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,电子设备3300还包括有一个或多个传感器3310。该一个或多个传感器3310包括但不限于:加速度传感器3311、陀螺仪传感器3312、压力传感器3313、光学传感器3314以及接近传感器3315。
加速度传感器3311可以检测以电子设备3300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器3311可以用于检测重力加速度在三个坐标轴上的分量。处理器3301可以根据加速度传感器3311采集的重力加速度信号,控制显示屏3305以横向视图或纵向视图进行用户界面的显示。加速度传感器3311还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器3312可以检测电子设备3300的机体方向及转动角度,陀螺仪传感器3312可以与加速度传感器3311协同采集用户对电子设备3300的3D动作。处理器3301根据陀螺仪传感器3312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器3313可以设置在电子设备3300的侧边框和/或显示屏3305的下层。当压力传感器3313设置在电子设备3300的侧边框时,可以检测用户对电子设备3300的握持信号,由处理器3301根据压力传感器3313采集的握持信号进行左右手识别或快捷操作。当压力传感器3313设置在显示屏3305的下层时,由处理器3301根据用户对显示屏3305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器3314用于采集环境光强度。在一个实施例中,处理器3301可以根据光学传感器3314采集的环境光强度,控制显示屏3305的显示亮度。具体地,当环境光强度较高时,调高显示屏3305的显示亮度;当环境光强度较低时,调低显示屏3305的显示亮度。在另一个实施例中,处理器3301还可以根据光学传感器3314采集的环境光强度,动态调整摄像头组件3306的拍摄参数。
接近传感器3315,也称距离传感器,通常设置在电子设备3300的前面板。接近传感器3315用于采集用户与电子设备3300的正面之间的距离。在一个实施例中,当接近传感器3315检测到用户与电子设备3300的正面之间的距离逐渐变小时,由处理器3301控制显示屏3305从亮屏状态切换为息屏状态;当接近传感器3315检测到用户与电子设备3300的正面之间的距离逐渐变大时,由处理器3301控制显示屏3305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图33中示出的结构并不构成对电子设备3300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供了一种计算机设备,计算机设备包括存储器和处理器;存储器中存储有至少一条程序代码,程序代码由处理器加载并执行以实现如上所述的移动机器人的运动控制方法。
本申请实施例还提供了一种计算机可读存储介质,存储介质中存储有计算机程序,计算机程序用于被处理器执行,以实现如上所述的移动机器人的运动控制方法。
本申请实施例还提供了一种芯片,芯片包括可编程逻辑电路和/或程序指令,当芯片运行时,用于实现如上所述的移动机器人的运动控制方法。
本申请实施例还提供了一种计算机程序产品或计算机程序,计算机程序产品或计算机程序包括计算机指令,计算机指令存储在计算机可读存储介质中,处理器从计算机可读存储介质读取并执行计算机指令,以实现如上所述的移动机器人的运动控制方法。
在本申请中,应该理解到,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
- 移动机器人的运动控制方法和移动机器人
- 移动机器人的运动控制方法、装置和移动机器人