CN113442139B - 基于ros操作系统的机器人速度控制方法及装置 - Google Patents

基于ros操作系统的机器人速度控制方法及装置 Download PDF

Info

Publication number
CN113442139B
CN113442139B CN202110728927.7A CN202110728927A CN113442139B CN 113442139 B CN113442139 B CN 113442139B CN 202110728927 A CN202110728927 A CN 202110728927A CN 113442139 B CN113442139 B CN 113442139B
Authority
CN
China
Prior art keywords
speed
robot
weighting
node
acceleration
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.)
Active
Application number
CN202110728927.7A
Other languages
English (en)
Other versions
CN113442139A (zh
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.)
Shandong New Generation Information Industry Technology Research Institute Co Ltd
Original Assignee
Shandong New Generation Information Industry Technology Research Institute 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 Shandong New Generation Information Industry Technology Research Institute Co Ltd filed Critical Shandong New Generation Information Industry Technology Research Institute Co Ltd
Priority to CN202110728927.7A priority Critical patent/CN113442139B/zh
Publication of CN113442139A publication Critical patent/CN113442139A/zh
Application granted granted Critical
Publication of CN113442139B publication Critical patent/CN113442139B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • 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]

Abstract

本发明公开了基于ROS操作系统的机器人速度控制方法及装置,属于机器人控制技术领域,要解决的技术问题为如何减缓机器人控制过程中的速度突变。包括如下步骤:基于指数加权平均方法编写速度加权节点;速度加权节点订阅速度发布节点发布的速度指令话题,并获取下一时刻的机器人期望速度;速度加权节点订阅机器人状态发布节点发布的话题,并获取当前时刻的机器人实际速度;基于机器人期望速度和机器人实际速度计算机器人加速度;基于机器人加速度和预设的加速度阈值,判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均;将速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。

Description

基于ROS操作系统的机器人速度控制方法及装置
技术领域
本发明涉及机器人控制技术领域,具体地说是基于ROS操作系统的机器人速度控制方法及装置。
背景技术
ROS操作系统(Robot Operating System)是一种开源机器人操作系统,被广泛应用于机器人以及自动驾驶领域。
在机器人控制过程中,机器人的速度对整个机器人任务的安全起着决定性的作用,尤其在机器人起步过程中,过高的加速度会对机器人系统造成安全威胁。
指数加权平均(exponentially weighted averges),也叫指数加权移动平均,是一种常用的序列数据处理方式。它的计算公式如下:
vt=βvt-1+(1-β)θt
其中,θt为t时刻发布的机器人速度,β为指数加权平均系数β∈[0,1],vt为t时刻经过指数加权后的速度。
在实际操作过程中,根据实际情况来调节β的大小。当β=0.98时指数加权平均最后的结果相当于最近50个时刻的平均速度值;当β=0.9时,指数加权平均最后的结果相当于最近10个时刻的平均速度值;当β=0.5时,指数加权平均最后的结果相当于最近2个时刻的平均速度值。
如何减缓机器人控制过程中的速度突变,是需要解决的技术问题。
发明内容
本发明的技术任务是针对以上不足,提供基于ROS操作系统的机器人速度控制方法及装置,来解决如何减缓机器人控制过程中的速度突变的问题。
第一方面,本发明提供基于ROS操作系统的机器人速度控制方法,在原有的速度控制流程中增加速度加权节点,通过所述速度加权节点对机器人的速度进行加权处理,减缓机器人控制过程中的速度突变,所述方法包括如下步骤:
基于指数加权平均方法编写速度加权节点;
所述速度加权节点订阅速度发布节点发布的速度指令话题,并获取下一时刻的机器人期望速度;
所述速度加权节点订阅机器人状态发布节点发布的话题,并获取当前时刻的机器人实际速度;
基于机器人期望速度和机器人实际速度计算机器人加速度;
基于机器人加速度和预设的加速度阈值,判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为所述速度加权节点发布的速度,如果不需要进行指数加权,将所述机器人期望速度作为所述速度加权节点发布的速度;
将所述速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
作为优选,所述速度加权节点包括:
速度订阅模块,所述速度订阅模块用于订阅速度发布节点发布的速度指令话题,获取下一时刻的机器人期望速度,并用于订阅机器人状态发布节点发布的话题,获取当前时刻的机器人实际速度;
加速度计算模块,所述加速度计算模块用于基于机器人期望速度和机器人实际速度计算机器人加速度;
速度加权模块,所述速度加权模块用于设定加速度阈值,基于计算机器人加速度以及加速度阈值判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为所述速度加权节点发布的速度,如果不需要进行指数加权,将所述机器人期望速度作为所述速度加权节点发布的速度;
速度发布模块,所述速度发布模块用于将所述速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
作为优选,机器人加速度计算公式为:
机器人加速度=(机器人期望速度—机器人实际速度)/时间。
作为优选,通过比较机器人加速度的绝对值与预设的加速度阈值的大小,来判断是否进行指数加权;
如果机器人加速度的绝对值大于预设的加速度阈值,对机器人期望速度进行指数加权平均;
如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均。
作为优选,加权节点t时刻发布的加权后的速度与订阅的期望速度关系如下:
vt=βvt-1+(1-β)θt
其中,vt为t时刻经过指数加权后的机器人期望速度,vt-1为t-1时刻速度加权节点发布的机器人期望速度,v0为加权起始时刻订阅的机器人实际速度,θt为t时刻订阅的机器人期望速度,β为指数加权平均系数,β∈[0,1]。
作为优选,如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均,加权节点t时刻发布的速度与订阅的机器人期望速度关系如下:
vt=θt
第二方面,本发明提供装置,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行第一方面任一所述的基于ROS操作系统的机器人速度控制方法。
第三方面,本发明提供计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行第一方面任一所述的基于ROS操作系统的机器人速度控制方法。
本发明的基于ROS操作系统的机器人速度控制方法及装置具有以下优点:在原有的速度控制流程上增加一个速度加权节点,来对机器人的速度进行指数加权处理,减缓机器人控制过程中的速度突变,有效确保了对机器人速度的安全可靠的控制。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
下面结合附图对本发明进一步说明。
图1为实施例1基于ROS操作系统的机器人速度控制方法的流程框图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
本发明实施例提供基于ROS操作系统的机器人速度控制方法及装置,用于解决如何减缓机器人控制过程中的速度突变的技术问题。
实施例1:
本发明的基于ROS操作系统的机器人速度控制方法,在原有的速度控制流程中增加速度加权节点,通过速度加权节点对机器人的速度进行加权处理,减缓机器人控制过程中的速度突变。
该方法包括如下步骤:
S100、基于指数加权平均方法编写速度加权节点;
S200、速度加权节点订阅速度发布节点发布的速度指令话题,并获取下一时刻的机器人期望速度;
速度加权节点订阅机器人状态发布节点发布的话题,并获取当前时刻的机器人实际速度;
S300、基于机器人期望速度和机器人实际速度计算机器人加速度;
S400、基于机器人加速度和预设的加速度阈值,判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为速度加权节点发布的速度,如果不需要进行指数加权,将所述机器人期望速度作为速度加权节点发布的速度;
S500、将速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
其中,速度加权节点包括速度订阅模块、加速度计算模块、速度加权模块和速度发布模块。速度订阅模块用于订阅速度发布节点发布的速度指令话题,获取下一时刻的机器人期望速度,并用于订阅机器人状态发布节点发布的话题,获取当前时刻的机器人实际速度;加速度计算模块用于基于机器人期望速度和机器人实际速度计算机器人加速度;速度加权模块用于设定加速度阈值,基于计算机器人加速度以及加速度阈值判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为速度加权节点发布的速度,如果不需要进行指数加权,将机器人期望速度作为所述速度加权节点发布的速度;速度发布模块用于将速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
机器人加速度计算公式为:
机器人加速度=(机器人期望速度—机器人实际速度)/时间。
本实施例中,通过比较机器人加速度的绝对值与预设的加速度阈值的大小,来判断是否进行指数加权;如果机器人加速度的绝对值大于预设的加速度阈值,对机器人期望速度进行指数加权平均;如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均。
加权节点t时刻发布的加权后的速度与订阅的期望速度关系如下:
vt=βvt-1+(1-β)θt
其中,vt为t时刻经过指数加权后的机器人期望速度,vt-1为t-1时刻速度加权节点发布的机器人期望速度,v0为加权起始时刻订阅的机器人实际速度,θt为t时刻订阅的机器人期望速度,β为指数加权平均系数,β∈[0,1]。
如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均,加权节点t时刻发布的速度与订阅的机器人期望速度关系如下:
vt=θt
本实施例中,在原有的速度控制流程上增加一个速度加权节点,来对机器人的速度进行指数加权处理,有效减缓了机器人控制过程中的速度突变,实现了机器人速度安全可靠的控制。
实施例2:
本发明的装置,包括:至少一个存储器和至少一个处理器;上述至少一个存储器,用于存储机器可读程序;上述至少一个处理器,用于调用所述机器可读程序,执行实施例1公开的方法。
实施例3:
本发明的计算机可读介质,计算机可读介质上存储有计算机指令,计算机指令在被处理器执行时,使处理器执行实施例1公开的方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。

Claims (7)

1.基于ROS操作系统的机器人速度控制方法,其特征在于在原有的速度控制流程中增加速度加权节点,通过所述速度加权节点对机器人的速度进行加权处理,减缓机器人控制过程中的速度突变,所述方法包括如下步骤:
基于指数加权平均方法编写速度加权节点;
所述速度加权节点订阅速度发布节点发布的速度指令话题,并获取下一时刻的机器人期望速度;
所述速度加权节点订阅机器人状态发布节点发布的话题,并获取当前时刻的机器人实际速度;
基于机器人期望速度和机器人实际速度计算机器人加速度;
基于机器人加速度和预设的加速度阈值,判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为所述速度加权节点发布的速度,如果不需要进行指数加权,将所述机器人期望速度作为所述速度加权节点发布的速度;
将所述速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度;
加权节点t时刻发布的加权后的速度与订阅的期望速度关系如下:
vt=βvt-1+(1-β)θt
其中,vt为t时刻经过指数加权后的机器人期望速度,vt-1为t-1时刻速度加权节点发布的机器人期望速度,v0为订阅的机器人实际速度,θt为t时刻订阅的机器人期望速度,β为指数加权平均系数,β∈[0,1]。
2.根据权利要求1所述的基于ROS操作系统的机器人速度控制方法,其特征在于所述速度加权节点包括:
速度订阅模块,所述速度订阅模块用于订阅速度发布节点发布的速度指令话题,获取下一时刻的机器人期望速度,并用于订阅机器人状态发布节点发布的话题,获取当前时刻的机器人实际速度;
加速度计算模块,所述加速度计算模块用于基于机器人期望速度和机器人实际速度计算机器人加速度;
速度加权模块,所述速度加权模块用于设定加速度阈值,基于计算机器人加速度以及加速度阈值判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为所述速度加权节点发布的速度,如果不需要进行指数加权,将所述机器人期望速度作为所述速度加权节点发布的速度;
速度发布模块,所述速度发布模块用于将所述速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
3.根据权利要求1所述的基于ROS操作系统的机器人速度控制方法,其特征在于机器人加速度计算公式为:
机器人加速度=(机器人期望速度—机器人实际速度)/时间。
4.根据权利要求1所述的基于ROS操作系统的机器人速度控制方法,其特征在于通过比较机器人加速度的绝对值与预设的加速度阈值的大小,来判断是否进行指数加权;
如果机器人加速度的绝对值大于预设的加速度阈值,对机器人期望速度进行指数加权平均;
如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均。
5.根据权利要求3所述基于ROS操作系统的机器人速度控制方法,其特征在于如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均,加权节点t时刻发布的速度与订阅的机器人期望速度关系如下:
vt=θt
6.装置,其特征在于,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至5中任一所述的基于ROS操作系统的机器人速度控制方法。
7.计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行权利要求1至5任一所述的基于ROS操作系统的机器人速度控制方法。
CN202110728927.7A 2021-06-29 2021-06-29 基于ros操作系统的机器人速度控制方法及装置 Active CN113442139B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110728927.7A CN113442139B (zh) 2021-06-29 2021-06-29 基于ros操作系统的机器人速度控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110728927.7A CN113442139B (zh) 2021-06-29 2021-06-29 基于ros操作系统的机器人速度控制方法及装置

Publications (2)

Publication Number Publication Date
CN113442139A CN113442139A (zh) 2021-09-28
CN113442139B true CN113442139B (zh) 2023-04-18

Family

ID=77814062

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110728927.7A Active CN113442139B (zh) 2021-06-29 2021-06-29 基于ros操作系统的机器人速度控制方法及装置

Country Status (1)

Country Link
CN (1) CN113442139B (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9501452B2 (en) * 2012-10-25 2016-11-22 GM Global Technology Operations LLC Exponentially weighted moving averaging filter with adjustable weighting factor
CN106926238B (zh) * 2017-02-16 2019-06-14 香港理工大学深圳研究院 基于突加度的多冗余度机械臂系统的协同控制方法与装置
JP7047524B2 (ja) * 2018-03-26 2022-04-05 日本電産株式会社 ロボット制御装置、ロボット制御方法、プログラム
CN108564599B (zh) * 2018-04-08 2020-11-24 广东省智能制造研究所 一种人体运动速度估计方法
WO2020010626A1 (zh) * 2018-07-13 2020-01-16 深圳配天智能技术研究院有限公司 机器人的运动控制方法、机器人及机器人运动控制系统
CN112603205B (zh) * 2020-12-17 2022-01-04 珠海一微半导体股份有限公司 一种机器人行走速度调节方法

Also Published As

Publication number Publication date
CN113442139A (zh) 2021-09-28

Similar Documents

Publication Publication Date Title
EP2562653A2 (en) Method and system for terminating write commands in a hub-based memory system
US20080295104A1 (en) Realtime Processing Software Control Device and Method
CN111343089B (zh) 解决mac地址hash冲突导致洪泛问题的方法及系统
CN113190405B (zh) 一种节点健康检测方法、装置及电子设备和存储介质
CN113442139B (zh) 基于ros操作系统的机器人速度控制方法及装置
CN103336670A (zh) 一种基于数据温度对数据块自动进行分布的方法和装置
US20020052726A1 (en) Performance simulation apparatus, performance simulation method, and recording medium containing performance simulation program
WO2021179411A1 (zh) 面向量子计算的数据交互设备、方法、装置及介质
CN116991142A (zh) 基于模块化uds协议的汽车诊断服务方法及系统
CN115964195A (zh) Dds主题的进程通信方式配置方法及装置
CN110620734A (zh) Tcp链路数据处理方法及装置
US7984234B2 (en) Memory control apparatus and memory control method
US7130992B2 (en) Detecting insertion of removable media
CN113342698A (zh) 一种测试环境调度方法、计算设备及存储介质
CN107506214B (zh) 一种集群系统控制器的更新方法及更新系统
JP4522292B2 (ja) 画像処理装置及び画像処理方法
EP2068244B1 (en) Information processing apparatus having a plurality of program modules executing a process
JP3524700B2 (ja) タスク監視方法
CN117850352A (zh) 多任务处理方法及装置
JP2001038582A (ja) 搬送制御装置および搬送制御方法
JP3184149B2 (ja) 非同期データ更新方法
CN116755793A (zh) 车辆运行场景处理的方法、装置、电子设备和存储介质
CN117555707A (zh) 消息发送方法、系统、电子设备和存储介质
JPH0313779B2 (zh)
JP3411411B2 (ja) 文書更新支援装置

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