gazebo仿真环境搭建+配置+小车运动仿真

这篇具有很好参考价值的文章主要介绍了gazebo仿真环境搭建+配置+小车运动仿真。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ubuntu版本:20.04

gazebo版本:gazebo11

1.打开gazebo

终端输入“gazebo”或者直接点gazebo软件图标。

gazebo仿真环境搭建+配置+小车运动仿真
 2.前往建筑编辑器

点击上方“Edit” → “Buiding Edit ” 或者快捷键 “Ctrl + B” 进入建筑编辑器。

gazebo仿真环境搭建+配置+小车运动仿真

左边图形界面可以建造墙,添加门、窗、梯子。也可以更改以后墙的颜色和纹理。

3.导入图片

点击左下角“import” ,选择一张户型图导入

gazebo仿真环境搭建+配置+小车运动仿真
点击“Next”,随便选取一段,在左边输入其真实长度后 ,点击“ok”。

gazebo仿真环境搭建+配置+小车运动仿真

4.建造model并保存

做完上述步骤后,右上部分2D视图会出现导入的图片。

gazebo仿真环境搭建+配置+小车运动仿真

点击左边“ Wall ” ,对着房屋轮廓和内部墙壁描边,下方的3D视图会同步显示墙壁信息,全部完成如下所示。

gazebo仿真环境搭建+配置+小车运动仿真

也可以双击2D视图里的墙壁进行详细参数设置。

gazebo仿真环境搭建+配置+小车运动仿真gazebo仿真环境搭建+配置+小车运动仿真

再按照户型图进行门窗的设置,点击左边的“Window ” 和 “ Door ” ,在相应墙壁位置选择即可。同样,门窗的参数也可以双击修改。

 gazebo仿真环境搭建+配置+小车运动仿真

全部完成后,就造好了一个像样的住房模型。

点击左上角“File” → “Save” 保存。注意,保存路径为 ./gazebo/models (需要在主目录文件下打开隐藏目录右,在保存路径窗口右键选择“show hidden files”)。再输入你的 Model Name ,点击“Save” 保存成功(保存后再次无法编辑,只能增删模型)。

gazebo仿真环境搭建+配置+小车运动仿真

tips:较低版本的gazebo可能在保存之前,需要提前在主目录文件下打开隐藏目录(右上角选项勾选上或者按“ Ctrl + H ”)进入 ./gazebo/models,创建一个和你的 Model Name 同名的文件夹,再进行保存操作。

5.初始化文件+丰富模型

再次从文件进入 ./gazebo/models/house_2,会有两个文件

gazebo仿真环境搭建+配置+小车运动仿真

右边的model.sdf 就是房屋模型的参数。打开左边的model.config (较低版本gazebo没有该文件,需要自己创建),就可以添加一些模型作者及邮箱、模型简介等信息,之后保存退出即可。

gazebo仿真环境搭建+配置+小车运动仿真
再次打开gazebo ,左上角insert 选项卡里就会找到自己的模型,找到并选择自己刚
才建好的模型放置到右边窗口。

gazebo仿真环境搭建+配置+小车运动仿真

在insert选项下,选择添加自己想要的家具等模型,来丰富自己的world。可以通过上方按钮,来平移、旋转模型选择合适的摆放位置。

gazebo仿真环境搭建+配置+小车运动仿真

点击“File” → “Save world” ,保存到 usr/share/gazebo-11/worlds 下,并命名为house_2.world。

如果出现权限不够的问题,可以先在主目录下创建一个world文件夹(做临时保存用),点击“File” → “Save world” ,在world文件下保存命名为house_2.world。然后通过vim指令,在终端通过sudo vim house_2.world 在目录usr/share/gazebo-11/worlds下 生成house_2.world,并把临时保存的house_2.world里面的代码复制进去,保存退出。

6.配置launch文件

在/opt/ros/noetic/share/gazebo_ros/launch目录下同上使用vim指令创建house_2.launch文件,并添加以下代码:

<?xml version="1.0"?>

<launch>


<!-- We resume the logic in empty_world.launch, changing only the name of the world to be launched -->

<include file="$(find gazebo_ros)/launch/empty_world.launch">

<arg name="world_name" value="worlds/house_2.world"/>

<arg name="paused" value="false"/>

<arg name="use_sim_time" value="true"/>

<arg name="gui" value="true"/>

<arg name="headless" value="false"/>

<arg name="debug" value="false"/>

</include>


</launch>

保存退出后,终端输入:

roslaunch gazebo_ros house_2.launch

就可以成功启动刚才保存的house_2.launch文件,效果如下。

gazebo仿真环境搭建+配置+小车运动仿真
至此,一个完整的world创建和启动就结束了。

tipsworldlaunch文件也可以统一保存在用户目录下的workspace中,这样就不会有权限问题,但是launch的配置文件需要作一点点修改,需要find到正确的路径,因为运行gazebo默认的world路径是gazebo_ros

7.载入小车并运动观察

在/opt/ros/noetic/share/gazebo_ros/launch目录下继续使用vim指令创建house_2_with_robot.launch文件,把house_2的代码复制进来,并加入小车节点,即加入以下代码:

<!-- 加载机器人模型描述参数 -->

<param name="robot_description" command="$(find xacro)/xacro --inorder '$(find mrobot_gazebo)/urdf/mrobot_with_camera.urdf.xacro'" />


<!-- 运行joint_state_publisher节点,发布机器人的关节状态 -->

<node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" ></node>


<!-- 运行robot_state_publisher节点,发布tf -->

<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" output="screen" >

<param name="publish_frequency" type="double" value="50.0" />

</node>

<!-- 在gazebo中加载机器人模型-->

<node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model" respawn="false" output="screen"

args="-urdf -model mrobot -param robot_description"/> 

将第一个中路径改为自己机器人模型的路径文件即可。

<param name="robot_description" command="$(find xacro)/xacro --inorder '$(find mrobot_gazebo)/urdf/mrobot_with_camera.urdf.xacro'" />

在这里提供两种模型供大家选择,第一种为本文中用到的小车模型,链接如下:

链接: https://pan.baidu.com/s/1guTCa-Nt4y3-xtiHBDlwZg 提取码: x7bx

第二种是turtubot3中小车模型,链接如下,有需要的人自行下载:https://pan.baidu.com/s/1bUjgNsmc83ja7KwL8iPhYw

提取码: 5g4g

完整house_2_with_robot.launch代码如下:

<?xml version="1.0"?>
<launch>

  <!-- We resume the logic in empty_world.launch, changing only the name of the world to be launched -->
  <include file="$(find gazebo_ros)/launch/empty_world.launch">
    <arg name="world_name" value="worlds/house_2.world"/> <!-- Note: the world_name is with respect to GAZEBO_RESOURCE_PATH environmental variable -->
    <arg name="paused" value="false"/>
    <arg name="use_sim_time" value="true"/>
    <arg name="gui" value="true"/>
    <arg name="headless" value="false"/>
    <arg name="debug" value="false"/>
  </include>

    <!-- 加载机器人模型描述参数 -->
    <param name="robot_description" command="$(find xacro)/xacro --inorder '$(find mrobot_gazebo)/urdf/mrobot_with_rplidar.urdf.xacro'" /> 

    <!-- 运行joint_state_publisher节点,发布机器人的关节状态  -->
    <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" ></node> 

    <!-- 运行robot_state_publisher节点,发布tf  -->
    <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher"  output="screen" >
        <param name="publish_frequency" type="double" value="50.0" />
    </node>

    <!-- 在gazebo中加载机器人模型-->
    <node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model" respawn="false" output="screen"
          args="-urdf -model mrobot -param robot_description"/> 

</launch>

 

同样通过roslaunch即可启动整个gazebo环境加小车模型。

roslaunch gazebo_ros house_2_with_robot.launch

gazebo仿真环境搭建+配置+小车运动仿真

如果小车上配备了摄像头传感器的话,启动键盘控制节点,控制小车运动,再在终端输入

rqt_image_view

启用rqt工具,选择 /camera/image_raw,就可以实时观看摄像头的画面。

gazebo仿真环境搭建+配置+小车运动仿真文章来源地址https://www.toymoban.com/news/detail-457500.html

到了这里,关于gazebo仿真环境搭建+配置+小车运动仿真的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ROS&GAZEBO】多旋翼无人机仿真(一)——搭建仿真环境

    【ROSGAZEBO】多旋翼无人机仿真(一)——搭建仿真环境 【ROSGAZEBO】多旋翼无人机仿真(二)——基于rotors的仿真 【ROSGAZEBO】多旋翼无人机仿真(三)——自定义无人机模型 【ROSGAZEBO】多旋翼无人机仿真(四)——探索控制器原理 【ROSGAZEBO】多旋翼无人机仿真(五)——位置

    2023年04月17日
    浏览(44)
  • ROS自学笔记二十: Gazebo里面仿真环境搭建

    Gazebo 中创建仿真实现方式有两种:1直接添加内置组件创建仿真环境2: 手动绘制仿真环境 添加完毕后,选择 file --- Save World as 选择保存路径(功能包下: worlds 目录),文件名自定义,后缀名设置为 .world 点击: 左上角 file --- Save (保存路径功能包下的: models) 然后 file --- Exit Building

    2024年02月06日
    浏览(26)
  • 11.机器人系统仿真搭建gazebo环境、仿真深度相机、雷达、RGB相机

    目录 1 gazebo仿真环境搭建 1.1  直接添加内置组件创建仿真环境 1.2 urdf、gazebo、rviz的综合应用 2 ROS_control 2.1 运动控制实现流程(Gazebo) 2.1.1 已经创建完毕的机器人模型,编写一个单独的 xacro 文件,为机器人模型添加传动装置以及控制器 2.1.2 将此文件集成进xacro文件 2.1.3 修改

    2024年02月04日
    浏览(40)
  • ROS学习第三十六节——Gazebo仿真环境搭建

    1.1加入环境模型 在工程文件中创建worlds文件夹,并把之前下载的box_house.world文件放入  1.2编写launch文件 deamo03_car_world.launch 2.1启动 Gazebo 并添加组件 2.2保存仿真环境 添加完毕后,选择 file --- Save World as 选择保存路径(功能包下: worlds 目录),文件名自定义,后缀名设置为 .worl

    2023年04月24日
    浏览(26)
  • gazebo小车自主路径规划导航仿真

    在之前的文章中完成了对地图的构建,接下来使用 Ros navgition完成机器人自主导航 ros功能包:Navigation ros wiki:http://wiki.ros.org/navigation github 地址:https://github.com/ros-planning/navigation 在官网下载 Ros navigation到工作空间内。 在工作空间下创建mbot_navigation功能包 创建launch文件等文件

    2024年02月13日
    浏览(26)
  • 【ROS2机器人入门到实战】Gazebo仿真环境搭建

    当前平台文章汇总地址:ROS2机器人从入门到实战 获取完整教程及配套资料代码,请关注公众号鱼香ROS获取 教程配套机器人开发平台:两驱版| 四驱版 为方便交流,搭建了机器人技术问答社区:地址 fishros.org.cn 本节我们要在Gazebo中建立一个测试的环境,其实也很简单,利用

    2024年02月05日
    浏览(41)
  • Gazebo——仿真平台搭建(基于Ubuntu20.04) 1.gazebo--SpawnModel: Failure - model name mrobot already exists.

    目录 Gazebo安装配置 创建仿真环境  仿真使用 Rviz查看摄像头采集的信息 Kinect仿真 问题解决: 1.gazebo--SpawnModel: Failure - model name mrobot already exists. 1.设置你的电脑来接收软件 2.设置秘钥 3.安装Gazebo 4.检查你的安装是否有效果= 5.打开 /.gazebo文件夹 下载模型 如果出现fatal连接GitH

    2023年04月19日
    浏览(74)
  • 从零开始的机械臂yolov5抓取gazebo仿真(环境搭建篇下)

    sunday我给自己机械臂的命名,原型是innfos的gluon机械臂。通过sw模型文件转urdf。Sunday项目主要由六个功能包sunday_description、sunday_gazebo、sunday_moveit_config、yolov5_ros、vacuum_plugin、realsense_ros_gazebo组成,下面我将介绍这六个功能包。 首先介绍个人使用环境,博主使用的是Ubuntu18.04

    2023年04月08日
    浏览(33)
  • ROS仿真gazebo小车寻迹PID【第一期】

    本篇内容为笔者在2022.5.11完成的,与某个比赛相关,所以当时没有发布。 而现在是2023.2.21,当时的一番雄心壮志现在已经熄了大半,此外随着时间推移,笔者需要花更多的时间在准备考研上,因此这可能是一期 没有后续 的文章 即便如此,这一篇也实现了一个挺有趣的功能啦

    2024年02月05日
    浏览(51)
  • ORB_SLAM2配置——基于Ubuntu20.04+ROS+gazebo仿真

    一、引言 ORB-SLAM2,它是基于单目、双目或RGB-D相机的一个完整的SLAM系统,其中包括地图重用、回环检测和重定位功能。这个系统可以适用于多种环境,无论是室内小型手持设备,还是工厂环境中飞行的无人机和城市中行驶的车辆,其都可以在标准CPU上实时运行。该系统的后端

    2023年04月13日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包