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

gazebo仿真初学者可以试试这个ros小车

目录

  • 前言
  • 项目介绍
  • 具体步骤
    • 如何编译
    • 使用
      • rviz显示模型
      • 显示传感器数据
  • 总结

前言

我目前发现,github上的ros项目,很多都不适合初学者,他们只说了自己这个项目,没有说自己这个项目依赖于其他人的项目,就导致你下载下来,catkin_make的时候,报错了,然后你就不了了之了,因为初学者根本看不懂这些。

项目介绍

项目主要是通过rviz和gazebo加载这个机器人小车,小车上搭载了雷达 imu 深度相机等传感器。此外,该通过rviz加载传感器获取的数据。

代码我放网盘了,要的自取,文章看不懂的,多看几遍,先跑一遍,然后去学习源码。

gazebo仿真初学者demo.zip链接:https://pan.quark.cn/s/fc84dbd003bc

在这里插入图片描述

具体步骤

项目地址:https://gitee.com/rugels/simulation_unitree

首先进入该目录,如果没有,自己创建一个

cd catkin_ws/src/

然后你在下载这个项目

git clone https://gitee.com/rugels/simulation_unitree.git

由于里面涉及到velodyne雷达,因此需要下载相关代码。

git clone https://github.com/lmark1/velodyne_simulator.git

进入simulation_unitree包,我们目前只需要mbot目录,其他的可以不要,因为是初学者,其他的也需要安装其他的包,如果没有安装,就会导致编译失败,你就运行不了了。
在这里插入图片描述
在这里插入图片描述
注意,如果你没有安装velodyne_simulator,编译也会报错,因为这个项目 中间,使用到了velodyne_simulator中的velodyne_description中的urdf中的xacro文件。

最后,当你两个都下载好,在catkin_ws/src目录下

在这里插入图片描述
并且宇树的项目包,只剩下这个mbot文件夹(这是宇树的代码.txt只是 我用来记录这个是什么项目的,大家不需要,我健忘),因为其他文件夹的存在,会导致你编译报错。
在这里插入图片描述

如何编译

重新打开一个终端

cd catkin_ws/
catkin_make

在这里插入图片描述
等待一会。编译成功就行,编译成功后,如果你没有将source 写进bashrc文件

可以看看我这一篇:https://blog.csdn.net/knighthood2001/article/details/142829109?spm=1001.2014.3001.5501

使用

rviz显示模型

打开终端

输入

roslaunch mbot_description display_mbot_xacro.launch

在这里插入图片描述

在这里插入图片描述

这时候就打开rviz显示出这个模型了。

显示传感器数据

打开终端,输入

roslaunch mbot_gazebo mbot_nav_gazebo.launch

在这里插入图片描述
这时候,打开了gazebo,里面 加载了小车,还有环境。

如果你想要 获取传感器数据。

可以重新打开一个终端,输入

rviz

在这里插入图片描述
首先将小车模型导入进来
在这里插入图片描述

导入进来后,能够发现小车是白色的,这时候我们选一下fixed frame(这个具体我也不清楚,我这是选择这个,就能够正常显示小车模型,如果你们不行的话,去搜搜rviz导入模型是白色的)
在这里插入图片描述

在这里插入图片描述
这样就能显示出小车的正常模型了。接着,我们可以导入传感器数据。

在这里插入图片描述

这里需要设置一下话题以及激光的大小。不设置话题,就没有数据,不设置激光大小,你可能看不出来。
在这里插入图片描述
你也可以设置三维点云数据

在这里插入图片描述
同样也可以设置大小。
在这里插入图片描述

你也可以导入相机获取的内容

在这里插入图片描述
在这里插入图片描述

因此,传感器还是比较全的,你甚至可以导入imu获取的内容。

你可以将你现在的操作,保存下来,这样 以后 就不用每次打开rviz,都要重新搞了。

在这里插入图片描述

这里选择一下路径,我这里是在mbot_gazebo目录下创建了config目录 ,用来 存放我保存的rviz文件。(这个操作我之前就搞过了,因此不重复了)
在这里插入图片描述

这样你下次就能直接导入该rviz,不需要配置了 。

在这里插入图片描述
当然,还有比较好的 方法,就是将这个rviz写入launch中,运行一行launch命令,它能够自动你配置好的rviz。

具体做法就是在mbot_nav_gazebo.launch中添加这句话。

    <!-- 打开rviz -->
    <node pkg="rviz" type="rviz" name="rviz" args="-d $(find mbot_gazebo)/config/save.rviz"/>

在这里插入图片描述

最后打开终端,输入

roslaunch mbot_gazebo mbot_nav_gazebo.launch

他打开就是这样,不需要自己去设置了。

如果一次打开不行,退出重新试一下。

在这里插入图片描述

总结

这个项目代码,就比较适合 初学者,去看、去学习xacro,launch代码是如何写的,里面的具体内容指的是啥。


http://www.kler.cn/a/377429.html

相关文章:

  • 电商领域软件系统实战:基于TiDB的分布式数据库应用
  • 前端入门一之CSS知识详解
  • CMake set cache用法
  • SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“
  • 爬虫学习4
  • 基于vue框架的的冷链食品物流信息管理系统v81wb(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
  • 我开源了一个短视频应用(Go+React)|DouTok2.0 项目介绍
  • Golang | Leetcode Golang题解之第528题按权重随机选择
  • springcloud整合sentinel,限流策略持久化到nacos,详细配置案例
  • RabbitMQ幂等性
  • vscode ssh连接autodl失败
  • Unity中的屏幕坐标系
  • 【华为HCIP实战课程二十六】中间到中间系统协议IS-IS配置默认路由及IS-IS数据库,网络工程师
  • 动态规划——两个数组的dp问题
  • 2024.11.3笔试记录——学习
  • 15分钟学 Go 第 29 天:流程控制 - select语句
  • 探索NetCat:网络流量监测与数据传输的利器
  • Yelp 数据集进行用户画像, 使用聚类做推荐
  • LangChain学习之路
  • 插入/归并
  • 海风里的青春:海滨学院班级回忆录开发
  • 沈阳乐晟睿浩科技有限公司抖音小店运营创新
  • 如何在忘记密码的情况下解锁 iPhone? 6 种方法分享
  • Nat Med病理AI系列|DEPLOY模型:从病理切片图像预测中枢神经系统肿瘤甲基化状态|顶刊精析·24-11-03
  • 关闭kafka在控制台打印的日志
  • Oracle 第20章:数据库调优