Robocikowo>ROBOCIKOWO
Nav2

Planowanie ruchu · Sterowanie i planowanie

Nav2

1.4.0 Kilted

Aktywny Open source Real-time capable Dostępne API
KATEGORIAPlanowanie ruchu · Sterowanie i planowanie
GOTOWOŚĆTRL 9
SKALA ADOPCJIStandard branżowy
LICENCJEApache-2.0
PIERWSZE WYDANIE2020

Nav2 (Navigation 2) to flagowy stack nawigacyjny ROS 2, opracowany przez Open Navigation LLC i społeczność ROS 2. Jest następcą oryginalnego ROS Navigation Stack i wnosi do robotyki mobilnej technologie znane z autonomicznych pojazdów, zoptymalizowane dla robotów wewnętrznych i terenowych. Architektura opiera się na Behavior Trees (BT) jako orkiestratorze niezależnych serwerów-zadań (planner, controller, behavior, smoother, route, waypoint follower).

Kluczowe komponenty: Planner Server (NavFn, Smac Planner 2D/Hybrid/Lattice, Theta*) generuje globalną ścieżkę; Controller Server (DWB, MPPI, Regulated Pure Pursuit, Graceful Controller, Rotation Shim) liczy lokalne polecenia prędkości; Costmap 2D z pluginami (StaticLayer, ObstacleLayer, VoxelLayer, InflationLayer, Denoise, KeepoutFilter, SpeedFilter) buduje reprezentację środowiska; AMCL realizuje lokalizację partykułową na znanej mapie; Collision Monitor i Detector zapewniają warstwę bezpieczeństwa. Smoother Server (Constrained, Savitzky-Golay, Simple) wygładza ścieżki, Waypoint Follower wykonuje misje wieloetapowe.

Nav2 wspiera wszystkie podstawowe typy kinematyki: differential drive, omnidirectional, Ackermann oraz nogi (legged), z czego korzystają roboty kwadrupedalne i humanoidalne. Wsparcie aktywnych dystrybucji ROS 2: Humble (LTS), Jazzy, Kilted, Rolling. Projekt jest wykorzystywany produkcyjnie przez 100+ firm na całym świecie, w tym TurtleBot 3/4, Nova Carter, Otto Motors, Clearpath Robotics i wielu robotów badawczych.

Typ i role
Typy oprogramowania
Stack sterowania

Control Stack to zestaw komponentów programowych odpowiedzialnych za logikę sterowania, planowanie ruchu, wykonywanie komend oraz koordynację działania elementów wykonawczych robota.

Biblioteka API

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.

Narzędzie deweloperskie

Developer Tool to oprogramowanie przeznaczone do wspierania pracy deweloperskiej, w tym konfiguracji, debugowania, testowania, monitorowania, walidacji lub integracji systemów robotycznych i embedded.

Wybierz pozycję, aby zobaczyć opis.
Kategoria główna
Sterowanie i planowanieMiddlewarePercepcja i wizja
Role w ekosystemie robotycznym
Planowanie ruchu

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.

SLAM i lokalizacja

SLAM & Localization oznacza rolę oprogramowania odpowiedzialnego za jednoczesną lokalizację i mapowanie, estymację pozycji robota, śledzenie ruchu oraz budowę modelu przestrzennego otoczenia.

Sterowanie robotem

Robot Control oznacza rolę oprogramowania odpowiedzialnego za sterowanie ruchem, wykonywanie komend, koordynację działania elementów wykonawczych oraz bezpośrednią logikę operacyjną robota.

Percepcja

Perception oznacza rolę oprogramowania przetwarzającego dane z kamer, LiDAR-ów, IMU i innych sensorów w celu wykrywania obiektów, rozpoznawania sceny, lokalizacji, mapowania i interpretacji środowiska.

Wybierz pozycję, aby zobaczyć opis.
Rodzina oprogramowania
Rodzina
ROS 2 Ecosystem

Rodzina oprogramowania należącego do ekosystemu ROS 2 i powiązanych narzędzi robotycznych.

Dojrzałość i adopcja
9 / 9
Sprawdzone w warunkach operacyjnych
BadaniaPrototypProdukcja
Skala adopcjiStandard branżowy
Status utrzymaniaUtrzymywane przez fundację
Pierwsze wydanie2020
Ostatnia aktualizacja15 listopada 2024
Wdrożenia

TurtleBot 3/4, Clearpath Husky/Jackal/Boxer, Nova Carter (NVIDIA), Otto Motors AGV, Stretch RE-2 (Hello Robot), Unitree Go2 (community ports). 100+ wdrożeń komercyjnych w logistyce, healthcare, hospitality.

Społeczność

2.9k★ na GitHub ros-navigation/navigation2, 1.3k forków, 300+ kontrybutorów, regularne ROSCon talks. Profesjonalne wsparcie przez Open Navigation LLC (Steve Macenski).

Wsparcie ROSKompatybilność z ekosystemem ROS / ROS 2
Official ROS 2 PackagePakiet dostępny w oficjalnym rejestrze ROS 2 przez rosdep / apt (packages.ros.org)
ROS 2 Nav2 PluginPlugin do frameworka Nav2 (Navigation2) dla ROS 2
Możliwości systemu
Open source
Kod źródłowy dostępny publicznie pod licencją open-source — umożliwia audyt bezpieczeństwa, własne modyfikacje oraz integrację bez barier licencyjnych.
Real-time capable
Zaprojektowane z gwarancjami determinizmu czasowego — spełnia wymagania pętli sterowania, systemów bezpieczeństwa i zadań wymagających niskiej, przewidywalnej latencji.
⟨/⟩
Dostępne API
Oprogramowanie udostępnia programowalny interfejs (REST, gRPC, SDK lub biblioteki językowe) pozwalający na automatyzację i integrację z innymi systemami.
📦
Pre-built / binary
Dystrybuowane jako gotowe pakiety binarne, obrazy kontenerów lub instalatory — bez konieczności kompilacji ze źródeł.
Języki programowania
C++

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.

Python

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.

Wybierz pozycję, aby zobaczyć opis.
Systemy operacyjne
Ubuntu 22.04

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

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.

Debian

Debian to jedna z najbardziej stabilnych i powszechnie stosowanych dystrybucji Linux, wykorzystywana jako baza dla wielu systemów embedded, robotycznych i serwerowych.

JetPack Linux

JetPack Linux oznacza środowisko systemowe i software'owe dla platform NVIDIA Jetson, wykorzystywane do uruchamiania aplikacji AI, computer vision i robotyki edge. W praktyce bazuje na Linuxie i pakietach NVIDIA dla Jetson.

Wybierz pozycję, aby zobaczyć opis.
Minimalne wymagania sprzętowe
Minimalne wymagania sprzętowe
CPUDwurdzeniowy x86-64 lub ARM64 (Jetson Orin Nano OK dla małych robotów)
RAM (GB)4
GPUOpcjonalnie GPU dla AI-based planners (MPPI Cost Critic z TensorRT)
Dysk (GB)5

Wymaga w pełni działającej instalacji ROS 2 (Humble/Jazzy/Kilted). Costmapy 2D w wysokiej rozdzielczości potrzebują więcej RAM.

Pakowanie i dystrybucja
Menadżery pakietów
apt / deb

Menedżer pakietów Debian/Ubuntu – apt-get install.

ROS 2 Binary Release (packages.ros.org)

Oficjalne repozytorium binarnych pakietów ROS 2 utrzymywane przez Open Robotics / Robotics Open Foundation (packages.ros.org). Jedyny oficjalny sposób instalacji pakietów tier-1 ROS 2 przez apt. Konfiguracja: dodanie klucza GPG i repozytorium sources.list przez oficjalny skrypt instalacyjny lub ręcznie. Pakiety dostępne dla: Ubuntu 22.04 (Humble, Jazzy) x86_64 i aarch64, Ubuntu 24.04 (Jazzy, Kilted) x86_64 i aarch64, RHEL/Fedora (wybrane dystrybucje). Buildfarm Open Robotics kompiluje i testuje pakiety dla każdej kombinacji dystrybucja ROS × OS × architektura przed udostępnieniem. Trzy rodzaje wydań: rolling (codzienne buildy z main), dystrybuowane wydanie (np. humble, jazzy – stabilne), LTS (Humble, Jazzy – wsparcie 5 lat). Priorytety: packages.ros.org powinno być używane zawsze gdy pakiet jest dostępny – gwarantuje przetestowaną kompatybilność między pakietami danej dystrybucji ROS 2. Shadow-fixed repository (packages.ros.org/ros2/ubuntu) zawiera backportowane fixes dla aktywnych dystrybucji LTS.

colcon (ROS 2 build tool)

Oficjalne narzędzie budowania (build tool) ekosystemu ROS 2 zastępujące catkin_make i catkin_tools z ROS 1. colcon (COLlective CONstruction) buduje workspace zawierający wiele pakietów ROS 2 w prawidłowej kolejności zależności. Instalacja przez pip: 'pip install colcon-common-extensions'. Komendy: 'colcon build' (budowanie workspace), 'colcon test' (uruchomienie testów), 'colcon build --packages-select <pkg>' (budowanie wybranego pakietu), 'colcon build --symlink-install' (szybszy development – symlinki zamiast kopiowania). Obsługuje pakiety CMake (ament_cmake), Python (ament_python) i inne systemy budowania. Integracja z CI/CD: GitHub Actions, GitLab CI używają colcon do budowania i testowania pakietów ROS 2. Nie jest menedżerem pakietów w sensie dystrybucji – jest narzędziem kompilacji lokalnego workspace. Kluczowe rozszerzenia: colcon-mixin (predefiniowane konfiguracje build), colcon-cd (nawigacja do pakietu), colcon-argcomplete (autocomplete). Wymagany do budowania pakietów ROS 2 ze źródeł gdy apt nie zawiera potrzebnej wersji.

rosdep / bloom

ROS dependency manager i release tool.

Docker / Docker Hub

Platforma konteneryzacji Docker i publiczny rejestr obrazów Docker Hub (hub.docker.com). Kontenery Docker zapewniają izolację środowiska uruchomieniowego – oprogramowanie i wszystkie jego zależności spakowane w przenośny obraz działający identycznie na dowolnym hoście Linux z Docker Engine. Kluczowe zastosowania w robotyce: dystrybucja gotowych środowisk ROS 2 (oficjalne obrazy: ros:humble, ros:jazzy na Docker Hub, utrzymywane przez Open Robotics), NVIDIA NGC Container Registry (nvcr.io) z obrazami NVIDIA Isaac ROS zawierającymi prekompilowane pakiety GPU-accelerated dla Jetson, dystrybucja złożonych stosów oprogramowania z wieloma zależnościami bez ryzyka konfliktów, CI/CD pipeline'y testujące oprogramowanie robotyczne w izolowanym środowisku. Oficjalne obrazy ROS: 'docker pull ros:humble-ros-base' (minimalny), 'ros:humble-desktop' (pełny z RViz2). NVIDIA Isaac ROS: 'nvcr.io/nvidia/isaac/ros' z obsługą GPU na Jetson AGX Orin. Docker Compose umożliwia orkiestrację wielu kontenerów (robot controller + navigation stack + perception pipeline). Ograniczenia w robotyce: dostęp do hardware (GPIO, CAN, EtherCAT) wymaga konfiguracji '--device' lub '--privileged', real-time scheduling wymaga specjalnej konfiguracji host kernel, GUI (RViz2, Gazebo) wymaga przekazania X11 lub Wayland.

Source – CMake / ament_cmake

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.

Wybierz pozycję, aby zobaczyć opis.
Architektury CPU
x86_64 (AMD64)

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.

ARM64 / AArch64

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.

NVIDIA Jetson – AArch64 (JetPack)

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.

Wybierz pozycję, aby zobaczyć opis.
Trudność instalacji
PoziomUmiarkowana
Protokoły i interfejsy
Protokoły komunikacji
DDS (Data Distribution Service)

Standard middleware OMG (Object Management Group) oparty o model publish-subscribe, zaprojektowany dla systemów rozproszonych czasu rzeczywistego. Definiuje warstwę komunikacyjną DCPS (Data-Centric Publish-Subscribe) oraz protokół przewodowy RTPS (Real-Time Publish-Subscribe). Stosowany jako domyślna warstwa komunikacyjna w ROS 2 – każda implementacja ROS 2 opiera się na jednej z implementacji DDS (CycloneDDS, Fast DDS, Connext DDS). Obsługuje discovery, QoS, reliability, durability i liveliness.

Fast DDS (eProsima)

Otwartoźródłowa implementacja DDS firmy eProsima, napisana w C++. Była domyślną implementacją DDS w ROS 2 przed dystrybucją Humble. Obsługuje RTPS, shared memory transport, security (DDS-Security), XML profile configuration. Szeroko stosowana w systemach robotycznych i automotive. Licencja Apache 2.0.

CycloneDDS

Otwartoźródłowa implementacja standardu OMG DDS rozwijana przez Eclipse Foundation, napisana w C. Domyślna implementacja DDS w ROS 2 od dystrybucji Humble. Używana przez Unitree SDK2 jako warstwa transportowa. Obsługuje UDP multicast i unicast, QoS policies, shared memory transport (Iceoryx). Licencja Eclipse Public License 2.0 / Eclipse Distribution License 1.0.

ROS 2 Topics

Mechanizm asynchronicznej komunikacji publish-subscribe w ROS 2, zbudowany na warstwie DDS/RTPS. Węzły publikują wiadomości na nazwanych topicach (np. /joint_states, /cmd_vel, /camera/image_raw), a inne węzły subskrybują te topici bez wiedzy o nadawcy. Obsługuje QoS policies (reliability, durability, history, deadline, lifespan). Podstawowy mechanizm wymiany danych sensorycznych, stanu robota i komend sterowania w ekosystemie ROS 2.

ROS 2 Services

Mechanizm synchronicznej komunikacji request-response w ROS 2, zbudowany na warstwie DDS. Serwer rejestruje nazwany serwis i czeka na żądania, klient wysyła żądanie i blokuje się do czasu otrzymania odpowiedzi. Używany do operacji wymagających potwierdzenia: uruchomienie/zatrzymanie akcji, zapytania o stan, rekonfiguracja parametrów.

ROS 2 Actions

Mechanizm asynchronicznych zadań długotrwałych w ROS 2, rozszerzenie services o feedback i możliwość anulowania. Klient wysyła cel (goal), serwer akceptuje go i cyklicznie raportuje postęp (feedback), na końcu zwraca wynik (result). Stosowany do nawigacji (Nav2 NavigateToPose), manipulacji (MoveIt2 FollowJointTrajectory), chwytania obiektów.

Wybierz pozycję, aby zobaczyć opis.
Interfejsy sprzętowe
Ethernet 1000BASE-T (Gigabit Ethernet)

Standard IEEE 802.3ab – Ethernet 1 Gbit/s przez skrętkę Cat5e/Cat6, złącze RJ-45. Dominujący interfejs sieciowy w robotyce: komunikacja SDK-robot (Unitree SDK2, Boston Dynamics API, UR e-Series), przesyłanie obrazów z kamer IP, integracja z ROS 2 przez DDS/RTPS.

USB 3.0 / 3.1 Gen 1

Universal Serial Bus 3.0 (przemianowany na USB 3.1 Gen 1) – standard o przepustowości do 5 Gbit/s (SuperSpeed). Powszechnie stosowany w robotyce do kamer głębi (Intel RealSense D435i, D455), kamer stereo i skanerów 3D wymagających wysokiego pasma dla strumieni depth + RGB. Zasilanie: 5V / 900 mA. Złącza: Type-A, Type-B, Micro-B, Type-C. NVIDIA Jetson AGX Orin posiada 4 porty USB 3.1 Gen 1.

Wybierz pozycję, aby zobaczyć opis.
Klasy opóźnień
Soft Real-Time (20–100 ms)

Klasa miękkiego czasu rzeczywistego 20–100 ms – deadline'y wymagane statystycznie, sporadyczne przekroczenia akceptowalne. Realizowany na standardowym Linux z priorytetem SCHED_FIFO. Komunikacja przez Ethernet GbE, DDS/RTPS, ROS 2 topics. Zastosowania: nawigacja AMR (Nav2: 20–50 Hz), high-level sterowanie humanoidów (Unitree SDK2: 50 Hz), planowanie trajektorii (MoveIt 2 servo), integracja sensorów (LiDAR SLAM: 10–20 Hz). Wystarczający dla większości algorytmów nawigacyjnych i SLAM.

Hard Real-Time (5–20 ms)

Deterministyczna klasa latencji 5–20 ms – twardy real-time dla pętli zewnętrznych sterowania robotycznego. Cykle 5–20 ms (50–200 Hz). Możliwy na Linux RT-PREEMPT bez pełnego RTOS. Zastosowania: pętla pozycji i impedancji w cobotach (Universal Robots e-Series), sterowanie trajectoriami w manipulatorach (ros2_control JointTrajectoryController przy 100 Hz), pętla równowagi w robotach humanoidalnych. Wystarczający dla większości zastosowań sterowania ruchem.

Wybierz pozycję, aby zobaczyć opis.
Typy wdrożenia
Na robocie

On Robot oznacza typ wdrożenia, w którym oprogramowanie działa bezpośrednio na robocie lub na jego pokładowym module obliczeniowym, np. komputerze przemysłowym, SBC lub platformie edge AI.

Edge

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.

Lokalna stacja robocza

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.

Konteneryzowany

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.

Wybierz pozycję, aby zobaczyć opis.
Wspierane symulatory
Gazebo Harmonic
Aktualna wersja LTS symulatora Gazebo nowej generacji – domyślny symulator dla ROS 2 Jazzy.
Gazebo Garden
Wersja pośrednia Gazebo (2022) między Fortress a Harmonic – EOL.
Gazebo Fortress
Wersja LTS symulatora Ignition/Gazebo – domyślny symulator dla ROS 2 Humble.
Gazebo Classic (Gazebo 11)
Oryginalna wersja symulatora Gazebo – legacy, EOL 2025.
NVIDIA Isaac Sim
Zaawansowany fotorealistyczny symulator robotyczny NVIDIA oparty na Omniverse.
Webots
Open source symulator robotyczny EPFL z szeroką biblioteką modeli i tier-1 ROS 2.
Oficjalne obrazy Docker
ghcr.io/ros-navigation/navigation2ros:humbleros:jazzy
Licencje
Apache-2.0Apache License 2.0v2.0

Rodzina licencji: Licencja permisywna

ModyfikacjaDystrybucjaUżytek komercyjnySublicencjonowanieUżytek prywatnyKompatybilna z ROSOSI zatwierdzonaFSF Free/LibreWymaga oznaczenia autorstwaPatent grant

Permissive licencja open source opracowana przez Apache Software Foundation. Zawiera jawne udzielenie praw patentowych przez kontrybutorów (patent grant) oraz klauzulę retaliation (utrata licencji przy pozwie patentowym). Wymaga zachowania tekstu licencji, NOTICE file i informacji o zmianach w modyfikowanych plikach.

Uwaga dla robotyki

Oficjalna licencja Open Robotics dla rdzenia ROS 2 i większości pakietów tier-1. Standard de facto dla oprogramowania robotycznego open source. Klauzula patentowa chroni użytkowników przed pozwami ze strony kontrybutorów – preferowana nad MIT w projektach korporacyjnych. Kompatybilna z GPL v3 (ale nie GPL v2).

BSD-3-ClauseBSD 3-Clause Licensev3-Clause

Rodzina licencji: Licencja permisywna

ModyfikacjaDystrybucjaUżytek komercyjnySublicencjonowanieUżytek prywatnyKompatybilna z ROSOSI zatwierdzonaFSF Free/LibreWymaga oznaczenia autorstwa

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'.

Uwaga dla robotyki

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.

Historia wersji
1.4.0 Kiltedmaj 2025

Route Server stable, Following Server, MPPI Eigen refactor (+40% perf).

1.3.0 Jazzymaj 2024

Docking Server, Loopback Simulator, Route Server preview.

1.2.0 Ironmaj 2023

Collision Monitor, Velocity Smoother, Denoise Layer.

1.1.0 Humblemaj 2022

LTS dla ROS 2 Humble, MPPI controller, Smac Planner Lattice.

1.0.0maj 2020

Pierwsze stabilne wydanie Nav2 dla ROS 2 Foxy.