최근 Isaac ROS 기반으로 자율주행 로봇을 만들고 있는데 전체 구조에 대해 다시 정리해봐야겠다는 생각을 했다.
Nvidia의 Leanning Path의 Robotics Fundamentals 중 A Beginner's Guide to Autonomous Robots 내용을 정리해보았다.
https://www.nvidia.com/en-us/learn/learning-path/robotics/
NVIDIA Robotics Fundamentals
Discover how to build intelligent robotic systems with NVIDIA Isaac and more
www.nvidia.com
Autonomous Robots
최근 다양한 산업군에서 다양한 방식으로 자율 주행 로봇이 사용된다.
(manufacturing, healthcare, agriculture, logistics, transportation, exploration, home use, retail, education, public safety, and entertainment)
이러한 자율 주행 로봇은 다음과 같은 흐름으로 작동한다.

자율주행 로봇은 인간이 움직이는 방식과 유사하게 작동된다.
눈으로 보고(Perception), 뇌로 인지(Congnition)를 하고, 일종의 actuator인 팔다리로 움직임(action)을 주는 방식으로 로봇도 동작한다.
로봇 시스템과 아키텍처
로봇은 “움직이는 기계”처럼 보이지만, 실제로는 하드웨어와 소프트웨어가 정교하게 결합된 시스템이다. 이번 내용은 로봇 시스템을 구성하는 핵심 요소(센서·액추에이터·컨트롤러·소프트웨어)와, 이들이 어떻게 함께 동작해 자율 로봇을 만드는지에 대한 큰 그림을 정리한다.
1) 로봇 시스템은 무엇으로 구성될까?
로봇 시스템은 크게 두 축으로 나뉜다.
- 하드웨어(Hardware): 로봇이 물리 세계와 상호작용하도록 만드는 부품들
(예: 센서, 모터, 제어 보드 등) - 소프트웨어(Software): 로봇이 “무엇을 어떻게 할지” 판단하고 제어하는 프로그램/알고리즘
(예: 인식, 경로 계획, 제어, 의사결정 로직 등)
이 둘이 따로 작동하면 로봇은 제대로 움직일 수 없다. 그래서 로봇 개발에서 핵심은 통합(Integration)이다.
2) 로봇 통합(Integration)의 핵심
로봇 통합은 말 그대로 각 부품이 하나의 시스템처럼 자연스럽게 협업하도록 연결하는 과정이다.
- 센서가 환경 정보를 수집하면
- 소프트웨어가 그 정보를 해석하고 결정을 내린 뒤
- 액추에이터가 실제로 움직이며
- 컨트롤러가 전체 흐름을 안정적으로 유지한다
결국 목표는 모든 구성 요소가 끊김 없이 연결되어, 로봇 내부에서 복잡한 동작과 통신이 가능해지는 시스템을 만드는 것이다.
3) 왜 시뮬레이션과 테스트가 중요할까?
로봇은 실제 환경에서 바로 실험하기엔 위험하고 비용도 크다. 그래서 보통 시뮬레이션 환경에서 먼저 전체 시스템을 검증한다.
- 시뮬레이터 예: NVIDIA Isaac Sim / Isaac Lab / Gazebo
- 테스트 방식 예:
- SIL(Software-in-the-loop): 소프트웨어 중심 검증
- HIL(Hardware-in-the-loop): 실제 하드웨어 일부를 포함해 검증
- 유닛 테스트 / 시스템 테스트 등
시뮬레이션과 테스트는 실제로 잘 작동하는지 안전하게 확인하는 필수 단계다.
4) 로봇 개발 프레임워크는 어떻게 쓰일까?
로봇 개발에서는 구성 요소가 많고 복잡하다 보니, 이를 효율적으로 연결하기 위한 미들웨어가 자주 사용된다. 대표적인 예가 ROS(Robot Operating System)이다.
ROS는 센서 데이터 처리, 노드 간 통신, 모듈 관리 등 로봇 소프트웨어 개발에 필요한 기반을 제공해준다.
5) 하드웨어 통합의 핵심: 센서·액추에이터·컨트롤러
로봇 하드웨어를 이해할 때 가장 기본이 되는 구성은 아래 3가지다.
센서(Sensors): “환경을 보는 눈”
로봇이 주변을 인식하고, 제어에 필요한 피드백을 얻기 위해 사용한다.
- 카메라: 시각 정보
- LiDAR: 거리/형상 정보
- IMU: 자세/방향 정보
- GPS: 위치 정보
액추에이터(Actuators): “움직이는 근육”
소프트웨어의 결정을 실제 동작으로 바꿔주는 장치다.
- DC/스테퍼 모터: 이동/회전
- 서보: 정밀한 위치 제어
- 공압/유압: 큰 힘이 필요한 구동
컨트롤러(Controllers): “판단을 실행으로 바꾸는 뇌”
센서 데이터를 처리하고 제어 알고리즘을 실행하며 구성 요소 간 통신을 담당한다.
- 마이크로컨트롤러: Arduino, PIC 등
- 싱글보드 컴퓨터: Raspberry Pi, NVIDIA Jetson 등
- 임베디드 시스템: 통합 제어 솔루션

자율주행 소프트웨어는 위 그림과 같은 구조로 이루어진다. 핵심 흐름은 다음 4가지이다.
- 인지·위치추정(Perception & Localization): 카메라/라이다 등 센서와 맵을 이용해 주변 환경을 이해하고 로봇의 위치·상태를 추정
- 계획(Planning):
- 글로벌 계획: 목적지까지의 큰 경로/미션·웨이포인트 설정
- 행동 계획: 무엇을 할지(예: 어떤 물체를 다룰지, 어떤 행동을 선택할지) 결정
- 로컬 계획: 실제 주행/조작을 위한 구체적인 궤적(trajectory) 생성
- 제어·구동(Control & Actuation): 생성된 궤적을 따라가도록 제어기가 움직임을 실행(주행/조작), 시뮬레이션과 실환경에서 검증
- 피드백 루프(Feedback Loop): 센서·위치추정 데이터를 계속 반영해 계획을 수정하고 성능을 개선 → 로봇이 상황에 적응하며 반응하도록 만듦
'로보틱스' 카테고리의 다른 글
| RLDX-1 정리 (0) | 2026.06.30 |
|---|---|
| OOM에서 벗어나기 (LLM / VLM / VLA 파인튜닝) LoRA (1) | 2026.02.10 |
| [논문리뷰] Alpamayo-R1: Bridging Reasoning and Action Predictionfor Generalizable Autonomous Driving in the Long Tail (1) | 2026.01.15 |
| [논문리뷰] RT-2: Vision-Language-Action Models TransferWeb Knowledge to Robotic Control (0) | 2026.01.14 |
| Isaac Lab (0) | 2025.12.17 |