LeRobot documentation

Robotlar

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.6.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Robotlar

LeRobot'taki her robot Robot arayüzünü uygular: bağlantı kurma, bir gözlem okuma, bir eylem gönderme ve bağlantıyı kesme. Bu arayüze göre bir politika veya kayıt betiği yazmak, bu betiğin herhangi bir desteklenen kolla değişiklik yapılmadan çalışması anlamına gelir.

Bu sayfa üretilmiş referanstır. Kablolama, kalibrasyon ve ilk çalıştırma talimatları için donanım kılavuzlarından başlayın — SO-101, LeKiwi, Hope Jr, Reachy 2, OpenArm — veya uçtan uca iş akışı için Imitation Learning for Robots. Çekirdek setin dışındaki topluluk tarafından sürdürülen robotlar için Third-Party Robots & Teleoperators bölümüne bakın. Kendi robotunuzu eklemek için Bring Your Own Hardware bölümüne bakın.

Robot

Soyut temel sınıf. Alt sınıflar aşağıdaki her yöntemi uygular; burada açıklanan sözleşme, bir politika veya kayıt döngüsünün güvenebileceği şeydir.

sınıf lerobot.robots.Robot

< >

( config: RobotConfig )

Parametreler

  • config_class (RobotConfig) — Bu robot için beklenen yapılandırma sınıfı.
  • name (str) — Bu robot türünü tanımlamak için kullanılan benzersiz robot adı.

Tüm LeRobot uyumlu robotlar için temel soyut sınıf.

Bu sınıf, fiziksel robotlarla etkileşim kurmak için standart bir arayüz sağlar. Alt sınıflar, kullanılabilir olabilmek için tüm soyut yöntemleri ve özellikleri uygulamak zorundadır.

bağlan

< >

( calibrate: bool = True )

Parametreler

  • calibrate (bool) — True ise, robot bağlantı kurulduktan sonra kalibre edilmemişse veya kalibrasyona ihtiyaç duyuyorsa otomatik olarak kalibre edilir (bu donanıma bağlıdır).

Robotla iletişim kurun.

bağlantıyı kes

< >

( )

Robottan bağlantıyı kesin ve gerekli temizlik işlemlerini gerçekleştirin.

yapılandır

< >

( )

Robotun herhangi bir tek seferlik veya çalışma zamanı yapılandırmasını uygulayın. Bu, motor parametrelerini, kontrol modlarını veya başlangıç durumunu ayarlamayı içerebilir.

calibrate

< >

( )

Uygulanabilirse robotu kalibre edin. Değilse, bu bir no-op (hiçbir şey yapmayan işlem) olmalıdır.

Bu yöntem, gerekli verileri (ör. motor ofsetleri) toplamalı ve :pyattr:calibration sözlüğünü buna göre güncellemelidir.

get_observation

< >

( ) → RobotObservation

Dönüş değeri

RobotObservation

Robotun mevcut duyusal durumunu temsil eden düz bir sözlük. Yapısı observation_features ile eşleşmelidir.

Robotun mevcut gözlem değerini alın.

send_action

< >

( action: dict ) → RobotAction

Parametreler

  • action (RobotAction) — İstenen eylemi temsil eden sözlük. Yapısı :pymeth:action_features ile eşleşmelidir.

Dönüş değeri

RobotAction

Motorlara aslında gönderilen eylem, örneğin hız üzerindeki güvenlik sınırları gibi nedenlerle kırpılmış veya değiştirilmiş olabilir.

Robota bir eylem komutu gönderin.

gözlem_özellikleri

< >

( )

Robotun ürettiği gözlemlerin yapısını ve türlerini açıklayan bir sözlük. Yapısı (anahtarları), :pymeth:get_observation tarafından döndürülen yapıyla eşleşmelidir. Sözlüğün değerleri şunlardan biri olmalıdır:

  • Basit bir değer olması durumunda değerin türü, örneğin tek bir proprioseptif değer (bir eklem konumu/hızı) için float
  • Dizgi türünde bir değer olması durumunda, örneğin görüntüler için (height, width, channel) gibi, şekli temsil eden bir demet

Not: Bu özellik, robot bağlı olsun ya da olmasın çağrılabilir olmalıdır.

action_features

< >

( )

Robotun beklediği eylemlerin yapısını ve türlerini açıklayan bir sözlük. Yapısı (anahtarları), :pymeth:send_action fonksiyonuna iletilen veri yapısıyla eşleşmelidir. Sözlüğün değerleri, basit bir değer olması durumunda o değerin türü olmalıdır; örneğin tek bir proprioseptif değer (bir eklem için hedef konum/hız) için float.

Not: Bu özellik, robot bağlı olsun ya da olmasın çağrılabilir olmalıdır.

is_connected

< >

( )

Robotun şu anda bağlı olup olmadığı. False ise, :pymeth:get_observation veya :pymeth:send_action çağrısı bir hata yükseltmelidir.

is_calibrated

< >

( )

Robotun şu anda kalibre edilip edilmediğini belirtir. Uygulanabilir değilse her zaman True olmalıdır

RobotConfig

sınıf lerobot.robots.RobotConfig

< >

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

make_robot_from_config

lerobot.robots.make_robot_from_config

< >

( config: RobotConfig )

SO-100 ve SO-101 takipçileri

SO100Follower ve SO101Follower, aynı SOFollower sınıfının takma adlarıdır; iki kol, kontrol kodlarında değil yapılandırmalarında farklılık gösterir. SO100FollowerConfig ve SO101FollowerConfig da benzer şekilde SOFollowerRobotConfig sınıfının takma adlarıdır.

sınıf lerobot.robots.so_follower.SOFollower

< >

( config: SOFollowerRobotConfig )

SO-100/101/10X için ortak işlevselliği uygulayan genel SO takipçi tabanı. Donanım modeli başına config_class ve name ile alt sınıflandırılmak üzere tasarlanmıştır.

bağlan

< >

( calibrate: bool = True )

Bağlantı anında kolun dinlenme konumunda olduğunu ve kalibrasyonu çalıştırmak için torkun güvenle devre dışı bırakılabileceğini varsayıyoruz.

send_action

< >

( action: dict ) → RobotAction

Dönüş değeri

RobotAction

motorlara gönderilen, potansiyel olarak kırpılmış eylem.

Yükseltilen

RobotDeviceNotConnectedError

  • RobotDeviceNotConnectedError — robot bağlı değilse.

Kolu, hedef eklem konfigürasyonuna hareket ettirmek için komut verin.

Göreli eylem büyüklüğü, max_relative_target yapılandırma parametresine bağlı olarak kırpılabilir. Bu durumda, gönderilen eylem orijinal eylemden farklıdır. Bu nedenle, bu fonksiyon her zaman fiilen gönderilen eylemi döndürür.

sınıf lerobot.robots.so_follower.SOFollowerRobotConfig

< >

( port: strdisable_torque_on_disconnect: bool = Truemax_relative_target: float | dict[str, float] | None = Nonecameras: dict = <factory>use_degrees: bool = Trueposition_p_coefficient: int = 16position_i_coefficient: int = 0position_d_coefficient: int = 32num_read_retries: int = 2id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

BiSOFollower

İki SO takipçisi, tek bir bimanuel robot olarak sürülür.

sınıf lerobot.robots.bi_so_follower.BiSOFollower

< >

( config: BiSOFollowerConfig )

TheRobotStudio tarafından tasarlanan İki Ellili SO Follower Kolları

sınıf lerobot.robots.bi_so_follower.BiSOFollowerConfig

< >

( left_arm_config: SOFollowerConfigright_arm_config: SOFollowerConfigcameras: dict = <factory>id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

Bi SO Follower robotları için yapılandırma sınıfı.

KochFollower

sınıf lerobot.robots.koch_follower.KochFollower

< >

( config: KochFollowerConfig )

  • Koch v1.0, bilek-dirsek genişletmesi ile ve olmadan, Tau Robotics'ten Alexander Koch tarafından geliştirilmiştir
  • Jess Moss tarafından geliştirilen Koch v1.1

bağlan

< >

( calibrate: bool = True )

Bağlantı anında kolun dinlenme konumunda olduğunu ve kalibrasyonu çalıştırmak için torkun güvenle devre dışı bırakılabileceğini varsayıyoruz.

send_action

< >

( action: dict ) → RobotAction

Parametreler

  • action (RobotAction) — Motorlar için hedef konumlar.

Dönüş değeri

RobotAction

Motorlara gönderilen, potansiyel olarak kırpılmış eylem.

Kolu, hedef eklem konfigürasyonuna hareket ettirmek için komut verin.

Göreli eylem büyüklüğü, max_relative_target yapılandırma parametresine bağlı olarak kırpılabilir. Bu durumda, gönderilen eylem orijinal eylemden farklıdır. Bu nedenle, bu fonksiyon her zaman fiilen gönderilen eylemi döndürür.

sınıf lerobot.robots.koch_follower.KochFollowerConfig

< >

( port: strdisable_torque_on_disconnect: bool = Truemax_relative_target: float | dict[str, float] | None = Nonecameras: dict = <factory>use_degrees: bool = Falseid: str | None = Nonecalibration_dir: pathlib.Path | None = None )

LeKiwi

LeKiwi robotun kendisinde çalışır. LeKiwiClient, ağ üzerinden onunla iletişim kuran ve aynı Robot arayüzünü sunan ana bilgisayar tarafındaki vekildir.

sınıf lerobot.robots.lekiwi.LeKiwi

< >

( config: LeKiwiConfig )

Robot, üç omniwheel mobil taban ve uzaktan takipçi kola sahiptir. Lider kol yerel olarak (laptop üzerinde) bağlanır ve eklem konumları kaydedildikten sonra uzaktaki takipçi kola iletilir (güvenlik sınırlaması uygulandıktan sonra). Paralel olarak, tekerlekler için ham hız komutları üretmek klavye teleoperasyonu kullanılır.

send_action

< >

( action: dict ) → RobotAction

Dönüş değeri

RobotAction

motorlara gönderilen, potansiyel olarak kırpılmış eylem.

Yükseltilen

RobotDeviceNotConnectedError

  • RobotDeviceNotConnectedError — robot bağlı değilse.

lekiwi'yi hedef eklem konfigürasyonuna hareket etmesi için komut verin.

Göreli eylem büyüklüğü, max_relative_target yapılandırma parametresine bağlı olarak kırpılabilir. Bu durumda, gönderilen eylem orijinal eylemden farklıdır. Bu nedenle, bu fonksiyon her zaman fiilen gönderilen eylemi döndürür.

sınıf lerobot.robots.lekiwi.LeKiwiConfig

< >

( port: str = '/dev/ttyACM0'disable_torque_on_disconnect: bool = Truemax_relative_target: float | dict[str, float] | None = Nonecameras: dict = <factory>use_degrees: bool = Truenum_read_retries: int = 2id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

sınıf lerobot.robots.lekiwi.LeKiwiClient

< >

( config: LeKiwiClientConfig )

bağlan

< >

( )

Uzak mobil robotla ZMQ soketlerini oluşturur

bağlantıyı kes

< >

( )

ZMQ iletişimini temizler

get_observation

< >

( )

Uzak robotdan gözlemleri yakalayın: mevcut takipçi kol konumları, mevcut tekerlek hızları (gövde çerçevesi hızlarına dönüştürülür: x, y, theta) ve bir kamera karesi. ZMQ üzerinden alır, gövde çerçevesi hızlarına çevir

send_action

< >

( action: dict ) → np.ndarray

Parametreler

  • action (RobotAction) — motorlar için hedef konumları içeren dizi.

Dönüş değeri

np.ndarray

motorlara gönderilen, potansiyel olarak kırpılmış eylem.

Yükseltilen

RobotDeviceNotConnectedError

  • RobotDeviceNotConnectedError — robot bağlı değilse.

lekiwi'yi hedef eklem konfigürasyonuna hareket etmesi için komutlandırın. Motor uzayına çevirir + ZMQ üzerinden gönderir

sınıf lerobot.robots.lekiwi.LeKiwiClientConfig

< >

( remote_ip: strport_zmq_cmd: int = 5555port_zmq_observations: int = 5556teleop_keys: dict = <factory>cameras: dict = <factory>polling_timeout_ms: int = 15connect_timeout_s: int = 5id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

OpenArmFollower

sınıf lerobot.robots.openarm_follower.OpenArmFollower

< >

( config: OpenArmFollowerConfig )

CAN bus iletişimini kullanarak 7 DOF'lu bir kolu ve kavrayıcıyı kontrol eden OpenArms Follower Robot. Kol, MIT kontrol modunda Damiao motorları kullanır.

calibrate

< >

( )

OpenArms robotu için kalibrasyon prosedürünü çalıştırın.

Kalibrasyon prosedürü:

  1. Torku devre dışı bırak
  2. Kullanıcıdan gripperlar kapalıyken kollarını asılı konuma getirmesini isteyin
  3. Bunu sıfır konumu olarak ayarlayın
  4. Her eklem için hareket aralığını kaydet
  5. Kalibrasyonu kaydet

yapılandır

< >

( )

Motorları uygun ayarlarla yapılandırın.

bağlan

< >

( calibrate: bool = True )

Robota bağlanın ve isteğe bağlı olarak kalibrasyon yapın.

Bağlantı anında kolların güvenli bir dinlenme konumunda olduğunu ve gerekirse kalibrasyonun çalıştırılabilmesi için torkun güvenle devre dışı bırakılabileceğini varsayıyoruz.

bağlantıyı kes

< >

( )

Robotla bağlantıyı kesin.

get_observation

< >

( )

Robotun konum, hız ve torkunu içeren mevcut gözlemi alın.

Tüm motor durumlarını (pos/vel/torque) 3 ayrı okuma yerine tek bir CAN yenileme döngüsünde okur.

send_action

< >

( action: dictcustom_kp: dict[str, float] | None = Nonecustom_kd: dict[str, float] | None = None )

Parametreler

  • action — Motor konumlarını içeren sözlük (ör. “joint_1.pos”, “joint_2.pos”)
  • custom_kp — Motor başına isteğe bağlı özel kp kazançları (ör. {“joint_1”: 120.0, “joint_2”: 150.0})
  • custom_kd — Motor başına isteğe bağlı özel kd kazançları (ör. {“joint_1”: 1.5, “joint_2”: 2.0})

Robota komut gönder.

Eylem büyüklüğü, güvenlik sınırlarına göre kırpılabilir.

sınıf lerobot.robots.openarm_follower.OpenArmFollowerConfig

< >

( port: strside: str | None = Nonecan_interface: str = 'socketcan'use_can_fd: bool = Truecan_bitrate: int = 1000000can_data_bitrate: int = 5000000disable_torque_on_disconnect: bool = Trueuse_velocity_and_torque: bool = Falsemax_relative_target: float | dict[str, float] | None = Nonecameras: dict = <factory>motor_config: dict = <factory>position_kp: list = <factory>position_kd: list = <factory>joint_limits: dict = <factory>id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

BiOpenArmFollower

sınıf lerobot.robots.bi_openarm_follower.BiOpenArmFollower

< >

( config: BiOpenArmFollowerConfig )

Bimanual OpenArm Follower Kollar

sınıf lerobot.robots.bi_openarm_follower.BiOpenArmFollowerConfig

< >

( id: str | None = 'bi_openarm_follower'calibration_dir: pathlib.Path | None = Noneleft_arm_config: OpenArmFollowerConfigBaseright_arm_config: OpenArmFollowerConfigBasecameras: dict = <factory> )

Bi OpenArm Follower robotları için yapılandırma sınıfı.

OmxFollower

sınıf lerobot.robots.omx_follower.OmxFollower

< >

( config: OmxFollowerConfig )

  • OMX, ROBOTIS bünyesindeki Woojin Wie ve Junha Cha tarafından geliştirilen genişletme

bağlan

< >

( calibrate: bool = True )

Önceden kalibre edilmiş olarak gelen OMX robotları için:

  • Paketten gelen varsayılan kalibrasyon motorlarla eşleşmiyorsa, motorlardan okuyun ve kaydedin
  • Bu, manuel kalibrasyon gerektirmeden önceden kalibre edilmiş robotların kullanılmasını sağlar
  • Eğer bir kalibrasyon dosyası yoksa, fabrika varsayılan değerlerini kullanın (homing_offset=0, range_min=0, range_max=4095)

send_action

< >

( action: dict ) → RobotAction

Parametreler

  • action (RobotAction) — Motorlar için hedef konumlar.

Dönüş değeri

RobotAction

Motorlara gönderilen, potansiyel olarak kırpılmış eylem.

Kolu, hedef eklem konfigürasyonuna hareket ettirmek için komut verin.

Göreli eylem büyüklüğü, max_relative_target yapılandırma parametresine bağlı olarak kırpılabilir. Bu durumda, gönderilen eylem orijinal eylemden farklıdır. Bu nedenle, bu fonksiyon her zaman fiilen gönderilen eylemi döndürür.

sınıf lerobot.robots.omx_follower.OmxFollowerConfig

< >

( port: strdisable_torque_on_disconnect: bool = Truemax_relative_target: float | dict[str, float] | None = Nonecameras: dict = <factory>use_degrees: bool = Falseid: str | None = Nonecalibration_dir: pathlib.Path | None = None )

Reachy2Robot

sınıf lerobot.robots.reachy2.Reachy2Robot

< >

( config: Reachy2RobotConfig )

Pollen Robotics tarafından geliştirilen Reachy 2.

sınıf lerobot.robots.reachy2.Reachy2RobotConfig

< >

( max_relative_target: float | None = Noneip_address: str | None = 'localhost'port: int = 50065disable_torque_on_disconnect: bool = Falseuse_external_commands: bool = Falsewith_mobile_base: bool = Truewith_l_arm: bool = Truewith_r_arm: bool = Truewith_neck: bool = Truewith_antennas: bool = Truewith_left_teleop_camera: bool = Falsewith_right_teleop_camera: bool = Falsewith_torso_camera: bool = Falsecamera_width: int = 640camera_height: int = 480cameras: dict = <factory>id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

UnitreeG1

sınıf lerobot.robots.unitree_g1.UnitreeG1

< >

( config: UnitreeG1Config )

sınıf lerobot.robots.unitree_g1.UnitreeG1Config

< >

( kp: list[float] | None = Nonekd: list[float] | None = Nonedefault_positions: list = <factory>control_dt: float = 0.004is_simulation: bool = Trueend_effector: G1EndEffector = <G1EndEffector.DEX1: 'dex1'>sim_publish_images: bool = Truesim_camera_port: int = 5555sim_onscreen: bool | None = Nonerobot_ip: str = '192.168.123.164'cameras: dict = <factory>gravity_compensation: bool = Falsecontroller: str | None = Noneembodiment: str = 'g1_29'id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

Hope Jr

Hope Jr humanoid, iki bağımsız robot olarak, bir kol ve bir el olarak sunulur.

sınıf lerobot.robots.hope_jr.HopeJrArm

< >

( config: HopeJrArmConfig )

bağlan

< >

( calibrate: bool = True )

Bağlantı anında kolun dinlenme konumunda olduğunu ve kalibrasyonu çalıştırmak için torkun güvenle devre dışı bırakılabileceğini varsayıyoruz.

sınıf lerobot.robots.hope_jr.HopeJrArmConfig

< >

( port: strdisable_torque_on_disconnect: bool = Truemax_relative_target: float | dict[str, float] | None = Nonecameras: dict = <factory>id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

sınıf lerobot.robots.hope_jr.HopeJrHand

< >

( config: HopeJrHandConfig )

sınıf lerobot.robots.hope_jr.HopeJrHandConfig

< >

( port: strside: strdisable_torque_on_disconnect: bool = Truecameras: dict = <factory>id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

RebotB601Follower

sınıf lerobot.robots.rebot_b601_follower.RebotB601Follower

< >

( config: RebotB601FollowerRobotConfig )

Seeed Studio reBot B601 takip kolu (6-DOF + kavrama, CAN motorlar).

Motor iletişimi, CAN hattı üzerinden motorbridge paketi tarafından yönetilir; bu hat, Damiao seri köprüsü veya MotorBridge'in yerel CAN taşıma katmanı aracılığıyla erişilir.

yapılandır

< >

( )

Torku etkinleştirmeden önce her motorun kontrol modunu ayarlayın.

disable_torque

< >

( )

Kolu elle hareket ettirebilmek için motor torkunu devre dışı bırakın (salt okunur hata ayıklama).

bağlantıyı kes

< >

( )

Motorları ve kameraları robottan ayırın.

send_action

< >

( action: dict )

Kolun hedef eklem konfigürasyonuna komut edin.

Konumlar derece cinsinden ifade edilir. Göreceli eylem büyüklüğü, max_relative_target'a bağlı olarak kırpılabilir; bu nedenle aslında gönderilen eylem her zaman döndürülür.

sınıf lerobot.robots.rebot_b601_follower.RebotB601FollowerRobotConfig

< >

( port: strmotor_family: MotorFamily = <MotorFamily.DM: 'dm'>can_adapter: str | None = Nonedm_serial_baud: int = 921600disable_torque_on_disconnect: bool = Truemax_relative_target: float | dict[str, float] | None = Nonecameras: dict = <factory>motor_can_ids: dict[str, tuple[int, int]] | None = Nonecontrol_mode: ArmControlMode = <ArmControlMode.MIT: 'mit'>gripper_control_mode: lerobot.robots.rebot_b601_follower.motor_family.GripperControlMode | None = Nonemit_kp: float | dict[str, float] | None = Nonemit_kd: float | dict[str, float] | None = Nonepos_vel_velocity: float | dict[str, float] | None = Nonegripper_torque_ratio: float | None = Nonegripper_torque_limit: float | None = Nonegripper_hold_torque_limit: float | None = Nonejoint_limits: dict[str, tuple[float, float]] | None = Noneid: str | None = Nonecalibration_dir: pathlib.Path | None = None )

reBot B601 takip robotu için kayıtlı yapılandırma.

BiRebotB601Follower

sınıf lerobot.robots.bi_rebot_b601_follower.BiRebotB601Follower

< >

( config: BiRebotB601FollowerConfig )

Bimanual Seeed Studio reBot B601 takipçi.

İki tek kollu RebotB601Follower örneğini birleştirir. Her kolun gözlem ve eylem anahtarları left_ / right_ önekiyle adlandırılmıştır.

sınıf lerobot.robots.bi_rebot_b601_follower.BiRebotB601FollowerConfig

< >

( left_arm_config: RebotB601FollowerConfigright_arm_config: RebotB601FollowerConfigcameras: dict = <factory>id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

İki kollu reBot B601 takipçi robotu için yapılandırma sınıfı.

EarthRoverMiniPlus

sınıf lerobot.robots.earthrover_mini_plus.EarthRoverMiniPlus

< >

( config: EarthRoverMiniPlusConfig )

Parametreler

  • config — Robot yapılandırması
  • sdk_base_url — Frodobots SDK sunucusunun temel URL'si, config.sdk_url değerinden alınır (varsayılan: http://localhost:8000)

Frodobots SDK HTTP API ile kontrol edilen EarthRover Mini Plus robotu.

Bu robot, doğrudan donanım bağlantısı yerine Frodobots SDK üzerinden bulut tabanlı kontrol kullanır. Kameralar, Agora bulutu üzerinden WebRTC ile yayın yapar ve kontrol komutları HTTP POST istekleri ile gönderilir.

Robot şu özellikleri destekler:

  • SDK HTTP uç noktaları üzerinden erişilen çift kamera (ön ve arka)
  • Doğrusal ve açısal hız kontrolü
  • Pil ve yön telemetrisi

calibrate

< >

( )

SDK tabanlı robot için kalibrasyon gerekmez.

yapılandır

< >

( )

Robotu yapılandırın (SDK tabanlı robot için hiçbir şey yapmaz).

bağlan

< >

( calibrate: bool = True )

Parametreler

  • calibrate — SDK tabanlı robotlar için kullanılmaz (API uyumluluğu için korunur)

Yükseltilen

DeviceAlreadyConnectedError veya DeviceNotConnectedError

  • DeviceAlreadyConnectedError — Robot zaten bağlıysa
  • DeviceNotConnectedError — SDK sunucusuna bağlanamıyorsa

Frodobots SDK ile robota bağlanın.

bağlantıyı kes

< >

( )

Yükseltilen

DeviceNotConnectedError

  • DeviceNotConnectedError — Robot bağlı değilse

Robotla bağlantıyı kesin.

Robotu durdurur ve SDK bağlantısını kapatır.

get_observation

< >

( ) → RobotObservation

Dönüş değeri

RobotObservation

Şu gözlemi içeren:

  • front: RGB formatında ön kamera görüntüsü (480, 640, 3)
  • rear: Arka kamera görüntüsü (480, 640, 3) RGB biçiminde
  • speed: float - Mevcut hız (ham SDK değeri)
  • battery_level: float - Pil seviyesi (0-100)
  • orientation: float - Derece cinsinden robot yönelimi
  • gps_latitude: float - GPS enlem koordinatı
  • gps_longitude: float - GPS enlem koordinatı
  • gps_signal: float - GPS sinyal gücü (yüzde)
  • signal_level: float - Ağı sinyal seviyesi (0-5)
  • vibration: float - Titreşim sensörü okuması
  • lamp: float - Lamba durumu (0=kapalı, 1=açık)
  • accelerometer_x/y/z: float - İvmeölçer eksenleri (ham SDK değeri)
  • gyroscope_x/y/z: float - Jiroskop eksenleri (ham SDK değeri)
  • magnetometer_filtered_x/y/z: float - Magnetometre eksenleri (ham SDK değeri)
  • wheel_rpm_0/1/2/3: float - Tekerlek RPM değerleri

Yükseltilen

DeviceNotConnectedError

  • DeviceNotConnectedError — Robot bağlı değilse

SDK'dan güncel robot gözlem değerini alın.

Kamera kareleri SDK uç noktalarından /v2/front ve /v2/rear üzerinden alınır. Kareler base64'ten çözümlenir ve BGR'den RGB formatına dönüştürülür. Robot telemetrisi /data ucundan alınır. Sensör dizileri (accels, gyros, mags, rpms) her biri [values…, timestamp] girdileri içerir; her diziden en son okuma kullanılır.

Not: Kamera kareleri SDK uç noktalarından /v2/front ve /v2/rear adreslerinden alınır. Kareler base64'ten çözümlenir ve BGR'den RGB formatına dönüştürülür. Robot telemetrisi /data uç noktasından alınır. Tüm SDK değerleri, veri seti kaydı için uygun aralıklara normalize edilir.

send_action

< >

( action: dict ) → RobotAction

Parametreler

  • action — Aşağıdaki anahtarlara sahip Action sözlüğü:
    • linear_velocity: Hedef doğrusal hız (-1 ile 1 arasında)
    • angular_velocity: Hedef açısal hız (-1 ile 1 arasında)

Dönüş değeri

RobotAction

Gönderilen eylem (action_features anahtarlarıyla eşleşir)

Yükseltilen

DeviceNotConnectedError

  • DeviceNotConnectedError — Robot bağlı değilse

SDK üzerinden eylemi robota gönderin.

Not: Eylemler, SDK'ya POST /control uç noktası üzerinden gönderilir. SDK, [-1, 1] aralığında komutlar bekler.

sınıf lerobot.robots.earthrover_mini_plus.EarthRoverMiniPlusConfig

< >

( sdk_url: str = 'http://localhost:8000'id: str | None = Nonecalibration_dir: pathlib.Path | None = None )

Parametreler

  • sdk_url — Frodobots SDK sunucusunun URL'si (varsayılan: http://localhost:8000)

Frodobots SDK kullanılarak EarthRover Mini Plus robotu için yapılandırma.

Bu robot, Frodobots SDK HTTP API üzerinden bulut tabanlı kontrol kullanır. Kamera kareleri, doğrudan SDK HTTP uç noktaları üzerinden erişilir.

Update on GitHub