이중 팔 이동식 매니퓰레이터
VLAI L1 설정 가이드
개봉부터 이중 암 보정, 모바일 기지 탐색 및 데이터 수집까지 VLAI L1에 대한 단계별 설정을 완료합니다.
1
조립 및 검사
언박싱 체크리스트
- 두 7-DOF 암의 배송 손상 여부를 검사합니다. 모든 관절이 손으로 자유롭게 움직이는지 확인합니다.
- 자체 개발한 8Nm 그리퍼가 모두 안전하게 장착되었는지 확인
- 이동식 베이스 휠 검사 - 두 구동 휠 모두 묶이지 않고 자유롭게 회전해야 합니다.
- 전체 범위(106~162cm)에서 리프트 컬럼이 부드럽게 미끄러지는지 확인하세요.
- 이더넷 케이블과 전원 어댑터가 상자에 있는지 확인하세요.
- 문서 패키지에 포함된 VLAI L1 안전 가이드를 읽어보세요.
작업 공간 요구 사항
- 최소 바닥 면적: 2m × 2m 투명하고 평평한 표면
- 로봇 발자국: 46cm W × 60cm L — 모든 면에 여유 공간 허용
- 팔 도달: 팔당 63cm - 팔을 뻗었을 때 손이 닿는 곳에 장애물이 없도록 하세요.
- 힘: 2m 이내 표준 110V/220V 콘센트
2
SDK 설치 및 네트워크 설정
요구사항
- Python 3.10+(3.11 권장)
- Developer Tier 이상(Youth Tier에는 SDK 액세스가 포함되지 않음)
- L1 전원이 켜져 있고 동일한 로컬 네트워크(이더넷 또는 5GHz Wi-Fi)에 연결되어 있음
SDK 설치
pip install roboticscenter
브라우저 Teleop 패널 연결 및 열기
rc connect --device l1 # Terminal prints: Session ready → https://platform.roboticscenter.ai/session/RC-XXXX-XXXX # Open the URL in any browser to access the full teleop panel
Python을 통해 공동 데이터 스트리밍
from roboticscenter import L1Robot
robot = L1Robot.connect()
print(robot.session_url)
for frame in robot.stream():
joints = frame.data['joints']
print(f"Left: {joints['left_arm']}")
print(f"Right: {joints['right_arm']}")
print(f"Base: {frame.data['base']}")
아직 하드웨어가 없나요? 모의 모드 사용
달리다
rc connect --device l1 --mock 완전히 시뮬레이션된 L1 세션을 시작합니다. 모든 SDK 방법, 브라우저 텔레옵 패널 및 데이터 기록은 모의 모드에서 동일하게 작동합니다. 이는 장치 배송 전 CI 파이프라인 및 워크플로 프로토타입 제작에 유용합니다.
3
듀얼 암 교정
L1 암은 듀얼 인코더 피드백 및 FOC 제어 기능이 있는 MIT 모터 프로토콜을 사용합니다. 교정을 통해 홈 위치를 설정하고 전체 ±0.02mm 정확도 사양을 확인합니다.
ROS2 조인트 상태 확인
ros2 topic list
ros2 topic echo /joint_states # verify all 16 DOF are publishing
모션 계획을 위해 MoveIt2 실행
ros2 launch l1_moveit l1_moveit.launch.py
# Opens RViz with full dual-arm URDF, collision checking, and Cartesian planning
원점 교정
- MoveIt2 RViz 패널에서 계획 꼬리표
- 선택 집 양팔의 명명된 표적
- 딸깍 하는 소리 계획 및 실행 — 팔은 중립적으로 뻗은 자세로 움직여야 합니다.
- 조인트 상태가 터미널의 예상 홈 구성과 일치하는지 확인
그리퍼 교정
# Open grippers fully ros2 topic pub /left_gripper/cmd std_msgs/Float32 "{data: 0.0}" ros2 topic pub /right_gripper/cmd std_msgs/Float32 "{data: 0.0}" # Close to 50% — verify 8Nm grippers engage smoothly ros2 topic pub /left_gripper/cmd std_msgs/Float32 "{data: 0.5}" ros2 topic pub /right_gripper/cmd std_msgs/Float32 "{data: 0.5}"
4
모바일 베이스 내비게이션
WASD 키보드 드라이브 테스트
브라우저 텔레오프 패널을 열고 WASD 키를 사용하여 차동 베이스를 구동합니다. 속도 배율은 패널 슬라이더(10%, 50%, 100%)를 통해 조정 가능합니다.
# Or command directly via ROS2 Twist ros2 topic pub /base/cmd_vel geometry_msgs/Twist \ "{linear: {x: 0.3, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}" # Stop ros2 topic pub /base/cmd_vel geometry_msgs/Twist \ "{linear: {x: 0.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.0}}"
리프트 범위 테스트
브라우저 텔레오프 패널의 수직 슬라이더를 사용하여 30mm/s에서 전체 리프트 범위(106~162cm)를 테스트합니다. 바인딩이나 연삭 없이 전체 범위에서 부드러운 움직임을 확인합니다.
# Monitor lift height ros2 topic echo /lift/state # current height in meters
안전
로봇이 움직일 때 주변 사람들이 팔 작업 공간에 접근하지 못하도록 하십시오. L1은 최대 속도 2m/s에 도달합니다. 10% 속도 스케일링으로 테스트를 시작합니다.
5
첫 번째 조작 작업
브라우저 텔레오프 패널 컨트롤
- 듀얼 암 뷰: 두 7-DOF 팔의 실시간 3D 시각화 - <10ms 업데이트 속도로 관절 각도, 엔드 이펙터 자세(6D) 및 그리퍼 상태
- 엔드 이펙터 모드 선택기: 팔별로 독립적으로 전환: 그리퍼(기본 8Nm), 민첩한 손 또는 흡입 컵
- 카메라 피드: 가슴 카메라(Developer+), 손목 카메라 왼쪽/오른쪽(Developer Max)
MoveIt2를 통한 간단한 선택 및 배치
from roboticscenter import L1Robot robot = L1Robot.connect() # Move left arm to approach pose robot.left_arm.move_to(x=0.45, y=0.15, z=0.30, roll=0, pitch=90, yaw=0) # Open left gripper robot.left_arm.gripper.open() # Move down to grasp robot.left_arm.move_to(x=0.45, y=0.15, z=0.05, roll=0, pitch=90, yaw=0) # Close gripper to grasp robot.left_arm.gripper.close(force=0.6) # Lift robot.left_arm.move_to(x=0.45, y=0.15, z=0.35, roll=0, pitch=90, yaw=0)
VR 원격조작(Developer Pro 및 Max)
OpenXR 호환 헤드셋을 연결하고 실행하세요. rc vr --session RC-XXXX-XXXX 예상 접촉력에 비례하는 촉각 피드백을 사용하여 데카르트 공간의 각 팔 엔드 이펙터에 핸드 컨트롤러 포즈를 직접 매핑합니다.
6
데이터 수집 및 원클릭 파이프라인
모든 rc connect 세션은 명명된 데이터 수집 단위입니다. 세션은 종료 시 Fearless Platform 작업 공간에 자동으로 업로드되며 수동 내보내기 단계가 필요하지 않습니다.
프레임당 캡처되는 내용
- 공동 데이터 — 마이크로초 타임스탬프가 포함된 ~500Hz에서 모든 16 DOF에 대한 위치, 속도 및 작용력
- 카메라 스트림 — 가슴 RGB(Developer+), 손목 RGB(Developer Max) — ±1ms 이내에 타임스탬프가 지정되고 관절 데이터와 동기화됩니다.
- 강제/접촉 — 모터 전류로부터 그리퍼 조력 추정
- 기본 상태 — 휠 주행거리 측정, 선형/각속도, 리프트 높이
- 운영자 조치 — 모방 학습을 위한 원시 원격 명령 스트림
수집 중 에피소드 라벨링
- 누르다 공간 에피소드 경계를 표시하기 위해 브라우저 패널에서
- 누르다 L 사용자 정의 레이블 문자열로 현재 프레임에 주석을 추가합니다.
클라우드 브리지용 ROS2 에이전트
# Run on the L1's onboard computer to bridge topics to the platform
python l1_robot_agent.py \
--backend wss://platform.roboticscenter.ai \
--session RC-XXXX-XXXX \
--ros2
데이터 세트 내보내기 형식
정리되고 주석이 달린 세션은 LeRobot 형식(HDF5 + JSON 매니페스트), RLDS 또는 원시 JSONL + MP4로 내보냅니다. 사용 데이터 내보내기 및 다운로드를 구성하려면 플랫폼의 탭을 클릭하세요.
원클릭 파이프라인
세션이 종료된 후 플랫폼 파이프라인(Clean → Annotate → Train(ACT, Diffusion Policy 또는 VLA))을 사용합니다. Developer Pro 및 Max 등급은 VLA 교육을 잠금 해제합니다. 개발자 계층은 ACT 및 확산 정책을 지원합니다.