Task 52 — VDSim PoC W1-W12 종합 요약 v2
| Field |
Value |
| Task ID |
RPT-PoC-Summary-v2 |
| Type |
Report |
| Date |
2026-05-29 |
| Status |
snapshot — Cycle 6 종료 시점 |
| Supersedes |
Task 40 |
1. 산출물 정량 (Task 40 → v2)
| 카테고리 |
Task 40 |
v2 (now) |
Δ |
| Tasks completed |
32 |
52 |
+20 |
| Reports authored |
32 |
40+ (cluster 보고서 통합) |
+8 |
| Source files (core/src) |
12 |
13 (+control_converter) |
+1 |
| Headers (core/include/vdsim) |
9 |
10 (+control_converter, scenario) |
+1 |
| Test files |
14 |
17 (+L6/L7, CARLA, dispatch) |
+3 |
| Tests passing |
127 |
136 |
+9 |
| Example binaries |
9 |
12 (+ax_track, l3_demo, l1_vs_l2 split) |
+3 |
| Vehicle configs |
4 |
4 (sedan, sports, fsk_formula, race_car) |
— |
| Solver configs |
2 |
2 |
— |
| Scenario configs |
4 |
4 |
— |
| External integrations |
0 |
2 (CARLA plugin, pybind11) |
+2 |
2. W1-W12 진척 갱신
| Week |
계획 |
Task 40 |
v2 |
Δ |
| W1 |
Skeleton + CI |
100 |
100 |
— |
| W2 |
Headers + coordinate |
100 |
100 |
— |
| W3 |
Tire models |
100 |
100 |
— |
| W4 |
L1 + params YAML + scenarios |
100 |
100 |
— |
| W5-W6 |
combined slip / weight transfer / scenario / L2 skeleton |
100 |
100 |
— |
| W7-W8 (CARLA plugin) |
raycast + UE4 통합 |
0 |
40 (skeleton + mock test) |
+40 |
| W9-W10 (L2 full) |
per-tire + Ackerman + diff + EBD |
100 |
100 |
— |
| W11-W12 (L3 + ride) |
full 14-DOF + CarMaker ERG |
70 |
90 (unsprung mass + camber API + 4 차종) |
+20 |
PoC W1-W12 전체 진척: 80% → 92%.
남은 8%:
- CARLA UE5 실제 통합 (W7-W8 의 나머지)
- CarMaker ERG 비교 (D17 의 Phase 2)
- L1-L8 control 사다리 의 L1-L3 visit 의 풀 dispatch (L4 lowering 만 됨)
3. 사다리 구현 v2
3.1 Dynamics
| Level |
DOF |
상태 |
비고 |
| L1 |
5 |
Full |
combined slip + Mz + camber + weight transfer + Ackerman + diff + brake bias + EBD + downforce |
| L2 |
7 |
Full |
per-tire Fz + lateral transfer + same as L1 features |
| L3 |
14 |
Full (sprung 3 + unsprung 4) |
RK4 적분, anti-dive, mass conservation, ride frequency (overdamped 한계) |
3.2 Control
| Level |
상태 |
| L1-L3 |
Variant dispatch via lower_to_l4 lowering ✓ |
| L4 |
Full ✓ |
| L5 |
Full PID + FF ✓ |
| L6 |
Full cascade PI ✓ |
| L7 |
Full Pure Pursuit ✓ |
| L8 |
Full waypoint cascade (figure-eight demo) ✓ |
| LQR / MPC |
Phase 2 (SMPC paper integration) |
3.3 External integration
| 항목 |
상태 |
| CARLA plugin skeleton |
static lib, mock raycast test 4개 ✓ |
| Pybind11 module |
VehicleParams / TireParams / SolverParams / State / IVehicleDynamics 노출 ✓ |
| CSV importer |
ADMA/CarMaker → scenario.yaml ✓ |
| Sweep runner |
Cartesian product 격자 ✓ |
| CarMaker ERG |
Phase 2 (license 필요) |
4. 차종별 거동 매트릭스
step_steer δ=0.05, vx=10, 5 s:
| Vehicle |
r_peak |
y_trajectory |
비고 |
| sedan |
0.180 |
16.6 m |
RWD Open, 60% Ackerman |
| sports |
0.189 |
17.2 m |
LSD, 85% Ackerman, downforce |
| FSK formula |
0.291 |
22.1 m |
spool diff, 100% Ackerman, very short wheelbase |
| race_car |
0.181 |
16.6 m |
AWD LSD, 매우 큰 downforce |
5. 강점 / 약점 (갱신)
강점 (v2 추가)
- L3 full 14-DOF — sprung body 3 DOF + unsprung mass 4 DOF.
- CARLA plugin skeleton — raycast IContactProvider 동작, UE5 통합 entry point.
- Python binding — L1/L2/L3 dyn 을 Python 에서 직접 호출 (C++ 와 동일 결과 검증).
- Brake EBD — 동적 Fz 기반 brake distribution.
- L1-L3 dispatch — variant lower_to_l4 lowering.
- 4 차종 distinct configs + benchmark matrix (FSK 의 distinct r=0.29).
- CSV importer + sweep runner — 외부 데이터 통합 자동화.
약점 (잔존)
- 실제 CARLA / UE5 통합 0 — skeleton 만, host process 와 연동 안 됨.
- CarMaker ERG 비교 0 — D17 의 RMSE 검증 미수행.
- MPC / SMPC 0 — Phase 2.
- Unsprung damper 분리 안 됨 — 본 모델의 corner damper 가 너무 stiff → wheel hop 약함.
- 실측 calibration 0 — TUR / FSK / NGII 실차 데이터 미반영.
6. 결론
PoC W1-W12 의 92% 완성. dynamics + control + tire physics + external API 모든 axis 에서 의미 있는 진전. 남은 8% (CARLA UE5 통합 + CarMaker 비교 + LSD ride/handling 잔여) 은 외부 환경 / license 필요 → 별도 phase.
시연 가능:
- 4 차종 × 3 시나리오 = 12 distinct trajectory.
- L1 → L2 → L3 사다리 (planar + dynamic suspension).
- L4 → L5 → L6 → L7 → L8 closed-loop path tracking (figure-eight).
- Python 에서 C++ 동등 호출.
- CARLA-ready raycast IContactProvider.
다음 phase 시작 우선순위:
1. CARLA UE5 통합 (raycast → CARLA Sensor API)
2. CarMaker ERG 비교 (license + ERGAccess SDK)
3. SMPC paper 의 HPIPM 통합 (T-VT/T-IV/T-ITS target).