Ubuntu20.04 Gazebo-下载uuv_simulator,并启动水下(世界环境)机器人——僵尸水族馆tiny版

https://wiki.ros.org/melodic/Installation/Ubuntu

1.首先安装ROS,此处我使用鱼香肉丝快捷安装

鱼香肉丝ROS一键安装_鱼香ros-优快云博客

        wget http://fishros.com/install -O fishros && . fishros

 

2.安装Gazebo

( 大佬链接如下):

Gazebo学习(一)Ubuntu20.04安装ROS+gazebo11+模型库导入(汇总跳转连接+个人安装记录)_gazebo模型库-优快云博客

        

 

        1.设置你的电脑来接收软件

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

        2.设置秘钥

wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

        3.安装Gazebo

sudo apt-get update
sudo apt-get install gazebo11
sudo apt-get install libgazebo11-dev

        4.检查你的安装

gazebo

 

  5.其他关联安装包

        sudo apt-get install ros-noetic-rviz

        sudo apt-get install ros-noetic-robot-state-publisher

        sudo apt-get install ros-noetic-gazebo-ros-pkgs ros-noetic-gazebo-ros-control

        sudo apt install ros-noetic-moveit

        之后运行 安装包索引

        sudo apt-get update

 

 

3.获得模型库

        1打开/.gazebo文件夹

        由于文件夹是隐藏状态,打开主文件夹摁“ Ctrl + H ”可以显示隐藏文件夹

        ​​​​01afff93cf2fd842a049dfcd325f87c1.png

 

        或者点击操作显示隐藏文件夹

 

 

53f78b7384d5452abbd2fbcabe5ea2be.png

 

 

 

 

        2下载模型

 

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

下载完毕后得到模型库加载到/.gazebo/gazebo_models文件夹当中

 

 

 

4. uuv_simulator 安装

(原大佬链接如下)

 Ubuntu20 uuv_simulator 安装_uuvsimulater 教程-优快云博客

 

Ubuntu20.04通过命令行下载

git clone --branch noetic https://github.com/arturmiller/uuv_simulator.git

 

 

 

5.uuv_simulator编译生成相关库和可执行文件,及可能出现问题(部分问题)的解决办法

 

        1.创建工作空间

        mkdir -p ~/uuv_ws/src

        cd ~/uuv_ws/src

       

         2.克隆UUV Simulator仓库:

        git clone https://github.com/uuvsimulator/uuv_simulator.git

 

          3.安装依赖:

        cd ~/uuv_ws

        rosdep install --from-paths src --ignore-src -r -y

 

 

注意:此处会报错 :         sudo rosdep init
                                        rosdep update

详细解决方法见大标题6(下下面)

 

 

          4.编译工作空间:

        cd ~/uuv_ws

        catkin_make

 

          5.设置环境变量:

        source ~/uuv_ws/devel/setup.bash

 

          6.启动仿真场景:

        roslaunch uuv_gazebo_worlds auv_underwater_world.launch

 

dd2b073abd9945ff92b3edaf5ae7ce5c.png

 

 

以上步骤将编译UUV Simulator的源码,并生成相关的库和可执行文件。编译过程可能会因为系统环境和依赖项的不同而有所差异,如果遇到编译错误,您可能需要检查依赖项是否安装正确,或者参考UUV Simulator的官方文档或社区讨论来解决问题。

 

 

7.  启动各种仿真场景及stl模型导入,机器模型控制

 

启动带海底的世界执行命令:

roslaunch uuv_gazebo_worlds auv_underwater_world.launch 

 

eba7e1f0469347319dc8ec47166c58a4.png

 

 

 

 

启动赫尔库勒斯沉船的世界执行命令:
roslaunch uuv_gazebo_worldsherkules_ship_wreck.launch

 

8b25c66ecb474f1587f226663e129c00.png

 

 

 

启动湖泊
roslaunch uuv_gazebo_worlds lake.launch

466c557a2cbb4457846424134526b8b6.png

 

 

启动红土大陆

roslaunch uuv_gazebo_worlds mangalia.launch

 

 

785df475e33940acaf4667350fb71247.png

 

 

 

启动孤岛田园

roslaunch uuv_gazebo_worlds munkholmen.launch

 

d5bb86023a8349f385e1303ce8765743.png

 

启动深海丘陵

roslaunch uuv_gazebo_worlds ocean_waves.launch

0074d928844842d49c054ffb11e2eed8.png

 

 

stl模型导入

将模型加载到模型器,更改stl模型尺寸为千分之一(或其他尺寸)再File->Save As,保存该stl模型为sdf文件。然后在保存路径会出现sdf文件和config文件。

 

将stl模型文件与sdf,config文件全部移动到.gazebo文件夹中的models文件夹中。

 

然后更改sdf文件中的 url路径改为当前路径


最后在Gazebo的世界编辑器中,点击左上方的Insert栏,点击Add Path,选择刚才保存模型的文件夹,将模型拖出来/或选择点出。

 

71d4277f3be74d2e91342b915c6df635.png

 

将stl模型设定网格节点,用以机器控制。

详见大佬链接:

【机器人学习--Gazebo学习--模型库和编辑模型 - 优快云 App】https://blog.youkuaiyun.com/GGY1102/article/details/114818949?sharetype=blog&shareId=114818949&sharerefer=APP&sharesource=2302_77374043&sharefrom=link

 

启动赫尔库勒斯沉船的世界执行命令,将模型拖出来。

 

ec44d215ab0b4701a61530a6f9fae713.png

 

启动键盘控制:

rosrun uuv_simulation keyboard_vel_ctrl

 

 

 

8. rosdep初始化问题(承接上上面的sudo rosdep init
rosdep update问题)

        (大佬原链接如下):

Ubuntu 20.04LTS安装ROS及rosdep初始化问题-优快云博客

 

1. 修改 sources_list.py 文件

sudo nano /usr/lib/python3/dist-packages/rosdep2/sources_list.py
  • 打开上述文件后,download_rosdep_data函数中增加一行代理服务器语句:

       

 

Lameduck. 我自己需要记住的傻瓜步骤

        1.启动终端运行

        roscore

       

 {校内机房还要另外配置ifconfig,edit ~/.bashrc(127.0.0.1),export master,export hostname,source ~/.bashrc}

 

 

        2.另外启动一个新终端

        

        1.编译工作空间:

        cd ~/uuv_ws

        catkin_make

 

        2.设置环境变量:

        source ~/uuv_ws/devel/setup.bash

 

        3.启动仿真场景:

        roslaunch uuv_gazebo_worlds auv_underwater_world.launch

 

 

 

 

 

 

 

 

 

 

 

 

<think>好的,我需要回答用户关于如何在UUVSimulator中使用自带水下机器人模型的教程或文档的问题。首先,我需要查阅用户提供的引用资料,看看是否有相关信息。 用户提供的引用[1]提到了水下机器人的路径控制与仿真,以及Yuh J.的论文,这可能涉及仿真工具,但具体到UUVSimulator可能没有直接提到。引用[2]讨论了APM装机教程和水下机器人的通信设置,但主要关注硬件和飞控设置,可能与UUVSimulator的软件仿真关系不大。因此,我需要依靠自己的知识库来回答这个问题。 首先,UUVSimulator是一个基于ROS和Gazebo水下机器人仿真工具。用户需要知道如何启动自带模型、配置环境以及进行控制。通常,这类工具会有官方文档或GitHub仓库的说明。我应该建议用户查看官方文档,安装步骤,运行示例,可能修改模型参数。此外,ROS中的相关包如uuv_simulatoruuv_descriptions可能包含所需信息。最后,提醒用户参考社区资源如GitHub Issues和ROS论坛,以及引用中提到的文献来深入理解控制方法。</think>### 如何使用UUVSimulator中自带的水下机器人模型 UUVSimulator是一个基于ROS(机器人操作系统)和Gazebo水下机器人仿真工具,常用于测试路径规划、控制算法和传感器模型[^1]。以下是使用其自带水下机器人模型的基本步骤: --- #### **1. 安装UUVSimulator** - **系统要求**:确保已安装Ubuntu(推荐18.0420.04)、ROS Melodic/Noetic和Gazebo- **安装命令**: ```bash # 创建ROS工作空间 mkdir -p ~/uuv_ws/src cd ~/uuv_ws/src # 克隆仓库 git clone https://github.com/uuvsimulator/uuv_simulator.git git clone https://github.com/uuvsimulator/uuv_descriptions.git # 编译 cd ~/uuv_ws catkin_make source devel/setup.bash ``` --- #### **2. 启动自带模型** UUVSimulator提供了多种预定义模型,如`rexrov`(遥控水下机器人)和`eca_a9`(自主水下机器人): - **启动示例模型**: ```bash roslaunch uuv_descriptions upload_rexrov.launch ``` 此命令会在Gazebo中加载`rexrov`的仿真环境,包含水下场景和机器人模型。 --- #### **3. 配置仿真环境** - **添加水下场景**: ```bash roslaunch uuv_gazebo_worlds ocean_waves.launch ``` 该场景模拟了海洋环境,支持水流、浮力等物理特性。 --- #### **4. 控制机器人** - **使用预定义控制器**: 通过ROS话题或服务发送控制指令,例如: ```bash rostopic pub /rexrov/thrusters/input uuv_gazebo_ros_plugins_msgs/FloatStamped "header: seq: 0 stamp: secs: 0 nsecs: 0 frame_id: '' data: 1200.0" ``` 此命令向推进器发送推力值,控制机器人运动。 --- #### **5. 修改模型参数** - **自定义模型**:在`uuv_descriptions`包的`robots`目录下修改URDF文件,调整传感器、推进器配置或流体动力学参数。 --- #### **相关文档与资源** 1. **官方GitHub文档**: - [uuv_simulator Wiki](https://github.com/uuvsimulator/uuv_simulator/wiki) - [示例教程](https://github.com/uuvsimulator/uuv_simulator/tree/master/uuv_tutorials) 2. **ROS Wiki**: - [uuv_simulator ROS说明](http://wiki.ros.org/uuv_simulator) 3. **论文参考**: 仿真中的控制算法设计可参考Yuh J.的《Design and control of autonomous underwater robots》[^1]。 --- #### **注意事项** - **硬件兼容性**:若需与真实硬件对接,需注意通信方式(如引用[2]中提到的无线通信优化)。 - **传感器干扰**:仿真中可加入噪声模型以模拟真实环境(如引用[2]中罗盘受干扰问题)。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值