temporary storage
This commit is contained in:
55
README.md
Normal file
55
README.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# recovery_core
|
||||
|
||||
Interface (base class) cho các hành vi **recovery** của navigation stack ROS-like T800.
|
||||
|
||||
## Phạm vi
|
||||
|
||||
- Là **package định nghĩa interface**, mô phỏng `robot_nav_core::RecoveryBehavior` nhưng mở
|
||||
rộng thêm `global_path`: `initialize(name, tf, global_path, global_costmap, local_costmap)`;
|
||||
đồng thời **tổng quát hoá output** để bao 3 họ recovery.
|
||||
- **Không chạy roscpp/ROS master thật**; dùng bình thường lớp ROS-like `robot_*`
|
||||
(`robot_costmap_2d`, `tf3`, `robot_cpp`, `robot_time`, `robot_geometry_msgs`,
|
||||
`robot_nav_msgs`).
|
||||
- Core interface không publish trực tiếp. Package hiện có thêm các plugin mẫu build thành
|
||||
`.so` riêng và nạp qua **Boost.DLL** để kiểm chứng contract end-to-end.
|
||||
|
||||
## Ba họ recovery
|
||||
|
||||
| Họ | Ví dụ | Output | Method chính |
|
||||
|----|-------|--------|--------------|
|
||||
| A | regen path (đường thoát) | `robot_nav_msgs::Path` | `runBehavior()` |
|
||||
| B | clear costmap | không có (chỉ status) | `runBehavior()` |
|
||||
| C | rotation / backup | `robot_geometry_msgs::Twist` mỗi cycle | `computeCommand(dt)` |
|
||||
|
||||
Cả 3 chia sẻ một `RecoveryResult` hợp nhất mang cờ `output_type`.
|
||||
|
||||
## Cấu trúc
|
||||
|
||||
```
|
||||
include/recovery_core/ recovery_types.h, recovery_config.h, recovery_behavior.h
|
||||
src/ phần chung của contract (types/config/default behavior)
|
||||
plugins/ clear_costmap, rotate, backup, regen_path plugin mẫu
|
||||
test/ contract test + Boost.DLL loader test
|
||||
examples/ minimal_recovery.cpp
|
||||
docs/ ARCHITECTURE.md, PLUGIN_GUIDE.md, SAFETY.md
|
||||
```
|
||||
|
||||
## Build
|
||||
|
||||
Hỗ trợ **catkin** và **standalone CMake** (như `robot_clear_costmap_recovery`).
|
||||
|
||||
```bash
|
||||
# catkin (trong workspace)
|
||||
catkin_make --pkg recovery_core
|
||||
|
||||
# standalone
|
||||
mkdir build && cd build && cmake .. && make
|
||||
```
|
||||
|
||||
## Trạng thái
|
||||
|
||||
- [x] Phase 1 — khung package (interface + stub, build lib rỗng).
|
||||
- [x] Phase 2 — triển khai phần chung (types/config/validate + default computeCommand).
|
||||
- [x] Phase 3 — plugin mẫu cho 3 họ + export/import Boost.DLL.
|
||||
|
||||
Xem [PLAN.md](PLAN.md) để biết chi tiết từng phase.
|
||||
Reference in New Issue
Block a user