RoboticsCenter SDK <unk> Referencia de API de Python
Referencia completa de la API de Python para el SDK de RoboticsCenter: LinkerO6, L1Robot, SessionManager, clases de SensorFrame, comandos rc CLI, puntos finales REST. pip instalar roboticscenter.
Comenzando
- [Visión general]
- [Comando de CLI]
- [Importación de paquetes]
clase LinkerO6
- [conexión ] ] ] ]
T71 - [Reacción]
- stop()
- [Atributos]
T74 )
clase L1Robot
- conexión()
- [Reacción de corriente]
- stop()
- [Framas de sensores. datos]
clase Frámara de sensores
- [Atratos]
clase Administrador de sesiones
- [__init___() ]
- crear_session()
- [Pues, ¿qué pasa?
API de REST
- [Sesiones de teleópicas]
- [L1 tubería]
Referencia
- [Variables del medio ambiente]
- [Dispositivos compatibles]
Navegación por el wiki
- [← Todos los artículos]
- [SDK Quickstart]
- [URL de la sesión y Teleop]
- [Guía VLAI L1]
- [Guía de O6 de LinkerBot]
También ver
- [Robotics Academy →]
T92 ) - Plataforma →
- [Pregúntele una pregunta →]
Referencia completa para el paquete Python
Envasado:
Python SDK LinkerO6 L1Robot SessionManager REST API
En general
En general
El SDK
Todas las clases de dispositivos heredan de
Interfaz de línea de comandos
Comando de CLI
El
instalar el centro de robótica Rc -- ayuda
| 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. |
Envasado
Importar paquetes
Todas las clases públicas son importables directamente desde el paquete de nivel superior:
de la robotica centro de importación LinkerO6, L1Robot, SessionManager
Los submodules individuales también son importables para uso avanzado:
de la robóticacenter.devices importar LinkerO6, L1Robot Importar de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la gestión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la importación de la sesión de la sesión de la sesión de la sesión de la administración de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la de roboticscenter.frames importar SensorFrame
Clasificación
LinkerO6
clase LinkerO6(Device base)
Conductor para el sistema de mano hábil LinkerBot O6. Maneja el marco de serie USB (protócol RCSV
@classmethod LinkerO6.connect ((port=Ningún, falso=falso) → LinkerO6
Conecta a un sistema manual O6 y devuelve una instancia de dispositivo conectado. Crea una sesión de plataforma automáticamente y comienza la transmisión de sensores.
| Parameter | Type | Description |
|---|---|---|
| port optional | str | None |
| mock optional | bool | When True, generates synthetic O6 sensor data. No physical device required. Default: False. |
Retorna
de la robotica centro de importación LinkerO6
dispositivo = LinkerO6.connect() # o con puerto explícito: dispositivo = LinkerO6.connect(puerto="/dev/ttyUSB0") # o en modo simulado: dispositivo = LinkerO6.connect(mock=True)
dispositivo.flujo() → Iterador[Frame Sensor]
Los sensores de rendimiento toman imágenes a medida que llegan desde el dispositivo. Bloquean hasta que se llame
| Parameter | Type | Description |
|---|---|---|
| No parameters. |
** Resultados**
para el marco en el dispositivo.flujo(): izquierda = marco.datas.get('izquierda', {}) derecho = marco.datas.gate('derecho', {}) print(f"Index L: {left.get('index', 0):.3f} Indice R: {right.get('index', 0):.3f}")
dispositivo.stop() → Ninguno
Deja de transmitir y cierra la conexión en serie. Seguro para llamar varias veces. Arroja automáticamente cualquier marco amortiguado y finaliza el episodio de grabación actual si uno está activo.
dispositivo.sesión_id str
dispositivo.sesión_url str
dispositivo.puerto str Ruta de puerto de serie en la que se conecta el dispositivo. Por ejemplo
dispositivo.dispositivo_tipo str "linker_o6"
dispositivo.dispositivo_familia str "dexhand"
Clasificación
L1Robot
Clase L1Robot(Dispositivo base)
Conductor para el manipulador móvil VLAI L1. Comunica a través de ROS2 / CAN-FD. Flujos estados de articulación, posiciones de agarre, velocidad de base, altura del ascensor, porcentaje de batería y disponibilidad de cámara.
@classmethod L1Robot.connect ((puerto=Ninguno, falso=falso) → L1Robot
Conectar a un robot L1 y devolver una instancia de dispositivo conectado. En modo hardware, requiere que un entorno ROS2 y la interfaz L1 CAN-FD estén activos.
| Parameter | Type | Description |
|---|---|---|
| port optional | str | None |
| mock optional | bool | Generate synthetic L1 state data. No ROS2 or physical robot required. Default: False. |
Retorna
robot.stream() → Iterador[Frame de sensor]
Cada fotograma contiene la imagen completa del estado del robot.
Los rendimientos
robot.stop() → Ninguno
Deja de transmitir y cierra la conexión ROS2 / CAN-FD. Finaliza cualquier episodio de grabación activa.
El diccionario
¿ Qué ?
"articulaciones": {
"brazo izquierdo": [j1, j2, j3, j4, j5, j6, j7], # grados, 7-DOF
"brazo derecho": [j1, j2, j3, j4, j5, j6, j7], # grados, 7-DOF
"izquierda_agarrador": 0,0, # 0,0 = completamente abierto, 1,0 = completamente cerrado
"derecha_agarrador": 0,0,
¿Qué es eso?
"base": {
"vx": 0,0, # velocidad hacia adelante, m/s
"vy": 0,0, # velocidad lateral, m/s
"wz": 0,0, # velocidad de jaqueo, rad/s
¿Qué es eso?
"elevación_alturas_mm": 1060, altura del torso en milímetros
"batería_pct": 85.0, estado de carga, 0.0
Clasificación
Frame de sensores
clase Frámara de sensores
Una sola lectura de tiempo marcada desde un dispositivo. Rendido por
marco.estampilla de tiempo float Unix epoch timestamp con resolución de microsecondas en el momento en que el marco fue capturado en el dispositivo.
marco.dispositivo_id str Identificador de dispositivo de plataforma. para LinkerBot O6:
frame.device_type str SDK dispositivo tipo de cadena. para LinkerBot O6:
marco.datas dictan la carga útil del sensor estructurado. El esquema varía según el tipo de dispositivo
frame.raw bytes bytes original de paquete de formato de cable como recibido del dispositivo. Archivado en forma literal en grabaciones de episodios.
Clasificación
Administrador de sesiones
clase Administrador de sesiones
Cliente de bajo nivel para la API de sesión de plataforma. Se utiliza internamente por clases de dispositivos, pero también está disponible para la integración directa (por ejemplo, crear sesiones desde un agente personalizado o un sistema de orquestación externo).
SessionManager.__init___(base_url=RC_PLATFORM_URL)
Instanciar el administrador de sesión.
| Parameter | Type | Description |
|---|---|---|
| base_url optional | str | Platform backend URL. Override for self-hosted deployments or staging environments. |
mgr.create_session(dispositivo_tipo, dispositivo_id=Ninguno, hardware_serial=Ninguno) → dict
Crear una nueva sesión de teleoperación en la plataforma. devuelve todas las credenciales necesarias para comenzar a transmitir y abrir el panel del navegador.
| Parameter | Type | Description |
|---|---|---|
| device_type | str | SDK device type. E.g. "linker_o6", "l1". |
| device_id optional | str | None |
| hardware_serial optional | str | None |
Retorna
| 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. |
Importar de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la gestión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la importación de la sesión de la sesión de la sesión de la sesión de la administración de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la sesión de la
mgr = Administrador de sesiones() sesión = mgr.create_session("linker_o6", hardware_serial="LBO6-001") imprimido(sesión["profunda_enlace"]) ¿Qué es esto?
mgr.get_session_info(sesión_id) → dict
Recupera los metadatos actuales para una sesión existente.
| Parameter | Type | Description |
|---|---|---|
| session_id | str | The session ID returned by create_session() or rc session. |
Retorna
Integración directa
API de REST de la plataforma
Los puntos finales REST a continuación son la API HTTP subyacente utilizada por el SDK. Utilizalas para la integración directa cuando el SDK Python no es apropiado (por ejemplo, agentes no Python, sistemas integrados o orquestación en el lado del servidor).
Todos los puntos finales son relativos a
Sesiones de teleop
- POST /api/teleop/sessions/create-sdk Crea una nueva sesión de SDK.
- Obtenga metadatos de sesión, estado de transmisión y URL de WebSocket para una sesión existente.
L1 oleoducto
- POST /api/l1/sessions/{id}/pipeline/start Iniciar una pipeline de procesamiento de datos para una sesión L1. Retorna un
T58 . - GET /api/l1/sessions/{id}/pipeline/status Revisa el estado de la tubería de procesamiento para una sesión.
- GET /api/l1/pipeline/{pipeline_id} Obtenga detalles completos de la operación de la tubería por ID de tubería, incluido el estado por etapa y los artefactos de salida.
- GET /api/l1/tiers Lista de configuraciones disponibles de niveles de procesamiento (estándar / de alta fidelidad / grado de investigación).
Configuración
Variables del medio ambiente
| 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. |
Posición en el caparazón:
Hardware
Dispositivos con soporte
| Device | --device flag |
Protocol | Status |
|---|---|---|---|
| LinkerBot O6 | linker-o6 |
USB Serial — RCSV AA55 header, 921600 baud | Production |
| VLAI L1 | l1 |
ROS2 / CAN-FD | Production |
Se añaden dispositivos adicionales en cada versión. Compruebe la salida
** Nuevo en robótica?** Esta es una referencia técnica de API para integradores de SDK. Si estás aprendiendo los fundamentos de la robótica







