| --- |
| license: apache-2.0 |
| tags: |
| - robotics |
| - reinforcement-learning |
| - unitree-g1 |
| - locomotion |
| - isaac-lab |
| --- |
| |
| # G1-29DoF PhaseTrack PT18 โ ๋ฐฐํฌ ํน (v0.1.0) |
|
|
| Unitree G1 29-DoF ์๋์ถ์ข
๋ณดํ ์ ์ฑ
(PhaseTrack: ์์ ์๊ณ + Bรฉzier ๋ฐ๋์ด ์ ์ฐจ์ ๋ณดํ, |
| ๋ชจ์
๋ฐ์ดํฐยทdiscriminator ์์). **์ค๊ธฐ G1 ๊ฒ์ฆ ์๋ฃ** โ clobot ์ฌ๋ด์ฉ (private). |
|
|
| > โ ๏ธ **ํ์ง ์ ์ฉ ํ์ต**: ์ด ์ ์ฑ
์ **ํ์ง(flat terrain)์์๋ง ํ์ต**๋์์ต๋๋ค. ์งํ ๊ด์ธก(๋์ด |
| > ์ค์บ) ์์ด ๊ณ ์ ์์ฉ ๊ฐ๊ฐ๋ง ์ฌ์ฉํ๋ฉฐ, ์์ฒ ยท๊ฒฝ์ฌยทํฑ์ ํ์ต ๋ถํฌ ๋ฐ์
๋๋ค. ์ค์ธก ์ฐธ๊ณ : ๋ฎ์ |
| > ์์ฒ /ํฑ(โค6cm)ยท์๊ฒฝ์ฌ ์งํ์ ๋ฌด๊ฐ์กฐ ํฌ์
์ sim ๋์๋ฅ 4%(easy)~17%(๊ณ ๋๋+๊ฐ์ธ๋) โ ์ด๋ |
| > ์ ๋ ๋ฒํฐ์ง๋ง ๋ณด์ฅ ์์. ํนํ **์์ ํฑ์ ์ฌ์ (๋น์ ๋ฐฉํฅ)์ผ๋ก ๋์ ๋ ๋ถ์์ **์ด ์ค๊ธฐ์์ |
| > ๊ด์ฐฐ๋จ. ์งํ ๋์ ์ ์ฑ
์ ๋ณ๋ ์บ ํ์ธ(PTR ์๋ฆฌ์ฆ, ์งํ ์ค)์์ ํ์ต. |
|
|
| ## ์ค๊ธฐ ๊ฒ์ฆ ์ํ (2026-07-15 ๊ธฐ์ค) |
|
|
| | ๋ฅ๋ ฅ | ์ํ | |
| |---|---| |
| | ์ ์ง / ํ์ง / ์ ์ง | โ
์ค๊ธฐ ํ์ธ (sim2real DR: CoMยท๊ฒ์ธยท๊ด์ ์์ ) | |
| | ํ์ (๋ช
๋ น ์ํ ยฑ0.7 rad/s) | โ
์ค๊ธฐ ํ์ธ โ ํ์ต๋ฒ์(ยฑ0.5) ์ธ์ฝ, sim์ 1.0๊น์ง ๊ฒ์ฆ | |
| | ์ฐ์ธก yaw ์ฌํ | โ
heading-hold(๋ช
๋ น๊ณ์ธต ํธ๋ฆผ, deploy.yaml)๋ก ์ค๊ธฐ ์ต์ ํ์ธ | |
| | push ํ๋ณต / ์ ์ง ํ๋ณต | โ
(sim ยฑ1.0 push, ์ค๊ธฐ ํ์ธ) | |
|
|
| **์๋ ค์ง ํ๊ณ**: ๊ฒ๊ฑธ์(lateral) ์ฝํจ(vy~0.17), ์์ ํฑ ์ฌ์ ์ง์
๋ถ์์ , ์ฌํ ๊ทผ๋ณธ์์ธ(HW ๋น๋์นญ) |
| ๋ฏธํด๊ฒฐ(ํธ๋ฆผ์ผ๋ก ์ต์ ), ์ ์๋ฆฌ ํผ๋ฒ ์ง๊ฐ, ์ ์ง ๋ฏธ์ธ jitter. ์์ธ: ์ฝ๋ ์ ์ฅ์ |
| `docs/worklogs/CAMPAIGN_HISTORY_phasetrack.md`์ "PT18 ์๋ ค์ง ํ๊ณ" ์น์
. |
|
|
| ## ํ์ผ |
|
|
| | ๊ฒฝ๋ก | ์ฉ๋ | |
| |---|---| |
| | `deploy/policy.onnx` | ์ค๊ธฐ ๋ฐฐํฌ์ฉ (md5 `a7a86c86...`) โ C++ ์คํ v1 ์ฌ๋กฏ์ ๊ต์ฒด ํฌ์
| |
| | `deploy/deploy.yaml` | ๋ฐฐํฌ ํ๋ผ๋ฏธํฐ (๊ฒ์ธ/heading_hold/ang ยฑ0.7 โ **obs ๊ณ์ฝ์ ํ ์ถ**) | |
| | `checkpoints/model_23200.pt` | **rsl-rl ์ฒดํฌํฌ์ธํธ = ์์คํํธ ์จ์** (PT22/23/PTR2/3์ ๋ถ๋ชจ). onnx๋ก๋ ์ฌํ์ต ๋ถ๊ฐ โ ์ด ํ์ผ์ด ํํต์ ์๋ณธ | |
| | `config/env.yaml`, `agent.yaml` | ํ์ต ๋น์ resolved ์ค์ (์ฌํ์ฑ) | |
| | `eval/` | sim ๊ฒ์ฆ ์์ + ์ ๋ ์งํ(์ ์ง vx 0.426, ํ์ง -0.372, lateral 0.166, ๋์ 0) + 20s ์ง์-๋ช
๋ น ๋๋ฆฌํํธ ํด๋ฆฐ | |
|
|
| ## ๊ณ์ฝ (๋ฐฐํฌ ์ 3์ ์ผ์น ํ์) |
|
|
| - **obs 500-dim** = 100-dim ร 5-frame history (term-major, oldest-first): |
| `base_ang_vel(3) | projected_gravity(3) | velocity_commands(3) | joint_pos_rel(29) | joint_vel_rel(29) | actions(29) | gait_phase_legs(4)` ร 5 |
| - ์ก์
29 (per-joint scale, deploy.yaml `scale`), 50 Hz |
| - deploy.yaml = ํ์ต cfg = C++ obs builder 3์ ์ผ์น ํ์ธ ํ ๋ฐฐํฌ |
|
|
| ## ๊ณ๋ณด |
|
|
| - ์ฝ๋: clobot_rl_lab **git tag v0.1.0** (๊ฐ์ค์นโ์ฝ๋ ์ต์ปค. ์ด ํ๊ทธ ์์ด ์ฌํ ๋ถ๊ฐ) |
| - ํ์ต: V18 ํ์คํฌ ์คํฌ๋์น **(ํ์ง ํ์ผ๋ง โ ์งํ ์์)**, 23.2k iters์์ ์กฐ๊ธฐ์ข
๋ฃ(=์ต์ข
๋ณธ, ฯ 0.120 ์๋ ด ํ์ธ ํ ์ค๊ธฐ ๊ฒ์ฆ) |
| - ๋ผ์ด์ ์ค ํํต: Apache-2.0/BSD-3 (holosoma ๊ธฐ๋ฒ ์ฐธ์กฐ, NC ๋ฐ์ดํฐ ๋ฏธ์ฌ์ฉ โ 2026-07-07 ๊ฐ์ฌ) |
|
|