
https://link.coupang.com/a/d5SpkD
LG전자 2026 그램 15 코어 Ultra5 - 노트북 | 쿠팡
현재 별점 4.8점, 리뷰 131개를 가진 LG전자 2026 그램 15 코어 Ultra5! 지금 쿠팡에서 더 저렴하고 다양한 노트북 제품들을 확인해보세요.
www.coupang.com
🤖 ROS2 핵심 통신 개념: 토픽 vs 서비스 vs 액션

AI 활용
로봇 소프트웨어를 개발할 때 노드(Node)들이 서로 데이터를 주고받는 방식은 시스템 설계의 핵심입니다. ROS2는 이를 위해 세 가지 통신 메커니즘을 제공합니다. 각 방식은 사용 목적과 동작 방식이 다르기 때문에, 상황에 맞게 올바른 메커니즘을 선택하는 것이 중요합니다.
📡 1. 토픽 (Topic)
토픽은 ROS2에서 가장 기본적인 통신 방식입니다. 발행자(퍼블리서 Publisher)가 특정 채널(토픽)에 데이터를 지속적으로 흘려보내면, 구독자(서브스크라이버 Subscriber)가 해당 채널을 구독하여 데이터를 받습니다.
이 구조는 단방향 비동기 스트림입니다. 발행자는 구독자가 몇 명인지, 데이터를 잘 받았는지 전혀 신경 쓰지 않습니다. TV 방송국이 전파를 쏘는 것과 같습니다.
대표적인 사용 사례:
- 카메라 이미지 스트리밍 (/camera/image_raw)
- 라이다 포인트 클라우드 (/scan)
- IMU 센서 데이터 (/imu/data)
- 로봇 현재 속도 (/cmd_vel)
토픽은 데이터가 계속해서 발생하고, 수신 확인이 필요 없는 상황에 최적화되어 있습니다.
🔁 2. 서비스 (Service)
서비스는 요청(Request)/응답(Response) 구조입니다. 클라이언트가 서버에 특정 요청을 보내면, 서버는 처리 결과를 단 한 번 응답으로 돌려줍니다. HTTP API와 매우 유사한 개념입니다.
핵심 특징은 동기적 통신이라는 점입니다. 클라이언트는 서버로부터 응답이 올 때까지 대기합니다. 처리 시간이 길면 시스템 전체가 블로킹될 수 있어, 빠르게 완료되는 작업에 적합합니다.
대표적인 사용 사례:
- 맵 저장 요청 (/map_server/save_map)
- 파라미터 변경 (/set_parameters)
- 모터 활성화/비활성화
- 좌표 변환 요청

AI 활용
⚙️ 3. 액션 (Action)
액션은 토픽과 서비스의 장점을 결합한 고급 통신 메커니즘입니다. 클라이언트가 목표(Goal)를 보내면, 서버는 작업을 수행하면서 중간 피드백(Feedback)을 지속적으로 전송하고, 완료 시 결과(Result)를 반환합니다.
또한 작업이 진행 중에도 취소(Cancel)가 가능하여, 시간이 오래 걸리는 작업을 안전하게 관리할 수 있습니다. 내부적으로는 토픽 3개와 서비스 2개로 구성됩니다.
대표적인 사용 사례:
- 내비게이션 목적지 이동 (/navigate_to_pose)
- 로봇 팔 궤적 실행
- 맵 빌딩 (SLAM)
- 음성 인식 및 응답
📊 세 가지 통신 방식 비교표
|
구분
|
토픽 (Topic)
|
서비스 (Service)
|
액션 (Action)
|
|
통신 방향
|
단방향
|
양방향
|
양방향
|
|
통신 방식
|
비동기
|
동기
|
비동기
|
|
응답 여부
|
없음
|
즉각 응답 1회
|
피드백 + 최종 결과
|
|
작업 취소
|
불가
|
불가
|
가능 ✅
|
|
중간 피드백
|
지속 스트림
|
없음
|
있음 ✅
|
|
참여 주체
|
Publisher / Subscriber
|
Client / Server
|
Client / Server
|
|
적합한 작업
|
짧고 반복적인 데이터
|
단순 요청-응답
|
장기 실행 작업
|
|
블로킹 여부
|
없음
|
블로킹 위험
|
없음
|
|
내부 구현
|
DDS Topic
|
DDS Service
|
Topic + Service 혼합
|
|
대표 예시
|
카메라, 라이다, IMU
|
파라미터 설정, 모드 변경
|
내비게이션, 팔 제어
|
이제 세 가지 메커니즘이 실제로 어떻게 동작하는지 시각적으로 살펴보겠습니다.

🧠 언제 무엇을 써야 할까?
세 가지를 선택하는 기준은 다음 질문으로 정리할 수 있습니다.
"데이터가 계속 흐르나요?" → 토픽. 센서 데이터처럼 반복적으로 발생하고 유실돼도 크게 문제없는 경우입니다.
"빠르게 결과를 받아야 하나요?" → 서비스. 파라미터 조회, 모드 변경처럼 즉각적인 응답이 필요하고 처리 시간이 짧은 경우입니다.
"작업이 오래 걸리고 중간 상황을 알고 싶나요?" → 액션. 목적지 이동, 매니퓰레이터 제어처럼 수 초~수 분이 소요되고 진행 상황을 모니터링해야 하는 경우입니다.
✅ 마무리
ROS2의 토픽, 서비스, 액션은 단순히 API의 종류가 아니라 로봇 시스템의 실시간성과 안정성을 결정하는 설계 선택입니다. 잘못된 통신 방식을 선택하면 시스템 응답 지연, 불필요한 데이터 낭비, 혹은 작업 중단을 알 수 없는 상황이 발생할 수 있습니다. 처음부터 각 메커니즘의 특성을 이해하고 올바르게 설계하는 것이 견고한 ROS2 로봇 시스템의 시작입니다.
#ROS2 #로봇공학 #Robot #토픽 #서비스 #액션 #Topic #Service #Action #ROS2통신 #로봇프로그래밍 #자율주행 #Publisher #Subscriber #내비게이션 #로봇개발 #DDS #임베디드 #ROS #소프트웨어아키텍처