CN116069027A - 机器人的爬梯规划方法、装置、计算机设备和存储介质 - Google Patents

机器人的爬梯规划方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN116069027A
CN116069027A CN202211708233.8A CN202211708233A CN116069027A CN 116069027 A CN116069027 A CN 116069027A CN 202211708233 A CN202211708233 A CN 202211708233A CN 116069027 A CN116069027 A CN 116069027A
Authority
CN
China
Prior art keywords
foot end
robot
position data
stair
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211708233.8A
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.)
Suzhou Guangge Technology Co Ltd
Original Assignee
Suzhou Guangge Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Guangge Technology Co Ltd filed Critical Suzhou Guangge Technology Co Ltd
Priority to CN202211708233.8A priority Critical patent/CN116069027A/zh
Publication of CN116069027A publication Critical patent/CN116069027A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

本公开涉及一种机器人的爬梯规划方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:响应于预设操作指令的触发,获取机器人的足端位置数据,所述预设操作指令包括所述机器人的足端触碰到第一楼梯的第一台阶侧面的指令、所述机器人的足端触碰到所述第一楼梯的第二台阶侧面的指令、所述机器人的足端迈上所述第一台阶顶面的指令;根据所述足端位置数据确定所述第一楼梯的台阶位置数据;根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,所述第一足端运动轨迹包括上行足端运动轨迹和/或下行足端运动轨迹。采用本方法能够简单准确地实现无需视觉辅助的机器人的爬梯规划。

Description

机器人的爬梯规划方法、装置、计算机设备和存储介质
技术领域
本公开涉及机器人控制技术领域,特别是涉及一种机器人的爬梯规划方法、装置、计算机设备和存储介质。
背景技术
由于足式机器人具有较强的适应性,能够适应不平路面、楼梯、坡面等多种路况,且具有较强的越障能力,因此,足式机器人在电力巡检、环境探测、物流运输等地面环境较为复杂的应用场景中得到广泛应用。
传统技术中,机器人通常需要在视觉相机的辅助下爬梯,基于视觉相机获取的图像规划运动轨迹。然而,依赖视觉相机进行轨迹规划,可能会存在误差,且结构和算法较为复杂,成本较高,实现难度较大。
发明内容
基于此,有必要针对上述技术问题,提供一种无需视觉辅助实现方式简单的机器人的爬梯规划方法、装置、计算机设备、存储介质和计算机程序产品。
第一方面,本公开实施例提供了一种机器人的爬梯规划方法。所述方法包括:
响应于预设操作指令的触发,获取机器人的足端位置数据,所述预设操作指令包括所述机器人的足端触碰到第一楼梯的第一台阶侧面的指令、所述机器人的足端触碰到所述第一楼梯的第二台阶侧面的指令、所述机器人的足端迈上所述第一台阶顶面的指令;
根据所述足端位置数据确定所述第一楼梯的台阶位置数据;
根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,所述第一足端运动轨迹包括上行足端运动轨迹和/或下行足端运动轨迹。
在其中一个实施例中,所述响应于预设操作指令的触发,获取机器人的足端位置数据,包括:
响应于机器人的足端触碰到所述第一台阶侧面的指令的触发,获取与所述第一台阶侧面触碰的足端的第一水平位置及所述机器人未抬起的足端的第一垂直高度;
响应于所述机器人的足端迈上所述第一台阶顶面的指令的触发,获取迈上所述第一台阶顶面的足端的第二垂直高度;
响应于所述机器人的足端触碰到所述第二台阶侧面的指令的触发,获取与所述第二台阶侧面触碰的足端的第二水平位置。
在其中一个实施例中,所述根据所述足端位置数据确定所述第一楼梯的台阶位置数据,包括:
根据所述第一水平位置和所述第二水平位置确定所述第一楼梯的台阶宽度;
根据所述第一垂直高度和所述第二垂直高度确定所述第一楼梯的台阶高度;
根据所述台阶宽度和所述台阶高度确定所述第一楼梯的台阶位置数据。
在其中一个实施例中,所述根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,包括:
获取所述机器人的预设行驶模式对应的关节位置和质心速度,所述预设行驶模式包括无障碍行驶模式;
根据所述关节位置和所述质心速度预测所述机器人的足端落点的预测位置数据;
根据所述台阶位置数据和所述预测位置数据确定所述足端落点与所述第一楼梯的台阶之间的位置关系,在所述足端落点位于台阶边缘预设范围以内的情况下,调整所述预测位置数据至预设位置数据,得到调整后的足端落点的位置数据;
根据所述调整后的足端落点的位置数据确定所述机器人的第一足端运动轨迹。
在其中一个实施例中,所述第一足端运动轨迹包括行走时的规划足端落点位置,所述方法还包括:
获取所述机器人的足端落点的实际位置数据;
确定所述第一足端运动轨迹中与所述实际位置数据相对应的规划足端落点位置的规划位置数据;
在所述规划位置数据的垂直高度与所述实际位置数据的垂直高度之间的差值绝对值大于预设差值的情况下,控制所述机器人按照预设行驶模式行驶,所述预设行驶模式包括无障碍行驶模式。
在其中一个实施例中,所述方法还包括:
响应于所述机器人的足端垂直高度减小指令的触发,获取所述机器人在多个不同的垂直高度下的足端落点的位置数据,其中,所述减小指令包括减小量大于预设高度值的指令;
根据所述不同的垂直高度下的足端落点的位置数据,确定所述多个不同的垂直高度中每个垂直高度对应的第一水平位置和第二水平位置,其中,所述第一水平位置表示离所述垂直高度对应的台阶外边沿最近的位置,所述第二水平位置表示离所述垂直高度对应的台阶内边沿最近的位置;
根据多个所述第一水平位置和多个所述第二水平位置确定第二楼梯对应的台阶边沿位置数据;
根据所述台阶边沿位置数据确定所述机器人的第二足端运动轨迹。
在其中一个实施例中,所述方法还包括:
根据所述台阶边沿位置数据确定所述第二楼梯的倾斜数据;
根据所述倾斜数据调整所述机器人的主体倾斜角度,并控制所述机器人按照所述第二足端运动轨迹行驶。
在其中一个实施例中,在所述响应于所述机器人的足端垂直高度减小指令的触发,之后还包括:
利用预设的阻抗控制方法调整所述机器人的足端接触点的作用力。
第二方面,本公开实施例还提供了一种机器人的爬梯规划装置。所述装置包括:
获取模块,用于响应于预设操作指令的触发,获取机器人的足端位置数据,所述预设操作指令包括所述机器人的足端触碰到第一楼梯的第一台阶侧面的指令、所述机器人的足端触碰到所述第一楼梯的第二台阶侧面的指令、所述机器人的足端迈上所述第一台阶顶面的指令;
第一确定模块,用于根据所述足端位置数据确定所述第一楼梯的台阶位置数据;
第二确定模块,用于根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,所述第一足端运动轨迹包括上行足端运动轨迹和/或下行足端运动轨迹。
在其中一个实施例中,所述获取模块,包括:
第一获取子模块,用于响应于机器人的足端触碰到所述第一台阶侧面的指令的触发,获取与所述第一台阶侧面触碰的足端的第一水平位置及所述机器人未抬起的足端的第一垂直高度;
第二获取子模块,用于响应于所述机器人的足端迈上所述第一台阶顶面的指令的触发,获取迈上所述第一台阶顶面的足端的第二垂直高度;
第三获取子模块,用于响应于所述机器人的足端触碰到所述第二台阶侧面的指令的触发,获取与所述第二台阶侧面触碰的足端的第二水平位置。
在其中一个实施例中,所述第一确定模块,包括:
第一确定子模块,用于根据所述第一水平位置和所述第二水平位置确定所述第一楼梯的台阶宽度;
第二确定子模块,用于根据所述第一垂直高度和所述第二垂直高度确定所述第一楼梯的台阶高度;
第三确定子模块,用于根据所述台阶宽度和所述台阶高度确定所述第一楼梯的台阶位置数据。
在其中一个实施例中,所述第二确定模块,包括:
第四获取子模块,用于获取所述机器人的预设行驶模式对应的关节位置和质心速度,所述预设行驶模式包括无障碍行驶模式;
预测模块,用于根据所述关节位置和所述质心速度预测所述机器人的足端落点的预测位置数据;
第一调整模块,用于根据所述台阶位置数据和所述预测位置数据确定所述足端落点与所述第一楼梯的台阶之间的位置关系,在所述足端落点位于台阶边缘预设范围以内的情况下,调整所述预测位置数据至预设位置数据,得到调整后的足端落点的位置数据;
第四确定子模块,用于根据所述调整后的足端落点的位置数据确定所述机器人的第一足端运动轨迹。
在其中一个实施例中,所述第一足端运动轨迹包括行走时的规划足端落点位置,所述装置包括:
第五获取子模块,用于获取所述机器人的足端落点的实际位置数据;
第五确定子模块,用于确定所述第一足端运动轨迹中与所述实际位置数据相对应的规划足端落点位置的规划位置数据;
控制模块,用于在所述规划位置数据的垂直高度与所述实际位置数据的垂直高度之间的差值绝对值大于预设差值的情况下,控制所述机器人按照预设行驶模式行驶,所述预设行驶模式包括无障碍行驶模式。
在其中一个实施例中,所述装置还包括:
第六获取子模块,用于响应于所述机器人的足端垂直高度减小指令的触发,获取所述机器人在多个不同的垂直高度下的足端落点的位置数据,其中,所述减小指令包括减小量大于预设高度值的指令;
第六确定子模块,用于根据所述不同的垂直高度下的足端落点的位置数据,确定所述多个不同的垂直高度中每个垂直高度对应的第一水平位置和第二水平位置,其中,所述第一水平位置表示离所述垂直高度对应的台阶外边沿最近的位置,所述第二水平位置表示离所述垂直高度对应的台阶内边沿最近的位置;
第七确定子模块,用于根据多个所述第一水平位置和多个所述第二水平位置确定第二楼梯对应的台阶边沿位置数据;
第八确定子模块,用于根据所述台阶边沿位置数据确定所述机器人的第二足端运动轨迹。
在其中一个实施例中,所述装置还包括:
第九确定子模块,用于根据所述台阶边沿位置数据确定所述第二楼梯的倾斜数据;
行驶模块,用于根据所述倾斜数据调整所述机器人的主体倾斜角度,并控制所述机器人按照所述第二足端运动轨迹行驶。
在其中一个实施例中,在所述第六获取子模块,之后还包括:
第二调整模块,用于利用预设的阻抗控制方法调整所述机器人的足端接触点的作用力。
第三方面,本公开实施例还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本公开实施例中任一项所述的方法的步骤。
第四方面,本公开实施例还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本公开实施例中任一项所述的方法的步骤。
第五方面,本公开实施例还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本公开实施例中任一项所述的方法的步骤。
本公开实施例,当机器人行驶过程中遇到楼梯时,在机器人的足端触碰到第一台阶侧面、触碰到第二台阶侧面以及迈上第一台阶顶面,触发预设操作指令时,获取机器人的足端位置数据,根据上述足端位置数据能够确定楼梯的台阶数据,从而无需利用视觉相机或图像等辅助就能够确定台阶位置数据;根据确定得到的台阶位置数据规划机器人行走时的足端落点位置,从而得到机器人的第一足端运动轨迹,实现了机器人爬梯的轨迹规划,从而能够实现机器人的自动爬梯,通过本公开实施例,能够根据机器人触发预设操作指令时获取到的足端位置数据实现对机器人爬梯轨迹的规划,控制方式简单,实现难度低,成本较低;且通过设置预设操作指令及足端位置数据确定楼梯的台阶数据,考虑到了楼梯的构造,使得获取到的台阶位置数据更为精确,进而实现了对机器人爬梯的精确控制。
附图说明
图1为一个实施例中机器人的爬梯规划方法的流程示意图;
图2为一个实施例中机器人的结构示意图;
图3为一个实施例中楼梯台阶与机器人的示意图;
图4为一个实施例中足端运动轨迹的调整方法的流程示意图;
图5为一个实施例中落点位置的判断方法的示意图;
图6为一个实施例中机器人的爬梯规划方法的流程示意图;
图7为一个实施例中落点位置的判断方法的示意图;
图8为一个实施例中机器人的爬梯规划方法的流程示意图;
图9为一个实施例中楼梯的台阶边沿位置数据与落点示意图;
图10为一个实施例中机器人的爬梯规划装置的结构框图;
图11为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本公开实施例的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本公开实施例,并不用于限定本公开实施例。
在一个实施例中,如图1所示,提供了一种机器人的爬梯规划方法,机器人的爬梯规划方法包括:
步骤S110,响应于预设操作指令的触发,获取机器人的足端位置数据,其中,预设操作指令包括机器人的足端触碰到第一楼梯的第一台阶侧面的指令、机器人的足端触碰到第一楼梯的第二台阶侧面的指令、机器人的足端迈上第一台阶顶面的指令;
本公开实施例中,响应于预设操作指令的触发,获取机器人的足端位置数据,预设操作指令包括机器人的足端触碰到第一楼梯的第一台阶侧面的指令、机器人的足端触碰到第一楼梯的第二台阶侧面的指令、机器人的足端迈上第一台阶顶面的指令。其中,本实施例中的机器人为足式机器人,即具有足部结构,能根据不同地形自动改变形态的移动机器人,例如两足机器人、四足机器人或者其他多足机器人,足式机器人通常具有多个足端。
通常在无障碍的情况下,机器人按照预设的无障碍行驶模式进行行驶,但是无障碍行驶模式中机器人的足端的抬脚高度较低,在上楼遇到楼梯的台阶时,机器人受到阻碍,其足端会触碰到台阶侧面。具体的,在机器人的使用过程中,根据应用场景的不同,机器人可能存在多种不同的行驶模式,例如无障碍情况下的无障碍行驶模式、爬坡情况下的爬坡行驶模式、凹凸地面状况下的障碍行驶模式等,不同的行驶模式对应的机器人足端控制方式可能存在差异,例如,无障碍形式模式下,由于地面较为平稳,可以设置为机器人足端抬起高度较低,行驶时足端按照固定步幅前进或后退;爬坡行驶模式下,由于机器人处于坡面,可以设置为机器人足端抬起高度逐渐升高,行驶时足端按照较小或较大步幅前进或后退。可以理解的是,上述示例中的行驶模式仅为解释说明,在具体的应用过程中,行驶模式和足端控制方法均可以根据实际应用场景进行不同的设置以适用于多种情况。在触碰到第一台阶侧面时,获取机器人的足端位置数据;在机器人行驶过程中足端遇到阻碍时,控制机器人的足端抬高并继续行驶,机器人的足端迈上第一台阶顶面,在机器人的足端迈上第一台阶顶面时,获取机器人的足端位置数据;机器人继续按照无障碍行驶模式行驶,遇到楼梯的第二台阶时,受到阻碍,触碰到第二台阶侧面,机器人的足端触碰到第二台阶侧面时,获取机器人的足端位置数据。在一个示例中,获取到的机器人的足端位置数据可以为指定足端位置数据,例如,与台阶相接触的足端的位置数据;也可以为机器人全部的足端位置数据,具体可以根据实际应用场景设置得到。在一种可能的实现方式中,足端位置数据可以包括足端坐标数据,在机器人行驶过程中,遇到楼梯时,足端触碰到第一台阶侧面,自动建立坐标系,在获取足端位置数据时即可以获取按照此坐标系确定得到的足端坐标数据,在一个示例中,建立得到的坐标系可以为直角坐标系。在一种可能的实现方式中,足端位置数据还可以包括足端高度、水平位置等数据。在一个示例中,机器人的足端位置数据可以通过设置于机器人的足端的传感器获取。本实施例中,可以采用碰撞检测的方式计算得到台阶位置数据,提升获取到的数据的精度。在一个示例中,机器人可以包括四足机器人,构造如图2所示,四足机器人的行驶通过关节位置的变化及四个足端的协调配合实现。
在一个示例中,如图2所示,可以通过坐标系的行驶确定位置数据,设置机器人200本体的坐标系时,可以以x轴为前进方向,z轴为垂直地面向上,根据右手法则确定y轴方向。
步骤S120,根据足端位置数据确定第一楼梯的台阶位置数据;
本公开实施例中,根据获取到的足端位置数据确定第一楼梯的台阶位置数据。具体的,由于足端位置数据为响应于预设操作指令的触发获取的,且预设操作触发指令与机器人的足端和台阶之间的关系相关联,因此,通过获取到的足端位置数据可以确定台阶的参数数据,根据台阶的参数数据可以推测得到第一楼梯的台阶位置数据,在一个示例中,台阶的参数数据可以包括台阶的高度、台阶的宽度、台阶边沿对应直线的斜率等。在一个示例中,台阶位置数据可以包括根据台阶的参数数据确定得到的第一楼梯的多级台阶的参数数据。在一个示例中,第一楼梯为等高楼梯,即第一楼梯的每一级台阶的高度宽度均相同,根据足端位置参数确定的台阶参数数据,就能够确定得到第一楼梯每一级台阶的数据,从而得到第一楼梯的台阶位置数据。在一个示例中,由于台阶位置数据根据足端位置数据确定得到,在应用场景为机器人初次行驶第一楼梯的情况下,无法确定第一台阶的台阶数量,因此,确定的台阶位置数据可以不设置楼梯终点。
步骤S130,根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,所述第一足端运动轨迹包括上行足端运动轨迹和/或下行足端运动轨迹。
本公开实施例中,得到台阶位置数据后,根据台阶位置数据可以进行机器人运动轨迹的规划,由于本实施例中,机器人为足式机器人,因此,可以确定得到机器人的足端运动轨迹,即第一足端运动轨迹。本实施例中,第一足端运动轨迹可以包括上行足端运动轨迹、下行足端运动轨迹。
在一种可能的实现方式中,可以通过规划机器人的足端落点位置确定第一足端运动轨迹。具体地,根据台阶位置数据对机器人在行驶台阶时的足端落点位置进行规划,得到规划足端落点位置,在一个示例中,规划足端落点位置时,可以按照足端落点位置落在台阶上的条件进行规划。在一个示例中,规划足端落点位置时,可以在机器人的初始预测足端落点位置的基础上调整得到规划足端落点位置;也可以为基于台阶位置数据直接确定得到规划足端落点位置。得到规划足端落点位置后,确定得到机器人的第一足端运动轨迹。
在一种可能的实现方式中,可以通过规划机器人的摆动腿的运动轨迹确定第一足端运动轨迹。具体地,根据台阶位置数据对机器人在行驶台阶时的摆动腿的运动轨迹进行规划,在一个示例中,规划时可以按照摆动腿的运动轨迹与台阶位置不冲突的条件进行规划。在一个示例中,规划摆动腿的运动轨迹时,可以在机器人的初始预测摆动腿的运动轨迹的基础上调整得到规划运动轨迹;也可以为基于台阶位置数据直接确定得到摆动腿的规划运动轨迹。得到规划运动轨迹后,确定得到机器人的第一足端运动轨迹。
其中,第一足端运动轨迹还可以包括但不限于机器人行驶方向、机器人行驶速度等其他机器人行驶的相关参数。在一个示例中,第一足端运动轨迹包括上行足端运动轨迹、下行足端运动轨迹,可以根据机器人行驶状态和行驶场景的不同进行设置。在一个示例中,在确定得到的台阶位置数据未设置台阶终点时,即机器人初次行驶第一楼梯的情况下,第一足端运动轨迹也不设置台阶终点,机器人按照第一足端运动轨迹行驶时,可以通过预设的触发条件控制机器人的行驶模式的转换。在一个示例中,第一足端运动轨迹包括上行足端运动轨迹,上行足端运动轨迹的规划和机器人继续行驶可以为同时进行的,即一边进行上行足端运动轨迹的规划,一边控制机器人按照已经规划好的运动轨迹继续行驶;在规划得到第一足端运动轨迹后,控制机器人按照上行足端运动轨迹继续行驶第一楼梯的剩余台阶。在一个示例中,控制机器人行驶时按照规划足端落点位置移动足端,以实现机器人的爬梯。
本公开实施例,当机器人行驶过程中遇到楼梯时,在机器人的足端触碰到第一台阶侧面、触碰到第二台阶侧面以及迈上第一台阶顶面,触发预设操作指令时,获取机器人的足端位置数据,根据上述足端位置数据能够确定楼梯的台阶数据,从而无需利用视觉相机或图像等辅助就能够确定台阶位置数据;根据确定得到的台阶位置数据规划机器人行走时的足端落点位置,从而得到机器人的第一足端运动轨迹,实现了机器人爬梯的轨迹规划,从而能够实现机器人的自动爬梯,通过本公开实施例,能够根据机器人触发预设操作指令时获取到的足端位置数据实现对机器人爬梯轨迹的规划,控制方式简单,实现难度低,成本较低,算法实现简单;且通过设置预设操作指令及足端位置数据确定楼梯的台阶数据,采用碰撞检测的方式计算得到台阶位置数据,考虑到了楼梯的构造,使得获取到的台阶位置数据更为精确,进而实现了对机器人爬梯的精确控制。
在一个实施例中,响应于预设操作指令的触发,获取机器人的足端位置数据,包括:
响应于机器人的足端触碰到所述第一台阶侧面的指令的触发,获取与所述第一台阶侧面触碰的足端的第一水平位置及所述机器人未抬起的足端的第一垂直高度;
响应于所述机器人的足端迈上所述第一台阶顶面的指令的触发,获取迈上所述第一台阶顶面的足端的第二垂直高度;
响应于所述机器人的足端触碰到所述第二台阶侧面的指令的触发,获取与所述第二台阶侧面触碰的足端的第二水平位置。
本公开实施例中,获取机器人的足端位置数据时,可以获取机器人的足端的垂直高度和水平位置。具体的,机器人的足端触碰到楼梯的第一台阶侧面时,响应于该指令的触发,获取此时触碰到第一台阶侧面的足端对应的水平位置,即第一水平位置,获取未抬起足端的垂直高度,即第一垂直高度,其中,未抬起足端包括此时未抬起与第一台阶没有接触的一个或多个足端。机器人的足端迈上第一台阶顶面时,响应于该指令的触发,获取此时迈上第一台阶顶面的足端对应的第二垂直高度。机器人的足端触碰到第二台阶侧面时,响应于该指令的触发,获取此时与第二台阶侧面触碰的足端对应的第二水平位置。其中,第二台阶包括第一台阶上一层台阶。在一个示例中,垂直高度包括与地面垂直方向的高度,水平位置包括从楼梯侧面视角确定与楼梯纵深无关的与地面平行的位置。可以理解的是,本实施例中的足端并非限制为机器人的某一个足端,不同情况下可能对应为机器人的同一足端或不同足端。
本公开实施例,通过获取具体的足端的水平位置和垂直高度,能够进一步确定得到台阶的参数数据,从而能够获取后续的台阶位置数据,进而实现运动轨迹的规划;水平位置和垂直高度数据的获取方式简单,实现难度低,结果准确,能够方便快捷地确定后续的台阶位置参数,且提升了台阶位置参数的精确性。
在一个实施例中,根据足端位置数据确定第一楼梯的台阶位置数据,包括:
根据第一水平位置和第二水平位置确定第一楼梯的台阶宽度;
根据第一垂直高度和第二垂直高度确定第一楼梯的台阶高度;
根据台阶宽度和台阶高度确定第一楼梯的台阶位置数据。
本公开实施例中,确定楼梯的台阶位置参数时,根据获取到的第一水平位置和第二水平位置,能够确定得到楼梯的台阶宽度,其中,根据第一水平位置和第二水平位置的获取时机可以判断,第一水平位置对应为第一台阶的外边沿,第二水平位置对应为第二台阶的外边沿,由于楼梯通常为多级台阶构成,通过两个水平位置之间的差值能够确定得到台阶宽度。根据获取到的第一垂直高度和第二垂直高度,能够确定得到楼梯的台阶高度,其中,根据第一垂直高度和第二垂直高度的获取时机可以判断,第一垂直高度对应为地面高度,第二处置高度对应为第一级台阶的高度,根据两个垂直高度之间的差值就能够确定得到楼梯的台阶高度。在确定得到楼梯的台阶高度和台阶宽度后,根据楼梯的构造就可以确定第一楼梯的台阶位置数据,即判断得到第一楼梯的台阶分布。在一个示例中,由于楼梯的台阶数量不确定,得到的台阶位置数据中不包括台阶数量。
图3为根据一示例性实施例示出的一种楼梯台阶与机器人的示意图,参考图3所示,上楼梯时,机器人301面向楼梯,此时机器人不知道楼梯距离自己的距离,台阶的高度和宽度。此时机器人以较慢的速度向前行走,当机器人前足第一次碰到楼梯边缘时,机器人可以通过足端坐标获得楼梯第一级台阶的位置x1,这时机器人提高抬腿高度,并迈上第一级台阶,这时可以根据足端的z坐标计算出台阶的高度z,第一级台阶上的足端z坐标为z2,地面上的足端z坐标为z1,则台阶高度为z2–z1。当机器人继续前进时,前足会碰到第二级台阶的边缘,于是可以获得第二级台阶的位置x2,将两级台阶的位置做差即可获得台阶的宽度x,即宽度为x2-x1。后续每一级台阶的位置和高度可以据此算出,从而能够确定得到第一楼梯对应的台阶位置数据。
本公开实施例,通过获取到的水平位置和垂直高度数据能够简单精确地确定得到楼梯的台阶位置数据,实现难度低,且结果较为准确,从而实现后续的轨迹的规划;无需进行复杂的数据分析处理,提高了轨迹规划的效率,保证了机器人行驶的稳定性和可靠性。
在一个实施例中,所述根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,包括:
获取所述机器人的预设行驶模式对应的关节位置和质心速度,所述预设行驶模式包括无障碍行驶模式;
根据所述关节位置和所述质心速度预测所述机器人的足端落点的预测位置数据;
根据所述台阶位置数据和所述预测位置数据确定所述足端落点与所述第一楼梯的台阶之间的位置关系,在所述足端落点位于台阶边缘预设范围以内的情况下,调整所述预测位置数据至预设位置数据,得到调整后的足端落点的位置数据;
根据所述调整后的足端落点的位置数据确定所述机器人的第一足端运动轨迹。
本公开实施例中,确定第一足端运动轨迹时,获取机器人的预设行驶模式下对应的关节位置和质心速度,其中,预设行驶模式可以包括机器人在无障碍情况下的无障碍行驶模式。机器人在无障碍情况下正常行驶时,按照无障碍行驶模式行驶,根据预设行驶模式下的关节位置和质心速度预测机器人的足端落点的预测位置数据,根据机器人的足端的关节位置及机器人的质心速度能够预测得到机器人的足端落点,从而确定得到预测位置数据。根据预测位置数据和台阶位置数据确定得到足端落点与台阶之间的位置关系,在足端落点位于台阶边缘预设范围以内时,可以认为机器人需要抬高足端以爬上下一台阶或需要移动足端以爬下下一台阶,此时,调整预测位置数据到预设位置数据。其中,预设范围通常为根据实际应用场景设置得到,预设位置数据可以为根据预测位置数据调整确定得到。在一个示例中,当预测位置数据为坐标数据时,预设位置数据可以为预测位置数据对应的坐标调整预设值得到,预设值通常为根据实际应用场景设置得到。根据调整后的足端落点的位置数据,能够确定机器人第一足端运动轨迹,从而能够控制机器人继续按照调整后的足端落点行驶。在一个示例中,由于机器人的足端落点与关节位置和质心速度有关,因此,得到调整后的足端落点的位置数据后,可以根据调整后的足端落点的位置数据调节机器人行驶时的关节位置和质心速度,以使得机器人的足端落点与调整后的足端落点相对应。
图4为根据一示例性实施例示出的一种足端运动轨迹的调整方法的流程示意图,参考图4所示,规划得到的第一足端运动轨迹可以包括上行足端运动轨迹,由于机器人正常行走时抬腿高度较低,不足以迈上台阶,所以在爬楼梯过程中需要对抬腿高度进行调整,同时要避免机器人踩在楼梯边缘,降低摔倒的风险。机器人在平地行走时,可以根据关节的位置和质心速度计算摆动腿的落点,对落点位置进行判断,当在台阶边缘位置预设范围以内时,调整落点。在一个示例中,预设范围可以设置为2cm,调整落点的方式可以包括对落点的坐标进行调整,给坐标值一个增量,其中,增量可以根据实际应用场景确定得到,例如,将落点x坐标更新为台阶边缘位置+3cm,将抬腿高度更新为台阶高度+3cm,得到调整后的落点位置。根据调整后的落点位置可以确定得到机器人的足端运动轨迹,即足端摆动轨迹。图5为根据一示例性实施例示出的一种落点位置的判断方法的示意图,参考图5所示,机器人501在爬梯过程中,如果初始落足点502在楼梯边缘区域,则给其一个增量,使其落入安全位置,得到规划落足点503,同时,大部分时候爬楼梯过程中抬腿高度和平地保持一致,在需要迈上台阶时增加抬腿高度即可,这样有利于降低机器人的能耗。
本公开实施例,能够根据机器人的关节位置和质心速度预测机器人的足端落点,根据预测足端落点与台阶之间的位置关系调整足端落点,得到规划的运动轨迹,能够使得机器人按照规划的运动轨迹行驶,实现自动爬梯的效果;在足端落点位于预设范围以内的情况下对足端落点进行调整,能够实现更为精确的运动轨迹的调整,且在台阶边缘处对机器人的足端落点进行调整,降低了数据处理的工作量和计算的复杂度,保证了机器人平稳爬梯的同时,提高了运动轨迹规划的效率。
在一个实施例中,方法还包括:
获取机器人的足端落点的实际位置数据;
确定第一足端运动轨迹中与实际位置数据相对应的规划足端落点位置的规划位置数据;
在规划位置数据的垂直高度与实际位置数据的垂直高度之间的差值绝对值大于预设差值的情况下,控制机器人按照预设行驶模式继续行驶,其中,预设行驶模式包括无障碍行驶模式。
本公开实施例中,在机器人按照规划的第一足端运动轨迹爬梯的过程中,获取机器人的足端落点的实际位置数据。获取第一足端运动轨迹中与该实际位置数据对应的规划足端落点位置的规划位置数据。其中,第一足端运动轨迹中包括足端落点位置数据,机器人按照第一足端运动轨迹行驶时,每个实际足端落点在第一足端运动轨迹中均有对应的规划足端落点。本实施例中,足端落点的位置数据包括足端落点的垂直高度数据。当规划位置数据的垂直高度与实际位置数据之间的差值绝对值大于预设差值时,此时,若机器人为上行,则机器人的实际足端落点低于规划足端落点一定高度值,此时可以认为机器人的实际足端落点未落到台阶上,楼梯台阶已爬完;若机器人为下行,则机器人实际足端落点高于规划足端落点一定高度值,可以认为此时机器人的实际足端落点未落到台阶上,楼梯台阶已下完。此时机器人无需继续按照第一足端运动轨迹行驶,控制机器人按照预设行驶模式继续行驶,其中,预设行驶模式包括无障碍行驶模式,即机器人爬完楼梯,继续按照无障碍行驶模式前进。预设差值通常为根据实际应用场景设置得到,在一个示例中,可以根据得到的台阶高度设置预设差值,例如,将预设差值设置为一个比台阶高度值稍小一点的高度值,从而能够更准确地判断机器人是否爬完楼梯。
图6为根据一示例性实施例示出的一种机器人的爬梯规划方法的流程示意图,参考图6所示,机器人在行走时,实时判断足端的位置坐标,由于已知楼梯的参数,且规划得到的足端运动轨迹为根据楼梯的台阶位置数据得到,所以当机器人在楼梯上时,足端坐标通常是满足规划得到的足端运动轨迹的,即足端落点在楼梯台阶上,如果足端坐标不再满足楼梯特征,如图7所示,即可判断楼梯已经到达尽头,在一种可能的实现方式中,可以通过足端坐标确定是否满足楼梯特征,如图7所示,机器人701在行驶过程中,当足端x坐标大于上一级台阶的水平位置坐标x1且足端z坐标小于上一级楼梯的高度坐标z1时,即为当前足本应迈向下一级台阶时,却踩到了楼梯下方,说明前方已无楼梯。判断楼梯结束,控制机器人切换为预设行驶模式,其中,预设行驶模式可以包括平地行驶模式。
本公开实施例,通过实际足端落点的位置数据和规划足端落点的位置数据的比较,能够实现对机器人行驶状态的判断,从而进行机器人行驶模式的转换,且判断方式和控制方式精确,实现了机器人的自动爬梯,保证了机器人工作状态的稳定的同时,无需视觉辅助判断机器人的行驶状态,实现方式简单,实现难度低。
在一个实施例中,方法还包括:
响应于机器人的足端垂直高度减小指令的触发,获取机器人在多个不同的垂直高度下的足端落点的位置数据,其中,减小指令包括减小量大于预设高度值的指令;
根据不同的垂直高度下的足端落点的位置数据,确定多个不同的垂直高度中每个垂直高度对应的第一水平位置和第二水平位置,其中,第一水平位置表示离垂直高度对应的台阶外边沿最近的位置,第二水平位置表示离垂直高度对应的台阶内边沿最近的位置;
根据多个第一水平位置和多个第二水平位置确定第二楼梯对应的台阶边沿位置数据;
根据所述台阶边沿位置数据确定所述机器人的第二足端运动轨迹。
本公开实施例中,还提供了一种机器人下楼梯时的爬梯规划方法,从而可以实现机器人的自动下楼梯。在机器人的行驶过程中,获取机器人的足端的垂直高度,通常情况下,机器人在平面或无障碍的情况下行驶时,足端的垂直高度的改变量始终在一个高度值范围内。当机器人的足端垂直高度减小预设高度值时,响应于机器人的足端垂直高度减小指令的触发,获取机器人在多个不同的垂直高度下的足端落点的位置数据,在一个示例中,可以对多个不同的垂直高度设置预设条件,例如,多个不同的垂直高度之间的差值大于预设阈值,以使得获取到的多个不同的垂直高度与楼梯的台阶相对应,预设阈值可以为事先根据实际应用场景设置得到。根据不同垂直高度下的足端落点的位置数据,确定每个垂直高度中对应的第一水平位置和第二水平位置,其中,每个垂直高度可以看作对应一级台阶,第一水平位置表示离该垂直高度对应的台阶的外边沿最近的位置,第二水平位置表示离该垂直高度对应的台阶的内边沿最近的位置。确定得到多个第一水平位置和多个第二水平位置后,由于第一水平位置和第二水平位置对应距离台阶边沿最近的落点位置,因此,根据多个第一水平位置和多个第二水平位置可以确定第二楼梯对应的台阶边沿位置数据。在一种可能的实现方式中,可以事先根据机器人的足端落点位置的特征确定机器人的足端落点位置与楼梯边沿之间的关联关系,在获取到多个第一水平位置和多个第二水平位置后,确定楼梯边沿位置数据,其中,楼梯边沿位置数据可以包括楼梯边沿的水平位置和垂直高度。在另一种可能的实现方式中,通常情况下,根据楼梯的构造可知,楼梯台阶的边沿可以用一条直线标识,所有楼梯边沿均在该直线上,本实施例中,可以根据多个第一水平位置和多个第二水平位置拟合楼梯边沿对应的直线,从而确定楼梯对应的台阶边沿位置数据。根据台阶边沿位置数据确定机器人的第二足端运动轨迹,其中,第二足端运动轨迹可以包括足端落点位置,根据台阶边沿位置数据可以调整机器人下楼梯时的足端落点位置,使得机器人在下楼梯时不会踩空;第二足端运动轨迹还可以包括摆动腿运动轨迹,根据台阶边沿位置数据可以调整机器人下楼梯时的摆动腿的运动轨迹,使得机器人在下楼梯时不会踩空。在一个示例中,第二足端运动轨迹还可以包括机器人主体的倾斜角度、主体高度等机器人行驶数据。在一个示例中,确定得到第二足端运动轨迹后,可以控制机器人按照第二足端运动轨迹行驶。在一种可能的实现方式中,确定第二足端运动轨迹时,可以根据预测足端落点位置与台阶边沿位置之间的关系对预测足端落点位置进行调整,得到调整后的足端落点位置。在一个示例中,在机器人行驶的过程中,台阶边沿位置数据可以根据获取到的数据进行更新调整,规划得到的下行足端运动轨迹也在实时更新调整,以使得调整后的足端运动轨迹更为准确可靠。在一个示例中,机器人下楼梯时,按照第二足端运动轨迹行驶,可以通过实时判断足端的位置数据判断楼梯是否已经结束,例如,获取机器人的足端落点的实际位置数据;确定下行足端运动轨迹中与实际位置数据相对应的规划足端落点位置的规划位置数据;在实际位置数据的垂直高度与规划位置数据的垂直高度之间的差值绝对值大于预设值的情况下,控制机器人按照预设行驶模式继续行驶,其中,预设行驶模式包括无障碍行驶模式。
本公开实施例,在机器人下楼梯时,根据机器人的足端垂直高度的变化对机器人状态进行判断,同时,根据机器人的足端位置数据,确定楼梯对应的台阶边沿位置数据,从而能够规划机器人的第二足端运动轨迹,实现机器人的自动下楼梯;且根据足端位置数据进行轨迹调整,得到的轨迹较为精确,实现方式简单,无需视觉辅助,实现难度低,适用于更多应用场景。通过本公开实施例,下楼梯时不依赖楼梯先验参数,且随着获取到的落点位置数据的增多,规划得到的足端运动轨迹逐渐精确,保证了机器人下楼梯时的稳定性。
在一个实施例中,方法还,包括:
根据台阶边沿位置数据确定第二楼梯的倾斜数据;
根据倾斜数据调整机器人的主体倾斜角度,并控制机器人按照第二足端运动轨迹继续行驶。
本公开实施例中,在控制机器人按照第二足端运动轨迹继续行驶时,根据台阶边沿位置数据确定第二楼梯的倾斜数据,其中,倾斜数据可以包括楼梯的斜率。根据楼梯的倾斜数据对机器人主体的倾斜角度进行调整,控制机器人按照第二足端运动轨迹继续行驶。在一个示例中,根据楼梯的倾斜数据可以确定楼梯的倾斜角度,在调整机器人的主体倾斜角度时,可以将机器人主体的倾斜角度调整为与楼梯台阶边沿对应的倾斜角度相同,以使得机器人行驶更为平稳,降低踩空摔倒的可能性。
本公开实施例,根据台阶边沿位置数据确定楼梯的倾斜数据,并对机器人的主体倾斜角度进行调整,能够保证机器人行驶的稳定性,使得机器人在下楼梯时能够保持平衡,降低因踩空导致摔倒的可能性,实现了机器人的自动下楼梯,且实现方式简单,实现难度低。
在一个实施例中,在响应于机器人的足端垂直高度减小指令的触发,之后还包括:
利用预设的阻抗控制方法调整机器人的足端接触点的作用力。
本公开实施例中,在机器人的足端垂直高度减小预设高度值时,机器人重心发生变化,可能出现因踩空导致摔倒的可能性,此时,利用预设的阻抗控制方法调整机器人的足端接触点的作用力,其中,预设的阻抗控制方法通常为事先根据实际应用场景设置得到,在机器人的足端垂直高度减小预设高度值时被触发。具体的,机器人阻抗控制是将机器人与环境接触作业的动力学模型修改为期望阻抗模型,期望阻抗模型本质上是一个理想的机器人运动与外力之间的动态关系,通过任意调节惯性、阻尼、刚度参数来实现调整机器人末端位置与接触力的关系。通过阻抗控制能够降低机器人因踩空导致摔倒的可能性。
本公开实施例,在机器人的足端垂直高度下降预设高度值时,利用预设的阻抗控制方法调整机器人的足端接触点的作用力,降低了机器人因踩空导致摔倒的可能性,提升了机器人下楼梯时的稳定性,控制方式简单,实现难度低;从而能够继续后续根据机器人的足端落点位置确定下行足端运动轨迹,进而实现机器人自动下楼梯。
在一个示例中,机器人包括四足机器人,当机器人为四足机器人时,由于四足机器人的关节都是朝向后面的,所以下楼梯时采用倒着走下楼梯的方式,容易避免关节与楼梯发生碰撞。与上楼梯不同的是,下楼梯不会出现腿部被楼梯绊到的情况,但是有可能会出现踩空的情况,因此,在下楼梯时,采取阻抗控制方法来增加腿部踩空时的身体稳定性,避免机器人摔倒。在一种可能的实现方式中,下楼梯时需要的楼梯参数包括楼梯的斜率,即台阶高度与宽度的比值,获取到楼梯参数后,根据该参数规划机器人的足端运动轨迹,并且可以将机器人的身体姿态调整到与楼梯平行来增加稳定性。
图8为根据一示例性实施例示出的一种机器人的爬梯规划方法的流程示意图,参考图8所示,可以通过直线拟合的方式获取楼梯参数,在机器人下楼梯的过程中,获取机器人的足端的落点,并根据落点对应的垂直高度确定落点对应的台阶,判断落点的水平位置是否为预设的第一水平位置或第二水平位置,在一种可能的实现方式中,可以根据落点的x坐标进行判断,判断落点的x坐标是否为该台阶对应的最大值或最小值,并根据结果对台阶的最大值和最小值进行更新,将得到的每个台阶的最大值和最小值加入拟合点。当拟合点数大于或等于4时,即可以进行楼梯直线的拟合,并根据拟合得到的楼梯直线更新楼梯参数,其中,楼梯参数包括台阶边沿位置数据。本实施例中,在机器人下楼梯的过程中,拟合点数是在不断增多的,拟合得到的直线也在更新,点数越多,拟合得到的直线越准确。本实施例中,下楼梯时不依赖楼梯先验参数,根据足端轨迹拟合出楼梯直线方程,随着拟合的点数增加,拟合精度逐渐提高,下楼梯越到后面越稳定。参考图9所示,将楼梯901用一条直线902表示,所有楼梯边缘均在该直线上,机器人在行走过程中会留下一系列足端轨迹坐标,根据这些足端轨迹坐标可以拟合出一条直线,该直线的斜率可以看作楼梯的斜率,在一个示例中,可以利用最小二乘法拟合直线。图中的点代表机器人行走过程中的落点,虚线箭头表示将每级台阶最右侧的点903提高到上一级台阶(使用上一级台阶的y坐标)得到每个台阶的最右侧的点903对应的点904,台阶边缘一定位于同一水平面的距离台阶边沿最近的两个点之间,即图9中的904和每个台阶最左侧的点905之间。在一个示例中,根据实际应用场景设置两个点的权重,例如,在实际应用场景中,通常情况下直线下方的点距离直线更近,因此在进行直线拟合时下方的点在误差计算函数中可以设置更高的权重。得到直线斜率后机器人可以根据该斜率规划身体高度和仰角。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,附图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本公开实施例还提供了一种用于实现上述所涉及的机器人的爬梯规划方法的机器人的爬梯规划装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个机器人的爬梯规划装置实施例中的具体限定可以参见上文中对于机器人的爬梯规划方法的限定,在此不再赘述。
在一个实施例中,如图10所示,提供了一种机器人的爬梯规划装置1000,包括:
获取模块1010,用于响应于预设操作指令的触发,获取机器人的足端位置数据,所述预设操作指令包括所述机器人的足端触碰到第一楼梯的第一台阶侧面的指令、所述机器人的足端触碰到所述第一楼梯的第二台阶侧面的指令、所述机器人的足端迈上所述第一台阶顶面的指令;
第一确定模块1020,用于根据所述足端位置数据确定所述第一楼梯的台阶位置数据;
第二确定模块1030,用于根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,所述第一足端运动轨迹包括上行足端运动轨迹和/或下行足端运动轨迹。
在一个实施例中,所述获取模块,包括:
第一获取子模块,用于响应于机器人的足端触碰到所述第一台阶侧面的指令的触发,获取与所述第一台阶侧面触碰的足端的第一水平位置及所述机器人未抬起的足端的第一垂直高度;
第二获取子模块,用于响应于所述机器人的足端迈上所述第一台阶顶面的指令的触发,获取迈上所述第一台阶顶面的足端的第二垂直高度;
第三获取子模块,用于响应于所述机器人的足端触碰到所述第二台阶侧面的指令的触发,获取与所述第二台阶侧面触碰的足端的第二水平位置。
在一个实施例中,所述第一确定模块,包括:
第一确定子模块,用于根据所述第一水平位置和所述第二水平位置确定所述第一楼梯的台阶宽度;
第二确定子模块,用于根据所述第一垂直高度和所述第二垂直高度确定所述第一楼梯的台阶高度;
第三确定子模块,用于根据所述台阶宽度和所述台阶高度确定所述第一楼梯的台阶位置数据。
在一个实施例中,所述第二确定模块,包括:
第四获取子模块,用于获取所述机器人的预设行驶模式对应的关节位置和质心速度,所述预设行驶模式包括无障碍行驶模式;
预测模块,用于根据所述关节位置和所述质心速度预测所述机器人的足端落点的预测位置数据;
第一调整模块,用于根据所述台阶位置数据和所述预测位置数据确定所述足端落点与所述第一楼梯的台阶之间的位置关系,在所述足端落点位于台阶边缘预设范围以内的情况下,调整所述预测位置数据至预设位置数据,得到调整后的足端落点的位置数据;
第四确定子模块,用于根据所述调整后的足端落点的位置数据确定所述机器人的第一足端运动轨迹。
在一个实施例中,所述第一足端运动轨迹包括行走时的规划足端落点位置,所述装置包括:
第五获取子模块,用于获取所述机器人的足端落点的实际位置数据;
第五确定子模块,用于确定所述第一足端运动轨迹中与所述实际位置数据相对应的规划足端落点位置的规划位置数据;
控制模块,用于在所述规划位置数据的垂直高度与所述实际位置数据的垂直高度之间的差值绝对值大于预设差值的情况下,控制所述机器人按照预设行驶模式行驶,所述预设行驶模式包括无障碍行驶模式。
在一个实施例中,所述装置还包括:
第六获取子模块,用于响应于所述机器人的足端垂直高度减小指令的触发,获取所述机器人在多个不同的垂直高度下的足端落点的位置数据,其中,所述减小指令包括减小量大于预设高度值的指令;
第六确定子模块,用于根据所述不同的垂直高度下的足端落点的位置数据,确定所述多个不同的垂直高度中每个垂直高度对应的第一水平位置和第二水平位置,其中,所述第一水平位置表示离所述垂直高度对应的台阶外边沿最近的位置,所述第二水平位置表示离所述垂直高度对应的台阶内边沿最近的位置;
第七确定子模块,用于根据多个所述第一水平位置和多个所述第二水平位置确定第二楼梯对应的台阶边沿位置数据;
第八确定子模块,用于根据所述台阶边沿位置数据确定所述机器人的第二足端运动轨迹。
在一个实施例中,所述装置还包括:
第九确定子模块,用于根据所述台阶边沿位置数据确定所述第二楼梯的倾斜数据;
行驶模块,用于根据所述倾斜数据调整所述机器人的主体倾斜角度,并控制所述机器人按照所述第二足端运动轨迹行驶。
在一个实施例中,在所述第六获取子模块,之后还包括:
第二调整模块,用于利用预设的阻抗控制方法调整所述机器人的足端接触点的作用力。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储机器人的运动轨迹等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种机器人的爬梯规划方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本公开实施例方案相关的部分结构的框图,并不构成对本公开实施例方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本公开实施例所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本公开实施例所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存5储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速
缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本公开实施例所提供的各实施例中所涉及的数据库可包括关系型数据库和非关
系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。0本公开实施例所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理
器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
5以上所述实施例仅表达了本公开实施例的几种实施方式,其描述较为具体和详细,但并
不能因此而理解为对本公开实施例专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开实施例构思的前提下,还可以做出若干变形和改进,这些都属于本公开实施例的保护范围。因此,本公开实施例的保护范围应以所附权利要求为准。

Claims (11)

1.一种机器人的爬梯规划方法,其特征在于,所述方法包括:
响应于预设操作指令的触发,获取机器人的足端位置数据,所述预设操作指令包括所述机器人的足端触碰到第一楼梯的第一台阶侧面的指令、所述机器人的足端触碰到所述第一楼梯的第二台阶侧面的指令、所述机器人的足端迈上所述第一台阶顶面的指令;
根据所述足端位置数据确定所述第一楼梯的台阶位置数据;
根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,所述第一足端运动轨迹包括上行足端运动轨迹和/或下行足端运动轨迹。
2.根据权利要求1所述的方法,其特征在于,所述响应于预设操作指令的触发,获取机器人的足端位置数据,包括:
响应于机器人的足端触碰到所述第一台阶侧面的指令的触发,获取与所述第一台阶侧面触碰的足端的第一水平位置及所述机器人未抬起的足端的第一垂直高度;
响应于所述机器人的足端迈上所述第一台阶顶面的指令的触发,获取迈上所述第一台阶顶面的足端的第二垂直高度;
响应于所述机器人的足端触碰到所述第二台阶侧面的指令的触发,获取与所述第二台阶侧面触碰的足端的第二水平位置。
3.根据权利要求2所述的方法,其特征在于,所述根据所述足端位置数据确定所述第一楼梯的台阶位置数据,包括:
根据所述第一水平位置和所述第二水平位置确定所述第一楼梯的台阶宽度;
根据所述第一垂直高度和所述第二垂直高度确定所述第一楼梯的台阶高度;
根据所述台阶宽度和所述台阶高度确定所述第一楼梯的台阶位置数据。
4.根据权利要求1所述的方法,其特征在于,所述根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,包括:
获取所述机器人的预设行驶模式对应的关节位置和质心速度,所述预设行驶模式包括无障碍行驶模式;
根据所述关节位置和所述质心速度预测所述机器人的足端落点的预测位置数据;
根据所述台阶位置数据和所述预测位置数据确定所述足端落点与所述第一楼梯的台阶之间的位置关系,在所述足端落点位于台阶边缘预设范围以内的情况下,调整所述预测位置数据至预设位置数据,得到调整后的足端落点的位置数据;
根据所述调整后的足端落点的位置数据确定所述机器人的第一足端运动轨迹。
5.根据权利要求1所述的方法,其特征在于,所述第一足端运动轨迹包括行走时的规划足端落点位置,所述方法还包括:
获取所述机器人的足端落点的实际位置数据;
确定所述第一足端运动轨迹中与所述实际位置数据相对应的规划足端落点位置的规划位置数据;
在所述规划位置数据的垂直高度与所述实际位置数据的垂直高度之间的差值绝对值大于预设差值的情况下,控制所述机器人按照预设行驶模式行驶,所述预设行驶模式包括无障碍行驶模式。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述机器人的足端垂直高度减小指令的触发,获取所述机器人在多个不同的垂直高度下的足端落点的位置数据,其中,所述减小指令包括减小量大于预设高度值的指令;
根据所述不同的垂直高度下的足端落点的位置数据,确定所述多个不同的垂直高度中每个垂直高度对应的第一水平位置和第二水平位置,其中,所述第一水平位置表示离所述垂直高度对应的台阶外边沿最近的位置,所述第二水平位置表示离所述垂直高度对应的台阶内边沿最近的位置;
根据多个所述第一水平位置和多个所述第二水平位置确定第二楼梯对应的台阶边沿位置数据;
根据所述台阶边沿位置数据确定所述机器人的第二足端运动轨迹。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
根据所述台阶边沿位置数据确定所述第二楼梯的倾斜数据;
根据所述倾斜数据调整所述机器人的主体倾斜角度,并控制所述机器人按照所述第二足端运动轨迹行驶。
8.一种机器人的爬梯规划装置,其特征在于,所述装置包括:
获取模块,用于响应于预设操作指令的触发,获取机器人的足端位置数据,所述预设操作指令包括所述机器人的足端触碰到第一楼梯的第一台阶侧面的指令、所述机器人的足端触碰到所述第一楼梯的第二台阶侧面的指令、所述机器人的足端迈上所述第一台阶顶面的指令;
第一确定模块,用于根据所述足端位置数据确定所述第一楼梯的台阶位置数据;
第二确定模块,用于根据所述台阶位置数据确定所述机器人的第一足端运动轨迹,所述第一足端运动轨迹包括上行足端运动轨迹和/或下行足端运动轨迹。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的机器人的爬梯规划方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的机器人的爬梯规划方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的机器人的爬梯规划方法的步骤。
CN202211708233.8A 2022-12-29 2022-12-29 机器人的爬梯规划方法、装置、计算机设备和存储介质 Pending CN116069027A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211708233.8A CN116069027A (zh) 2022-12-29 2022-12-29 机器人的爬梯规划方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211708233.8A CN116069027A (zh) 2022-12-29 2022-12-29 机器人的爬梯规划方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN116069027A true CN116069027A (zh) 2023-05-05

Family

ID=86183125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211708233.8A Pending CN116069027A (zh) 2022-12-29 2022-12-29 机器人的爬梯规划方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN116069027A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591344A (zh) * 2012-03-05 2012-07-18 中国人民解放军国防科学技术大学 四足仿生机器人的时位控制方法
CN107943021A (zh) * 2017-10-19 2018-04-20 布法罗机器人科技(成都)有限公司 一种自适应上下楼梯控制系统和方法
CN110480640A (zh) * 2019-08-26 2019-11-22 中科新松有限公司 用于台阶地形行走的机器人足端轨迹规划方法
US20200324412A1 (en) * 2019-04-12 2020-10-15 Boston Dynamics, Inc. Robotically Negotiating Stairs
CN112904883A (zh) * 2021-01-26 2021-06-04 德鲁动力科技(成都)有限公司 四足机器人地形感知方法、运动控制方法及系统
CN113359800A (zh) * 2021-06-30 2021-09-07 深圳市优必选科技股份有限公司 机器人行走控制方法、装置、机器人控制设备及存储介质
CN115344040A (zh) * 2022-07-15 2022-11-15 深圳鹏行智能研究有限公司 一种足式机器人足端轨迹规划的方法、装置及足式机器人

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591344A (zh) * 2012-03-05 2012-07-18 中国人民解放军国防科学技术大学 四足仿生机器人的时位控制方法
CN107943021A (zh) * 2017-10-19 2018-04-20 布法罗机器人科技(成都)有限公司 一种自适应上下楼梯控制系统和方法
US20200324412A1 (en) * 2019-04-12 2020-10-15 Boston Dynamics, Inc. Robotically Negotiating Stairs
CN110480640A (zh) * 2019-08-26 2019-11-22 中科新松有限公司 用于台阶地形行走的机器人足端轨迹规划方法
CN112904883A (zh) * 2021-01-26 2021-06-04 德鲁动力科技(成都)有限公司 四足机器人地形感知方法、运动控制方法及系统
CN113359800A (zh) * 2021-06-30 2021-09-07 深圳市优必选科技股份有限公司 机器人行走控制方法、装置、机器人控制设备及存储介质
CN115344040A (zh) * 2022-07-15 2022-11-15 深圳鹏行智能研究有限公司 一种足式机器人足端轨迹规划的方法、装置及足式机器人

Similar Documents

Publication Publication Date Title
JP7219812B2 (ja) 地形を意識したステッププランニングシステム
Grandia et al. Perceptive locomotion through nonlinear model-predictive control
JP7351920B2 (ja) 方法及びロボット
US11878427B2 (en) Robot navigation using 2D and 3D path planning
Chestnutt et al. Footstep planning for the honda asimo humanoid
JP7425854B2 (ja) 制約された移動度マッピング
Chestnutt et al. Planning biped navigation strategies in complex environments
CN110815211B (zh) 一种四足机器人动态跨越凸障碍方法
KR20050028859A (ko) 환경 인식 장치 및 방법, 경로 계획 장치 및 방법, 및로봇 장치
US20240174310A1 (en) Stair Tracking for Modeled and Perceived Terrain
US11073842B1 (en) Perception and fitting for a stair tracker
Tennakoon et al. Probe-before-step walking strategy for multi-legged robots on terrain with risk of collapse
CN117246425A (zh) 四足机器人导航避障与攀爬楼梯方法及系统
CN116449711A (zh) 可跨越大障碍物的四足机器人爬行态规划方法及系统
CN116069027A (zh) 机器人的爬梯规划方法、装置、计算机设备和存储介质
CN113467445A (zh) 一种基于视觉与路径规划的四足机器人摆动腿避障方法
Cupec et al. Step sequence planning for a biped robot by means of a cylindrical shape model and a high-resolution 2.5 D map
CN110502857B (zh) 面向四足机器人的地形崎岖度在线估计方法
CN109141438A (zh) 一种叉车全局路径规划方法
Belter Gait modification strategy for a six-legged robot walking on rough terrain
US20240189989A1 (en) Object climbing by legged robots using training objects
Ling et al. Footprint searching and trajectory design of a humanoid robot
Sato et al. Humanoid Walking System with CNN-Based Uneven Terrain Recognition and Landing Control with Swing-Leg Velocity Constraints
Gu et al. Workspace-Based Motion Planning for Quadrupedal Robots on Rough Terrain
CN117270551A (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