부품 하나에 탭 다섯 개
제조사 페이지, 판매처, 드라이버 저장소, README, 이슈 게시판. 라이다 하나를 고르는 데도 이만큼 열고, 다음 부품에서 또 엽니다.
Rostore — ROS 2 로봇 조립대
부품의 구매처와 ROS 2 드라이버를 한곳에서 찾고, 드라이버끼리의 토픽·서비스·파라미터를 그래프로 잇습니다. 타입이 안 맞으면 선이 붙지 않고, 맞춘 구성은 launch 파일 한 장으로 나와 그대로 남에게 건넬 수 있습니다.
01 — 문제
제조사 페이지, 판매처, 드라이버 저장소, README, 이슈 게시판. 라이다 하나를 고르는 데도 이만큼 열고, 다음 부품에서 또 엽니다.
/scan 과 /lidar/scan, Twist 와 TwistStamped, laser 와 base_scan. 어긋남은 대개 오류 없이 조용합니다 — 로봇이 그냥 움직이지 않을 뿐.
셸 기록과 기억 속에 흩어진 파라미터들. 다음 로봇에서, 옆자리 동료가 처음부터 다시 맞춥니다.
02 — 실제 화면
jazzy 의 TurtleBot3 는 TwistStamped 를 듣습니다. 키보드 조종(Twist)과 이으면 선이 끊기고, 오른쪽에 「고치기 — teleop: stamped = true」 가 뜹니다. 한 번 누르면 붙습니다.
03 — 작동 방식
세 걸음 모두 같은 데이터를 봅니다 — 백과의 부품, 레지스트리의 패키지, 그리고 패키지가 선언한 토픽·서비스·파라미터.
부품 문서에 구매처와 ROS 2 드라이버, 그 모델에 맞는 값이 출처·확인 날짜와 함께 붙습니다. 「조립대에 놓기」를 누르면 그 값으로 드라이버가 놓입니다.
조립대에 노드를 놓고 출력에서 입력으로 선을 긋습니다. 메시지 타입이 다르면 선이 붙지 않고 이유를 말합니다. 이름이 다르면 리맵을 — 이름을 쥔 파라미터(scan_topic 같은)가 있으면 그 값을 — 대신 적습니다.
구성은 launch 파일과 params YAML, 그리고 파일 한 장짜리 구성으로 — 또는 링크 한 줄로 — 나옵니다. rostore up 은 돌릴 명령을 먼저 보여 주고 승인을 받은 뒤 켭니다. 그 파일이나 링크를 받은 사람은 같은 로봇을 그대로 세웁니다.
04 — 설치
sudo 없이 ~/.local 에 깔립니다 — CLI, 조립대, 앱 메뉴. ROS 2 가 없으면 doctor 가 이 Ubuntu 에 맞는 판(26.04 → Lyrical)과 공식 설치 순서를 알려 줍니다.
공개 내려받기는 아직 없습니다 — 지금은 저장소에서 tool/install.sh 로 깝니다.
# 깔기 — sudo 없이 ~/.local 에 (CLI · 조립대 · 앱 메뉴) $ tool/install.sh 깔았습니다 — rostore 0.1.0 앱 메뉴에서 「Rostore 조립대」, 또는 터미널에서: rostore studio # 이 PC 의 ROS 2 — 없으면 맞는 판과 공식 설치 순서 $ rostore doctor ✓ 운영체제: Ubuntu 26.04.1 LTS — apt 로 깔리는 ROS 2 는 lyrical ✗ ROS 2 환경: ROS 2 가 없습니다. … lyrical 를 깝니다(공식 순서): $ sudo apt install ros-lyrical-ros-base ros-dev-tools # 구성 한 장 — 조립대와 같은 판정 $ rostore stack turtlebot3-slam.rostore.yaml 선 ✓ robot.scan → slam./scan /scan · LaserScan ✓ teleop.cmd_vel → robot.cmd_vel /cmd_vel · TwistStamped 판정 — 오류 0 · 경고 0 · 알아 둘 것 3 # 조립대를 브라우저로 $ rostore studio
05 — 켜기 전에
그래서 아래 네 가지는 설명서가 아니라 코드에 있습니다.
백과의 모든 수치에 출처·신뢰도·확인 날짜가 붙습니다. 하나라도 없으면 생성이 실패합니다. 시뮬레이터에서 본 값을 '실측'으로 적는 것도요.
설치와 켜기는 계획 → 승인 → 실행 순서로만 돕니다. 계획을 본 뒤 레지스트리가 바뀌었다면 요청은 거절됩니다.
세우기는 승인도 계획 비교도 요구하지 않습니다. 켤 때 무엇을 승인했든, 세우는 것은 언제나 옳습니다.
ROS 인터페이스가 확인되지 않은 로봇에는 '비호환' 대신 '판정 불가'라고 말합니다. 모르는 것은 실패가 아닙니다.
06 — 지금
07 — 순서
지금은 Rostore 하나입니다. 나머지 둘은 흐리게 그렸습니다 — 없어진 것이 아니라 순서가 뒤입니다.
지금
만드는 사람이 매일 쓰고 만족할 때까지 다듬은 뒤 세상에 보입니다.
다음
Rostore 로 고른 로봇을 내 지도(map_saver) 위에서 실물 사양으로 미리 몰아 보고, 스스로 100번 하면 몇 % 해내는지 잽니다. 기록은 MCAP·JSONL 로 내려받습니다.
그다음
로드맵·관문·운영 문서. 검색과 백링크가 있고, 관리자는 그 자리에서 고치며 저장하면 바로 보입니다.
MPIA 공유 코어가 밑에서 받칩니다 — 계정 하나로 모든 앱에, NAS 테스트 서버에서 돕니다. 안전 판정은 서버에 두지 않습니다.