2026 년 에 로봇 텔레오퍼레이션 을 시작 하는 것
2026년 로봇 텔레오퍼레이션을 시작하기 위한 실용적인 가이드: 하드웨어 설정, 제어 인터페이스, 지연시간, 데이터 수집, RCSV의 텔레오프 플랫폼
[전용사업 안내서]
원격 조작은 실시간으로 로봇을 원격으로 제어하는 것입니다. 고품질의 훈련 데이터를 수집하는 가장 빠른 방법과 현대 로봇 배포의 기초입니다. 모방 학습 데이터 세트를 구축하거나 원격 검사 파일럿을 실행하는 경우에도, 이 가이드는 시작하기 위해 필요한 모든 것을 안내합니다.
로봇 텔레오퍼레이션 은 무엇 입니까?
텔레오퍼레이션은 인간 운영자가 제어 인터페이스를 사용하여 로봇을 제어하는 것을 의미합니다. 로컬 또는 원격 네트워크를 통해 명령을 전송하면서 감각 피드백 (비디오, 힘, 위치) 을 받습니다. 로봇 학습의 맥락에서, 원격 시범은 훈련 데이터를 수집하는 금 표준이므로 손으로 프로그래밍하기 어려운 자연적인 인간 전략을 코딩합니다. RCSV의 [텔레오프 플랫폼]
텔레오퍼레이션 루프는 네 단계로 이루어져 있다. (1) 운영자는 카메라 피드 및 자기 수용 데이터로 로봇의 환경을 관찰한다. (2) 운영자는 제어 장치로 명령어를 생성한다. (3) 명령어는 로봇에게 전송되고 실행된다. (4) 모든 관찰과 동작은 나중에 훈련 데이터로 사용될 때 동기화로 기록된다. 각 단계의 품질은 실시간 제어 성능과 기록된 데이터 세트의 하류 유용성에 직접적으로 영향을 미칩니다.
2026년, 텔레오퍼레이션은 두 가지 다른 목적을 위해 사용되고 있으며, 두 가지 목적이 점점 더 공감되고 있습니다. 첫 번째는 ** 직접 원격 조작** - 인간이 로봇을 원격에서 유용한 작업을 수행하기 위해 제어합니다 (감시, 유지보수, 위험한 환경 작업). 두 번째는 demonstration collection - 인간이 로봇을 조작하여 모방 학습 정책 (如 [ACT]
시작 하기 위해 필요한 하드웨어
기본적인 텔레오퍼레이션 설치는 다섯 개의 구성 요소가 필요합니다. 로봇 팔 또는 모바일 플랫폼, 카메라, 제어 장치, 스트리밍 및 로깅을 위한 컴퓨팅 노드, 동기화된 관찰 및 행동을 캡처하는 로깅 시스템. RCSV의 [임대 하드웨어 패키지]
제어 장치 비교
제어 장치는 가장 중요한 하드웨어 선택입니다. 왜냐하면 그것은 당신의 시범의 품질 천장을 결정하기 때문입니다. 2026 년 4 가지 주요 옵션이 어떻게 비교되는지는 다음과 같습니다.
| Control Device | 지연시간 | DOF Mapped | Best For | Cost | Training Curve |
|---|---|---|---|---|---|
| Leader arm (ALOHA-style) | <2ms local | Full joint-space (6-7 DOF) | Bimanual manipulation, ACT data | $2,000-5,000 per pair | 2-4 hours |
| 3D SpaceMouse | 5-10ms | 6 DOF (Cartesian + rotation) | Single-arm pick-place, slow precision | $200-500 | 1-2 days |
| Data glove (e.g., Paxini, Manus) | 8-15ms | 15-22 DOF (hand + wrist) | Dexterous hand control, finger tasks | $5,000-15,000 | 4-8 hours |
| VR controller (Quest 3, VIVE) | 20-40ms | 6 DOF + finger triggers | Mobile base + arm, humanoid whole-body | $300-1,000 | 30 minutes |
** 우리의 권고:** 테이블 표 조작 작업에 대한 모방 학습 데이터를 수집하는 팀들에서는 리더 팔이 분명하게 승리합니다. 1:1 운동화 지도는 운영자의 근육 메모리가 로봇에 직접 전송되는 것을 의미합니다. ALOHA 스타일의 리더-후보 구성 ( 리더와 후수 팔의 동일 운동화 연쇄) 는 리더 팔 지도에서 직접 후수 팔의 공동 명령에 대한 공동 위치 - 리더 팔 문제를 완전히 제거합니다. 역 운동화 단계가없는 ACT는 ALOHA 데이터에서 매우 잘 작동하는 이유입니다. 시범은 기계적으로 깨끗합니다.
인형체 전체체 텔레오퍼레이션 (Unitree G1, Booster K1) 에 대한 VR 컨트롤러와 체 추적이 결합된 현재 표준이다. 손 추적이 있는 Quest 3는 간단한 잡을 수 있도록 충분한 손가락 지도를 제공합니다. 그러나 정밀 손가락 작업은 여전히 전용 장갑 하드웨어를 필요로 합니다. RCSV는 [텔레오프 제어 플랫폼]를 통해 네 개의 인터페이스를 모두 지원합니다.
왜 지연이 중요합니까: 50ms 임계
엔드-투-엔드 레이턴시 (End-to-End latency) 는, 운영자 입력에서 로봇 동작까지의 시간입니다.
- <20ms: 운영자는 지연을 감지하지 않습니다. 로봇은 손의 직접적인 연장처럼 느껴집니다. 이것은 로컬 USB/시리즈 연결에서 리더 팔을 사용하여 달성됩니다. 이 지연 시간에 수집된 데이터는 가장 자연스럽고 유동적인 인간 행동을 포함합니다.
- 20-50ms: 감지 가능하지만 관리 가능. 운영자는 몇 분 이내에 적응하고 좋은 시범 데이터를 생산합니다. 이것은 로컬 네트워크 텔레오퍼레이션 ( 같은 건물의 운영자, 이더넷을 통해 연결된 로봇) 에 전형적입니다.
- 50-150ms: 운영자는 지연을 보완하기 위해 현저하게 느려집니다. 시범은 조심스럽고 거칠게됩니다. 운영자는 움직이고 피드백을 기다리고, 조정하고 다시 기다립니다. 이 "미치와 기다림" 패턴은 느리고 주저하는 정책을 훈련시킵니다. 데이터 품질은 크게 50ms 이상으로 떨어집니다.
- >150ms: 미세한 조작은 비실리하게 됩니다. 순위 위치 및 탐색 작업만이 안정적으로 작동합니다. 이것은 시간 구역 간 인터넷 기반 원격 원격 원격 조작에 전형적입니다.
지연은 네 가지 구성 요소를 가지고 있으며, 각각의 요소는 독립적으로 측정되고 최소화되어야 합니다.
| Component | Typical Range | How to Minimize |
|---|---|---|
| Control device read | 0.5-5ms | USB polling at 1kHz, avoid Bluetooth |
| Network transport | 0.1ms (local) to 200ms (cross-continent) | Wired Ethernet for local; WebRTC with STUN for remote |
| Command processing | 1-10ms | Dedicated real-time thread, avoid Python GIL on control loop |
| Motor execution | 2-20ms | Use position servo mode, not velocity; 500Hz+ servo rate |
카메라 구성: 3 카메라 표준
카메라 배치는 제어 장치 선택에 이어 두 번째로 영향력 있는 결정이다. 조작 데이터 수집에 대한 현재 커뮤니티 표준은 3 카메라 설정입니다.
- 오버헤드 카메라 (정착): 위 아래로 작업 공간을 볼 수 있습니다. 공간적 추론을 위해 필수적입니다. 객체가 서로 상대적으로있는 경우. 테이블 표면 위로 0.8-1.2m 높이로 내려다보고 있습니다. 해상도는: 640x480이 충분합니다. 더 높은 해상도는 비례적인 정책 개선 없이 대역폭을 추가합니다.
- ** 옆 카메라 (정착):** 팔과 객체 공간 관계와 접근 각을 촬영한다. 작업 공간 중심에서 0.6-1.0m의 테이블 높이에 설치하여 15-30도 아래로 각을 기울인다. 이 카메라는 상공 조치가 놓친 깊이 신호를 촬영한다.
- ** 손목 카메라 (끝 효과에 설치):** 밀리미터 떨어진 곳에서 잡기 접촉 영역을 캡처합니다. 이것은 미세한 조작을 위한 가장 영향력 있는 단일 카메라입니다. ALOHA 팀과 다른 연구팀의 연구에 따르면 손목 카메라를 추가하면 접촉이 풍부한 작업에서 정책 성공률을 20-40% 향상시킵니다. 작은 USB 카메라 (예를 들어, ELP 120fps 물고기 눈 모듈, ~ $30) 를 3D 인쇄 된 마운트로 사용하십시오.
** 카메라 동기화 문제가 있습니다.** 관찰 시간표가 행동 시간표보다 10ms 이상 떨어져 있다면, 당신은 잘못된 조율 데이터에 대한 정책을 훈련합니다 - 그것은 시간을 t에서 세계를 볼 수 있지만 t+delta에서 행동을 연결합니다. 빠른 작업 (200-400ms에서 완료되는 잡음) 에서, 20ms의 잘못된 조율은 정책 성능을 측정 할 수 있게 저하시킨다. 하드웨어 트리거 또는 타임 스탬프 기반 소프트웨어 동기화를 사용하십시오.
** 카메라 해상도와 프레임 속도 교류:** 모방 학습에서 프레임 속도 는 해상도 보다 중요 합니다. 30fps의 640x480 스트림 은 15fps의 1920x1080 스트림 보다 더 나은 훈련 데이터를 생산 합니다. 운동 동기를 배우기 위해 정책은 시간 연속성이 필요합니다. 우리는 모든 RCSV 데이터 수집을 최소 30fps로 실행하고, 빠른 조작 작업에 50fps를 선호합니다.
로컬 대 원격 텔레오퍼레이션
로컬 텔레오퍼레이션 (동방의 운영자) 은 가장 낮은 지연을 달성합니다. 일반적으로 5ms 이하의 끝에서 끝으로 데이터 수집 표준입니다. 원격 텔레오퍼레이션 (다른 위치에 운영자) 은 네트워크 지연을 도입하지만 원격 검사, 시설 관리 및 분산 데이터 수집과 같은 배포 시나리오를 가능하게합니다. RCSV의 데이터 플랫폼 는 적응적 스트림 압축 및 내장된 지연 모니터링을 가진 두 모드를 모두 지원합니다.
원격 원격전화에서는 비디오 스트림이 병목이 됩니다. 제어 명령어는 아닙니다. 제어 명령어는 작습니다. 50Hz에서 패킷당 100 바이트 미만이지만, 30fps에서 압축되지 않은 640x480 RGB는 카메라당 28 MB/s입니다. 3 카메라와 함께 압축 전에 84 MB/s입니다. 로봇 측 H.264 하드웨어 코딩은 수용 가능한 품질로 스트림당 2-5 Mbps로 줄이지만, 코딩은 15-30ms의 지연을 추가합니다. RCSV 원격 텔레오프 스택은 최소 지연을 위해 조정된 매개 변수를 가진 NVIDIA Jetson에 하드웨어 가속화된 코딩을 사용합니다 (제로 지연 미리 설정, 슬라이즈 스레딩, 인트라-레프resh).
ACT 데이터 형식 및 기록 파이프라인
대부분의 현대 모방 학습 프레임워크 (ACT, Diffusion Policy, LeRobot) 는 HDF5 형식으로 특정 구조로 훈련 데이터를 소비합니다. 각 에피소드는 관찰 (사진, 공동 위치, 꽉 잡기 상태) 및 동작 (목적 공동 위치 또는 속도) 을 위한 동기화된 배열을 포함하는 그룹으로 저장됩니다.
episode_0/
observations/
images/
cam_high (T, 480, 640, 3) uint8 # overhead camera
cam_low (T, 480, 640, 3) uint8 # side camera
cam_wrist (T, 480, 640, 3) uint8 # wrist camera
qpos (T, 7) float32 # joint positions + gripper
qvel (T, 7) float32 # joint velocities
actions (T, 7) float32 # target joint positions
timestamps (T,) float64 # Unix timestamps in seconds
metadata/
success bool # did episode achieve goal?
task_name string # e.g., "pick_cube_place_bin"
operator_id string # for tracking operator quality
아래는 OpenArm에서 3개의 USB 카메라로 동기화된 데이터를 캡처하는 최소한의 파이썬 레코딩 스크립트입니다. 이것은 RCSV의 레코딩 파이프라인의 단순화된 버전입니다. 제작 버전은 자동 성공 검출, 실시간 품질 매트릭, 클라우드 업로드를 추가합니다.
import h5py
import numpy as np
import time
import cv2
from openarm_sdk import OpenArm # RCSV OpenArm Python SDK
# Initialize hardware
arm = OpenArm(port="/dev/ttyUSB0", baudrate=1000000)
cameras = {
"cam_high": cv2.VideoCapture(0),
"cam_low": cv2.VideoCapture(2),
"cam_wrist": cv2.VideoCapture(4),
}
for cam in cameras.values():
cam.set(cv2.CAP_PROP_FRAME_WIDTH, 640)
cam.set(cv2.CAP_PROP_FRAME_HEIGHT, 480)
cam.set(cv2.CAP_PROP_FPS, 30)
CONTROL_HZ = 50 # 50 Hz control loop
MAX_STEPS = 500 # 10 seconds at 50 Hz
dt = 1.0 / CONTROL_HZ
def record_episode(episode_id: int, hdf5_path: str):
"""Record one teleoperation episode to HDF5."""
images = {k: [] for k in cameras}
qpos_list, qvel_list, action_list, ts_list = [], [], [], []
print(f"Recording episode {episode_id}... Press Ctrl+C to stop.")
try:
for step in range(MAX_STEPS):
t_start = time.time()
# Read leader arm (control device) as target action
leader_state = arm.read_leader()
action = leader_state.joint_positions # 7-dim: 6 joints + gripper
# Read follower arm (robot) current state
follower_state = arm.read_follower()
qpos = follower_state.joint_positions
qvel = follower_state.joint_velocities
# Send action to follower
arm.command_follower(action)
# Capture images from all cameras
for name, cap in cameras.items():
ret, frame = cap.read()
if ret:
images[name].append(frame[:, :, ::-1]) # BGR to RGB
qpos_list.append(qpos)
qvel_list.append(qvel)
action_list.append(action)
ts_list.append(time.time())
# Maintain control frequency
elapsed = time.time() - t_start
if elapsed < dt:
time.sleep(dt - elapsed)
except KeyboardInterrupt:
pass
# Write to HDF5
T = len(qpos_list)
with h5py.File(hdf5_path, "a") as f:
ep = f.create_group(f"episode_{episode_id}")
obs = ep.create_group("observations")
img_grp = obs.create_group("images")
for name in cameras:
img_grp.create_dataset(name, data=np.array(images[name]),
chunks=(1, 480, 640, 3), compression="gzip")
obs.create_dataset("qpos", data=np.array(qpos_list, dtype=np.float32))
obs.create_dataset("qvel", data=np.array(qvel_list, dtype=np.float32))
ep.create_dataset("actions", data=np.array(action_list, dtype=np.float32))
ep.create_dataset("timestamps", data=np.array(ts_list, dtype=np.float64))
print(f"Episode {episode_id}: {T} steps saved ({T / CONTROL_HZ:.1f}s)")
고품질의 시연 을 수집 하는 것
좋은 시범은 일관성, 다양성, 성공적이다. 일관성이란 객체 배치, 접근 전략 및 작업 완료에 대한 정의된 프로토콜을 따르는 것을 의미합니다. 다양성은 에피소드 간 객체 위치, 지향 및 환경 조건이 다르다는 것을 의미합니다. RCSV의 품질 통제는 실시간 에피소드 검토, 자동화된 시발성 탐지 및 시범이 품질 제한을 벗어난 경우 재발동을 포함한다. [로봇 훈련 데이터 가이드]
운영자 훈련 프로토콜
운영자 품질은 시범 데이터에서 가장 과소평가되는 요소입니다. 경험이 풍부한 운영자는 초보보다 2-3배 더 일관된 시범을 생산합니다. 이는 정책 수행에 직접적으로 번역됩니다. RCSV에서 새로운 운영자는 구조화된 교육 프로토콜을 통과합니다.
- Familiarization (30분): 제어 장치와 로봇으로 무료 탐색. 데이터 기록이 없습니다. 목표: 로봇의 작업 공간, 속도 제한 및 힘 제한에 대한 운동 인tui션을 구축합니다.
- ** 연습 에피소드 (20-30 에피소드):** 경험 있는 운영자로부터 피드백을 받아 목표 작업을 수행합니다. 이 에피소드는 훈련에 사용되지 않습니다.
- ** 기량 테스트 (10 에피소드):** 10 에피소드를 기록하고 성공률, 완공 시간, 궤도 매끄러움을 측정합니다.
- ** 제작 기록:** 훈련 자료를 위한 시범을 기록합니다. 50 에피소드마다 질 측정값을 다시 확인합니다.
에피소드 품질 측정
각 기록된 에피소드별로 RCSV의 파이프라인은 다음과 같은 품질 신호를 계산하고 기록합니다.
- ** 완료 시간:** 기준 평균 1.5x 이내에 있어야 합니다. 비정상적으로 빠른 에피소드는 종종 도면을 건너뛰는 것을 나타냅니다. 비정상적으로 느린 에피소드는 운영자 의 의 의 의 표시입니다.
- ** 궤도 순조리:** 평균
(공동 위치의 세 번째 파생물) 은 작업에 대한 특정 임계값 이하로 있어야 합니다. 높은 은 정책에 혼란을 초래하는 수정 및 의문을 나타냅니다. - ** 잡기 기간:** 첫 접촉부터 안정적인 잡기까지의 시간. 장기간 잡기 (> 2s) 는 다시 다시 가져야 할 시범을 나타냅니다.
- ** 작업 성공:** 바이너리 - 에피소드가 목표 상태를 달성했습니까? 실패한 에피소드는 별도로 기록되며 부정적인 예제 또는 복구 행동 훈련에 사용할 수 있지만 기본 훈련 세트에 포함해서는 안됩니다.
흔히 발생하는 실패 방법 과 그 를 해결 하는 방법
수백 개의 텔레오페라션 프로그램을 지원한 후, RCSV는 처음으로 텔레오페라션을 설정할 때 팀들이 가장 자주 겪는 실패 모드를 나열했습니다.
| Symptom | Root Cause | Fix |
|---|---|---|
| Robot jerks or oscillates during teleoperation | Control loop rate too low (<30Hz) or PD gains too high | Increase control loop to 50Hz+. Reduce P gain by 30% and add velocity damping. Check USB polling rate. |
| Policy trained on teleop data fails at deployment | Camera moved between collection and deployment, or lighting changed | Use rigid camera mounts with alignment markers. Log camera intrinsics/extrinsics per session. Match lighting. |
| Video feed lags during remote teleop | H.264 encoder buffering frames for quality, not latency | Use -tune zerolatency and -preset ultrafast in ffmpeg/GStreamer. Reduce resolution to 480p. |
| 그리퍼 commands lag behind arm commands | 그리퍼 on separate serial bus with different polling rate | Synchronize arm and gripper commands in the same control loop iteration. Use a single serial bus if possible. |
| Timestamps in HDF5 not monotonically increasing | NTP time sync adjusting system clock during recording | Use time.monotonic() for relative timestamps. Store absolute time only in episode metadata. |
| Operator fatigue after 30 minutes of collection | Ergonomic issues with leader arm position or weight | Mount leader arm at elbow height. Add arm rest. Enforce 10-min break every 45 min. Rotate operators. |
소프트웨어 스택: 무엇이 어디에 실행되는지
생산 텔레오퍼레이션 설치는 3개의 기계에서 소프트웨어를 실행합니다. 이 아키텍처를 이해하는 것은 지연 및 동기화 문제를 디버깅하는 데 도움이 됩니다.
- ** 로봇 측 계산 (예를 들어, 제트슨 오린 나노, $249):** 실시간 제어 루프 (50-500Hz), 카메라 캡처 및 코딩 및 액션 실행을 실행합니다. 이 기계는 리얼 타임 커널 (PREEMPT_RT) 또는 최소 저 지연 커널을 실행해야 합니다. jitter를 피하기 위해. 파이썬은 로그링 경로에 허용되지만 내부 제어 루프는 C++ 또는 GIL를 출시하는 파이썬 확장 프로그램을 사용해야합니다.
- ** 운영자 작업장:** 제어 인터페이스 드라이버, 비디오 디코더 및 운영자 UI를 실행합니다. 로컬 텔레오퍼레이션에서는 로봇 측 컴퓨팅과 동일한 기계가 될 수 있습니다. 원격 텔레오퍼레이션에서는 WebRTC 또는 사용자 지정 UDP 스트리밍 프로토콜을 통해 연결된 별도의 기계입니다.
- ** 데이터 서버/ 클라우드:** 에피소드 저장, 품질 매트릭스 계산, 데이터 세트 관리 및 훈련 파이프라인 조정을 실행합니다. RCSV [데이터 플랫폼] (RCSV) 는 관리 서비스로서 이러한 역할을 수행합니다.
RCSV 를 사용하여 텔레오퍼레이션 프로그램을 시작 하는 방법
출발점에 따라 세 가지 길이 있습니다.
- ** 완전 서비스 데이터 수집 ($2,500 파일럿 / $8,000 캠페인):** 당신은 당신의 작업과 목표 로봇을 설명합니다. RCSV는 HDF5/RLDS 형식으로 하드웨어, 훈련된 운영자, 실험실 환경 및 후처리 데이터 세트를 제공합니다. 텔레오프 인프라를 구축하지 않고 훈련 데이터를 필요로 하는 팀에게는 좋습니다. [데이터 서비스] (
T13 ) 를 통해 시작하십시오. - ** 플랫폼 + 하드웨어:** 당신은 로봇을 소유하고 있거나 임대합니다. RCSV는 [데이터 플랫폼] (
T14 ) 를 통해 텔레오프 소프트웨어 스택, 녹음 파이프라인, 데이터 세트 관리 및 품질 측정기를 제공합니다. 월간 가입, 하드웨어 구매가 필요하지 않습니다. - ** 하드웨어 임대 + 플랫폼:** RCSV의 [리징 프로그램] (RCSV) 를 통해 [OpenArm] (
T15 ) 또는 다른 플랫폼을 임대하고 전체 소프트웨어 스택을 포함하십시오.
이 작업을 하기 전에 인터페이스를 탐구하려는 팀들을 위해 [버추얼 텔레오퍼레이션 샌드박스] (
관련 독서
- ACT 정책 설명 -- 가장 인기있는 모방 학습 알고리즘이 텔레오프 데이터를 사용하는 방법
- [로봇 모방 학습에서 흔히 발생하는 오류] (
T19 ) - [robot training data는 무엇인가?] (T20
) -- 형식, 표준 및 우수 실습 - RCSV 데이터 서비스 -- 관리된 텔레오퍼레이션 및 데이터 수집
- [로봇을 빌릴 수 있는 방법]
텔레오프 데이터를 수집하기 위해 준비됐습니까?
RCSV는 전체 서비스의 텔레오퍼레이션 데이터 수집, 임대 하드웨어 및 데이터 세트를 관리하는 소프트웨어 플랫폼을 제공합니다. 몇 달이 아닌 며칠 안에 첫 번째 데이터 세트를 얻습니다.
[데이터 서비스] [T23







