Physical AI · 연구 노트
휴머노이드를 부위별로 뜯어 봅니다
로봇 한 대를 머리부터 클라우드까지 따라가며, 각 부위를 이루는 기술을 개요에서 실전까지 정리합니다. 실습과 측정은 직접 해 본 결과만 싣습니다.
- sim2real
- real2sim
- 휴머노이드
- VLA
- 텔레옵
- SLAM
- Nav2
- HRI
- 강화학습
- 모방학습
로봇 구성도
부위를 누르면 그 부위의 기술 스택이 펼쳐집니다
각 부위는 개요 → 기본 → 심화 → 실전 네 단계 강의로 이어집니다.
로봇 부위
머리: 카메라
빛을 촬영 시각과 좌표계 정보가 담긴 이미지로 변환하고, 이를 바탕으로 물체의 3D 위치를 계산하는 비전 시스템
- 개요 비전 시스템이 보여 주는 것: 픽셀, 촬영 시각, 렌즈, 장착 위치
- 기본 카메라 인터페이스와 대역폭 계산, RealSense D435i의 깊이 측정, ROS 2에서 카메라 이미지 주고받기, 내부 파라미터 캘리브레이션과 역투영
- 심화 외부 파라미터와 hand-eye 캘리브레이션, 카메라 타임스탬프와 노출 시각, Jetson의 제로 카피 프레임 처리(GStreamer·NVMM), DeepStream으로 검출하고 추적하기
- 실전 픽셀에서 손끝 좌표까지의 오차 예산, 현장에서 흔히 겪는 카메라 문제, 개방형 어휘 검출기·VLM 성능 평가
로봇 부위
몸통: 균형과 실시간 제어
전신의 힘과 운동량을 제어해 균형을 유지하고, 상위 계층의 명령을 제시간에 모터까지 전송하며, 전원과 안전을 담당하는 부위
- 개요 50 Hz 명령에서 관절 토크까지, 넘어지지 않는 원리(무게중심·지지다각형·ZMP), 몸통에서 관리하는 전원·열·비상 정지
- 기본 선형 역진자 모델(LIPM)과 캡처 포인트, 저수준 관절 명령 루프, DDS·QoS와 실시간 성능 측정, 모터 버스의 대역폭 예산
- 심화 무게중심 동역학, QP로 푸는 전신 제어, EtherCAT·ros2_control 실시간 설계, 시계 도메인과 시간 동기화
- 실전 하체 보행 제어기와 상체 작업 제어기 통합, 가장 빠른 루프에 배치하는 안전 기능(E-stop·워치독·다단계 한계값), 열과 배터리 제약, 떨림·끊김·시간 역전 디버깅
로봇 부위
팔과 손: 조작
손의 목표 위치와 힘을 관절 토크와 접촉으로 변환하는 부위. 그 과정에서 생기는 오차가 데이터와 시뮬레이터에 미치는 영향까지 다룬다
- 개요 팔을 한 번 뻗는 동안 작동하는 루프들, 감속비가 결정하는 팔의 특성, 파지가 어려운 이유
- 기본 FK·자코비안·IK, 관절 처짐과 중력 보상, 평행 그리퍼로 파지하기
- 심화 전류 루프·감속비·반사관성, 임피던스 제어와 토크 제어, IK를 매 주기 다시 푸는 이유, 액션과 제어기 사이의 규약
- 실전 세 가지 측정으로 갭 점검표 작성하기, 실물 팔에 정책 적용하기, 파지 실패 분류와 자동 판정
로봇 부위
다리: 이동
넘어지지 않게 보행하고, 현재 위치를 추정하고, 충돌 없는 경로로 목표 지점까지 이동하는 부위. 보행 정책, LiDAR·SLAM, Nav2를 다룬다
- 개요 목표 좌표에서 관절 토크까지의 계층별 작동 주기, 바퀴와 다리의 차이, odom과 map이라는 두 가지 '현재 위치'
- 기본 시뮬레이터에서 G1 보행 정책 실행하기, IMU와 LiDAR 데이터 처리, slam_toolbox로 2D 지도 만들기, Nav2로 목표 지점까지 이동하기
- 심화 보행 정책의 강화학습과 sim2real, IMU와 다리 기구학을 융합하는 상태추정, SLAM과 Nav2의 내부 구조
- 실전 지도 편집과 위치 추정 실패 진단, 도착 판정과 팔 작업으로 전환, 실물 다리 로봇에 보행 정책과 Nav2 적용하기
로봇 부위
배낭: 온보드 컴퓨터
로봇에 탑재되어 인식 모델과 정책을 제시간에 실행하는 컴퓨터. 무거운 추론은 엣지 서버에서, 서보 제어와 안전 정지는 모터 드라이버에서 처리한다
- 개요 온보드 컴퓨터의 역할, 보드에서 처리하는 일과 보드 밖에 두는 일
- 기본 Jetson 작업 환경 구성(JetPack·전원 모드·컨테이너), TensorRT 엔진 빌드와 지연 분포 측정, 보드에서 정책 실행하기
- 심화 오래 동작할 때의 성능 저하: 발열, 스로틀링, 전원 모드, 장시간 시험
- 실전 지연 원인 찾기: Nsight Systems로 GPU 타임라인 분석하기
로봇 주변
리더암: 텔레오퍼레이션과 데이터
정책 대신 사람이 로봇을 조작하고, 그 동작을 정책 학습에 쓸 관측·액션·타임스탬프 데이터로 기록하는 입력 장치
- 개요 로봇 스택에서 텔레옵의 위치(사람이 정책 대신 닫는 루프), 리더암부터 사람 시연 영상까지 텔레옵 인터페이스 비교
- 기본 SO-101 리더-팔로워로 첫 데모 녹화하기, LeRobotDataset의 데이터 구조, VR·손 추적 텔레옵 기초
- 심화 지연에 따른 조작 방식(move-and-wait·양방향 텔레옵), 리더암 역학과 중력 보상, 액션 기록 스키마와 시간 정렬, 로봇 없이 데이터를 수집하는 방식(UMI·글러브·외골격·사람 시연 영상)
- 실전 좋은 데모의 조건, 개입 데이터와 DAgger 계열, 데이터 수집 현장에서 생기는 문제
로봇 주변
시뮬레이터
정책 학습, 데모 데이터 생성, 배포 전 평가에 쓰는 가상 환경. 시뮬레이터를 현실에 맞추는 과정(real2sim)까지 다룬다
- 개요 시뮬레이터의 역할(정책 학습·데이터 생성·평가), 시뮬레이터와 현실이 어긋나는 지점, 물리 엔진 선택 기준
- 기본 URDF·MJCF·USD 형식과 변환, 첫 MuJoCo 실험, Isaac Lab으로 강화학습 환경 구성하기, 시뮬레이터에서 데모 수집하기
- 심화 접촉 계산의 원리, 액추에이터 모델링, 도메인 랜덤화, 시스템 식별, MimicGen·SkillGen 데모 자동 생성
- 실전 시뮬레이터 평가 결과를 믿을 수 있는 조건, 갭 점검표로 시뮬레이터 설정 검토하기, 시뮬레이션 데이터를 섞는 co-training의 효과와 한계, 월드 모델을 시뮬레이터로 쓰기
로봇 주변
엣지 서버: 추론
로봇과 같은 네트워크에서 무거운 모델 추론을 처리하는 워크스테이션. GR00T·π0 같은 VLA를 정책 서버로 실행해 두면 로봇이 이를 호출한다
- 개요 추론 위치를 결정하는 기준(온보드 컴퓨터·엣지 서버·데이터센터의 역할 분담), TOPS보다 먼저 볼 메모리 대역폭과 전력
- 기본 VLA 정책 서버를 구성하고 로봇에서 호출하기, 왕복 지연 측정
- 심화 루프라인 모델로 분석하는 VLA 추론, 양자화가 폐루프 성능에 미치는 영향(FP16·INT8 엔진 비교), 비동기 실행과 Real-Time Chunking
- 실전 로봇 밖으로 옮길 수 있는 루프를 고르는 기준, 꼬리 지연과 연결 끊김 대비
로봇 주변
클라우드: 학습
로봇에서 수집한 데모와 실패 사례로 정책을 다시 학습하고, 성능이 실제로 개선되었는지 평가한 뒤 로봇에 배포하는 과정. 가장 느린 축에 속하는 피드백 루프다
- 개요 데이터 수집에서 배포까지 작동하는 학습 파이프라인, 로봇 파운데이션 모델 비교(액션 출력 방식·공개 범위·필요한 자원)
- 기본 ACT·Diffusion Policy를 이용한 첫 정책 학습과 실험 추적, 성공률 평가에 필요한 시행 횟수와 신뢰구간
- 심화 ACT·Diffusion Policy가 액션을 묶어서 출력하는 이유, VLA의 액션 출력 방식(회귀·토큰·flow matching), VLA 파인튜닝 실무, 데모와 경험 데이터를 활용한 RL 파인튜닝
- 실전 학습-배포 불일치 디버깅, 정책 평가 설계, 데이터 플라이휠 구축, 단계적 배포와 롤백
새 소식
새로 올린 아티클
-
강의 시작하기 개요
로봇을 이루는 톱니바퀴들: 서로 다른 주기로 작동하는 로봇 안팎의 루프
모터 드라이버의 전류 루프는 1초에 수천에서 수만 번 돌고, 정책을 다시 학습시키는 일은 몇 주에 한 번꼴입니다. 로봇 안팎의 루프를 로그 스케일 시간축 하나에 펼쳐 놓고, 속도가 다른 루프들이 어떻게 맞물려 돌아가는지 살펴봅니다.
-
강의 시작하기 개요
이 블로그를 시작하는 이유
로봇 한 대를 중심으로 머리부터 클라우드까지, Physical AI 스택 전체를 부위별로 풀어 설명하는 블로그입니다. 로봇 구성도를 이해하는 방법과 이 블로그를 시작한 이유를 정리했습니다.