CN113524191A - 机器人运动控制方法及装置、机器人、存储介质 - Google Patents
机器人运动控制方法及装置、机器人、存储介质 Download PDFInfo
- Publication number
- CN113524191A CN113524191A CN202110869529.7A CN202110869529A CN113524191A CN 113524191 A CN113524191 A CN 113524191A CN 202110869529 A CN202110869529 A CN 202110869529A CN 113524191 A CN113524191 A CN 113524191A
- Authority
- CN
- China
- Prior art keywords
- speed
- acceleration
- deceleration
- robot
- real
- 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.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1651—Programme controls characterised by the control loop acceleration, rate control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
Abstract
本申请提供一种机器人运动控制方法及装置、机器人、存储介质,该方法包括:获取竖直方向上的加速度以及前方平面的起伏距离;根据竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数;根据接收的指令速度,当前运动速度以及实时运动学参数,执行速度控制操作。上述方案,运动学参数不再固定不变,而是根据机器人竖直方向上的加速度和前方平面的起伏距离,来计算得到,由此运动学参数与实际的环境相结合,适应路面的起伏变化,在遇到颠簸路面时及时调整运动学参数,最后根据指令速度、当前运动速度以及实时运动学参数三者的结合,来控制机器人速度,从而可以根据路面的高低起伏变化,自适应进行速度调整,使得机器人的运动更平稳。
Description
技术领域
本申请涉及机器人技术领域,特别涉及一种机器人运动控制方法及装置、机器人、计算机可读存储介质。
背景技术
随着机器人越来越普及,机器人被越来越广泛的应用在各种场景中,一套固定的运动学参数,无法使机器人满足客户在不同场景下的需求。所以让机器人能够动态的调整自己的运动学参数尤为重要。
以往,由于在不同场景中,机器人只有固定的一套运动学参数,从而导致机器人在不同场景中的运动规则一样,但是对于颠簸道路,如果采用与平底相同的运动学参数,会导致机器人运动不平稳,容易造成翻倒等安全事故。
发明内容
本申请实施例提供了一种机器人运动控制方法,用以使机器人运动更平稳。
本申请实施例提供了一种机器人运动控制方法,包括:
获取竖直方向上的加速度以及前方平面的起伏距离;所述竖直方向是指重力方向;
根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数;
根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作。
在一实施例中,在获取竖直方向上的加速度以及前方平面的起伏距离之前,所述方法还包括:
获取点云数据;
根据所述点云数据,拟合得到前方平面,所述前方平面的法向量平行与机器人且面积大于阈值;
根据所述前方平面对应的点云数据中的最高点和最低点,确定所述前方平面的起伏距离。
在一实施例中,所述根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数,包括:
计算所述竖直方向上的加速度与标准重力加速度之间的差距;
根据运动学模板参数、所述差距以及所述前方平面的起伏距离,计算所述实时运动学参数。
在一实施例中,所述计算所述竖直方向上的加速度与标准重力加速度之间的差距,包括:
根据预设时间段内获取的竖直方向上的多个加速度,计算每个加速度与标准重力加速度的差异的平均值,得到所述差距。
在一实施例中,在所述根据运动学模板参数、所述差距以及所述前方平面的起伏距离,计算所述实时运动学参数之前,所述方法还包括:
接收模板切换指令;
根据所述模板切换指令携带的模板标识,获取所述模板标识对应的运动学模板参数。
在一实施例中,所述根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作,包括:
根据所述实时运动学参数限定的最大速度以及最大加减速度,判断所述指令速度是否超过最大速度,判断所述指令速度是否为停止指令速度,以及,判断所述指令速度相对所述当前运动速度的加减速度是否超过最大加减速度,获得判断结果;
根据所述判断结果,约束机器人的加减速不超过所述最大加减速,运行速度不超过所述最大速度。
在一实施例中,所述根据所述判断结果,约束机器人的加减速不超过所述最大加减速度,运行速度不超过所述最大速度,包括:
若判断出所述指令速度超过所述实时运动学参数限定的最大速度,将所述实时运动学参数限定的最大速度作为所述指令速度的更新值;
若判断出所述指令速度的更新值相对所述当前运动速度是加速或减速,计算得到加减速度;
若判断出所述加减速度小于等于所述实时运动学参数限定的最大加减速度,控制机器人按照所述指令速度的更新值运动。
在一实施例中,所述计算得到加减速度之后,所述方法还包括:
若判断出所述加减速度大于所述实时运动学参数限定的最大加减速度,按照所述最大加减速度进行加速或减速,直到速度到达所述指令速度的更新值。
在一实施例中,所述根据所述判断结果,约束机器人的加减速不超过所述最大加减速度,运行速度不超过所述最大速度,包括:
若判断出所述指令速度不超过所述实时运动学参数限定的最大速度,且所述指令速度为停止指令速度,判断所述当前运动速度是否小于等于所述实时运动学参数限定的停止速度;
若所述当前运动速度小于等于所述实时运动学参数限定的停止速度,控制机器人按照所述停止指令速度运动。
在一实施例中,所述判断所述当前运动速度是否小于等于所述实时运动学参数限定的停止速度之后,所述方法还包括:
若所述当前运动速度大于所述实时运动学参数限定的停止速度,控制机器人按照所述实时运动学参数限定的最大减速度进行减速。
在一实施例中,所述根据所述判断结果,约束机器人的加减速不超过所述最大加减速度,运行速度不超过所述最大速度,包括:
若判断出所述指令速度不超过所述实时运动学参数限定的最大速度,所述指令速度不是停止指令速度,所述指令速度相对所述当前运动速度是加速或减速,计算得到加减速度;
若所述加减速度小于等于所述实时运动学参数限定的最大加减速度,控制机器人按照所述指令速度运动。
在一实施例中,所述计算得到加减速度之后,所述方法还包括:
若判断出所述加减速度大于所述实时运动学参数限定的最大加减速度,按照所述最大加减速度进行加速或减速,直到速度到达所述指令速度。
本申请实施例提供了一种机器人运动控制装置,该装置包括:
数据获取模块,用于获取竖直方向上的加速度以及前方平面的起伏距离;所述竖直方向是指重力方向;
参数计算模块,用于根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数;
速度控制模块,用于根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作。
本申请实施例提供了一种机器人,所述机器人包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述机器人运动控制方法。
本申请实施例提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述机器人运动控制方法。
本申请上述实施例提供的方案,运动学参数不再固定不变,而是根据机器人竖直方向上的加速度和前方平面的起伏距离,来计算得到,由此运动学参数可以与实际的环境相结合,适应路面的起伏变化,在遇到颠簸路面时可以及时调整运动学参数,最后根据指令速度、当前运动速度以及实时运动学参数三者的结合,来控制机器人速度,从而可以根据路面的高低起伏变化,自适应进行速度调整,使得机器人的运动更平稳。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。
图1为本申请一实施例提供的一种机器人的架构示意图;
图2是本申请实施例提供的机器人运动控制方法的流程示意图;
图3是本申请实施例提供的前方平面的起伏距离的计算过程示意图;
图4图2对应实施例中步骤S220的细节流程图;
图5图2对应实施例中步骤S230的细节流程图;
图6是本申请实施例提供的执行速度控制操作的过程示意图;
图7是本申请另一实施例提供的进行速度控制操作的流程示意图;
图8是本申请又一实施例提供的进行速度控制操作的流程示意图;
图9是本申请实施例提供的机器人运动控制装置的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1为本申请实施例提供的一种机器人的架构示意图,如图1所示,该机器人包括处理器101,以及与处理器101分别连接的存储器104、惯性测量单元103以及深度相机102。
惯性测量单元103可以采集机器人在竖直方向上的加速度并发送到处理器101。深度相机102可以采集点云数据并发送到处理器101。存储器104用于存储处理器101可执行的指令;处理器101被配置为执行本申请下述实施例提供的机器人运动控制方法。
所述处理器101可以是包含中央处理单元(CPU)、图像处理单元(GPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元的设备,可以对机器人中的其它组件的数据进行处理,还可以控制机器人中的其它组件以执行期望的功能。
所述存储器104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器101可以运行所述程序指令,以实现下文所述的机器人运动控制方法。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
图2是本申请实施例提供的机器人运动控制方法的流程示意图。该方法可以由上述处理器101执行,如图2所示,该方法包括以下步骤S210-步骤S230。
步骤S210:获取竖直方向上的加速度以及前方平面的起伏距离。
其中,竖直方向的加速度是指重力方向上运动的加速度,可以由惯性测量单元采集得到。前方平面的起伏距离可以根据深度相机、激光雷达等采集的点云数据得到。前方平面的起伏距离用于表征机器人前进方向上的路面的颠簸程度,前方平面的最高点与最低点之间的距离即为起伏距离。
在一实施例中,在步骤S210获取之前,如图3所示,前方平面的起伏距离可以通过以下步骤S201-步骤S203获得。
步骤S201:获取点云数据。
其中,点云数据可以由上述深度相机、激光雷达采集得到。点云数据用于指示机器人前方路面的每个点的位置坐标。
步骤S202:根据所述点云数据,拟合得到前方平面,所述前方平面的法向量平行与机器人且面积大于阈值。
基于每个点的位置坐标,可以拟合出一个平面,为了将法向量垂直于机器人的墙面过滤掉以及将地面上的小盒子等过滤掉,可以仅保留面积大于阈值的拟合平面,作为机器人前进方向上的地面,即前方平面。
步骤S203:根据所述前方平面对应的点云数据中的最高点和最低点,确定所述前方平面的起伏距离。
将与该拟合平面对应的实际获取的点云数据中的最高的点云数据与最低的点云数据的坐标(法向量方向的坐标)作差。例如,最高的点云数据在平面法向量上的坐标为z=2,最低的点云数据在平面法向量上的坐标为z=-2,则H=4,即起伏距离是4。
步骤S220:根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数。
实时运动学参数是相对模板运动学参数而言的,是当前时刻的运动学参数。实时运动学参数会随着竖直方向上的加速度和前方平面的起伏距离进行变化。
实时运动学参数可以包括最大速度、最大加减速度、停止速度。最大速度可以包括最大线速度、最大角速度;最大加减速度包括最大线加速度、最大角加速度、最大线减速度、最大角减速度;停止速度包括:线停止速度、角停止速度。
最大线速度是指最大直线运动速度的绝对值;最大线加速度是指直线运动方向上的最大加速度;最大线减速度是指直线运动方向上的最大减速度;线停止速度是指当机器人在直线运动方向上的实际运行速度小于线停止速度时,机器人收到停止的速度时,可以直接停止,否则按最大线减速度进行减速;最大角速度是指最大的旋转角速度的绝对值;最大角加速度是指旋转方向上,最大的角加速度的绝对值;最大角减速度是指旋转方向上,最大的角减速度的绝对值;角停止速度是指当机器人实际运行的旋转角速度的绝对值小于角停止速度时,机器人收到停止的速度时,可以直接停止,否则其角速度按最大角减速度进行减速。
在一实施例中,如图4所示,上述步骤S220具体可以包括以下步骤S221-步骤S222。
步骤S221:计算所述竖直方向上的加速度与标准重力加速度之间的差距。
在一实施例中,上述差距可以是竖直方向上的加速度gz与标准重力加速度g之间的差值的绝对值。
在另一实施例中,可以根据预设时间段内获取的竖直方向上的多个加速度,计算每个加速度与标准重力加速度的差异的平均值,得到所述差距。
具体的,机器人在运动过程中,处理器可以从IMU(惯性测量单元)实时读取Z轴(竖直)方向的加速度gz,并将其加入维护的加速度队列中,队列记为G={gz0,gz1…gzN-1},代表最新的N个加速度值,通过以下公式计算变量J,
上述变量J即为计算的多个加速度与标准重力加速度的差异的平均值,即差距。
步骤S222:根据运动学模板参数、所述差距以及所述前方平面的起伏距离,计算所述实时运动学参数。
依次代表模板名称,模板中规定的最大线速度、最大线加速度、最大线减速度、线停止速度、最大角速度、最大角加速度、最大角减速度、角停止速度。
在一实施例中,在上述步骤S322之前,机器人可以接收模板切换指令;根据所述模板切换指令携带的模板标识,获取模板标识对应的运动学模板参数。
模板标识可以是模板名称或模板编号。不同的模板标识可以对应不同的运动学模板参数。模板切换指令可以包含模板标识,模板切换指令可以由其他设备发送到机器人,也可以根据用户输入触发。机器人接收到模板切换指令,进而根据模板标识,从本地或服务端获取模板标识对应的运动学模板参数。
实时运动学参数的计算公式如下:
其中,kL,kR为根据机器人具体电机驱动特性得到的经验值;J为竖直方向上的加速度与标准重力加速度之间的差距;H为起伏距离。V'Max、A'LinearMax、D'LinearMax、S'Linear、R'Max、A'RotateMax、D'RotateMax、S'Rotate依次代表实时运动学参数中的最大线速度、最大线加速度、最大线减速度、线停止速度、最大角速度、最大角加速度、最大角减速度、角停止速度。
步骤S230:根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作。
指令速度是指机器人接收到的指令指示的速度,包括角速度、线速度。当前运动速度是指机器人当前时刻的线速度和角速度。
进行速度操作包括控制机器人的速度不超过最大速度,加减速度不超过最大加减速度,执行停止指令时的当前运动速度不超过停止速度。上述最大速度、最大加减速度、停止速度均是实时运动学参数中限定的数据。
控制机器人的速度不超过最大速度,包括:控制机器人的线速度不超过最大线速度,角速度不超过最大角速度,
加减速度不超过最大加减速度,包括:线加速度不超过最大线加速度,线减速度不超过最小线减速度,角加速度不超过最大角加速度,角减速度不超过最大角减速度。
本申请上述实施例提供的方案,运动学参数不再固定不变,而是根据机器人竖直方向上的加速度和前方平面的起伏距离,来计算得到,由此运动学参数可以与实际的环境相结合,适应路面的起伏变化,在遇到颠簸路面时可以及时调整运动学参数,最后根据指令速度、当前运动速度以及实时运动学参数三者的结合,来控制机器人速度,从而可以根据路面的高低起伏变化,自适应进行速度调整,使得机器人的运动更平稳。
在一实施例中,如图5所示,上述步骤230具体包括:
步骤S231:根据所述实时运动学参数限定的最大速度以及最大加减速度,判断所述指令速度是否超过最大速度,判断所述指令速度是否为停止指令速度,以及,判断所述指令速度相对所述当前运动速度的加减速度是否超过最大加减速度,获得判断结果。
上述最大速度可以包括最大线速度、最大角速度。最大加减速度可以包括最大线加速度,最大线减速度,最大角加速度和最大角减速度。
停止指令速度可以是0或非常接近0的数值,例如0.01m/s。
加减速度包括加速度和减速度。加减速度是指速度变化量相对时间的比值。加速度是针对加速状态而言的,减速度是针对减速状态而言的。加速度可以包括线加速度和角加速度。同样的,减速度也可以包括角减速度和线减速度。加减速度与电机的控制频率有关,例如指令速度为0.4m/s,当前运动速度是0.3m/s,控制频率为f=25HZ,则
上述判断结果可以包括指令速度是否超过最大速度的判断结果,指令速度是否为停止指令速度的判断结果,指令速度相对当前运动速度的加减速度是否超过最大加减速度的判断结果。
步骤S232:根据所述判断结果,约束机器人的加减速不超过所述最大加减速,运行速度不超过所述最大速度。
从而使机器人的加减速不会过大,运行速度不会过大,使机器人运动更加平稳。
为简化描述,速度包括角速度和线速度。例如指令速度包括指令角速度和指令线速度。最大速度包括最大角速度和最大线速度,加减速度包括线加速度、角加速度、线减速度和角减速度,后续不再赘述。
在一实施例中,如图6所示,执行速度控制操作的过程如下:
步骤S601:判断指令速度是否超过所述实时运动学参数限定的最大速度;若超过,执行步骤S602,若不超过,执行步骤S607。
步骤S602:将所述实时运动学参数限定的最大速度作为所述指令速度的更新值。
假设指令速度是0.8m/s,实时运动学参数限定的最大速度是0.55m/s,表示指令速度太大,超过了实时运动学参数限定的最大速度,故可以将指令速度修改为0.55m/s,即指令速度的更新值为0.55m/s。
步骤S603:判断所述指令速度的更新值相对所述当前运动速度是否是加速或减速,若是,执行步骤S604,若否,执行步骤S604’。
步骤S604:计算得到加减速度;
步骤S605:判断所述加减速度是否小于等于所述实时运动学参数限定的最大加减速度;若是,执行步骤S606,若否,执行步骤S606’。
步骤S606:控制机器人按照所述指令速度的更新值运动。
在另一实施例中,若步骤S603判断出所述指令速度的更新值相对所述当前运动速度不是加速或减速,执行步骤S604’控制机器人按照当前运动速度继续移动。
在另一实施例中,若步骤S605判断出所述加减速度超过所述实时运动学参数限定的最大加减速度,执行步骤S606’:按照所述最大加减速度进行加速或减速,直到速度到达所述指令速度的更新值。
在另一实施例中,如图6所述,若步骤S601判断出所述指令速度不超过所述实时运动学参数限定的最大速度执行以下步骤:
步骤S607:判断指令速度是否为停止指令速度;若是执行步骤S608,若不是,执行步骤S610。
步骤S608:判断所述当前运动速度是否小于等于所述实时运动学参数限定的停止速度。若是,执行步骤S609,若不是,执行步骤S609’
步骤S609:控制机器人按照所述停止指令速度运动。
步骤S609’:控制机器人按照最大减速度进行减速,直到速度到达停止指令速度。
举例来说,假设停止指令速度是0m/s,当前运动速度是0.05m/s,停止速度是0.1m/s,当前运动速度小于停止速度,则可以执行停止指令,即通过刹车将速度降到0。但是如果当前运动速度是0.2m/s,在机器人快速运动时瞬间将速度降到0,会导致机器人翻到,所以在这种情况下,需要按照实时运动学参数规定的最大减速度进行减速,例如将速度降到0。
在另一实施例中,若步骤S607判断出指令速度不是停止指令速度,执行以下步骤。
步骤S610:判断所述指令速度相对所述当前运动速度是否是加速或减速;若是,执行步骤S611,若不是,执行步骤S611’。
步骤S611:计算得到加减速度;
步骤S612:判断加减速度是否小于等于所述实时运动学参数限定的最大加减速度;若是,执行步骤S613,若不是,执行步骤S613’。
步骤S613:控制机器人按照所述指令速度运动。
在另一实施例中,若步骤S610判断出所述指令速度相对所述当前运动速度不是加速或减速,执行步骤S611’:按照当前运动速度进行移动。
在另一实施例中,若步骤S612判断出加减速度超过所述实时运动学参数限定的最大加减速度,执行步骤S613’:按照所述最大加减速度进行加速或减速,直到速度到达所述指令速度。
为保险起见,在上述步骤S606、步骤S606’、步骤S604’、步骤S611’、步骤S613以及步骤S613’之后,还可以增加步骤S614:判断按照上述步骤约束后的速度是否小于等于实时运动学参数限定的最大速度,如果不满足,执行最大速度,从而使保证机器人运行稳定。
图7是本申请另一实施例提供的进行速度控制操作的流程示意图,如图7所示。
步骤S701:判断指令速度是否超过最大速度;若是,执行步骤S702,不是执行步骤S703。
步骤S702:将最大速度作为约束后的指令速度(指令速度的更新值)。
步骤S703:判断指令速度相对于当前运动速度是否是加速或减速;若是,执行步骤S704;若不是执行步骤S704’。
步骤704:判断指令速度是否为停止指令速度;若不是,执行步骤S705;若是,执行步骤S708。
步骤S705:计算加减速度;
步骤S706:判断加减速度是否小于等于最大加减速度;若是,执行步骤S707;若不是,执行步骤S707’。
步骤S707:执行指令速度。
在一实施例中,若步骤S703判断出指令速度相对于当前运动速度不是加速或减速,可以执行步骤S704’:继续按照当前运动速度进行移动。
在一实施例中,若步骤704判断出指令速度是停止指令速度,执行步骤S708:判断当前速度是否小于等于停止速度;若是,执行步骤S709,若不是,执行步骤S709’。
步骤S709:执行停止指令。步骤S709’:按照最大减速度(线减速度和角减速度)进行减速。
在一实施例中,若步骤S706判断出加减速度超出最大加减速度,执行步骤S707’,按照最大加减速度计算出平稳后的速度进行移动。
图8是本申请另一实施例提供的进行速度控制操作的流程示意图,与图7对应实施例的不同之处在于,判断指令速度是否为停止指令速度的步骤704在步骤S703之前执行。
在其他实施例中,上述步骤S701可以在步骤S703和步骤S704之后执行。在其他实施例中,为保险起见,在图7和图8实施例的基础上,还可以额外增加一个步骤判断最后平稳后的速度是否超过最大速度,如果超过,按照最大速度进行移动,从而使机器人运行稳定。
下述为本申请装置实施例,可以用于执行本申请上述机器人运动控制方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请机器人运动控制方法实施例。
图9是本申请实施例还提供了机器人运动控制装置的框图,如图9所示,该装置包括:数据获取模块910、参数计算模块920以及速度控制模块930。
数据获取模块910,用于获取竖直方向上的加速度以及前方平面的起伏距离;所述竖直方向是指重力方向;
参数计算模块920,用于根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数;
速度控制模块930,用于根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作。
上述装置中各个模块的功能和作用的实现过程具体详见上述机器人运动控制方法中对应步骤的实现过程,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (15)
1.一种机器人运动控制方法,其特征在于,包括:
获取竖直方向上的加速度以及前方平面的起伏距离;所述竖直方向是指重力方向;
根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数;
根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作。
2.根据权利要求1所述的方法,其特征在于,在获取竖直方向上的加速度以及前方平面的起伏距离之前,所述方法还包括:
获取点云数据;
根据所述点云数据,拟合得到前方平面,所述前方平面的法向量平行于机器人且面积大于阈值;
根据所述前方平面对应的点云数据中的最高点和最低点,确定所述前方平面的起伏距离。
3.根据权利要求1所述的方法,其特征在于,所述根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数,包括:
计算所述竖直方向上的加速度与标准重力加速度之间的差距;
根据运动学模板参数、所述差距以及所述前方平面的起伏距离,计算所述实时运动学参数。
4.根据权利要求3所述的方法,其特征在于,所述计算所述竖直方向上的加速度与标准重力加速度之间的差距,包括:
根据预设时间段内获取的竖直方向上的多个加速度,计算每个加速度与标准重力加速度的差异的平均值,得到所述差距。
5.根据权利要求3所述的方法,其特征在于,在所述根据运动学模板参数、所述差距以及所述前方平面的起伏距离,计算所述实时运动学参数之前,所述方法还包括:
接收模板切换指令;
根据所述模板切换指令携带的模板标识,获取所述模板标识对应的运动学模板参数。
6.根据权利要求1所述的方法,其特征在于,所述根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作,包括:
根据所述实时运动学参数限定的最大速度以及最大加减速度,判断所述指令速度是否超过最大速度,判断所述指令速度是否为停止指令速度,以及,判断所述指令速度相对所述当前运动速度的加减速度是否超过最大加减速度,获得判断结果;
根据所述判断结果,约束机器人的加减速不超过所述最大加减速,运行速度不超过所述最大速度。
7.根据权利要求6所述的方法,其特征在于,所述根据所述判断结果,约束机器人的加减速不超过所述最大加减速度,运行速度不超过所述最大速度,包括:
若判断出所述指令速度超过所述实时运动学参数限定的最大速度,将所述实时运动学参数限定的最大速度作为所述指令速度的更新值;
若判断出所述指令速度的更新值相对所述当前运动速度是加速或减速,计算得到加减速度;
若判断出所述加减速度小于等于所述实时运动学参数限定的最大加减速度,控制机器人按照所述指令速度的更新值运动。
8.根据权利要求7所述的方法,其特征在于,所述计算得到加减速度之后,所述方法还包括:
若判断出所述加减速度大于所述实时运动学参数限定的最大加减速度,按照所述最大加减速度进行加速或减速,直到速度到达所述指令速度的更新值。
9.根据权利要求6所述的方法,其特征在于,所述根据所述判断结果,约束机器人的加减速不超过所述最大加减速度,运行速度不超过所述最大速度,包括:
若判断出所述指令速度不超过所述实时运动学参数限定的最大速度,且所述指令速度为停止指令速度,判断所述当前运动速度是否小于等于所述实时运动学参数限定的停止速度;
若所述当前运动速度小于等于所述实时运动学参数限定的停止速度,控制机器人按照所述停止指令速度运动。
10.根据权利要求9所述的方法,其特征在于,所述判断所述当前运动速度是否小于等于所述实时运动学参数限定的停止速度之后,所述方法还包括:
若所述当前运动速度大于所述实时运动学参数限定的停止速度,控制机器人按照所述实时运动学参数限定的最大减速度进行减速。
11.根据权利要求6所述的方法,其特征在于,所述根据所述判断结果,约束机器人的加减速不超过所述最大加减速度,运行速度不超过所述最大速度,包括:
若判断出所述指令速度不超过所述实时运动学参数限定的最大速度,所述指令速度不是停止指令速度,所述指令速度相对所述当前运动速度是加速或减速,计算得到加减速度;
若所述加减速度小于等于所述实时运动学参数限定的最大加减速度,控制机器人按照所述指令速度运动。
12.根据权利要求11所述的方法,其特征在于,所述计算得到加减速度之后,所述方法还包括:
若判断出所述加减速度大于所述实时运动学参数限定的最大加减速度,按照所述最大加减速度进行加速或减速,直到速度到达所述指令速度。
13.一种机器人运动控制装置,其特征在于,该装置包括:
数据获取模块,用于获取竖直方向上的加速度以及前方平面的起伏距离;所述竖直方向是指重力方向;
参数计算模块,用于根据所述竖直方向上的加速度以及前方平面的起伏距离,计算实时运动学参数;
速度控制模块,用于根据接收的指令速度,当前运动速度以及所述实时运动学参数,执行速度控制操作。
14.一种机器人,其特征在于,所述机器人包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-12任意一项所述的机器人运动控制方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1-12任意一项所述的机器人运动控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110869529.7A CN113524191B (zh) | 2021-07-30 | 2021-07-30 | 机器人运动控制方法及装置、机器人、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110869529.7A CN113524191B (zh) | 2021-07-30 | 2021-07-30 | 机器人运动控制方法及装置、机器人、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113524191A true CN113524191A (zh) | 2021-10-22 |
CN113524191B CN113524191B (zh) | 2022-12-20 |
Family
ID=78089858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110869529.7A Active CN113524191B (zh) | 2021-07-30 | 2021-07-30 | 机器人运动控制方法及装置、机器人、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113524191B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120092235A (ko) * | 2011-02-11 | 2012-08-21 | 고려대학교 산학협력단 | 이동 로봇의 제어 장치 및 그 방법 |
CN108724170A (zh) * | 2017-08-15 | 2018-11-02 | 北京猎户星空科技有限公司 | 防止机器人倾倒的方法、装置、机器人及存储介质 |
CN109895091A (zh) * | 2017-12-10 | 2019-06-18 | 湘潭宏远电子科技有限公司 | 一种下坡机器人交互系统 |
CN111152217A (zh) * | 2019-12-30 | 2020-05-15 | 深圳优地科技有限公司 | 一种速度控制方法、装置、机器人及存储介质 |
CN112947420A (zh) * | 2021-01-27 | 2021-06-11 | 上海高仙自动化科技发展有限公司 | 一种设备运行状态识别方法、装置、机器人及存储介质 |
-
2021
- 2021-07-30 CN CN202110869529.7A patent/CN113524191B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120092235A (ko) * | 2011-02-11 | 2012-08-21 | 고려대학교 산학협력단 | 이동 로봇의 제어 장치 및 그 방법 |
CN108724170A (zh) * | 2017-08-15 | 2018-11-02 | 北京猎户星空科技有限公司 | 防止机器人倾倒的方法、装置、机器人及存储介质 |
CN109895091A (zh) * | 2017-12-10 | 2019-06-18 | 湘潭宏远电子科技有限公司 | 一种下坡机器人交互系统 |
CN111152217A (zh) * | 2019-12-30 | 2020-05-15 | 深圳优地科技有限公司 | 一种速度控制方法、装置、机器人及存储介质 |
CN112947420A (zh) * | 2021-01-27 | 2021-06-11 | 上海高仙自动化科技发展有限公司 | 一种设备运行状态识别方法、装置、机器人及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113524191B (zh) | 2022-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190146498A1 (en) | Methods and systems for vehicle motion planning | |
JP2761454B2 (ja) | 自律移動機械の誘導方法 | |
CN107408344B (zh) | 驾驶辅助设备 | |
JPH05197423A (ja) | 移動体の制御装置 | |
US11167754B2 (en) | Systems and methods for trajectory based safekeeping of vehicles | |
US20230063845A1 (en) | Systems and methods for monocular based object detection | |
US11072326B2 (en) | Systems and methods for trajectory based safekeeping of vehicles | |
US20230118472A1 (en) | Systems and methods for vehicle motion planning | |
US20220227391A1 (en) | Systems and methods for scenario dependent trajectory scoring | |
CN109774707A (zh) | 用于自动驾驶车辆的控制方法及装置 | |
CN113183975A (zh) | 自动驾驶车辆的控制方法、装置、设备以及存储介质 | |
CN113524191B (zh) | 机器人运动控制方法及装置、机器人、存储介质 | |
CN113900443A (zh) | 一种基于双目视觉的无人机避障预警方法及装置 | |
CN114115216A (zh) | 车辆编队控制方法、装置、设备及存储介质 | |
US12050661B2 (en) | Systems and methods for object detection using stereovision information | |
CN109774708A (zh) | 用于自动驾驶车辆的控制方法及装置 | |
CN117950395A (zh) | 轨迹规划方法及装置、移动工具、存储介质 | |
CN114987221A (zh) | 一种电动车速度控制方法、装置、设备及存储介质 | |
CN112230641B (zh) | 车辆的制动曲线的生成方法和装置 | |
EP4017772A1 (en) | Systems and methods for trajectory based safekeeping of vehicles | |
WO2022199855A1 (en) | Method and system for controlling autonomous or semi-autonomous vehicle | |
US20240043006A1 (en) | Method and apparatus for generating virtual stop line | |
CN114475658B (zh) | 一种自动驾驶速度的规划方法及装置、车辆和存储介质 | |
Oskroba et al. | Adaptive Control of the Autonomous Car | |
CN117482511A (zh) | 虚拟对象的移动控制方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |