Wiki(으)로 돌아가기

로봇센터 SDK <unk> 파이썬 API 참조

로보틱스 센터 SDK에 대한 Python API 참조: LinkerO6, L1Robot, SessionManager, SensorFrame 클래스, rc CLI 명령어, REST 엔드포인트. pip 로보틱스 센터 설치.

시작

  • [전환]
  • [CLI 명령]
  • [파킷 수입]

클래스 LinkerO6

  • [연결]
  • [역주]]
  • [정지함]
  • [자유]

L1급 로봇

  • [연결]
  • [역주]]
  • [정지함]
  • [센서프레임.데이터]

클래스 센서프레임

  • [자유]

클래스 세션 관리자

  • [__init___() ]
  • [_session를 만들자]
  • [기강을 얻으세요]

REST API

  • [Teleop 세션]
  • [L1 파이프라인]

참고

  • [환경 변수]
  • [지원된 장치]

위키 나비게이션

  • [← 모든 기사는]
  • [SDK 빠른 시작]
  • [시션 URL & 텔레오프]
  • [VLAI L1 가이드]
  • [LinkerBot O6 가이드]

또한 참조

  • [로봇스 아카데미 →]
  • 플랫폼 →
  • [문제 하나 물어봐요]

Python 패키지의 완전한 참조: 모든 공개 클래스, 방법, 속성, CLI 명령어, REST 최종 포인트 및 환경 변수를 포함한다.

** 패키지:** T1 ** 파이썬:** 3.9+ ** 설치:** T2

파이썬 SDK 링크O6 L1로봇 세션 관리자 REST API

전체적인 설명

전체적인 설명

T3 SDK는 로봇 기기를 로봇센터 플랫폼에 연결하고 센서 데이터를 스트리밍하고, 원격 작업 세션을 관리하고 에피소드 녹화를 업로드하는 주요 인터페이스입니다. 빠른 장치 연결을 위해 CLI (T4) 와 사용자 지정 데이터 수집 파이프라인을 위해 파이썬 API를 탑재합니다.

모든 장치 클래스는 T5에서 상속되어 동일한 T6 / T7 인터페이스를 노출하고 하드웨어-지식 수집 스크립트를 작성하는 것을 쉽게 만듭니다.

명령 줄 인터페이스

CLI 명령어

T8 CLI는 패키지와 함께 자동으로 설치됩니다. 전체 옵션 목록을 위해 T9를 실행하십시오.

칩 설치 로봇센터 rc -- 도움

Command Description
rc devices Scan all serial and network interfaces for connected hardware. Prints device type, port, firmware version, and status.
rc connect Auto-detect a supported device, create a platform session, start streaming, and open the browser panel.
rc connect --device Force a specific device type. Values: linker-o6, l1. Skips auto-detection.
rc connect --port Bind to a specific serial port instead of scanning. E.g. /dev/ttyUSB0 or COM3.
rc connect --mock Start a synthetic data session with no physical hardware required. All SDK features and the browser panel are fully functional.
rc connect --no-browser Suppress automatic browser launch. Session URL is printed to stdout.
rc session <SESSION_ID> Show session metadata: status, device type, creation time, episode count, deep link, and upload URL.

패키지

패키지 수입

모든 공공 클래스는 최고 수준의 패키지에서 직접 수입된다:

로봇센터에서 수입 LinkerO6, L1Robot, SessionManager

개별 하위 모듈은 또한 고급 사용에 수입될 수 있습니다.

로봇센터에서 수입된 장치들 LinkerO6, L1Robot 로봇센터.시션 수입 세션 매니저 로봇센터.프레임에서 센서프레임을 수입

클래스

린커O6

클래스 LinkerO6(BaseDevice)

리커봇 O6의 현명한 핸드 시스템 드라이버. USB 시리즈 프레임 (RCSV T14 프로토콜 921600 바우드) 를 처리하며, 패킷 검증, 세션 생성 및 왼쪽과 오른쪽 손에서 실시간 프레임 스트리밍을 동시에 수행합니다.

@classmethod LinkerO6.connect(port=None, mock=False) → LinkerO6

O6 핸드 시스템으로 연결하고 연결된 장치 인스턴스를 반환합니다. 자동으로 플랫폼 세션을 생성하고 센서 스트리밍을 시작합니다.

Parameter Type Description
port optional str None
mock optional bool When True, generates synthetic O6 sensor data. No physical device required. Default: False.

** 반환** T20 연결된 장치 인스턴스. O6 장치가 발견되지 않으면 T21을 증가시키고 T22을 증가시킵니다.

로봇센터에서 수입 LinkerO6

장치 = LinkerO6.connect() 또는 명시적인 포트를 사용함 장치 = LinkerO6.connect(port="/dev/ttyUSB0") # 또는 모크 모드: 장치 = LinkerO6.connect(mock=True)

장치.스트림() → 반복자[센서프레임]

이프리 센서는 장치에서 도착할 때 프레임을 찍습니다. T23이 호출되거나 장치가 끊어지기 전까지 차단합니다. 각 프레임에는 왼쪽과 오른쪽 상태의 스냅샷이 포함되어 있습니다.

Parameter Type Description
No parameters.

생산 T24 센서 패킷당 한 프레임. T25 모양: T26. 값은 정상화 0.0 (오픈) 에서 1.0 (완전히 닫힌) 까지 됩니다.

장치.스트림에 있는 프레임에 대해: 왼쪽 = 프레임.데이터.get('왼쪽', {}) 오른쪽 = 프레임.데이터.get(' 오른쪽', {}) print(f"L 지표: {left.get('index', 0):.3f} R 지표: {right.get('index', 0):.3f}")

장치.정지함) → 없음

스트리밍을 중단하고 일련 연결을 닫습니다. 여러 번 호출할 수 있습니다. 자동으로 버퍼 프레임을 빨아넣고, 현재 녹음 에피소드를 완료합니다.

속성

장치. 세션_id str 연결 시점에 플랫폼 세션 ID가 지정되지 않았습니다. T27 만약 세션이 생성되지 않은 경우

장치. 세션_url str 없습니다 실시간 텔레오프 패널의 브라우저 URL 전체

device.port str 장치가 연결된 일련의 포트 경로. 예를 들어 T29. 모크 모드: T30.

device.device_type str "linker_o6"

device.device_family str "dexhand"

클래스

L1로봇

L1급 로봇 (BaseDevice)

VLAI L1 모바일 조작기 운전기사. ROS2 / CAN-FD를 통해 통신합니다. 스트림 관절 상태, 지갑 위치, 기본 속도, 리프트 높기, 배터리 비율 및 카메라 가용성.

@classmethod L1Robot.connect 항은 없는데 가짜

L1 로봇에 연결하고 연결된 장치 인스턴스를 반환. 하드웨어 모드에서는 ROS2 환경과 L1 CAN-FD 인터페이스가 활성화되어야 합니다.

Parameter Type Description
port optional str None
mock optional bool Generate synthetic L1 state data. No ROS2 or physical robot required. Default: False.

** 반환** T33 연결된 장치 인스턴스. ROS2 인터페이스가 사용할 수 없는 경우 T34을 증가시킵니다.

로봇.스트림 (SensorFrame)

L1 로봇의 렌즈 센서 프레임, 각 프레임에는 로봇 상태의 전체 스냅샷이 있습니다.

생산 T36 아래에서 T37 구조를 참조하십시오.

로봇.스톱 (Stop) → 아무도

스트리밍을 중단하고 ROS2 / CAN-FD 연결을 닫습니다. 어떤 활성 녹음 에피소드를 완료합니다.

L1Robot의 센서프레임.데이터 구조

L1Robot 프레임의 T38 사전은 다음과 같은 모양을 가지고 있습니다.

{ { { "공합": { "왼쪽_팔": [j1, j2, j3, j4, j5, j6, j7], #도, 7-DOF "우측_팔": [j1, j2, j3, j4, j5, j6, j7], #도, 7-DOF "왼쪽_griper": 0.0, # 0.0 = 완전히 열려, 1.0 = 완전히 닫힌 "우측_griper": 0.0, ♪ "기반" "vx": 0.0, # 앞으로의 속도, m/s "vy": 0.0, # 옆속, m/s "wz": 0.0, # yaw rate, rad/s ♪ "리프트_히트_미미": 1060, 스 리프트 키 "배터리_pct": 85.0, # 충전 상태, 0.0100.0 "카메라" "Chest": 사실, 카메라 스트림이 활성화되면 사실 "좌쪽 손목": 거짓, "우측 손목": 거짓, ♪ ♪

클래스

센서 프레임

클래스 센서프레임

장치에서 단일 시간표 판독. T39로 표시됩니다. 모든 속성은 읽기 전용입니다.

속성

프레임.타임스테임 플롯 유닉스 시대시표가 프레임이 장치에 캡처된 순간 마이크로초 분해량으로

frame.device_id str 플랫폼 장치 식별자. LinkerBot O6에 대해: T40.

frame.device_type str SDK 장치 타입 문자열. LinkerBot O6: T41. VLAI L1: T42.

프레임.데이터 명령 구조화된 센서 유용량. 기기 유형에 따라 스케마가 달라집니다.

frame.raw 바이트 원본 문자열 포맷 패킷 바이트 장치에서 수신된 바이트.

클래스

세션 관리자

클래스 세션 관리자

플랫폼 세션 API에 대한 낮은 수준의 클라이언트. 장치 클래스에서 내부적으로 사용되지만 직접 통합 (예를 들어 사용자 지정 에이전트 또는 외부 오케스트레이션 시스템에서 세션을 만드는) 에 사용할 수 있습니다.

세션 관리자.__init____(base_url=RC_PLATFORM_URL)

세션 관리자를 설치합니다. T43는 기본적으로 T44로 설정되지만 T45 환경 변수를 통해 우버링 할 수 있습니다.

Parameter Type Description
base_url optional str Platform backend URL. Override for self-hosted deployments or staging environments.

mgr.create_session(device_type, device_id=None, hardware_serial=None) → dict

플랫폼에서 새로운 텔레오퍼레이션 세션을 생성하여 스트리밍을 시작하고 브라우저 패널을 열기 위해 필요한 모든 자격증을 반환합니다.

Parameter Type Description
device_type str SDK device type. E.g. "linker_o6", "l1".
device_id optional str None
hardware_serial optional str None

회환 T48 열쇠로:

Key Type Description
session_id str Unique session identifier. E.g. "RC-XXXX-XXXX".
deep_link str Full browser URL for the teleop panel.
ws_url str WebSocket relay URL for frame streaming.
guest_token str Short-lived token for unauthenticated browser access to this session.
expires_at str ISO 8601 expiry timestamp for the session.
device_type str Echo of the requested device type.

로봇센터.시션 수입 세션 매니저

mgr = 세션 관리자 (sessionmanager) 세션 = mgr.create_session("linker_o6", 하드웨어_serial="LBO6-001") print(session["깊은 링크"]) T98

mgr.get_session_info(session_id) → dict

기존 세션에 대한 현재 메타 데이터를 검색합니다.

Parameter Type Description
session_id str The session ID returned by create_session() or rc session.

회복 T52 세션 상태, 에피소드 수, 스트리밍 상태 및 딥 링크를 포함한 세션 메타데이터. 세션이 존재하지 않는 경우 T53을 증가시킵니다.

직접 통합

플랫폼 REST API

아래의 REST 엔드포인트는 SDK에서 사용하는 기본 HTTP API입니다. Python SDK가 적절하지 않은 경우 직접 통합을 위해 사용하십시오 (예를 들어 비 파이썬 에이전트, 임베디드 시스템 또는 서버 측 오케스트레이션).

모든 최종점은 T54에 관계되어 있다. 인증은 T55 또는 API 키를 T56 헤더에 사용합니다.

텔레오프 세션

  • POST /api/teleop/session/create-sdk 새로운 SDK 세션을 생성합니다.
  • GET /api/teleop/sessions/{id}/sdk-info 기존 세션의 세션 메타데이터, 스트리밍 상태 및 WebSocket URL를 얻으십시오.

L1 파이프라인

  • POST /api/l1/sessions/{id}/pipeline/start L1 세션에서 데이터 처리 파이프라인을 시작하여 T58을 반환합니다.
  • GET /api/l1/session/{id}/pipeline/status 세션의 처리 파이프라인 상태를 조사합니다.
  • 파이프라인 ID를 통해 파이프라인 전체 운행 세부 정보를 얻으십시오.
  • GET /api/l1/tier 목록 가용 처리 계층 구성 (표준 / 높은 신뢰성 / 연구 수준)

구성

환경 변수

Variable Default Description
RC_PLATFORM_URL https://platform.roboticscenter.ai Backend URL used by SessionManager and all CLI commands. Override for self-hosted or staging deployments.

** 껍질에 설치:** T61 또는 프로젝트 루트에서 T62 파일을 T63에 넣습니다. SDK는 설치되면 T63을 사용합니다.

하드웨어

지원된 장치

Device --device flag Protocol Status
LinkerBot O6 linker-o6 USB Serial — RCSV AA55 header, 921600 baud Production
VLAI L1 l1 ROS2 / CAN-FD Production

각 버전에 추가 장치가 추가됩니다. 동적으로 발견된 하드웨어에 대한 T67 출력을 확인하거나 장치별 설정 지침을 위해 [LinkerBot O6 하드웨어 가이드]T95을 참조하십시오.

** 로봇에 새로운가요?** 이것은 SDK 통합기기 위한 기술 API 참조입니다. 로봇의 기초를 배우고 있다면 ROS 2 먼저 RCSV 로봇 아카데미 를 방문하십시오. 5 분간의 설치 가이드에 대해 [SDK 빠른 시작](T97을 참조하십시오.