optimal & fix file cmake

This commit is contained in:
2026-08-03 22:41:32 +07:00
parent d8babff20b
commit 701d25f952
70 changed files with 5572 additions and 1146 deletions

View File

@@ -0,0 +1,54 @@
# Action "phải dò rồi mới biết đích" — bảng mở rộng của `VDA5050SourceAdapter`.
#
# File riêng thay vì sửa `mission_adapters_params.yaml`: file đó là symlink sang cây config của
# `pnkx_nav_core` (submodule). `robot::NodeHandle` gộp mọi file YAML trong thư mục config vào một
# cây, nên khoá `vda5050_src` ở đây hợp nhất với khoá cùng tên bên kia.
#
# ── Bảng này chỉ giữ CẤU TRÚC ────────────────────────────────────────────────────────────────────
#
# Fleet chỉ gửi `charge`; `DetectCharger` và `startCharging` là actionType NỘI BỘ do adapter sinh ra,
# không bao giờ xuất hiện trong order JSON. Tên frame cụ thể đến từ `actionParameters` của chính
# order, nên thêm một trạm sạc mới không phải sửa file này.
#
# Bốn từ khoá của một step, phải có ĐÚNG MỘT:
# action: <type> chặng chỉ-action; mang nguyên actionParameters của action gốc
# move_to: <frame> chặng nav, frame cố định
# move_to_param: <key> chặng nav, frame lấy từ actionParameters[<key>] của action gốc
# move: <mét> chặng nav tương đối; dương = tiến, âm = lùi
# Tuỳ chọn cho step navigation: profile (position | docking | go_straight | rotate), marker.
# `marker` chỉ hợp lệ với `profile: docking`: nó chọn override trong
# maker_sources.yaml/docking_marker_profiles. Không khai = dùng cặp docking mặc định.
# Tolerance thuộc YAML riêng của local planner đang được profile chọn, không khai ở đây.
vda5050_src:
compound_actions:
charge:
steps:
# 1. Dò: đứng yên lấy mẫu frame thô, lọc nhiễu, ghi ra `dock_target`.
# Robot không phát cmd_vel trong EXECUTING_ACTIONS nên đây đúng là lúc để lọc.
- {action: DetectCharger}
# 2. Tiến vào đích vừa dò được bằng profile docking. Sai số do local planner đọc từ YAML
# của chính plugin đó.
- {move_to: dock_target, profile: docking, marker: charger}
# 3. Thao tác thiết bị. Chặng 1 hoặc 2 hỏng thì `clear_queue_on_failure` xoá chặng này —
# robot không bao giờ đóng relay khi chưa vào được vị trí.
- {action: startCharging}
PickUp:
steps:
- {action: DetectPallet}
- {move_to: dock_target, profile: docking, marker: trolley}
- {action: LiftFork}
# Lùi ra khỏi khe kệ. Quãng đường tương đối được quy ra pose tuyệt đối tại `submit`, từ pose
# LÚC ĐÓ — lúc adapter sinh chặng thì robot còn chưa tới nơi.
- {move: -0.5, profile: go_straight}
GoStraight:
steps:
- {move: 1.0, profile: go_straight}
Rotate:
steps:
- {move: 0.0, profile: rotate}