본문으로 건너뛰기

TAG

#micro-ROS

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

3건
Daniil Komov / Pexels
ROS Discourse

Linorobot2 Cockpit: 브라우저 기반 ROS 2 모바일 로봇 슈퍼바이저 테스터 모집

Linorobot2 Cockpit(v2026.09)은 ROS 2 모바일 로봇을 위한 컨테이너 기반 브라우저 슈퍼바이저로, 마이크로컨트롤러 펌웨어 생성부터 SLAM 및 Nav2 자율주행까지 단일 웹 인터페이스에서 제어할 수 있도록 설계되었다. ROS 2 Jazzy(Ubuntu 24.04)와 ROS 2 Lyrical(Ubuntu 26.04) 두 배포판을 지원하며, micro-ROS 펌웨어를 통해 베어메탈 마이크로컨트롤러와 연결된다. Docker 컨테이너 방식으로 동작하여 호스트에 ROS 2를 별도 설치하지 않아도 사용 가능하다. 개발팀은 현재 GitHub을 통해 개발자·연구자·로봇공학자를 대상으로 테스터를 모집하고 있다.

큐레이터테스터 모집 단계이므로 안정성과 실환경 호환성은 커뮤니티 검증이 추가로 필요한 상태다. 지원 마이크로컨트롤러 하드웨어 범위와 물리 시뮬레이션 환경 구성에 대한 세부 정보는 본문에서 확인되지 않아 저장소 문서를 직접 확인해야 한다.

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 절차와 어떻게 맞출지가 핵심 미결 과제로 남는다.

Andres Siimon / Unsplash
ROS Discourse

센서 보드의 ROS 2 통신 방식을 바꾼 세 가지 버그

CAN-FD와 GMSL2를 통해 카메라·센서를 로봇 컴퓨트에 연결하는 보드를 개발하던 중, 계획 외의 세 가지 문제가 설계 방향을 결정지었다. micro-ROS를 칩에 올렸을 때 플래시 용량의 60%를 소비해, 펌웨어는 Cyphal 프로토콜로 전환하고 ROS는 호스트 측 경량 브리지 뒤에서 구동하는 구조로 바꿨다. 보드 교체 시마다 링크가 끊기는 문제는 한 칩이 자체 데이터 라인을 통해 역전원(backfeed)을 공급받아 리셋 후에도 이전 상태를 유지한 것이 원인이었으며, 리셋 레지스터 쓰기 한 번으로 해결됐다. 같은 장비에서 오랫동안 추적하지 못했던 별개 버그도 동일한 근본 원인으로 밝혀졌다. 샘플별 타임스탬프는 초기에 선택 사항으로 취급했으나, 실제 운용에서 정확한 센서 데이터 처리에 필수임이 확인됐다.

큐레이터micro-ROS 대신 Cyphal+호스트 브리지 구조로 선회한 결정은 플래시 제약이라는 구체적 수치에서 비롯된 것으로, 비슷한 자원 제약 환경에서 아키텍처를 고를 때 참고 사례가 될 수 있다. 다만 이 내용은 단일 팀의 개발 경험 보고이므로 일반화 전에 유사 조건에서의 독립적 재현이 필요하다.