본문으로 건너뛰기

NEWS

로봇 뉴스

국내외 13개 매체를 주기적으로 수집해 한국어로 요약합니다.

78건기초·제어이론
Kindel Media / Pexels
ROS Discourse

차세대 Open-RMF에서 장소 기반 공간 제약은 태스크 계획·할당에 어떻게 참여해야 하는가

물리적 장소에서 비롯된 공간 요구사항을 기계 판독 가능한 형태로 표현하는 실험적 오픈 프로토콜 PlaceAuth / Spatial Policy Protocol(SPP)이 제안되었다. 핵심 설계 질문은 장소 기반 공간 요구사항을 선언적으로 유지하고 Open-RMF가 특정 로봇·경로·태스크 순서의 충족 여부를 평가하는 구조가 적합한지이다. 현재의 요청 수준 고려 모델에는 한계가 있는데, 태스크 수용 가능성이 태스크 설명 자체만이 아니라 후보 로봇의 출발 상태, 이동 경로, 태스크 순서에 따라 달라질 수 있다. 예를 들어 녹화 중 이동 태스크는 경로가 녹화 금지 구역을 통과하지 않는 로봇에는 유효하지만, 다른 출발 지점의 로봇은 가능한 모든 경로가 해당 구역을 통과할 경우 동일 태스크가 유효하지 않다. 이러한 문제는 공간 정책을 단순한 요청 수준의 허가·거부 결정으로 처리하는 방식 이상의 설계가 필요함을 보여준다.

큐레이터이 제안은 공간 정책 검증 시점을 '태스크 수락 전'에서 '경로·상태 후보 평가 중'으로 옮겨야 한다는 점에서 플리트 매니저 내부 구조 변경을 수반한다. ROS Discourse의 설계 논의 단계이므로 참조 구현이나 실제 배포 사례는 아직 제시되지 않았다.

hitesh choudhary / Pexels
ROS Discourse

[GSoC 2026] ros2_control을 위한 Physical AI 추론 및 궤적 업스케일링

ACT·확산 정책(diffusion policy)·시각-언어-행동 모델(VLA) 등 학습 기반 조작 정책은 20~50 Hz로 관절 목표값을 출력하고 50~500 ms마다 재계획하지만, 하드웨어 제어 사이클은 500 Hz~2 kHz의 명령을 필요로 한다. 희소 경유점을 그대로 전달하면 새 경유점마다 속도 불연속과 가속도 급등이 발생한다. 이 GSoC 2026 프로젝트는 ros2_controllers 내에서 이 간격을 세 단계로 해소하는 구현을 제출했다. 궤적 교체 블렌딩 개선을 통해 기존 JTC(Joint Trajectory Controller)가 새 궤적 수신 시 이전 궤적을 즉시 폐기하던 방식을 변경, 두 궤적을 수신 시점에 접합(prefix·bridge·suffix)하는 방식으로 대체했다. 전체 구현은 7자유도 AgileX Nero 로봇에서 하드웨어 실증으로 검증됐다.

큐레이터검증이 7자유도 AgileX Nero 단일 플랫폼에서만 이뤄졌으므로, 다른 자유도 구성이나 하드웨어에서의 블렌딩 안정성은 별도 확인이 필요하다; GSoC 제출물인 만큼 ros2_controllers 메인라인 병합 여부는 이후 리뷰 과정에 달려 있다.

Pavel Danilyuk / Pexels
ROS Discourse

micro-ROS(또는 MCU ROS 스택)용 커스텀 I²C 트랜스포트 구현 사례가 있나요?

micro-ROS, zenoh-pico, Cyphal 등 현재 MCU(마이크로컨트롤러 유닛) 대상 ROS 스택은 UART·UDP·CAN-FD·시리얼 트랜스포트를 제공하지만 I²C는 기본 지원하지 않는다. micro-ROS는 open/close/write/read 훅과 set_custom_transport로 커스텀 트랜스포트 API를 노출하므로 I²C 트랜스포트를 직접 구현하는 것이 원리적으로는 가능하다. 질문 작성자 팀은 STM32 보드가 GMSL 카메라 링크를 통해 I²C 채널을 호스트 측으로 터널링하는 환경에 있어, 추가 배선 없이 기존 I²C 선로를 ROS 트랜스포트로 활용하려는 동기가 있다. 다만 I²C가 마스터 구동 방식이어서 MCU가 통신을 먼저 개시할 수 없다는 구조적 제약이, micro-ROS의 요청-응답 및 노드 탐색(discovery) 패턴과 충돌할 수 있다는 점을 우려하고 있다.

큐레이터I²C의 마스터 구동 제약은 단순한 구현 난이도의 문제가 아니라, 호스트가 주기적으로 폴링하는 방식으로 우회하더라도 micro-ROS의 타이밍 의존적 discovery 절차와 어떻게 맞출지가 핵심 미결 과제로 남는다.

Erwan Hesry / Unsplash
ROS Discourse

ros2-project-gen: 한 줄 명령으로 완성하는 ROS 2 프로젝트 스캐폴딩 도구

ros2-project-gen은 단일 명령으로 완전한 ROS 2(Robot Operating System 2) 프로젝트 구조를 생성하는 CLI 도구다. 기존 `ros2 pkg create`가 빈 패키지 하나만 생성하는 것과 달리, 워크스페이스·복수 패키지·런치 파일·GitHub Actions CI·문서·테스트까지 포함된 전체 프로젝트를 한 번에 구성한다. rclcpp, rclpy, rclrs를 하나의 워크스페이스에서 함께 빌드하는 다중 언어 지원을 제공하며, minimal_ros2 템플릿에서는 C++, Python, Rust 노드가 토픽을 통해 상호 통신하는 것을 확인할 수 있다. ai_perception 템플릿에는 ONNX Runtime 기반 Rust YOLOv8 추론 노드가 포함되어 있어 Python 없이도 인식 파이프라인을 구성할 수 있다.

큐레이터ROS Discourse에 게시된 커뮤니티 프로젝트로, 공식 ROS 2 빌드팀의 검증을 거친 도구가 아니므로 rclrs·ONNX Runtime 연동 템플릿의 실제 빌드 성공 여부는 직접 확인이 필요하다.

Bluestonex / Unsplash
ROS Discourse

Jazzy Jalisco 2026-09-11을 위한 새로운 패키지

ROS 2 Jazzy Jalisco에 180개의 신규 패키지와 698개의 업데이트 패키지가 추가되었으며, 이번 싱크는 jazzy/2026-09-11로 태그되었다. 새로 추가된 패키지에는 Crazyflie 드론 서버(C++·Python), ADI(Analog Devices) IMU·IIO 드라이버, Autoware 커맨드 게이트 등이 포함된다. 오디오 캡처·재생 관련 패키지(audio-common 0.4.0)와 ETSI ITS IVIM 메시지 패키지(3.5.0)도 새롭게 지원된다. 콜백 격리 실행기(callback-isolated-executor)와 커넥션 인스펙터 등 미들웨어 유틸리티도 함께 추가되었다.

큐레이터콜백 격리 실행기는 ROS 2 실행 구조에서 콜백 간 지연 간섭을 줄이려는 접근이나, 실시간성이 요구되는 실기 환경에서의 실제 효과는 독립적인 검증이 필요하다. ETSI ITS IVIM 메시지 패키지 추가는 유럽 V2X 표준 기반 연구·개발에 ROS 2를 활용하려는 팀의 의존성 관리를 공식 배포 채널로 흡수한다는 점에서 적용 범위 확장의 신호로 읽힌다.

Leftfield Corn / Unsplash
ROS Discourse

Gazebo Gymnasium: Gazebo에 강화학습 통합하기

gazebo_gymnasium은 Gazebo 시뮬레이터와 Gymnasium 강화학습(RL) 라이브러리를 결합한 독립 패키지로, pixi를 통해 설치된다. 브리지 API를 활용해 기존 Gazebo·ROS 패키지와 연동할 수 있으며, 사용자가 Gazebo 내부 라이브러리를 직접 다루지 않아도 RL 환경을 구성할 수 있다. 패키지 검증을 위해 병렬 시뮬레이션 학습과 도메인 랜덤화(domain randomization) 기법을 적용한 라인 팔로워(line follower)를 개발했다. 학습된 정책은 시뮬레이션의 다양한 트랙에서 평가된 후, 연구팀이 직접 제작한 실물 차동 구동(differential drive) 로버에 배포되어 라인 추종에 성공했다.

큐레이터실기 배포 성공은 연구팀 자체 보고이며, 검증 과제가 라인 팔로워 한 종류에 그쳐 더 복잡한 조작·주행 과제로의 범용성은 아직 확인되지 않았다.

Pavel Danilyuk / Pexels
Hackaday Robots

작은 드로이드의 파티 모드

메이커 [heychaostheory]가 스타워즈의 데스스타 복도를 누비던 소형 드로이드에서 영감을 받아 이동형 소형 로봇을 제작했다. 해당 로봇은 '파티 모드(party mode)'를 탑재한 것으로 소개된다. 원문이 일부만 공개되어 있어 세부 구성·사양은 확인이 어렵다.

큐레이터원문이 부분 공개 상태여서 회로 구성·부품 목록·파티 모드 구현 방식 등 핵심 재현 정보를 현재로서는 확인할 수 없다.

Jakub Zerdzicki / Pexels
ROS Discourse

코딩 에이전트를 위한 ROS 2 엔지니어링 기술: v1.5.0

YuJin Hong이 개발한 오픈소스 프로젝트 ros2-engineering-skills의 v1.5.0이 공개되었다. 이 프로젝트는 Claude Code, Codex 등 코딩 에이전트가 ROS 2 프로젝트 작업 시 참조할 수 있는 가이드, 참조 문서, 검증 도구의 모음으로, Claude Code 플러그인이나 Codex·Cursor·Gemini CLI용 지식 스킬 형태로 설치할 수 있다. Nav2, TF(Transform Framework), 라이프사이클(lifecycle), 서비스 품질(QoS), SROS2, 배포, 하드웨어 테스트 영역을 다루며, 에이전트가 매번 전체 문서를 읽지 않고 관련 참조만 찾을 수 있도록 구성되어 있다. v1.5.0에서는 SROS2 인클레이브(enclave)·인증서 교체, 쿼터니언(quaternion)·공분산(covariance) 처리 등의 내용을 상위 소스와 대조해 부정확한 지침을 수정하는 작업이 주로 이루어졌다.

큐레이터이번 릴리스에서 기존 지침의 부정확한 내용이 수정되었다는 점은, 코딩 에이전트가 이 문서를 신뢰 소스로 삼을 경우 아직 검토되지 않은 영역에서도 유사한 오류가 남아 있을 가능성을 시사하므로, 프로젝트가 상위 공식 문서와 얼마나 체계적으로 동기화되는지 확인이 필요하다.

Pavel Danilyuk / Pexels
로봇신문

“말하지 않아도‘이게 아닌데’”…KAIST, 사람 의도 눈치채는 AI 개발

KAIST 뇌인지과학과 이상완 석좌교수 연구팀이 뇌파(EEG)로 사람과 AI 사이의 인지적 어긋남을 포착해 AI가 실시간으로 행동을 수정하는 기술을 개발했다. 사용자가 별도로 말이나 몸짓으로 오류를 알려주지 않아도, AI가 '이게 아닌데'에 해당하는 뇌 반응을 읽어 스스로 목표에 맞게 행동을 조정한다. 연구는 Microsoft Research Asia(마이크로소프트 연구소 아시아)와 공동으로 수행됐다. 이 기술은 명시적 명령 없이 사람의 의도를 파악하는 인간-AI 상호작용 연구의 일환으로 제시된다.

큐레이터뇌파 측정은 전용 장비와 통제된 환경이 전제되므로, 실험실 외 실제 현장에서 같은 성능이 나오는지는 별도 검증이 필요하다.

Jimmy Liao / Pexels
ROS Discourse

ros2_fault_injection: ROS 2 토픽·서비스·어설션을 위한 C++ 결함 주입 프레임워크

ros2_fault_injection은 ROS 2 시스템에 제어된 결함을 주입하기 위한 C++ 프레임워크로, 실제 하드웨어 운용 전 자율주행 스택을 테스트하는 것을 목적으로 한다. 토픽과 서비스를 프록시(proxy) 방식으로 중계하면서 YAML 기반 시나리오에 따라 결함을 적용하고, 어설션(assertion) 이벤트로 예상 결과를 검증한다. 오도메트리(odometry), 라이다 스캔, IMU, TF, 조인트 상태, PointCloud2 등 주요 토픽에 대한 인젝터(injector)를 내장하며, 서비스 지연·실패 동작도 주입할 수 있다. pluginlib 기반 인젝터 검색, 스케줄 및 수동 결함 제어, 마크다운 보고서 생성, RViz 패널 등의 기능을 제공한다.

큐레이터프록시 방식으로 토픽·서비스를 중계하는 구조 특성상 프레임워크 자체가 타이밍 특성을 바꿀 수 있어, 시간 민감한 결함 시나리오에서 테스트 충실도가 얼마나 유지되는지는 별도 검증이 필요하다. YAML 시나리오의 실효성은 결국 실제 하드웨어 현장에서 관측된 장애 패턴과 얼마나 잘 대응하느냐에 달려 있다.

Daniil Komov / Pexels
ROS Discourse

ros2_shadow: 프로덕션 노드와 후보 노드를 병렬 실행해 출력 차이를 비교하는 ROS2 도구

ros2_shadow는 ROS2 환경에서 기존 프로덕션 노드와 신규 후보 노드를 동시에 구동하되, 실제 로봇 제어권은 프로덕션 노드에만 부여하는 오픈소스 도구다. 두 노드는 동일한 입력을 받아 처리하며, 도구가 중간에서 양측의 출력 차이를 기록한다. 비교 지표로 엔드포인트 거리(endpoint_distance), 하우스도르프 거리(hausdorff_distance), 경로 길이 차이(length_difference)의 평균·p95·최댓값이 제공된다. 후보 노드의 하드웨어 접근 차단을 위해 네임스페이스 리매핑(namespace remapping)과 토픽 거부 목록을 시도했으나, API를 거치지 않고 런타임에 생성되는 토픽과 서비스·액션에는 적용되지 않는 한계가 확인되었다.

큐레이터런타임에 동적으로 생성되는 토픽·서비스·액션에 대한 하드웨어 접근 차단이 불완전하다는 점은, 실제 로봇에 적용할 때 후보 노드가 의도치 않게 제어 신호를 보낼 가능성이 남아 있음을 뜻하므로, 안전 임계 환경에서의 사용 전에 이 한계가 얼마나 닫혔는지 확인이 필요하다.

Andy Holmes / Unsplash
ROS Discourse

Gazebo Ionic, 2026년 12월 지원 종료 예정

Gazebo Ionic은 2024년 9월 출시되었으며, ROS 2 Kilted와 함께 2026년 12월에 지원이 종료된다. Gazebo 팀은 사용자들에게 ROS 2 Lyrical과 연계된 Gazebo Jetty로 가능한 한 빠르게 마이그레이션할 것을 권고하고 있다. 지원 종료(EOL) 이후에는 신규 기능 추가, 보안 업데이트, 버그 수정 및 바이너리 업데이트가 제공되지 않는다. 단, 기존 바이너리는 즉시 삭제되지 않으며 사용자가 당장 마이그레이션을 강제받지는 않는다. 마이그레이션 시에는 Jetty 릴리스 노트와 각 Gazebo 라이브러리의 마이그레이션 가이드(예: gz-sim Migration.md)를 함께 확인할 것을 안내하고 있다.

큐레이터오늘(2026년 9월)을 기준으로 지원 종료까지 약 3개월밖에 남지 않아, Ionic을 프로덕션 파이프라인에 사용 중인 팀은 Jetty 마이그레이션 일정을 즉시 검토해야 할 시점이다.

Pixabay / Pexels
ROS Discourse

Rcl_logging_journal: ROS 2용 systemd-journald 로깅 백엔드

fujitatomoya가 ROS 2용 대체 로깅 백엔드 rcl_logging_journal을 오픈소스로 공개했다. 이 라이브러리는 ROS 2 로그 레코드를 systemd-journald에 구조화된 인덱스 항목으로 직접 기록하며, 기존 ~/.ros/log 텍스트 파일 방식을 대체한다. ROS2_NODE_NAME·PRIORITY 등 필드 인덱싱을 통해 journalctl로 노드별 필터링, 시간 범위 검색, 재부팅 이전 오류 조회가 가능하다. 핫 패스(hot path)에는 비동기 링 버퍼(async ring buffer)를 사용하고, FATAL 수준 로그는 동기 처리 후 fsync로 보장한다. 컨테이너 환경에서는 소켓 하나만 바인딩하면 추가 데몬 없이 호스트 저널에 로그를 기록할 수 있다.

큐레이터systemd-journald는 Linux 전용이므로 macOS·Windows 환경에서는 이 백엔드를 사용할 수 없고, 기존 로깅 플러그인과의 교체 가능성은 실제 배포 환경에서 검증이 필요하다.

Christina Morillo / Pexels
ROS Discourse

ros2_utils_tool 버전 1.0 출시

ROS2 일상 작업을 지원하는 툴킷 ros2_utils_tool이 1.0 버전을 출시했다. 이번 버전에는 UI 기반 백(bag) 녹화·재생(파일 크기 분할·루프 등 옵션 포함), bag 메시지를 YAML 파일로 내보내는 도구, 압축 이미지 지원, 정적·비정적 변환(transformation) 전송 도구가 추가되었다. ROS2 Kilted·Lyrical·Rolling을 지원하며 최소 요구 배포판은 Jazzy이다. 의존성으로 Qt5/Qt6, cv_bridge, libpcl-dev, catch2_ros가 필요하다.

큐레이터최소 요구 배포판이 Jazzy로 명시되어 있어, 현재도 널리 쓰이는 Humble 환경에서는 사용할 수 없다는 점을 도입 전 확인해야 한다.

ThisisEngineering / Unsplash
ROS Discourse

FMTX: 동적 재계획을 위한 Lazy Wavefront 탐색 (C++/ROS 2 프레임워크 및 벤치마크)

FMTX는 Fast Marching Tree(FMT*)를 동적 환경으로 확장하기 위해 개발된 동적 재계획(dynamic replanning) 알고리즘이다. 개발자는 약 2년간 독립적으로 프로젝트를 진행하였으며, C++17과 ROS 2 기반의 공통 벤치마킹 프레임워크를 함께 구축하였다. 현재 버전에서는 ROS 2를 주로 RViz 시각화에 활용하며, 시뮬레이터 지연과 타이밍 효과가 측정값 및 재현성에 영향을 주지 않도록 Gazebo를 벤치마킹 루프에서 제외하였다. FMT*가 전제하는 V_unvisited·V_open·V_closed 집합 구조를 동적 환경에 적용하는 방법에서 출발하였으며, Lazy Wavefront 탐색 방식을 통해 이를 해결하고자 한다.

큐레이터Gazebo를 벤치마킹 루프에서 제외했기 때문에 측정된 재계획 성능은 시뮬레이터 지연이나 센서·구동기 동특성이 없는 통제 환경의 수치이며, 실제 동적 환경에서의 성능은 별도로 확인이 필요하다.

Gabriel Vasiliu / Unsplash
ROS Discourse

ROS Jazzy Jalisco 패키지 동기화 준비 (2026-09-09)

ROS Jazzy Jalisco 배포판의 패키지 동기화가 2026년 9월 8일 UTC 16:00에 예정되어 있다. 현재 882개 패키지가 동기화 준비 완료 상태이며, 1건의 회귀(regression) 문제를 수정 중이다. 동기화 전 추가 회귀 문제를 발견한 경우 upstream에 보고하고 해당 스레드에 댓글로 남겨 추적할 것을 요청한다. 2026년 9월 6일 UTC 16:00부터 보고된 회귀 수정 목적 외의 rosdistro PR은 동기화 완료 시까지 보류된다.

큐레이터동기화 완료 시까지 회귀 수정 목적 이외의 rosdistro PR이 보류되므로, 패키지 업데이트를 준비 중인 기여자는 머지 일정을 조정할 필요가 있다.

Zayed Hossain / Pexels
ROS Discourse

ROS 2 초보자가 학습에서 가장 어려워하는 부분

로봇공학 실습 과목을 가르치는 한 교수자가 학생들이 매 학기 약 1주일을 ROS 2(Robot Operating System 2) 워크스페이스 설정과 첫 번째 노드 생성 과정에 소비한다고 밝혔다. Jazzy 배포판에서 빈번히 발생하는 'package not found' 오류가 주요 장벽으로 지목된다. 이를 해소하기 위해 작성자는 첫 주 입문자를 대상으로 한 가이드를 ROS Discourse에 공유하며 커뮤니티의 수정 의견을 요청하고 있다.

큐레이터커뮤니티에 수정 의견을 구하는 단계이므로 가이드의 정확성은 아직 검증 전이며, 단일 교육 현장의 관찰이어서 Jazzy 외 배포판이나 다른 교육 환경에서도 같은 양상인지는 확인이 필요하다.

Pavel Danilyuk / Pexels
로봇신문

日 오사카대·고베대, 감정 표현하는 2족보행 로봇 개발

일본 오사카대와 고베대 공동 연구팀이 강화학습(reinforcement learning) 기반 감정 표현 보행 프레임워크 EmoLo(Emotion-Inspired Expressive Locomotion)를 개발했다. EmoLo를 적용한 오픈소스 2족보행 로봇 Open Duck Mini V2는 '기쁨', '보통', '슬픔' 세 가지 감정 스타일에 맞춰 보행 동작을 수행할 수 있다. 해당 연구 성과는 2026년 8월 24일부터 28일까지 일본 후쿠오카에서 개최된 국제 학술대회에서 발표됐다.

큐레이터세 가지 감정 범주만 다루어 표현 범위가 좁고, 해당 보행 동작이 실제 관찰자에게 의도한 감정으로 지각되는지를 확인하는 인간 평가(perceptual study) 결과가 요약에 언급되지 않아 표현 효과를 독립적으로 판단하기 어렵다.

Digital Buggu / Pexels
ROS Discourse

새 CLI 도구 fastdds_transport_viz — ROS 2 토픽별 DDS 전송 방식 예측·측정

fastdds_transport_viz는 ROS 2 각 토픽이 실제로 사용하는 전송(transport) 방식(UDPv4/v6, TCP, SHM, 제로카피 데이터-공유)을 표시하는 CLI 도구다. Fast DDS 디스커버리 데이터를 분석해 작성자(writer)→독자(reader) 쌍별 전송 방식을 예측하며, 관찰 대상 노드에 별도 수정이 필요 없다. --stats 옵션을 활성화하면 Fast DDS 통계 모듈을 통해 실제 트래픽의 전송률과 지연시간을 측정할 수 있다. --watch(실시간 뷰), --json 출력, 웹 기반 그래프·테이블 뷰어를 지원하며, Jazzy·Kilted/Rolling, x86_64/arm64 환경에서 검증되었다. rmw_fastrtps_cpp 및 Linux 전용으로 동작한다.

큐레이터rmw_fastrtps_cpp·Linux 전용이므로 CycloneDDS 등 다른 RMW를 사용하는 환경에서는 적용 불가하며, 전송 방식 '예측' 기능은 디스커버리 데이터 분석에 기반한 추정임을 감안해야 한다.

Markus Spiske / Unsplash
ROS Discourse

QERRA-v2 데모 5: 폐루프 도덕 게이팅, 물리적 안전 및 가치 선택 (Webots의 TIAGo)

QERRA-v2 Classical은 물리적 안전, 도덕 게이팅(moral gating), 가치 선택의 세 레이어로 구성된 분리형 제어 아키텍처이다. 물리적 안전 레이어는 언어 처리를 기다리지 않고 서브밀리초(sub-millisecond) 단위로 반사적 안전 제어를 수행하며, 결정론적(deterministic) 도덕 게이트는 모터 동작 전에 명령 의도를 검증한다. 가치 레이어는 정상 운용 중 사회적 예절과 공간적 배려를 점수화한다. 이번 데모는 PAL Robotics TIAGo 휴머노이드 AMR을 Webots R2025a 시뮬레이터에서 구동하며, 노트북 CPU에서 100% 오프라인으로 실행된다. 시나리오는 리조트 복도에서 90초 안에 업무 마감 압박, 낙상 사고 대응, 고객 응대가 동시에 발생하는 상황을 다룬다.

큐레이터Webots 시뮬레이션의 단일 시나리오(90초, 복도 환경)에서 얻은 결과이므로, 서브밀리초 안전 반응 등 성능 수치는 실물 하드웨어나 다양한 환경에서 재현되기 전까지 개발팀 주장으로만 해석해야 한다.

Budka Damdinsuren / Unsplash
ROS Discourse

ROS 2 /diagnostics를 확장하지 않은 이유

ROS Discourse에 게재된 이 글은 ROS 2 진단(diagnostics) 시스템을 확장하지 않고 별도 설계를 택한 이유를 설명한다. REP 107(Tully Foote, 2010년 11월)이 정의한 /diagnostics 토픽은 DiagnosticArray와 DiagnosticStatus를 담아 정상 운용 확인·디버그 정보·장기 로그 수집에 적합하게 설계됐으며, OK·WARN·ERROR·STALE 네 가지 레벨을 제공한다. 저자들은 '상태(status)'는 정보를 전달하는 반면 '결함(fault)'은 쿼리하고 행동할 수 있는 모델이라는 점에서 두 개념이 본질적으로 다르다고 주장한다. 따라서 기존 diagnostic_msgs나 diagnostic_updater에 필드나 컨텍스트를 추가하는 방식으로는 결함 모델을 구현할 수 없다고 결론짓는다.

큐레이터'상태'와 '결함'의 개념 분리는 저자들의 설계 판단이므로, 제안된 결함 모델이 기존 diagnostic 생태계와 어떻게 공존·연동될지는 아직 구체적으로 제시되지 않은 부분이다.

'AI 요약' 표시가 붙은 항목은 사람 검수를 거치지 않았습니다. 모든 항목은 원문 링크·매체·날짜를 함께 표기하며, 요약 외 전문은 싣지 않습니다.