水域载具 - 水下声呐三维测深与避障 ROS 2 封装模块
作业概述与背景
本模块基于水下声呐探测原理,在 ROS 2 环境下实现了一个水下三维地形测绘与避障仿真节点。节点模拟了声呐探测海底起伏以及识别障碍物的过程,实时生成包含障碍物信息的三维海底地形图,为水下航行器的自主避障提供环境感知基础。
二、运行环境
- 操作系统:Ubuntu 22.04(虚拟机)
- ROS 2 版本:Humble
- 依赖库:rclpy, matplotlib, numpy
核心代码文件
本模块包含以下核心文件,均已提交至仓库:
src/
└── underwater_sonar_mapping/
├── main.py # 三维声呐测绘与障碍物可视化节点
├── setup.py # ROS 2 功能包配置文件
└── launch/
└── main.launch.py # 一键启动文件
运行步骤
- 新建标准工作空间并进入 src 目录:
mkdir -p ~/ros2_ws/src cd ~/ros2_ws/src - 从 ros2 仓库拷贝模块代码到工作空间:
cp -r ~/OpenHUTB/ros2/src/underwater_sonar_mapping ~/ros2_ws/src/ cd ~/ros2_ws - 编译工作空间并部署环境:
colcon build --packages-select underwater_sonar_mapping source install/setup.bash - 运行水下声呐测绘节点:
5.运行效果(截图)
ros2 launch underwater_sonar_mapping main.launch.py
效果说明:节点成功启动,基于模拟声呐数据生成了三维海底地形,并清晰标注了水下沉船/暗礁等障碍物位置,验证了声呐三维测绘与避障感知算法的可行性。