144 lines
3.8 KiB
Markdown
144 lines
3.8 KiB
Markdown
# catkin_ws
|
||
|
||
## 简介说明
|
||
16dof采用留形科技的odin1空间记忆模组作为视觉方案
|
||
采用的odin1固件版本为0.12.0
|
||
本目录按 ROS 2 工作空间组织,工作空间根目录为当前目录,源码目录为 `src/`。
|
||
固件下载链接:https://vvcazjv268.feishu.cn/file/AAsOba7nSoGj22xclcKcoadE
|
||
Odin1驱动0.11.0获取链接:https://github.com/manifoldsdk/odin_ros_driver.git
|
||
本目录仅仅附带
|
||
```text
|
||
catkin_ws/
|
||
├── src/ 空
|
||
├── runros.sh
|
||
├── readme.md 本文档
|
||
└── odin1的使用手册.md
|
||
```
|
||
所附带链接为留形科技官方下载链接
|
||
并默认已配置 官方 ROS 2 功能包:
|
||
|
||
- `src/odin_ros_driver`
|
||
以及参照官方教程完成系统规则写入
|
||
附带官方github链接:https://github.com/manifoldsdk/odin_ros_driver
|
||
|
||
- 注意 odin1需配套对应 **odin1固件版本**, **驱动版本** 以及 **mindcloud软件版本**,详情请查阅官方说明
|
||
|
||
## 目录结构
|
||
|
||
```text
|
||
catkin_ws/
|
||
├── src/
|
||
│ └── odin_ros_driver/
|
||
├── build/
|
||
├── install/
|
||
├── runros.sh
|
||
├── readme.md
|
||
└── log/
|
||
```
|
||
|
||
说明:
|
||
|
||
- `src/` 用于存放 ROS 2 功能包源码。
|
||
- `build/`、`install/`、`log/` 为 `colcon build` 后生成的工作空间产物。
|
||
|
||
## 扫图相关(需先完成control_command.yaml配置)
|
||
|
||
fire:~/catkin_ws/src/odin_ros_driver/config/control_command.yaml
|
||
```yaml
|
||
#存颜色
|
||
recorddata: 1 # 0: off; 1: on
|
||
#存地图
|
||
custom_map_mode: 1 # 0: Odometry mode 1: SLAM mode 2: Relocalization mode
|
||
```
|
||
|
||
### 运行odin
|
||
```bash
|
||
# 启动官方历程
|
||
./runros.sh
|
||
#新建终端 保存地图
|
||
cd ~/catkin_ws/src/odin_ros_driver/
|
||
./set_param.sh save_map 1
|
||
```
|
||
将生成的文件导入留形官方后处理软件mindcloud
|
||
下载地址:https://version.manifoldtech.cn/download/mcs
|
||
|
||
|
||
|
||
## 使用方法
|
||
|
||
1. 进入工作空间根目录:
|
||
|
||
```bash
|
||
cd ~/catkin_ws
|
||
```
|
||
## 提供一个一键构建脚本runros.sh
|
||
```bash
|
||
#请先赋予可执行权限,此脚本可代替ros2空间构建命令
|
||
./runros.sh
|
||
```
|
||
2. 先加载 ROS 2 环境:
|
||
|
||
```bash
|
||
source /opt/ros/<你的发行版>/setup.bash
|
||
```
|
||
|
||
3. 构建工作空间:
|
||
|
||
```bash
|
||
colcon build
|
||
```
|
||
|
||
4. 加载工作空间环境:
|
||
|
||
```bash
|
||
source /home/lcf/catkin_ws/install/setup.bash
|
||
```
|
||
|
||
5. 查看工作空间中的包:
|
||
|
||
```bash
|
||
colcon list
|
||
```
|
||
|
||
6. 在当前终端加载环境:
|
||
|
||
```bash
|
||
source ~/catkin_ws/runros.sh
|
||
```
|
||
|
||
7. 一键启动默认 ROS 2 驱动:
|
||
|
||
```bash
|
||
~/catkin_ws/runros.sh
|
||
```
|
||
|
||
默认等价于:
|
||
|
||
```bash
|
||
source ~/catkin_ws/install/setup.bash
|
||
ros2 launch odin_ros_driver odin1_ros2.launch.py
|
||
```
|
||
|
||
8. 如需只打开一个已加载环境的干净交互 bash:
|
||
|
||
```bash
|
||
~/catkin_ws/runros.sh --shell
|
||
```
|
||
|
||
9. 直接通过脚本执行 `ros2` 或 `rviz2` 命令:
|
||
|
||
```bash
|
||
~/catkin_ws/runros.sh ros2 topic list
|
||
~/catkin_ws/runros.sh rviz2 -d /home/lcf/catkin_ws/src/odin_ros_driver/config/odin_ros2.rviz
|
||
```
|
||
|
||
## 说明
|
||
|
||
- 当前根目录已经是 ROS 2 工作空间根目录,无需额外执行 `ros2 workspace create` 之类命令。
|
||
- 若构建失败,请先确认系统已安装 ROS 2、`colcon` 以及包依赖。
|
||
- `runros.sh` 会自动查找 `/opt/ros` 下可用的 ROS 2 发行版,并在存在 `install/setup.bash` 时自动叠加当前工作空间环境。
|
||
- `runros.sh` 会将 ROS 2 运行日志写入工作空间下的 `log/ros2/`,避免依赖用户主目录中的默认 `~/.ros/log`。
|
||
- 直接执行 `runros.sh` 且不带参数时,会默认执行 `ros2 launch odin_ros_driver odin1_ros2.launch.py`,用于一键启动驱动。
|
||
- 如需只进入 shell,请显式使用 `runros.sh --shell`;该模式会进入一个不读取用户 `~/.bashrc`/`~/.profile` 的干净交互 bash,避免用户 shell 初始化脚本覆盖或污染当前 ROS 环境。
|
||
- 直接执行 `runros.sh` 且带参数时,会在完成环境加载后直接执行该命令,适合一键启动 `ros2` 或 `rviz2`。
|