Claude에서 열기ChatGPT에서 열기
https://rainbowrobotics.github.io/RBQ/nightly/llms-full.txt 는 Rainbow Robotics RBQ 4족 로봇 매뉴얼 전문입니다. 읽고 이 문서를 근거로 한국어로 답변해 주세요.
AI 답변은 부정확할 수 있습니다. 안전·정비 항목은 매뉴얼 원문을 확인하세요.
한국어
https://rainbowrobotics.github.io/RBQ/nightly/llms-full.txt 는 Rainbow Robotics RBQ 4족 로봇 매뉴얼 전문입니다. 읽고 이 문서를 근거로 한국어로 답변해 주세요.
AI 답변은 부정확할 수 있습니다. 안전·정비 항목은 매뉴얼 원문을 확인하세요.
한국어
소스: rbq_sdk/cpp/example/src/rbq/rbq_led_bottom.cpp
몸통 아래의 상태 LED 두 개(오른쪽·왼쪽)를 설정하고, 로봇이 알려 주는 상태를 출력하는 예제입니다. rt/rbq/cmd/led_bottom에 LedBottom 메시지를 한 번 발행하고, rt/rbq/led_bottom의 1 Hz LedBottomState를 기다려 출력한 뒤 종료합니다.
interface와 선택 인자 side mode r g b on_ms off_ms count를 읽습니다.ChannelFactory를 초기화하고 rt/rbq/cmd/led_bottom에 Publisher<LedBottom_>, rt/rbq/led_bottom에 Subscriber<LedBottomState_>를 만듭니다.LedBottom 필드를 채워 한 번 발행합니다.LedBottomState를 출력하고 종료합니다.로봇의 Network 프로세스가 명령을 받아 범위를 검사하고(PUT /api/led/bottom과 같은 검사) Motion 에 넘기면, Motion 이 CAN FD 로 IF 보드에 보냅니다. 설정은 IF 보드가 쥐고 있으며 1 초마다 알려 주고, Network 가 그 값을 rt/rbq/led_bottom으로 다시 발행합니다.
no state on rt/rbq/led_bottom을 출력합니다. 시뮬레이터에서는 Motion 이 IF 보드 역할을 대신하고 MuJoCo 가 몸통 밑 LED 두 개를 보여 주므로 예제가 그대로 동작합니다.rbq_sdk/cpp/example/에서:
bash scripts/setup.bash
bash scripts/build.bash바이너리 위치: bin/rbq_led_bottom
./bin-x86_64/rbq_led_bottom [interface] [side] [mode] [r] [g] [b] [on_ms] [off_ms] [count]
# 양쪽 파랑으로 켜 두기(기본값) — 인터페이스가 항상 먼저 옵니다:
./bin-x86_64/rbq_led_bottom eth0
# 오른쪽을 빨강으로 0.5 초 켜고 0.5 초 끄기를 계속:
./bin-x86_64/rbq_led_bottom eth0 right blink 255 0 0 500 500 0
# 양쪽 끄기:
./bin-x86_64/rbq_led_bottom eth0 both off인자는 모두 위치 인자이므로 인터페이스를 첫 인자로 넘겨야 합니다. 로봇에 닿는 인터페이스를 쓰세요 — 로봇 PC 에서 돌리면 lo, 다른 호스트에서는 본인 NIC.
| 인자 | 의미 | 기본값 |
|---|---|---|
interface | CycloneDDS 인터페이스 (로봇 PC lo / 다른 호스트 NIC) | — |
side | right / left / both — 고르지 않은 쪽은 그대로 | both |
mode | off / on / blink | on |
r g b | 색, 각 0~255 | 0 0 255 |
on_ms off_ms | 깜빡일 때 켜는·끄는 시간, 10~2550 ms(10 ms 단위); blink가 아니면 무시 | 500 500 |
count | 깜빡이는 횟수, 0 = 계속; blink가 아니면 무시 | 0 |
범위 밖 값은 Network 가 거부하고(로봇 로그에 남음) LED 는 그대로 있습니다.
[rbq_led_bottom] published: side=right mode=blink rgb=255,0,0 on_ms=500 off_ms=500 count=0
[rbq_led_bottom] state: age_ms=312 configured=1 if_fw=2026100701
right: mode=blink rgb=255,0,0 on_ms=500 off_ms=500 count=0 actual=255,0,0 lpf_w=0.6
left: mode=on rgb=0,0,255 on_ms=0 off_ms=0 count=0 actual=0,0,255 lpf_w=0.4값은 로봇마다 다릅니다. actual은 IF 보드의 전력 제한을 거친 마지막 출력이고, 최근 1 초 안에 그 제한이 출력을 줄였으면 limited가 붙습니다. configured=0은 IF 보드가 재부팅해 설정이 없다는 뜻이며, Motion 이 마지막 설정을 스스로 다시 보냅니다.