제10부 시뮬레이션
10.5 Isaac Sim 등 대안 시뮬레이터
10.5.1 이 장에서 배우는 것 / 선수 지식
Gazebo(10.2)가 ROS 생태계의 기본이지만 유일한 선택은 아니다. 목적에 따라 다른 시뮬레이터가 더 나은 경우가 있다 — 사실적 렌더링이 필요하거나, 접촉이 많은 조작을 다루거나, 강화학습을 위해 수천 개 환경을 병렬로 실행해야 하거나.
이 장은 그 현황을 정리하고 선택 기준을 세운다. 다만 이 영역은 변화가 매우 빠르다 — 새 도구가 나오고, ROS 2 연동이 개선되고, 라이선스가 바뀐다. 그래서 이 장은 구체적 사용법보다 판단 축에 집중한다.
배우는 것:
- 현황 — 주요 시뮬레이터와 각자의 지향.
- 비교 축 — 무엇으로 비교할 것인가.
- Isaac Sim — GPU·사실적 렌더링·합성 데이터.
- 기타 선택지 — Webots·MuJoCo 등.
- 선택 기준 — 목적에서 도구로.
- 다중 시뮬레이터 전략 — 하나만 쓸 필요가 없다.
- 전환 비용 — 무엇을 다시 만들어야 하는가.
선수 지식: 10.1(시뮬 전략·충실도), 10.2(Gazebo), 5.6(SDF·URDF), 3.6(벤더 비교 — 같은 판단 구조).
정직: 이 장은 이 책에서 가장 빨리 낡을 내용 중 하나다(3.10.10의 zenoh 장과 같은 성격). 시뮬레이터의 기능·라이선스·ROS 2 지원 상태는 반드시 현재 문서로 확인해야 한다
(확인 필요). 성능 비교 수치는 인용하지 않는다(3.6.1 방침). 이 환경에서 어느 것도 실행 검증하지 않았다(목차 3). GPU 가속 스택 상세는 자매서nvidia가 다룬다(BK-06).
10.5.2 현황
| 시뮬레이터 | 지향 | 라이선스(확인 필요) |
|---|---|---|
| Gazebo(Harmonic 등) | ROS 표준·범용 | 오픈소스 |
| NVIDIA Isaac Sim | 사실적 렌더링·GPU·합성 데이터 | 상용(무료 티어 존재(확인 필요)) |
| Webots | 사용 편의·교육 | 오픈소스 |
| MuJoCo | 접촉 물리·강화학습 | 오픈소스 |
| CoppeliaSim | 다목적·스크립팅 | 상용·무료 티어 |
| Unity·Unreal 기반 | 렌더링·게임 엔진 | 다양 |
| 벤더 전용 | 특정 로봇 | 다양 |
정직: 라이선스와 무료 사용 조건은 변한다. 상용 제품의 조건을 이 책의 서술로 판단하지 말고 현재 라이선스를 직접 확인하라. 특히 상업적 사용·재배포 조건이 중요하다.
"ROS 2 지원"의 수준이 다르다:
| 수준 | 의미 |
|---|---|
| 네이티브 통합 | 공식 브리지·ros2_control 연동 |
| 브리지 제공 | 토픽 변환은 되나 통합은 제한적 |
| 커뮤니티 | 유지보수 불확실 |
| 직접 구현 | 브리지를 만들어야 |
견해: ROS 2 통합 수준이 실무 선택에서 결정적이다. 물리가 아무리 좋아도
ros2_control(10.4)이 안 되면 컨트롤러·MoveIt·Nav2 설정을 재사용할 수 없고, 그러면 시뮬의 가치가 크게 준다.
10.5.3 비교 축
3.6.4에서 RMW를 비교한 것과 같은 구조로 접근한다.
| 축 | 무엇을 보나 |
|---|---|
| ① 물리 | 접촉·마찰·관절·변형체 |
| ② 렌더링 | 사실성·센서 시뮬 품질 |
| ③ ROS 2 통합 | 브리지·ros2_control·URDF 지원 |
| ④ 성능 | RTF·병렬 환경 수 |
| ⑤ 비용 | 라이선스·운영 |
| ⑥ 하드웨어 | GPU 필요 여부·사양 |
| ⑦ 생태계 | 예제·모델·질의응답 |
| ⑧ 학습 | 팀이 감당 가능한가 |
견해: ⑥ 하드웨어 요구가 과소평가된다. 고성능 GPU를 요구하는 시뮬레이터는 개발자 전원의 장비를 바꿔야 할 수 있고, CI 러너에도 GPU가 필요하다(10.2.9). 도입 비용이 라이선스보다 하드웨어에서 더 클 수 있다.
견해: ⑦·⑧이 실제 생산성을 좌우하는 경우가 많다(3.6.4의 결론과 같다). 문서가 부실하고 예제가 없으면 기능이 좋아도 진도가 안 나간다. "우리 팀이 이것으로 다음 달까지 결과를 낼 수 있는가" 가 실질적 기준이다.
10.5.4 Isaac Sim
NVIDIA의 GPU 기반 시뮬레이터다.
| 강점 | 설명 |
|---|---|
| 사실적 렌더링 | 레이 트레이싱·물리 기반 재질 |
| 합성 데이터 생성 | 비전 모델 학습용 데이터·자동 라벨링 |
| 도메인 랜덤화 | 조명·재질·배치를 자동 변화(10.6.4) |
| GPU 물리 | PhysX·병렬 환경 |
| 강화학습 통합 | 대규모 병렬 학습 |
| USD 기반 | 자산 파이프라인 |
| 대가 | 설명 |
|---|---|
| GPU 필수 | 고사양 NVIDIA GPU |
| 라이선스 | 상용(확인 필요: 조건) |
| 학습 곡선 | USD·Omniverse 개념 |
| 자원 소모 | 메모리·디스크 |
| ROS 2 통합 | 제공되나 Gazebo만큼 성숙하지 않을 수 있음(확인 필요) |
정직: Isaac Sim의 ROS 2 연동 수준·
ros2_control지원·Jazzy 호환은 반드시 현재 문서로 확인해야 한다(확인 필요). 이 영역은 빠르게 발전 중이며, 이 책의 서술이 낡을 가능성이 높다.
언제 값을 하는가:
| 상황 | 이유 |
|---|---|
| 비전 모델 학습 데이터 필요 | 합성 데이터 + 자동 라벨링 |
| Sim2Real을 위한 도메인 랜덤화 | 내장 지원(10.6.4) |
| 강화학습 | 대규모 병렬 |
| 사실적 센서 검증 | 렌더링 품질(10.1.4의 ④) |
| NVIDIA 스택 사용 중 | Isaac ROS 등과의 연계 — 자매서 nvidia NV-108~NV-111(Isaac ROS·인지·매니퓰레이션)·NV-112·NV-113(Isaac Sim·ROS 브리지) |
언제 과한가:
| 상황 | 이유 |
|---|---|
| 로직·항법 검증 | Gazebo로 충분(10.1.5) |
| GPU 없는 환경 | 실행 불가 |
| 팀에 여력 없음 | 학습 부담 |
| CI 자동화 목적 | 자원 요구 |
견해: "사실적 렌더링이 검증 목적에 필요한가"가 핵심 질문이다(10.1.5). 항법·제어·계획을 검증한다면 렌더링 품질이 결과를 바꾸지 않는다. 비전이 파이프라인의 핵심이고 시뮬 데이터로 학습·검증하려는 경우에 진가가 나온다.
견해: 합성 데이터 생성이 Isaac Sim의 가장 차별적인 기능일 수 있다. 실제 데이터를 수집·라벨링하는 비용이 큰 응용(다양한 물체 인식·자세 추정)에서, 자동 라벨된 데이터를 대량 생성하는 것은 대체 수단이 마땅치 않다. GPU 가속 인지 스택과의 연계는 자매서
nvidia가 다룬다.
10.5.5 기타 선택지
10.5.5.1 Webots
| 축 | 평가 |
|---|---|
| 사용 편의 | 좋음 — 설치·시작이 간단 |
| ROS 2 통합 | 제공(확인 필요: 성숙도) |
| 물리 | 범용 수준 |
| 하드웨어 | 낮은 요구 |
| 적합 | 교육·프로토타입·빠른 시작 |
견해: "시작이 쉽다"가 과소평가된 가치다. Gazebo 설정에 며칠을 쓰기보다 Webots로 하루 만에 개념을 검증하는 것이 나은 경우가 있다. 다만 ROS 2 통합 깊이를 확인해야 하며, 프로젝트가 커지면 재검토가 필요할 수 있다.
10.5.5.2 MuJoCo
| 축 | 평가 |
|---|---|
| 접촉 물리 | 강점 — 정확하고 안정 |
| 속도 | 빠름 |
| 강화학습 | 널리 쓰임 |
| ROS 2 통합 | 제한적(확인 필요) |
| 렌더링 | 기본적 |
| 적합 | 조작·접촉 연구·RL |
견해: 접촉이 많은 조작(인핸드 매니퓰레이션·유연물 다루기)에서 MuJoCo의 물리가 강점이다. 10.4.6에서 "파지를 시뮬로 검증하기 어렵다"고 했는데, 그 어려움이 상대적으로 덜하다. 다만 ROS 2 통합이 약하면 전체 스택 검증에는 부적합하므로, 연구용으로 병행하는 형태가 흔하다.
10.5.5.3 게임 엔진 기반(Unity·Unreal)
| 축 | 평가 |
|---|---|
| 렌더링 | 매우 좋음 |
| 자산 생태계 | 풍부 |
| 물리 | 게임용 — 로봇에는 부정확할 수 있음 |
| ROS 2 통합 | 플러그인 제공(확인 필요) |
| 적합 | 시각화·데모·VR·인간 상호작용 |
견해: 데모·발표·인간 상호작용 연구에는 게임 엔진이 강하다. 다만 물리 정확도가 로봇 공학용으로 충분한지 확인해야 하며, 제어 검증에는 신중해야 한다.
10.5.6 선택 기준
| 상황 | 권장 |
|---|---|
| 처음 시작·일반적 로봇 개발 | Gazebo |
| ROS 2 전체 스택 검증 | Gazebo(통합 성숙) |
| 비전 데이터 생성·학습 | Isaac Sim |
| 접촉 조작 연구 | MuJoCo |
| 교육·빠른 개념 검증 | Webots |
| 사실적 데모 | 게임 엔진·Isaac Sim |
견해: Gazebo가 기본 선택인 이유는 성능이 아니라 통합이다(3.6.6의 "기본값을 쓰라"와 같은 논리).
ros2_control·URDF·브리지가 성숙해 있고, 예제와 질의응답이 가장 많다. 다른 것을 선택하려면 구체적이고 측정된 이유가 있어야 한다.
견해: "검증 목적에서 역산하라"는 10.1.5의 원칙이 여기서도 적용된다. 시뮬레이터의 기능 목록을 비교하는 것이 아니라, 답하려는 질문에 필요한 것이 무엇인지에서 시작한다.
10.5.7 다중 시뮬레이터 전략
하나만 쓸 필요가 없다.
| 용도 | 도구 |
|---|---|
| CI 회귀 | mock·경량 Gazebo(10.1.7) |
| 일상 개발 | Gazebo |
| 비전 학습 | Isaac Sim |
| 특정 연구 | 목적별 |
견해: 다중 전략의 비용은 모델 유지보수다. 로봇 모델을 여러 형식으로 유지하면 어긋난다(5.6.5의 단일 출처 원칙 위반). URDF를 단일 출처로 두고 각 시뮬레이터가 변환해 쓰는 구조가 유지 가능하며, 변환이 안 되는 시뮬레이터는 그만큼 비용이 크다.
함정: 각 시뮬레이터가 URDF를 얼마나 잘 지원하는지 확인하라. 완전 지원·부분 지원·자체 형식 요구가 있으며, 자체 형식이면 모델을 이중 유지해야 한다 — 5.6.5에서 피하라고 한 상황이다.
10.5.8 전환 비용
시뮬레이터를 바꾸면 무엇을 다시 만들어야 하는가(3.5.6의 RMW 교체와 같은 구조).
| 항목 | 전환 시 |
|---|---|
| 로봇 모델 | URDF 지원 여부에 따라 |
| 월드·환경 | 대개 재작성 |
| 센서 설정 | 형식이 다름(10.3.3) |
ros2_control 플러그인 | 다시 확인(10.4) |
| 브리지 설정 | 재작성 |
| launch | 재작성 |
| 튜닝값(물리·게인) | 무효 |
| 팀 지식 | 재학습 |
| CI 통합 | 재구성 |
견해: 월드 재작성이 가장 큰 비용인 경우가 많다. 공들여 만든 환경 모델을 다른 형식으로 옮기는 자동 도구가 대개 없다. 환경을 단순하게 유지하면(10.1.8) 이 비용도 준다.
견해: "나중에 바꾸면 된다"가 여기서도 위험하다(3.6.7의 반복). 초기에 목적을 명확히 하고 선택하되, URDF를 단일 출처로 유지하고 시뮬 전용 설정을 조건부로 분리해 두면(5.6.6) 전환 비용이 줄어든다.
10.5.9 평가 절차
3.6.5의 RMW 평가와 같은 구조로 접근한다.
4단계 시험 항목:
| 항목 | 확인 |
|---|---|
| URDF 로드 | 우리 로봇이 그대로 적용되는가 |
ros2_control | 컨트롤러가 동작하는가(10.4) |
| 센서 브리지 | 데이터가 ROS로 오는가 |
| tf | 프레임이 올바른가(10.3.6) |
| RTF | 목표 하드웨어에서 실용적인가 |
| 헤드리스 | CI 가능한가(10.2.9) |
견해: "우리 로봇 URDF를 그대로 로드할 수 있는가"가 첫 번째 시험이다. 이것이 안 되면 나머지가 다 좋아도 모델 이중 유지 비용을 계속 지불하게 된다.
6단계 문서화(3.6.5):
## 시뮬레이터 선택: Gazebo Harmonic
- 결정일: 2026-08-14
- 근거: ① 검증 목적이 항법·제어 로직 — 사실적 렌더링 불필요
② ros2_control 통합이 성숙 — 설정 재사용
③ GPU 없는 CI 러너에서 헤드리스 실행 가능
- 재검토 조건: 비전 모델 학습 데이터가 필요해지면 Isaac Sim 병행 검토
10.5.10 함정 카탈로그
| # | 함정 | 증상 | 대처 |
|---|---|---|---|
| 1 | 기능 목록으로 선택 | 목적과 불일치 | 검증 질문에서 역산 |
| 2 | ROS 2 통합 수준 미확인 | 설정 재사용 불가 | 4단계 시험 |
| 3 | 하드웨어 요구 과소평가 | 팀 장비·CI 문제 | 사전 확인 |
| 4 | 라이선스 미검토 | 상업적 사용 문제 | 현재 조건 확인 |
| 5 | URDF 지원 미확인 | 모델 이중 유지 | 첫 시험 항목 |
| 6 | 사실적 렌더링을 무조건 선호 | 비용만 증가 | 필요성 판단(10.1.5) |
| 7 | 다중 시뮬 모델 이중화 | 어긋남 | 단일 출처(5.6.5) |
| 8 | 전환을 과소평가함 | 월드·설정 재작성 | 초기 결정 |
| 9 | 튜닝값이 이전될 것으로 기대 | 무효 | 재튜닝 전제 |
| 10 | 이 책의 서술로 판단 | 낡은 정보 | 현재 문서 확인 |
10번을 강조한다. 이 장은 이 책에서 가장 빨리 낡을 내용이다. 시뮬레이터 생태계는 빠르게 변하므로, 선택 전에 반드시 현재 상태를 확인하기 바란다.
10.5.11 체크포인트
- 주요 시뮬레이터 다섯 가지와 각자의 지향을 말할 수 있는가.
- "ROS 2 지원"의 네 가지 수준과, 그것이 실무 선택에서 결정적인 이유는?
- 비교 축 여덟 가지를 들 수 있는가. 과소평가되는 축 셋은 무엇인가.
- Isaac Sim의 강점 여섯 가지와 대가 다섯 가지를 말할 수 있는가. 가장 차별적인 기능은?
- Isaac Sim이 값을 하는 상황과 과한 상황을 각각 세 가지 들 수 있는가.
- MuJoCo가 강점을 갖는 영역과, ROS 2 통합이 약할 때의 한계는?
- Gazebo가 기본 선택인 이유는 무엇인가. RMW 선택(3.6.6)과 어떤 논리가 같은가.
- 다중 시뮬레이터 전략의 비용은 무엇이며, 어떻게 완화하는가.
- 시뮬레이터 전환 시 재작성해야 하는 것 아홉 가지 중 가장 큰 비용은?
- 평가 절차의 첫 번째 시험 항목과 그 이유는?
- 이 장의 내용을 판단 근거로 삼을 때 주의할 점은?
다음 장 10.6는 제10부의 마지막이자 이 부의 결론 — Sim2Real 간극을 정면으로 다룬다. 간극의 원천, 줄이는 방법, 그리고 시뮬 결과를 어디까지 믿을 것인가.