This commit is contained in:
2026-08-04 17:36:05 +08:00
parent d4e023696d
commit 74b3c89e1e
16 changed files with 487 additions and 34 deletions
+24 -19
View File
@@ -163,7 +163,15 @@ cd /root/ros2_ws # 进入工作空间
### 4.2 编译所有包
```bash
bash build.sh
bash scripts/build.sh
```
*(脚本封装了 `source /opt/ros/humble/setup.bash` + `colcon build --symlink-install` 12 个包;手动等价命令见下)*
**手动等价命令**:
```bash
source /opt/ros/humble/setup.bash
cd /root/ros2_ws
colcon build --symlink-install
```
**预期输出(末尾)**:
@@ -194,9 +202,7 @@ Summary: 7 packages finished [2min 30s]
### 4.3 跑测试(可选)
```bash
source /opt/ros/humble/setup.bash
source /root/ros2_ws/install/setup.bash
colcon test --packages-select py_pubsub cpp_pubsub py_srv py_action_demo cpp_robot_tf2 py_vision_demo bringup
bash scripts/test.sh
```
**预期**:
@@ -211,9 +217,8 @@ Summary: 7 packages finished [25s]
### 5.1 启动 4 个节点(2 Python + 2 C++)
```bash
source /opt/ros/humble/setup.bash
source /root/ros2_ws/install/setup.bash
ros2 launch bringup pubsub_launch.py
bash scripts/launch.sh pubsub_launch 30
# 第 2 个参数是运行时长(秒);空着 = 一直跑
```
**预期输出**:
@@ -347,12 +352,12 @@ source .venv/bin/activate
- [ ] `docker ps` 看到 `ros2_dev` 容器 `Up`
- [ ] `docker exec ros2_dev echo hello` 输出 `hello`
- [ ] `bash build.sh` 7 packages 全 build 成功
- [ ] `colcon test` 全过(7 packages, 0 failed)
- [ ] `ros2 launch bringup pubsub_launch.py` 启动 4 节点
- [ ] `ros2 topic list` 看到 `/chatter`
- [ ] `ros2 topic hz /chatter` 显示 ~4Hz
- [ ] `ros2 topic info chatter -v` 看到 Python + C++ pub/sub
- [ ] `bash scripts/build.sh` 12 packages 全 build 成功
- [ ] `bash scripts/test.sh` 全过(12 packages / 78 tests, 0 failed)
- [ ] `bash scripts/launch.sh pubsub_launch 30` 启动 4 节点
- [ ] `docker exec ros2_dev bash -c "ros2 topic list"` 看到 `/chatter`
- [ ] `docker exec ros2_dev bash -c "ros2 topic hz /chatter --no-daemon"` 显示 ~4Hz
- [ ] `docker exec ros2_dev bash -c "ros2 topic info /chatter -v --no-daemon"` 看到 Python + C++ pub/sub
- [ ] venv 装好且激活,`python -c "import sys; print(sys.executable)"` 显示 `.venv` 路径
如果有任何一项 ✗,看 [Step 8 FAQ](#step-8-常见问题-faq)。
@@ -379,12 +384,12 @@ source .venv/bin/activate
```
然后 `docker compose build` 重试。
### Q3: `bash build.sh` 报 `rcl_xxx not found`
### Q3: `bash scripts/build.sh` 报 `rcl_xxx not found`
**原因**: 没 source ROS2
**解决**:
```bash
source /opt/ros/humble/setup.bash
bash build.sh
bash scripts/build.sh
```
**或者** 把这句加进 `~/.bashrc`:
@@ -427,8 +432,8 @@ sudo apt install ros-humble-<pkg>
**解决**:
```bash
cd /root/ros2_ws
rm -rf build install log
colcon build --symlink-install
bash scripts/clean.sh # 等价于 rm -rf build install log
bash scripts/build.sh
```
### Q10: 容器跑一段时间后磁盘满了
@@ -436,8 +441,8 @@ colcon build --symlink-install
**解决**:
```bash
# 进容器清理
cd /root/ros2_ws && rm -rf build install log
bash build.sh
docker exec ros2_dev bash /root/ros2_ws/scripts/clean.sh
docker exec ros2_dev bash /root/ros2_ws/scripts/build.sh
# 或清理 Docker
docker system prune -a