LeRobot documentation
Teleoperadores
Teleoperadores
Un teleoperador genera acciones para que un robot las siga: un brazo líder, un mando de videojuegos, un teclado, un teléfono. Todos ellos implementan la interfaz Teleoperator, por lo que un guion de grabación escrito para ella funciona con cualquier dispositivo de entrada.
Consulte Phone teleoperation y Isaac Teleop para las guías de configuración, y Imitation Learning for Robots para el flujo de trabajo de grabación. Para dispositivos mantenidos por la comunidad fuera del conjunto principal, consulte Third-Party Robots & Teleoperators. Para agregar un teleoperador propio, consulte Bring Your Own Hardware.
Teleoperador
clase lerobot.teleoperators.Teleoperator
< source >( config: TeleoperatorConfig )
La clase abstracta base para todos los dispositivos de teleoperación compatibles con LeRobot.
Esta clase proporciona una interfaz estandarizada para interactuar con teleoperadores físicos. Las subclases deben implementar todos los métodos y propiedades abstractos para ser utilizables.
connect
< source >( calibrate: bool = True )
Establecer la comunicación con el teleoperador.
Desconéctese del teleoperador y realice la limpieza necesaria.
Aplica cualquier configuración de una sola vez o en tiempo de ejecución al teleoperador. Esto puede incluir la configuración de parámetros de motor, modos de control o estado inicial.
Calibre el teleoperador si es aplicable. De lo contrario, esta operación no debería tener ningún efecto.
Este método debe recopilar los datos necesarios (p. ej., compensaciones de motor) y actualizar el diccionario
:pyattr:calibration en consecuencia.
get_action
< source >( ) → RobotAction
Devuelve
RobotAction
Un diccionario plano que representa las acciones actuales del teleoperador. Su estructura debe coincidir con :pymeth:observation_features.
Obtén la acción actual del teleoperador.
enviar_comentarios
< source >( feedback: dict ) → dict[str, Any]
Parámetros
- feedback (dict[str, Any]) — Diccionario que representa el feedback deseado. Su estructura debe coincidir con
:pymeth:
feedback_features.
Devuelve
dict[str, Any]
La acción enviada realmente a los motores, posiblemente recortada o modificada, por ejemplo, por límites de seguridad en la velocidad.
Envía un comando de acción de retroalimentación al teleoperador.
Un diccionario que describe la estructura y los tipos de las acciones producidas por el teleoperador. Su estructura (claves) debe coincidir con la estructura de lo que devuelve :pymeth:get_action. Los valores del diccionario deben ser el tipo del valor si es un valor simple, p. ej. float para un valor propioceptivo individual (la posición/velocidad objetivo de una articulación)
Nota: esta propiedad debe poder llamarse independientemente de si el robot está conectado o no.
Un diccionario que describe la estructura y los tipos de las acciones de retroalimentación esperadas por el robot. Su estructura (claves) debe coincidir con la estructura de lo que se pasa a :pymeth:send_feedback. Los valores del diccionario deben ser el tipo del valor si es un valor simple, p. ej. float para un valor propioceptivo único (la posición/velocidad objetivo de una articulación)
Nota: esta propiedad debe poder llamarse independientemente de si el robot está conectado o no.
Si el teleoperador está conectado en este momento o no. Si es False, llamar a :pymeth:get_action o :pymeth:send_feedback debe lanzar un error.
Si el teleoperador está actualmente calibrado o no. Debe ser siempre True si no es aplicable
TeleoperatorConfig
clase lerobot.teleoperators.TeleoperatorConfig
< source >( id: str | None = Nonecalibration_dir: pathlib.Path | None = None )