본문으로 건너뛰기

TAG

#미들웨어

이 태그가 붙은 기사를 모았습니다. 태그는 AI 분류 단계에서 자동으로 붙고, 검수를 통과한 항목만 노출됩니다.

4건
Alicia Christin Gerald / Unsplash
ROS Discourse

[오픈소스] DDS AutoDiag v0.1.0 — AI 지원 문제 해결 기능을 갖춘 ROS 2 DDS 진단 도구

DDS AutoDiag v0.1.0은 ROS 2 시스템 간 통신 문제를 진단하기 위한 MIT 라이선스 오픈소스 도구다. DDS 탐색(discovery), 미들웨어 설정, QoS(서비스 품질) 정책, 컨테이너 네트워킹을 포함한 23개의 진단 항목을 제공한다. 그래픽 인터페이스를 통해 진단 결과를 시각화하고 통신이 끊긴 경로를 식별할 수 있다. AI 기반 문제 해결 기능은 진단 결과를 설명하고 설정 변경 방안을 제시하며 관련 ROS 2 공식 문서를 참조한다. 자연어 지시로 RViz 시각화를 설정하는 AI 연동 기능도 포함된다.

큐레이터개발자 개인이 공개한 v0.1.0 초기 릴리스로, 본문이 일부 잘려 전체 기능 범위를 확인하기 어렵다. 진단 항목 23개의 정확도와 실제 운영 환경에서의 안정성은 커뮤니티 검증이 추가로 필요하다.

Oluwaseun Duncan / Pexels
ROS Discourse

shared_buffer_backend: ROS 2 프로세스를 위한 공유 메모리 rosidl::Buffer

shared_buffer_backend는 ROS 2 프로세스 간 이미지 등 대용량 가변 길이 페이로드를 일반 메시지 경로 대신 공유 메모리(shared memory)로 전달하는 실험적 CPU 백엔드다. 현대 로봇 시스템은 센서 수가 늘고 페이로드가 커지면서 프로세스 간 통신 오버헤드가 전체 성능에 미치는 영향이 커지고 있다. ROS 2는 이미 프로세스 내(intra-process) 통신을 지원하지만, Python으로 작성된 추론 노드나 결함 격리(fault isolation)를 위해 프로세스를 분리해야 하는 경우에는 이 기능을 활용하기 어렵다. Fast DDS의 Data-sharing은 바운디드(bounded) 토픽 타입만 지원하는 등 미들웨어별 공유 메모리 메커니즘에는 타입 제약이 존재하며, shared_buffer_backend는 이러한 제약 없이 공유 메모리 전송을 가능하게 하는 대안으로 제안되었다.

큐레이터발표자가 '실험적(experimental)'이라 명시한 패키지이므로 운용 환경에서의 안정성과 성능은 아직 독립적으로 검증되지 않았다.

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 환경에서는 이 백엔드를 사용할 수 없고, 기존 로깅 플러그인과의 교체 가능성은 실제 배포 환경에서 검증이 필요하다.

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를 사용하는 환경에서는 적용 불가하며, 전송 방식 '예측' 기능은 디스커버리 데이터 분석에 기반한 추정임을 감안해야 한다.