
Unitree G1
Humanoidalny robot dwunożny firmy Unitree Robotics, zaprojektowany jako kompaktowa platforma badawczo-rozwojowa oraz deweloperska.
- Badania
- Asystencja domowa

NVIDIA PhysX to silnik fizyki czasu rzeczywistego pierwotnie opracowany przez NovodeX (2001) i przejęty przez NVIDIA w 2008 r. Od PhysX 5 (2022) silnik jest w pełni otwartoźródłowy na licencji BSD-3. Wspiera symulację ciał sztywnych z constraintami, ciał miękkich (FEM), tkanin, drobnoziarnistego SDF dla deksterności i fluidów PBF (Position Based Fluids).
Architektura PhysX 5 jest wielowątkowa i akcelerowana na GPU (CUDA): scena dzielona jest na worki współdzielonej pamięci, a kolizje, dynamika i constraintsy wykonywane są równolegle. GPU rigid-body solver osiąga 10-100x wyższe FPS w porównaniu do PhysX 4 CPU, co umożliwia treningi RL z tysiącami środowisk równocześnie (Isaac Gym/Isaac Lab).
PhysX jest natywnym silnikiem fizyki w NVIDIA Isaac Sim, NVIDIA Omniverse i opcjonalnym w Unreal Engine 5. W robotyce wykorzystywany do symulacji manipulatorów z constraintami (Franka Panda, UR5), humanoidów (Atlas, Digit, Optimus) oraz collision detection w MoveIt 2.
Simulation obejmuje oprogramowanie używane do modelowania, testowania i walidacji zachowań robotów, sensorów, środowisk oraz algorytmów bez konieczności użycia fizycznego sprzętu.
API Library to biblioteka udostępniająca interfejsy programistyczne do komunikacji z urządzeniem, usługą lub systemem. W praktyce może stanowić lekką warstwę integracyjną opartą na oficjalnym API producenta lub projekcie open-source.
Runtime to środowisko lub warstwa uruchomieniowa wykorzystywana do wykonywania kodu, ładowania bibliotek, obsługi zależności i działania aplikacji lub usług w czasie rzeczywistym albo w czasie pracy systemu.
Developer Enablement oznacza rolę oprogramowania wspierającego deweloperów w integracji, debugowaniu, walidacji, konfiguracji, testowaniu i uruchamianiu systemów robotycznych oraz ich komponentów.
Motion Planning oznacza rolę oprogramowania odpowiedzialnego za planowanie trajektorii, ruchu, kolejności działań oraz wyznaczanie bezpiecznych i wykonalnych ścieżek dla robota lub manipulatora.
Rodzina oprogramowania robotycznego i AI rozwijana w ekosystemie NVIDIA Isaac.
NVIDIA Isaac Sim, NVIDIA Omniverse, Unreal Engine 4/5 (legacy), MoveIt 2 (collision detection), Isaac Gym/Lab (RL trening tysięcy środowisk), Disney symulacje robotyki.
3.6k★ na GitHub (NVIDIA-Omniverse/PhysX), 800+ kontrybutorów akademickich, używany w 1000+ publikacjach naukowych z RL robotyki.

Humanoidalny robot dwunożny firmy Unitree Robotics, zaprojektowany jako kompaktowa platforma badawczo-rozwojowa oraz deweloperska.

Pełnowymiarowy uniwersalny humanoid Unitree Robotics, ok. 180 cm i 47 kg, 5 DOF na nogę, prędkość 3,3 m/s, percepcja 3D LiDAR + kamera głębi, kluczowe stawy z silnikami PMSM Unitree M107.

Figure 03 to trzeciej generacji humanoidalny robot Figure AI, zaprojektowany dla Helix, środowiska domowego i skalowalnej produkcji masowej.

Ogólnoprzeznaczony robot rozwijany przez Teslę od 2021 r. (Tesla Bot). Wzrost ok. 173 cm, masa 57 kg, udźwig 20 kg. Dłonie generacji 3 mają 22 stopnie swobody. Sterowany systemem AI wywodzącym się z Tesla FSD.
C++ to język programowania szeroko wykorzystywany w robotyce, systemach embedded, middleware, sterowaniu i przetwarzaniu danych, szczególnie tam, gdzie istotna jest wydajność oraz bliska integracja ze sprzętem.
C to język programowania powszechnie wykorzystywany w firmware, sterownikach, mikrokontrolerach i systemach embedded, gdzie wymagana jest bezpośrednia kontrola nad zasobami sprzętowymi.
Python to wysokopoziomowy język programowania szeroko stosowany w robotyce, AI, computer vision, automatyzacji, testach i szybkiej integracji komponentów sprzętowych oraz software'owych.
Ubuntu 22.04 LTS to długoterminowo wspierana wersja systemu Linux wykorzystywana w robotyce, AI, systemach edge i środowiskach programistycznych. Stanowi popularną bazę dla nowszych stosów oprogramowania oraz dystrybucji ROS 2.
Ubuntu 20.04 LTS to długoterminowo wspierana wersja systemu Linux, szeroko wykorzystywana w robotyce, systemach embedded, AI i środowiskach developerskich. Jest popularna m.in. w środowiskach ROS oraz na platformach obliczeniowych takich jak NVIDIA Jetson.
Windows to rodzina systemów operacyjnych Microsoft wykorzystywana w środowiskach desktopowych, developerskich i integracyjnych. W robotyce występuje głównie jako środowisko narzędziowe, konfiguracyjne lub developerskie.
macOS to system operacyjny Apple wykorzystywany głównie na stacjach roboczych i laptopach deweloperskich do budowy, testowania i integracji oprogramowania.
PhysX SDK ~500 MB ze sample'ami i dokumentacją. GPU akceleracja wymaga CUDA 11.4+.
Mechanizm dystrybucji oprogramowania przez GitHub Releases – binarne artefakty (skompilowane pliki wykonywalne, biblioteki, archiwia .tar.gz, .zip, pakiety .deb, .rpm, obrazy Docker) dołączane do tagowanych wydań GitHub. GitHub Actions Artifacts: tymczasowe artefakty budowania przechowywane przez ograniczony czas (90 dni domyślnie). Stosowane w robotyce dla: SDK robotów bez własnej infrastruktury dystrybucji (pobranie .deb lub tarball z GitHub Releases), gotowych binarnych buildów dla konkretnych platform (ROS 2 pre-built dla Raspberry Pi aarch64 przez GitHub Actions), narzędzi CLI i aplikacji standalone. GitHub Container Registry (ghcr.io): hosting obrazów Docker w ramach GitHub – alternatywa dla Docker Hub zintegrowana z GitHub Actions. Automatyzacja: GitHub Actions workflow budujący i publikujący release przy każdym tagu (np. 'on: push: tags: v*'). Ograniczenia: brak zarządzania zależnościami (użytkownik musi samodzielnie zainstalować dependencies), brak automatycznych aktualizacji, wymaga ręcznego pobierania nowych wersji (chyba że używany instalator lub package manager pobiera z GitHub Releases API).
Dystrybucja wyłącznie przez kod źródłowy z systemem budowania CMake lub ament_cmake (ROS 2 extension CMake). Użytkownik pobiera kod źródłowy (git clone lub tarball) i kompiluje lokalnie przez: 'cmake -B build && cmake --build build' (CMake) lub 'colcon build' (ament_cmake w workspace ROS 2). Stosowana gdy: pakiet nie jest dostępny w żadnym rejestrze binarnym, wymagana jest custom konfiguracja kompilacji (specyficzne flagi kompilatora, opcje cmake), oprogramowanie targetuje niestandardową platformę sprzętową (exotic embedded SoC), deweloper chce modyfikować kod źródłowy. Typowy workflow w ROS 2: vcstool importuje źródła do workspace/src, colcon build kompiluje. Wymaga zainstalowania wszystkich build dependencies (compilery, biblioteki systemowe) – rosdep automatyzuje instalację dependencies. Najdłuższy czas instalacji (kompilacja może trwać dziesiątki minut na embedded hardware), ale maksymalna kontrola i konfigurowalność. Standard dla pakietów ROS 2 niedostępnych jeszcze w apt lub wymagających niestandardowej kompilacji.
Specjalizowany rejestr kontenerów NVIDIA NGC (NVIDIA GPU Cloud – ngc.nvidia.com) zawierający optymalizowane obrazy dla platform NVIDIA: Jetson (aarch64) i x86_64 z GPU. Dystrybuuje oficjalne kontenery Isaac ROS (GPU-accelerated Computer Vision dla ROS 2), Isaac Sim (symulator robotyczny oparty na Omniverse), Isaac Lab (framework trenowania RL), TensorRT, CUDA, cuDNN i inne biblioteki NVIDIA. Kontenery NGC są prebuildowane i zoptymalizowane dla konkretnych wersji JetPack (np. JetPack 6.x / CUDA 12.x na Jetson AGX Orin) – zapewniają pełne wsparcie GPU bez ręcznej konfiguracji sterowników. Wymagana bezpłatna rejestracja na ngc.nvidia.com i logowanie przez 'docker login nvcr.io'. Isaac ROS containers: 'nvcr.io/nvidia/isaac/ros:humble-isaac-ros-common-aarch64' dla Jetson. Szczególnie ważny dla: perception pipeline opartych na GPU (stereo depth, object detection, pose estimation), Isaac Manipulator, Isaac Perceptor i innych gotowych rozwiązań NVIDIA dla robotyki. Kontenery testowane i certyfikowane przez NVIDIA dla konkretnych platform sprzętowych.
Wielojęzykowy menedżer pakietów i środowisk wirtualnych (Anaconda, Miniconda) obsługujący pakiety Python, R, C/C++ i inne. Pakiety conda zawierają prekompilowane binaria dla wielu platform (linux-64, linux-aarch64, osx-arm64, win-64). mamba: szybki reimplementacja conda w C++ z dramatycznie szybszym resolverem zależności. Rejestry: conda-forge (community-maintained, największy), defaults (Anaconda Inc.), bioconda, nvidia (pakiety CUDA przez conda). Zastosowania w robotyce AI/ML: środowiska dla trenowania modeli (PyTorch, TensorFlow, JAX z obsługą CUDA przez conda-forge), narzędzia analizy danych z robotów (pandas, numpy, matplotlib), Jupyter notebooks dla eksploracji danych sensorycznych. RoboStack: projekt dystrybuujący pakiety ROS 2 przez conda-forge (ros-humble-desktop przez 'conda install -c conda-forge ros-humble-desktop') – umożliwia instalację ROS 2 na macOS i Windows bez VM. Conda environments pozwalają na równoległe instalacje różnych wersji ROS i bibliotek ML bez konfliktów. Stosowany przy integracji stacku robotycznego z narzędziami data science.
64-bitowa architektura procesora wywodząca się z rodziny x86, opracowana przez AMD (jako AMD64) i zaadoptowana przez Intel (jako Intel 64 / EM64T). Dominująca architektura w komputerach osobistych, serwerach, stacjach roboczych i komputerach przemysłowych. W robotyce stosowana jako główna platforma obliczeniowa dla: stacji operatorskich i komputerów deweloperskich (Ubuntu 22.04/24.04 x86_64), serwerów fleet management i cloud robotics, symulatorów (Gazebo, Isaac Sim wymagają x86_64 z GPU NVIDIA dla pełnej wydajności), komputerów pokładowych robotów mobilnych wyższej klasy (Intel NUC, mini-PC przemysłowe jak Nuvo, OnLogic). Oficjalne wsparcie ROS 2 dla x86_64 jest tier-1 – wszystkie dystrybucje ROS 2 (Humble, Jazzy, Kilted) są w pełni wspierane i testowane. Pakiety apt dostępne przez packages.ros.org dla Ubuntu x86_64. Dominuje w środowiskach deweloperskich i symulacyjnych. Na robotach mobilnych i humanoidach x86_64 jest stosowane gdy wymagana jest wysoka moc obliczeniowa (np. Intel Core Ultra, AMD Ryzen Embedded) bez ograniczeń energetycznych typowych dla ARM. Przykłady hardware: Intel NUC 13 Pro, AMD Ryzen Embedded V2000, Advantech MIC-770.
64-bitowa architektura ARM (Advanced RISC Machine) w wersji ARMv8-A i nowszych – dominująca architektura w embedded computing, robotyce mobilnej i edge AI. Dwie nazwy oznaczają to samo: ARM64 (nazwa stosowana przez Apple i w kontekście macOS/iOS), AArch64 (oficjalna nazwa architektury ARM, używana w Linuksie i ekosystemie embedded). Absolutnie dominująca architektura w nowoczesnej robotyce mobilnej i humanoidalnej: NVIDIA Jetson (Orin NX, AGX Orin – Cortex-A78AE), Raspberry Pi 4/5 (Cortex-A72/A76), Qualcomm Robotics RB5/RB6 (Kryo), Apple M1/M2/M3 (dla stacji deweloperskich macOS), procesory w smartfonach używanych jako moduły robotyczne. Oficjalne wsparcie ROS 2 tier-1 dla aarch64 od dystrybucji Humble – pakiety apt dostępne przez packages.ros.org dla Ubuntu 22.04/24.04 aarch64. Unitree SDK2 dostępne dla aarch64 (target: Jetson Orin NX w G1). Boston Dynamics Spot: Qualcomm aarch64. Zalety wobec x86_64: znacznie niższy pobór energii (TDP 5–65W vs 45–125W), lepsza wydajność na wat, wbudowane NPU/GPU dla edge AI, mniejszy footprint fizyczny. Ograniczenia: historycznie mniejsza dostępność prebuildowanych pakietów (szybko zmniejsza się), niektóre biblioteki x86-only nie są portowane.
Specjalizowana platforma obliczeniowa NVIDIA Jetson oparta na architekturze AArch64 z zintegrowanym GPU NVIDIA (architektura Ampere w Orin, Maxwell/Pascal/Volta w starszych modułach) i akceleratorem DLA (Deep Learning Accelerator). JetPack SDK: kompletny stack software dla Jetson obejmujący L4T (Linux for Tegra – Ubuntu-based OS), CUDA, cuDNN, TensorRT, VPI (Vision Programming Interface), Multimedia API. Moduły Jetson Orin: AGX Orin (12-core Cortex-A78AE, Ampere GPU 2048 CUDA cores, 64 GB RAM, TDP 15–60W), Orin NX 16GB (8-core, 1024 CUDA cores, 16 GB RAM, TDP 10–25W – używany w Unitree G1), Orin Nano (6-core, 1024 CUDA cores, 8 GB RAM, TDP 7–15W). Isaac ROS: oficjalne GPU-accelerated pakiety ROS 2 dla Jetson, dystrybuowane przez NVIDIA NGC Container Registry. Wsparcie ROS 2: tier-1 dla aarch64 Ubuntu 22.04 (Humble) i Ubuntu 24.04 (Jazzy) na JetPack 5.x/6.x. Kluczowa platforma dla robotyki z wymaganiami AI: perception pipeline (stereo depth, object detection, pose estimation), SLAM, VLA inference na edge. Przykłady wdrożeń: Unitree G1 (Orin NX 16GB jako high-level compute), Boston Dynamics (wybrane produkty), drony autonomiczne (Skydio), roboty AMR wymagające edge AI.
Architektura obliczeniowa NVIDIA CUDA (Compute Unified Device Architecture) na platformie x86_64 – GPU NVIDIA jako koprocesor dla równoległych obliczeń. Nie jest samodzielną architekturą CPU, lecz dodatkowym wymaganiem sprzętowym dla oprogramowania korzystającego z akceleracji GPU. W robotyce kluczowa dla: trenowania modeli foundation i VLA (NVIDIA A100, H100, RTX 4090 na x86_64 serwerach/stacjach), inference modeli AI w symulatora (Isaac Sim wymaga CUDA GPU na x86_64), perception pipeline z akceleracją GPU (CUDA-accelerated stereo depth, optical flow, object detection), generowania syntetycznych datasetów (Omniverse Replicator). Wymagania: CUDA Toolkit (12.x dla najnowszych modeli), cuDNN, TensorRT dla optymalizowanego inference. NVIDIA Isaac ROS na x86_64 wymaga GPU NVIDIA z CUDA 12.x. Frameworki ML: PyTorch (CUDA backend), TensorFlow (CUDA/cuDNN), JAX (XLA + CUDA). Specyficzne wersje CUDA wymagane przez konkretne oprogramowanie – np. Isaac Sim 4.x wymaga CUDA 12.3+. Ograniczenia: wysokie wymagania energetyczne (GPU klasy datacenter: 300–700W), koszty sprzętu, brak mobilności. Środowisko deweloperskie i treningowe, nie deployment na robocie.
Wysokowydajny standard magistrali komputerowej stosowany do podłączania GPU, kart sieciowych i kart rozszerzeń. W robotyce relevantny w kontekście modułów obliczeniowych (NVIDIA Jetson AGX Orin – PCIe Gen4, Orin NX – PCIe Gen3).
Mechanizm IPC oparty na współdzielonym obszarze pamięci między procesami na tym samym hoście. Stosowany w robotyce jako ultra-low-latency transport dla dużych danych. Latencje poniżej 1 µs.
Peripheral Component Interconnect Express 4.0 – przepustowość 16 GT/s na tor: x16 = 31.5 GB/s (dwukrotność PCIe 3.0). Dostępny w NVIDIA Jetson AGX Orin (PCIe Gen4 x8 i x16 przez złącze M.2 Key-M i PCIe slot). Stosowany do podłączania GPU inference, szybkich NVMe SSD i kart capture dla kamer przemysłowych.
Peripheral Component Interconnect Express 5.0 – przepustowość 32 GT/s na tor: x16 = 63 GB/s. Pojawia się w najnowszych platformach x86 (Intel Core Ultra, AMD Ryzen 7000) stosowanych jako komputery pokładowe robotów najwyższej klasy.
Najwyższa klasa latencji – deterministyczne czasy odpowiedzi poniżej 1 ms z gwarancją dotrzymania deadline'ów bez żadnych wyjątków. Przekroczenie terminu jest traktowane jako błąd krytyczny systemu (system failure). Realizowane wyłącznie na dedykowanych systemach operacyjnych czasu rzeczywistego (RTOS): VxWorks, QNX Neutrino, LynxOS, RTEMS, Zephyr RTOS lub jądrze Linux z łatką RT-PREEMPT. Typowe zastosowania: kontrola prądów silników BLDC/PMSM (10–100 kHz), synchronizacja enkoderów absolutnych, safety-critical E-Stop. Odpowiednik TRL 9 w deterministyczności.
Deterministyczna klasa latencji 1–5 ms z twardą gwarancją dotrzymania deadline'ów. Realizowane na RTOS lub Linux RT-PREEMPT z izolacją CPU. Typowe cykle: 1 ms (1 kHz) dla pętli prędkości silników, 2 ms (500 Hz) dla pętli pozycji stawów, 5 ms (200 Hz) dla pętli sił i momentów. Komunikacja przez EtherCAT, CAN FD. Zastosowania: pętle regulacji prędkości w manipulatorach przemysłowych, sterowanie stawami robotów humanoidalnych w trybie low-level.
Local Workstation oznacza typ wdrożenia, w którym software działa na komputerze lokalnym użytkownika, dewelopera lub operatora, np. laptopie, desktopie lub stacji roboczej.
Cloud oznacza typ wdrożenia, w którym oprogramowanie działa w infrastrukturze chmurowej, np. jako usługa backendowa, narzędzie orkiestracyjne, system analityczny lub zdalna warstwa zarządzająca.
Containerized oznacza typ wdrożenia, w którym oprogramowanie jest pakowane i uruchamiane w kontenerach, np. Docker lub innych technologiach konteneryzacji, co ułatwia przenoszenie, replikację i zarządzanie zależnościami.
Edge oznacza typ wdrożenia, w którym oprogramowanie działa na lokalnym urządzeniu obliczeniowym, bramce, komputerze przemysłowym lub innym zasobie blisko robota i sensorów, bez konieczności przetwarzania w chmurze.
Rodzina licencji: Licencja permisywna
Licencja BSD z trzema klauzulami – rozszerza BSD 2-Clause o trzeci warunek zakazujący używania nazwy organizacji ani nazwisk kontrybutorów do promocji produktów pochodnych bez pisemnej zgody (non-endorsement clause). Zwana też 'New BSD License' lub 'Modified BSD License'.
Oficjalna licencja Unitree SDK2 i Unitree Python SDK2. Powszechna w pakietach ROS 2 i bibliotekach robotycznych. Klauzula non-endorsement chroni reputację oryginalnych twórców przed nieuprawnioną asocjacją z produktami pochodnymi. Praktycznie identyczna z MIT pod względem swobody użytkowania.
Wsparcie wektoryzacji AVX-512, ulepszone gripper contact.
Optymalizacje SDF, lepsza determinizm symulacji.
Pełny GPU solver, soft bodies, FEM, cloth.
Open-source pod BSD-3, brak wsparcia GPU.
Pierwsza wersja stabilna z multi-threading.