LeRobot documentation

Телеоператоры

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Телеоператоры

Телеоператор генерирует действия, которые выполняет робот, — это может быть ведущая рука, геймпад, клавиатура или телефон. Все они реализуют интерфейс Teleoperator, поэтому сценарий записи, написанный для этого интерфейса, работает с любым устройством ввода.

См. Телеуправление с телефона и Isaac Teleop для руководств по настройке, а также Имитационное обучение для роботов для рабочего процесса записи. Для устройств, поддерживаемых сообществом, вне основного набора, см. Роботы и телеоператоры сторонних разработчиков. Чтобы добавить собственный телеоператор, см. Принесите своё оборудование.

Телеоператор

класс lerobot.teleoperators.Teleoperator

< >

( config: TeleoperatorConfig )

Параметры

  • config_class (RobotConfig) — Ожидаемый класс конфигурации для данного телеоператора.
  • name (str) — Уникальное имя, используемое для идентификации данного типа телеоператора.

Базовый абстрактный класс для всех устройств телеуправления, совместимых с LeRobot.

Этот класс предоставляет стандартизированный интерфейс для взаимодействия с физическими телеоператорами. Подклассы должны реализовать все абстрактные методы и свойства, чтобы быть пригодными для использования.

connect

< >

( calibrate: bool = True )

Параметры

  • calibrate (bool) — Если True, автоматически калибрует телеоператора после подключения, если он не откалиброван или требует калибровки (зависит от аппаратной части).

Установите связь с телеоператором.

отключить

< >

( )

Отключитесь от телеоператора и выполните необходимую очистку.

configure

< >

( )

Примените любую одноразовую или конфигурацию во время выполнения к телеоператору. Это может включать в себя настройку параметров двигателей, режимов управления или начального состояния.

calibrate

< >

( )

При необходимости откалибруйте телеоператора. Если это не требуется, операция не должна ничего делать.

Этот метод должен собирать все необходимые данные (например, смещения моторов) и соответствующим образом обновлять словарь :pyattr:calibration.

get_action

< >

( ) → RobotAction

Возвращает

RobotAction

Плоский словарь, представляющий текущие действия телеоператора. Его структура должна соответствовать :pymeth:observation_features.

Получите текущее действие от телеоператора.

send_feedback

< >

( feedback: dict ) → dict[str, Any]

Параметры

  • feedback (dict[str, Any]) — Словарь, описывающий желаемую обратную связь. Его структура должна соответствовать :pymeth:feedback_features.

Возвращает

dict[str, Any]

Действие, фактически отправленное на моторы, может быть обрезано или изменено, например, из-за ограничений безопасности по скорости.

Отправьте команду действия обратной связи телеоператору.

action_features

< >

( )

Словарь, описывающий структуру и типы действий, генерируемых телеоператором. Его структура (ключи) должна соответствовать структуре данных, возвращаемых методом :pymeth:get_action. Значениями словаря должны быть типы соответствующих значений, если это простые значения, например float для единственного проприоцептивного значения (целевая позиция/скорость сустава).

Примечание: этот метод должен вызываться независимо от того, подключен ли робот или нет.

feedback_features

< >

( )

Словарь, описывающий структуру и типы действий обратной связи, ожидаемых роботом. Его структура (ключи) должна соответствовать структуре данных, передаваемых в :pymeth:send_feedback. Значения в словаре должны указывать тип значения, если это простое значение, например float для единственного проприоцептивного значения (целевая позиция/скорость сустава)

Примечание: этот метод должен вызываться независимо от того, подключен ли робот или нет.

is_connected

< >

( )

Указывает, подключён ли телеоператор в данный момент. Если False, вызов :pymeth:get_action или :pymeth:send_feedback должен вызывать ошибку.

is_calibrated

< >

( )

Указывает, откалиброван ли телеоператор в данный момент. Если не применимо, должно всегда быть True

TeleoperatorConfig

класс lerobot.teleoperators.TeleoperatorConfig

< >

( id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

make_teleoperator_from_config

lerobot.teleoperators.make_teleoperator_from_config

< >

( config: TeleoperatorConfig )

Update on GitHub