当前位置: 首页 > news >正文

如何在Gazebo中实现多机器人编队仿真

文章目录

  • 前言
  • 一、仿真前的配置
  • 二、实现步骤
    • 1.检查PC和台式机是否通讯成功
    • 2.编队中对单个机器人进行独立的控制
    • 3、对机器人进行编队控制


前言

实现在gazebo仿真环境中添加多个机器人后,接下来进行编队控制,对具体的实现过程进行记录。


一、仿真前的配置

本文的多机器人编队,在turtlebot3单个机器人的建图、导航等功能的基础上进行,需要在自己的远程PC和台式机中安装配置以下功能包

(1)turtlebot3单个机器人的配置:可以看之前的文章双系统ubuntu20.04(neotic版本)从0实现Gazebo仿真slam建图

(2)进行多机器人编队仿真前需要将已经写好的FourTB3s功能包配置在自己的工作空间src文件夹下,且成功编译,如果不知道怎么编译可以看这篇ROS如何将拷贝的功能包成功运行在自己的工作空间中

(3)需要在自己的src文件夹中打开终端输入:

git clone https://gitee.com/kay2022/turbot3.git

下载一个turbot3的包,如果git clone遇到问题可以参考双系统 + Ubuntu20.04 + ros2 (foxy) git clone -b连接不成功的解决记得下载完成后要重新编译。

二、实现步骤

1.检查PC和台式机是否通讯成功

【PC端】 终端输入:roscore
【台式机】终端输入:rostopic list
通讯成功如下图(具体通信配置过程可参考:虚拟机作为master远程控制台式机中的机器人在仿真环境中进行slam地图构建与自主导航)
【PC显示】
在这里插入图片描述
【台式机显示】
台式机端

2.编队中对单个机器人进行独立的控制

【台式机】终端输入:roslaunch turtlebot3_gazebo test.launch 启动gazebo仿真环境(四个机器人,可以增添或减少可参考文章:在gazebo仿真环境中加载多个机器人)
加载成功界面:
在这里插入图片描述
【PC】终端输入:ROS_NAMESPACE=tb3_0 roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
注意:ROS_NAMESPACE=“后面接想要控制的机器人的名字”,这个名字要与写的加载gazebo的launch中起的机器人名字一致,启动后可通过键盘控制单个机器人移动。
在这里插入图片描述
可以在台式机gazebo的仿真环境中,指明某个机器人控制其独立的移动,如图控制tb3_0单个机器人的移动,若控制其他机器人同理。

在这里插入图片描述

在这里插入图片描述

3、对机器人进行编队控制

【PC】打开FourTB3文件夹,并在该文件夹下打开终端,输入:python3 FourTB3sPerform.py为方便机器人进行编队运动,可以将gazebo环境中的障碍物去掉
在这里插入图片描述【PC端显示】
在这里插入图片描述

【台式机显示】
在这里插入图片描述在这里插入图片描述
【总览】
在这里插入图片描述

http://www.lryc.cn/news/171941.html

相关文章:

  • 迅为iTOP-iMX6QPLUS-Android6.0下uboot添加网卡驱动
  • sql server 触发器的使用
  • 使用亚马逊云服务器在 G4 实例上运行 Android 应用程序
  • Direct3D融合技术
  • 【计算机网络】信号处理接口 Signal API(1)
  • 贝叶斯滤波计算4d毫米波聚类目标动静属性
  • 华为hcie认证考试怎么考?
  • vue +element 删除按钮操作 (删除单个数据 +删除页码处理 )
  • 更新GitLab上的项目
  • K8S群集调度
  • 完美解决Echarts X坐标轴下方文字最后一个字体加粗颜色加深的问题
  • WebGL 计算平行光、环境光下的漫反射光颜色
  • 解决SpringMVC在JSP页面取不到ModelAndView中数据
  • Spring 6.0 新特性
  • 计算机竞赛 深度学习+opencv+python实现昆虫识别 -图像识别 昆虫识别
  • 软件过程能力成熟度评估——CSMM认证
  • 学内核之二十一:系统调用栈结构分析
  • 互联网3.0 数字原生——数物虚实多维细粒度泛在融合
  • 实现AIGC更好的数据存力,这家科技巨头为我们指明了方向
  • 企业如何在抖音上搞到TOB潜在精准客户流量?
  • JeecgBoot v3.5.5 版本发布,性能大升级版本—开源免费的低代码开发平台
  • 与树上边权、连通块、二分块相关的问题(抓住各连通块之间的联系,考虑增量):CF444E
  • 解决VSCode下载速度很慢
  • 悬赏算命测算源码可以用二维码收款 可以直接拿来运营
  • 在Linux中安装nginx-1.20.1+php-7.4.28(增加扩展)
  • 使用vue-cli搭建SPA项目
  • PLC串口通讯和通讯接口知识汇总
  • Vue基础入门---详细简介
  • Qt重写QTreeWidget实现拖拽
  • 【Spring Boot】拦截器学习笔记