Robotyka Open-Source

LeRobot, SO-100 oraz Jetson Orin Nano

Wprowadzenie i możliwości

Plan prezentacji

1. Platforma LeRobot

Framework, algorytmy uczenia, społeczność

2. Hardware SO-100

Specyfikacje, budowa, komponenty

3. Jetson Orin Nano

Obliczenia AI, edge computing

4. Demonstracja Live

Teleoperacja w czasie rzeczywistym

LeRobot Framework

Framework open-source oparty na PyTorch dla uczenia robotów end-to-end

  • Licencja Apache 2.0
  • Modularna architektura
  • Integracja z Hugging Face Hub
  • Standardowy format danych (dane tabelaryczne, wizualne, metadata)
  • Agnostyczny sprzętowo, wsparcie dla rożnych modeli robotów, możliwość wykorzystania i implementacji wsparcia dla własnych konstrukcji
  • Zestaw otwartoźródłowych zbiorów danych
  • Społeczność praktyków rozwijających cały ekosystem

Uczenie przez Imitację (Behavioral cloning)

 

Koncepcja

Demonstracja przez eksperta (manualnie)
Zapis przykładów treningowych (Obraz, Stan, Akcje)
Uczenie nadzorowane
Robot wykonuje zadanie autonomi

 

Uczenie przez Imitację (Behavioral cloning)

Wyzwania

Kumulacja błędów

Małe błędy narastają wykładniczo:
Krok 100 → skumulowany błąd z każdego poprzedniego kroku

Multimodalność

Wiele poprawnych rozwiązań, a
uśrednianie prowadzi do błędów.

Algorytmy w LeRobot

Algorytm Zastosowanie Ilość przykładów Inferencja
ACT Dwuręczne, kontaktowe 50 10-15ms
Diffusion Multimodalne, wysokie DOF 50-100 50-200ms
VLA Wielozadaniowe, język 10-50 (fine-tuning) 100-200ms

 

ACT - Szybki

Diffusion - Multimodalny

VLA - Językowy, do wielu zadań

ACT — Action Chunking

 

Kluczowa zmiana w przypadku podejścia ACT polega na przewidywaniu 100 akcji naraz, zamiast przewidywania pojedynczych kroków. 500 kroków / 100 = 5 decyzji, co przekłada się na mniejsze ryzyko kumulacji błędów.

 

Architektura

ResNet18 (wizja) → Transformer (sekwencje) → CVAE (różnorodność)

ACT — Action Chunking

Autorzy przetestowali algorytm na 8 zadaniach jakotwieranie kubka, wkładanie baterii do pilota, czy przesuwanie klocków. Osiągając do ponad 90% sukcesów wykonania zadań przez wytrenowanego robota (dla wkładania baterii do pilota).

Efekty

Metryka Wartość
Sukces 50-90% (zależnie od zadania)
Demonstracje 50
Uczenie 3-12h
Inferencja 10-15ms
Zhao, T. Z., Kumar, V., Levine, S., & Finn, C. (2023). Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware. arXiv. 10.48550/arXiv.2304.13705

ACT — Action Chunking

lerobot-train \
  --dataset.repo_id=${HF_USER}/your_dataset \
  --policy.type=act \
  --output_dir=outputs/train/act_run

Diffusion Policy

 

W przypadku diffusion policy, stosowany jest podejście z iteracynym odszumianiem (diffusion) losowego szumu do momentu otrzymania prawidłowych akcji dla robota. Dzięki losowej inicjalizacji, podejście to eksploruje różne rozwiązania, co pomaga wspierać multimodalność. Jest też stosunkowo odporna na zakłocenia i zapewnia płynne trajektorie ruchu robota.

Diffusion Policy

 

Efekty

Metryka Wartość
Sukces 50-95% (zależnie od zadania)
Demo 50-150
Uczenie 12h
Inferencja 50-200ms

Chi, C., Xu, Z., Feng, S., Cousineau, E., Du, Y., Burchfiel, B., Tedrake, R., & Song, S. (2024). Diffusion Policy: Visuomotor Policy Learning via Action Diffusion. arXiv. 10.48550/arXiv.2303.04137

Diffusion Policy

 

 

python -m lerobot.scripts.train \
  --output_dir=outputs/train/diffusion_pusht \
  --policy.type=diffusion \
  --dataset.repo_id=lerobot/pusht \
  --seed=100000 \
  --env.type=pusht \
  --batch_size=64 \
  --steps=200000 \
  --eval_freq=25000 \
  --save_freq=25000

Vision-Language-Action

SmolVLA

 

SmolVLA to jeden z modeli z gatunku Vision-Language-Model, przygotowany przez HuggingFace, służacy jako "foundational" model o 450M parametrów, wytrenowany na bazie otwartego zbioru danych zawierającego nagrania robotów wykonujących rózne akcje. Łączy vision i text encodery i na tej podstawie dokonuje inferencji akcji, które ma wykonać robot. Wymaga ok. 10-50 przykładowych nagrań do fine-tuningu. 

 

Shukor, M., Aubakirova, D., Capuano, F., Kooijmans, P., Palma, S., Zouitine, A., Aractingi, M., Pascal, C., Russi, M., Marafioti, A., Alibert, S., Cord, M., Wolf, T., & Cadene, R. (2025). SmolVLA: A Vision-Language-Action Model for Affordable and Efficient Robotics. arXiv. 10.48550/arXiv.2506.01844

 

   

Vision-Language-Action

SmolVLA

Shukor, M., Aubakirova, D., Capuano, F., Kooijmans, P., Palma, S., Zouitine, A., Aractingi, M., Pascal, C., Russi, M., Marafioti, A., Alibert, S., Cord, M., Wolf, T., & Cadene, R. (2025). SmolVLA: A Vision-Language-Action Model for Affordable and Efficient Robotics. arXiv. 10.48550/arXiv.2506.01844

Vision-Language-Action

SmolVLA

 

lerobot-train \
  --policy.path=lerobot/smolvla_base \
  --dataset.repo_id=${HF_USER}/my_dataset \
  --batch_size=64 \
  --steps=20000

LeRobot - zestawy danych

LeRobot to również zbiory otwartoźródłowych danych, aktualnie jest dostępne ponad 100 zestawów, mających ponad 30 tys. pojedycznych epizodów, dla zadań takich jak podnoszenie i przemieszczanie, układanie (jeden na drugim), sortowanie przedmiotów, czy koordynacja między dwoma ramionami. 

from lerobot.common.datasets

import LeRobotDataset dataset = LeRobotDataset("lerobot/pusht")

Ramię Robotyczne SO-100/101

 

 

W pełni open-source (pliki CAD, BOM, kod) ramię robotyczne, drukowane 3D, zaprojektowane by ułatwić eksperymenty związane z wykorzystaniem metod uczenia maszynowego do kontroli robotów. Jedną z dużych zalet jest łatwość złożenia oraz stosunkowo niski koszt (<1000 PLN) w porównaniu do innych podobnych rozwiązań jak np ALOHA. Ramię to ma 6 stopni swobody (5+1), zasięg ramienia to ok 40-50 cm, rozdzielczość serw to 0.088°, udzwig to około 100-200g. Zestaw to dwa ramiona, leader oraz follower.

Komponenty

 

 

  • 6× serwomechanizmy STS3215
  • ~20 części drukowanych 3D
  • Śruby M2, M3 (metryczne)
  • Adapter MotorBus (USB→TTL)
  • Zasilacz 7.4V/12V, 3-5A
  • Kamery do rejestracji ruchu robota

Ulepszenia SO-101

Mieszane Przełożenia

Leader: łatwiejszy do poruszania
Follower: większy moment obrotowy

Prostszy Montaż

Prekonfigurowane silniki

Lepsze Okablowanie

Routing zewnętrzny
Zwiększona niezawodność

 

Przekłada się to na mniejszą siłę potrzebną do teleoperacji i większą niezawodność działania robota

NVIDIA Jetson Orin Nano

 

 

 

 

Komponent Spec
GPU 1024 CUDA cores, Ampere, 32 Tensor Cores
CPU 6-core ARM Cortex-A78, 
Pamięć 8GB LPDDR5, 102 GB/s
Moc obliczeniowa

67 TOPS AI / 17 FP16 TFLOPS

Cena ~1200 PLN

Komputer jednopłytkowy wyprodukowany przez NVidia,   dedykowany zastosowaniom brzegowym, wyposażony w akcelerator w formie GPU. 

 

Zasoby

Dokumentacja

huggingface.co/docs/lerobot

GitHub

github.com/huggingface/lerobot

Społeczność

discord.com/invite/s3KuuzsPFb

Hardware

github.com/TheRobotStudio/SO-ARM100

Demo - teleoperacja

Made with Slides.com