feat(level1): ROS2 完全体 12 包 / 80 测试 / 23 文档 / 工程化 / Docker 分组

This commit is contained in:
xs
2026-08-04 10:19:47 +08:00
parent 5ef38ab508
commit 549d6b337e
141 changed files with 8949 additions and 1594 deletions
+57
View File
@@ -0,0 +1,57 @@
# bringup
顶层 launch 聚合包。属于 Level 1 跨包集成层。
## 6 个 launch 文件
| 文件 | 启动节点 | 数量 |
|---|---|---|
| `pubsub_launch.py` | py_pubsub + cpp_pubsub 的 pub/sub | 4 |
| `service_launch.py` | add_two_ints_server | 1 |
| `action_launch.py` | fibonacci_action_server | 1 |
| `robot_launch.py` | URDF + JointState + TF(nested `cpp_robot_tf2`) | 3 |
| `vision_launch.py` | fake_camera + image_processor(nested `py_vision_demo`) | 2 |
| `full_demo_launch.py` | 上面所有组合 | **11** |
## 关键设计
- **不实现业务节点** — 只用 `IncludeLaunchDescription` 复用其他包的 launch
- **跨包嵌套** — `robot_launch.py` / `vision_launch.py``FindPackageShare` + `PythonLaunchDescriptionSource` 引用单包 launch
- **包名避让** — 包名是 `bringup`,**不是** `launch`(与 ROS2 系统包同名会冲突)
## 运行
```bash
# 各 demo 单独启动
ros2 launch bringup pubsub_launch.py
ros2 launch bringup service_launch.py
ros2 launch bringup action_launch.py
ros2 launch bringup robot_launch.py
ros2 launch bringup vision_launch.py
# 全开(11 节点同时跑)
ros2 launch bringup full_demo_launch.py
```
## 验证端到端
```bash
# 跨包跨语言 Topic:PY + CPP 同时发,listener 都收到
ros2 launch bringup pubsub_launch.py
ros2 topic info /chatter -v
# 预期:Publication count: 2, Subscription count: 2
# Action
ros2 launch bringup action_launch.py
ros2 action send_goal /fibonacci example_interfaces/action/Fibonacci "{order: 6}" --feedback
# Service
ros2 launch bringup service_launch.py
ros2 service call /add_two_ints example_interfaces/srv/AddTwoInts "{a: 12, b: 30}"
# 预期: sum: 42
```
## 深度学习
- 编程规范:[`doc/CODING_STYLE.md`](../doc/CODING_STYLE.md) §5.5
- launch 深度:[`doc/70-launch.md`](../doc/70-launch.md)