首页 > 其他分享 >第 6 章 Gazebo仿真环境搭建(自学二刷笔记)

第 6 章 Gazebo仿真环境搭建(自学二刷笔记)

时间:2024-04-10 17:30:05浏览次数:19  
标签:仿真 models Gazebo 环境 二刷 world gazebo

6.6.4 Gazebo仿真环境搭建

到目前为止,我们已经可以将机器人模型显示在 Gazebo 之中了,但是当前默认情况下,在 Gazebo 中机器人模型是在 empty world 中,并没有类似于房间、家具、道路、树木... 之类的仿真物,如何在 Gazebo 中创建仿真环境呢?

Gazebo 中创建仿真实现方式有两种:

  • 方式1:直接添加内置组件创建仿真环境

  • 方式2: 手动绘制仿真环境(更为灵活)

也还可以直接下载使用官方或第三方提高的仿真环境插件。

1.添加内置组件创建仿真环境
1.1启动 Gazebo 并添加组件

1.2保存仿真环境

添加完毕后,选择 file ---> Save World as 选择保存路径(功能包下: worlds 目录),文件名自定义,后缀名设置为 .world

1.3 启动
<launch>

    <!-- 将 Urdf 文件的内容加载到参数服务器 -->
    <param name="robot_description" command="$(find xacro)/xacro $(find demo02_urdf_gazebo)/urdf/xacro/my_base_camera_laser.urdf.xacro" />
    <!-- 启动 gazebo -->
    <include file="$(find gazebo_ros)/launch/empty_world.launch">
        <arg name="world_name" value="$(find demo02_urdf_gazebo)/worlds/hello.world" />
    </include>

    <!-- 在 gazebo 中显示机器人模型 -->
    <node pkg="gazebo_ros" type="spawn_model" name="model" args="-urdf -model mycar -param robot_description"  />
</launch>

核心代码: 启动 empty_world 后,再根据arg 加载自定义的仿真环境

<include file="$(find gazebo_ros)/launch/empty_world.launch">
    <arg name="world_name" value="$(find demo02_urdf_gazebo)/worlds/hello.world" />
</include>
2.自定义仿真环境
2.1 启动 gazebo 打开构建面板,绘制仿真环境

2.2 保存构建的环境

点击:左上角 file ---> Save (保存路径功能包下的: models)

然后 file ---> Exit Building Editor

2.3 保存为 world 文件

可以像方式1一样再添加一些插件,然后保存为 world 文件(保存路径功能包下的:worlds)

2.4 启动

同方式1

3.使用官方提供的插件

当前 Gazebo 提供的仿真道具有限,还可以下载官方支持,可以提供更为丰富的仿真实现,具体实现如下:

3.1 下载官方模型库

git clone https://github.com/osrf/gazebo_models

之前是:hg clone https://bitbucket.org/osrf/gazebo_models但是已经不可用

注意:此过程可能比较耗时

3.2 将模型库复制进 gazebo

将得到的gazebo_models文件夹内容复制到 /usr/share/gazebo-*/models

3.3 应用

重启 Gazebo,选择左侧菜单栏的 insert 可以选择并插入相关道具了

标签:仿真,models,Gazebo,环境,二刷,world,gazebo
From: https://blog.csdn.net/Galaxy_1229/article/details/137491998

相关文章

  • 基于GA优化的CNN-LSTM-Attention的时间序列回归预测matlab仿真
    1.算法运行效果图预览ga优化前:     ga优化后:    2.算法运行软件版本matlab2022a  3.算法理论概述      时间序列预测是许多领域中的核心问题,如金融市场分析、气候预测、交通流量预测等。近年来,深度学习在时间序列分析上取得了显著的成果,尤......
  • 人形机器人sim2real —— 现实环境与仿真环境下的差距如何修正
    下图引自:https://b2b.baidu.com/q/aland?q=7B7474317C2E72330F621B0F7D6F09247E747E610623742B&id=qid599aa7ccf9a7247af9f58e101056f73b&answer=8663272304901910379&utype=2迁移仿真中的含有真实环境中难以获取的摩擦系数、质心、弹黄系数等外部环境参数的行走算法到不包含......
  • 如何用cadence617仿真出gm/id所需图标
        上次推文主要讲了gm/id的理论方法,这次推文以NMOS为例,主要关注如何用cadence617仿真出所需要的三张图标。        关于gm/id方法的理论推理-CSDN博客        方法视频传送链接:                Thegmidmethodology,adesigng......
  • Matlab Simulink 电力电子仿真-Buck(降压斩波)电路分析
    一、Buck(降压斩波)电路仿真模型1.电路模型    Buck电路,也被称为降压斩波电路或降压转换器,是一种常见的降压电路,用于将较高的输入电压转换为较低的输出电压。Buck电路主要由开关管、电感、滤波电容以及控制器、反馈电路和保护电路等组成。    它基于电感储......
  • 用ADZS-218X-EZICE-2.5仿真器调试ADSP-2189和ADSP-2184的详细讲解
    作者的话之前我写过一篇文章,讲ADSP-2189M应该怎么用仿真器来调试,但是比较简单,如下链接:https://blog.csdn.net/ADI_OP/article/details/129926055#comments_32119822这次借着写文档的契机,搞了一篇详细的,手把手教你用(写下来的目的也是为了自己以后看这方便,我怕再往后自己......
  • 基于深度学习的海洋鱼类识别算法matlab仿真
    1.算法运行效果图预览  2.算法运行软件版本MATLAB2022a 3.算法理论概述        深度学习在海洋鱼类识别中常采用卷积神经网络(ConvolutionalNeuralNetworks,CNNs)。CNN由多个层级组成,包括卷积层、池化层、全连接层以及分类层。典型流程如下:   训练......
  • RISC-V CPU流水线仿真
    RISC-VCPU流水线仿真1.简介RISC-V是一个开源体系结构和指令集标准,源于伯克利。该项目要求您实现一个基于标准的五级管道。您将需要实现指令的子集来自RISC-V规范2.2中指定的RV32I指令集。实施完整的CPU模拟器可以有效地锻炼系统编程能力加深对建筑相关知识的理解。2.项目简介......
  • 移动通信专业毕业设计(论文)-典型电话通信信道的建模与仿真
     下载请点击↓:移动通信专业毕业设计(论文)-典型电话通信信道的建模与仿真资源-CSDN文库毕业设计(论文)题目典型电话通信信道的建模与仿真学生姓名:                专   业:         指导教师:            ......
  • Proteus8.0仿真应用设计(二十六)基于FreeRTOS、STM32F103C8、HAL库、4x4矩阵键盘应用设
    一、仿真原理图:二、部分代码:        按键采集uint8_tKeyScan(void){ uint8_tvalue=0x00; KeyPort->ODR=0x00; KeyPort->ODR=0xf7; if((KeyPort->IDR&0xf0)!=0xf0) { HAL_Delay(50); if((KeyPort->IDR&0xf0)!=0xf0) { value=......
  • 基于PI+重复控制的有源滤波器谐波抑制策略模型(Simulink仿真实现)
     ......