CN113442139A - 基于ros操作系统的机器人速度控制方法及装置 - Google Patents
基于ros操作系统的机器人速度控制方法及装置 Download PDFInfo
- Publication number
- CN113442139A CN113442139A CN202110728927.7A CN202110728927A CN113442139A CN 113442139 A CN113442139 A CN 113442139A CN 202110728927 A CN202110728927 A CN 202110728927A CN 113442139 A CN113442139 A CN 113442139A
- 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.)
- 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
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
本发明公开了基于ROS操作系统的机器人速度控制方法及装置,属于机器人控制技术领域,要解决的技术问题为如何减缓机器人控制过程中的速度突变。包括如下步骤:基于指数加权平均方法编写速度加权节点;速度加权节点订阅速度发布节点发布的速度指令话题,并获取下一时刻的机器人期望速度;速度加权节点订阅机器人状态发布节点发布的话题,并获取当前时刻的机器人实际速度;基于机器人期望速度和机器人实际速度计算机器人加速度;基于机器人加速度和预设的加速度阈值,判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均;将速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
Description
技术领域
本发明涉及机器人控制技术领域,具体地说是基于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 (8)
1.基于ROS操作系统的机器人速度控制方法,其特征在于在原有的速度控制流程中增加速度加权节点,通过所述速度加权节点对机器人的速度进行加权处理,减缓机器人控制过程中的速度突变,所述方法包括如下步骤:
基于指数加权平均方法编写速度加权节点;
所述速度加权节点订阅速度发布节点发布的速度指令话题,并获取下一时刻的机器人期望速度;
所述速度加权节点订阅机器人状态发布节点发布的话题,并获取当前时刻的机器人实际速度;
基于机器人期望速度和机器人实际速度计算机器人加速度;
基于机器人加速度和预设的加速度阈值,判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为所述速度加权节点发布的速度,如果不需要进行指数加权,将所述机器人期望速度作为所述速度加权节点发布的速度;
将所述速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
2.根据权利要求1所述的基于ROS操作系统的机器人速度控制方法,其特征在于所述速度加权节点包括:
速度订阅模块,所述速度订阅模块用于订阅速度发布节点发布的速度指令话题,获取下一时刻的机器人期望速度,并用于订阅机器人状态发布节点发布的话题,获取当前时刻的机器人实际速度;
加速度计算模块,所述加速度计算模块用于基于机器人期望速度和机器人实际速度计算机器人加速度;
速度加权模块,所述速度加权模块用于设定加速度阈值,基于计算机器人加速度以及加速度阈值判断是否进行指数加权,如果需要进行指数加权,对机器人期望速度进行指数加权平均,将指数加权平均后的机器人期望速度作为所述速度加权节点发布的速度,如果不需要进行指数加权,将所述机器人期望速度作为所述速度加权节点发布的速度;
速度发布模块,所述速度发布模块用于将所述速度加权节点发布的速度发布至相关速度订阅节点以控制机器人底盘的速度。
3.根据权利要求1所述的基于ROS操作系统的机器人速度控制方法,其特征在于机器人加速度计算公式为:
机器人加速度=(机器人期望速度—机器人实际速度)/时间。
4.根据权利要求1所述的基于ROS操作系统的机器人速度控制方法,其特征在于通过比较机器人加速度的绝对值与预设的加速度阈值的大小,来判断是否进行指数加权;
如果机器人加速度的绝对值大于预设的加速度阈值,对机器人期望速度进行指数加权平均;
如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均。
5.根据权利要求1、2或3所述基于ROS操作系统的机器人速度控制方法,其特征在于加权节点t时刻发布的加权后的速度与订阅的期望速度关系如下:
vt=βvt-1+(1-β)θt
其中,vt为t时刻经过指数加权后的机器人期望速度,vt-1为t-1时刻速度加权节点发布的机器人期望速度,v0为加权起始时刻订阅的机器人实际速度,θt为t时刻订阅的机器人期望速度,β为指数加权平均系数,β∈[0,1]。
6.根据权利要求3所述基于ROS操作系统的机器人速度控制方法,其特征在于如果机器人加速度的绝对值小于预设的加速度阈值,不需对机器人期望速度进行指数加权平均,加权节点t时刻发布的速度与订阅的机器人期望速度关系如下:
vt=θt。
7.装置,其特征在于,包括:至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至6中任一所述的基于ROS操作系统的机器人速度控制方法。
8.计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行权利要求1至6任一所述的基于ROS操作系统的机器人速度控制方法。
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 true CN113442139A (zh) | 2021-09-28 |
CN113442139B 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) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140122020A1 (en) * | 2012-10-25 | 2014-05-01 | GM Global Technology Operations LLC | Exponentially weighted moving averaging filter with adjustable weighting factor |
CN106926238A (zh) * | 2017-02-16 | 2017-07-07 | 香港理工大学深圳研究院 | 基于突加度的多冗余度机械臂系统的协同控制方法与装置 |
CN108564599A (zh) * | 2018-04-08 | 2018-09-21 | 广东省智能制造研究所 | 一种人体运动速度估计方法 |
US20190291272A1 (en) * | 2018-03-26 | 2019-09-26 | Nidec Corporation | Robot control apparatus, robot control method, and program |
CN111656297A (zh) * | 2018-07-13 | 2020-09-11 | 深圳配天智能技术研究院有限公司 | 机器人的运动控制方法、机器人及机器人运动控制系统 |
CN112603205A (zh) * | 2020-12-17 | 2021-04-06 | 珠海市一微半导体有限公司 | 一种机器人行走速度调节方法 |
-
2021
- 2021-06-29 CN CN202110728927.7A patent/CN113442139B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140122020A1 (en) * | 2012-10-25 | 2014-05-01 | GM Global Technology Operations LLC | Exponentially weighted moving averaging filter with adjustable weighting factor |
CN106926238A (zh) * | 2017-02-16 | 2017-07-07 | 香港理工大学深圳研究院 | 基于突加度的多冗余度机械臂系统的协同控制方法与装置 |
US20190291272A1 (en) * | 2018-03-26 | 2019-09-26 | Nidec Corporation | Robot control apparatus, robot control method, and program |
CN108564599A (zh) * | 2018-04-08 | 2018-09-21 | 广东省智能制造研究所 | 一种人体运动速度估计方法 |
CN111656297A (zh) * | 2018-07-13 | 2020-09-11 | 深圳配天智能技术研究院有限公司 | 机器人的运动控制方法、机器人及机器人运动控制系统 |
CN112603205A (zh) * | 2020-12-17 | 2021-04-06 | 珠海市一微半导体有限公司 | 一种机器人行走速度调节方法 |
Non-Patent Citations (1)
Title |
---|
胡文奇: "铝锭伺服堆垛机XZ轴及旋转运动速度特性分析", 《中国优秀硕士学位论文全文数据库(电子期刊)》, 15 November 2016 (2016-11-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN113442139B (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111343089B (zh) | 解决mac地址hash冲突导致洪泛问题的方法及系统 | |
CN113442139B (zh) | 基于ros操作系统的机器人速度控制方法及装置 | |
CN113190405B (zh) | 一种节点健康检测方法、装置及电子设备和存储介质 | |
WO2021179411A1 (zh) | 面向量子计算的数据交互设备、方法、装置及介质 | |
US20020052726A1 (en) | Performance simulation apparatus, performance simulation method, and recording medium containing performance simulation program | |
CN113377517B (zh) | 基于实时操作系统的线程调度方法及系统 | |
US20080295104A1 (en) | Realtime Processing Software Control Device and Method | |
US7552439B2 (en) | System and method to allow non-deterministic execution in a process control system | |
KR20220113710A (ko) | Gpu 패킷 집계 시스템 | |
US20030037227A1 (en) | Processor enabling exception handling to be set by program | |
CN116991142A (zh) | 基于模块化uds协议的汽车诊断服务方法及系统 | |
CN115964195A (zh) | Dds主题的进程通信方式配置方法及装置 | |
EP2068244B1 (en) | Information processing apparatus having a plurality of program modules executing a process | |
US7984234B2 (en) | Memory control apparatus and memory control method | |
CN107506214B (zh) | 一种集群系统控制器的更新方法及更新系统 | |
JP3524700B2 (ja) | タスク監視方法 | |
WO2024109410A1 (zh) | 一种插件安装的优化方法及控制装置 | |
CN111775148A (zh) | 一种机器人控制方法、装置、存储介质及机器人 | |
JP4522292B2 (ja) | 画像処理装置及び画像処理方法 | |
CN115733886B (zh) | 基于fpga和ros的嵌入式通信系统、方法、装置、介质及车辆 | |
CN117235978B (zh) | 扭矩滤波方法及装置 | |
CN112169317B (zh) | 一种车辆运行控制方法、系统、电子设备及可读存储介质 | |
WO2023174373A1 (zh) | 进程调度方法、装置、设备及介质 | |
CN112822125B (zh) | 一种业务流的传输方法、装置、设备及存储介质 | |
CN111338680B (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 |