Robocikowo>ROBOCIKOWO
RTAB-Map

Percepcja · Percepcja i wizja

RTAB-Map

RTAB-Map 0.22·Université de Sherbrooke (IntRoLab)

Aktywny Open source Real-time capable Dostępne API
KATEGORIAPercepcja · Percepcja i wizja
GOTOWOŚĆTRL 9
SKALA ADOPCJIStandard branżowy
LICENCJEBSD-3-Clause
PIERWSZE WYDANIE2013

RTAB-Map (Real-Time Appearance-Based Mapping) to dojrzała, otwartoźródłowa biblioteka SLAM rozwijana od 2013 r. w IntRoLab na Université de Sherbrooke przez Mathieu Labbé i prof. François Michauda. Charakterystyczną cechą jest hybrydowe podejście: graph-based SLAM z appearance-based loop closure przez bag-of-words, działający równocześnie na RGB-D, stereo, monocular oraz 2D/3D LiDAR-ach. Licencja BSD-3-Clause.

RTAB-Map oferuje rzadko spotykane w open-source połączenie: pełne dense mapping (chmury punktów + meshy), efektywne zarządzanie pamięcią (memory management — przenoszenie starych map do WM ↔ STM ↔ LTM), full 3D occupancy grid (OctoMap integration), bezpośrednie wsparcie dla RViz 2 i Foxglove. Działa w trzech trybach: SLAM (mapping + localization), localization-only (na wcześniej zbudowanej mapie), i mapping-only.

Wsparcie dla sensorów: Intel RealSense D435i/D455/L515, Microsoft Kinect/Azure Kinect, Stereolabs ZED 2i, Hesai/Velodyne/Ouster/Livox LiDAR, IMU XSens/Bosch. Pełny graph optimizer: g2o, GTSAM, cvsba. Pakiet rtabmap_ros jest oficjalnie wspierany dla wszystkich dystrybucji ROS 1 (Kinetic→Noetic) i ROS 2 (Foxy→Jazzy). > 50 tutoriali wideo prowadzonych przez samego Labbé.

Typ i role
Typy oprogramowania
Biblioteka SLAM
Stack percepcji

Perception Stack obejmuje warstwy oprogramowania przetwarzające dane z kamer, LiDAR-ów, IMU, mikrofonów i innych sensorów w celu rozpoznania otoczenia, lokalizacji, detekcji obiektów i interpretacji sceny.

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.

Wybierz pozycję, aby zobaczyć opis.
Kategoria główna
Percepcja i wizjaSDK
Role w ekosystemie robotycznym
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.

Wizja komputerowa

Computer Vision oznacza rolę oprogramowania odpowiedzialnego za przetwarzanie obrazu, analizę wideo, detekcję obiektów, segmentację, śledzenie i inne zadania oparte na danych wizualnych.

SLAM i lokalizacja

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

Dostęp API

API Access oznacza rolę oprogramowania udostępniającego interfejs programistyczny do komunikacji z robotem, sensorem, usługą lub platformą, umożliwiający tworzenie integracji i aplikacji klienckich.

Wsparcie deweloperów

Developer Enablement oznacza rolę oprogramowania wspierającego deweloperów w integracji, debugowaniu, walidacji, konfiguracji, testowaniu i uruchamianiu systemów robotycznych oraz ich komponentów.

Wybierz pozycję, aby zobaczyć opis.
Rodzina oprogramowania
Rodzina
Percepcja i wizja

Rodzina otwartych bibliotek percepcji robotycznej: SLAM wizualny (ORB-SLAM, RTAB-Map), wizja maszynowa (OpenCV), przetwarzanie chmur punktów (PCL, Open3D), detekcja i segmentacja (YOLO, Detectron2).

Dojrzałość i adopcja
9 / 9
Sprawdzone w warunkach operacyjnych
BadaniaPrototypProdukcja
Skala adopcjiStandard branżowy
Status utrzymaniaAktywnie utrzymywane
Pierwsze wydanie2013
Ostatnia aktualizacja20 maja 2026
Wdrożenia

Clearpath Husky/Jackal/Warthog (oficjalna integracja), Boston Dynamics Spot (community), TurtleBot 2/3/4 (rekomendowany SLAM), NASA JPL Mars analog rovers, IntRoLab humanoidy. > 1500 cytowań w naukowych pracach o mapowaniu i autonomii mobilnej.

Społeczność

github.com/introlab/rtabmap ~3.0k★, github.com/introlab/rtabmap_ros ~1.0k★, > 50 oficjalnych video tutoriali na YouTube (Mathieu Labbé), 24/7 wsparcie na introlab.3it.usherbrooke.ca/mis/IntRoLab/RTAB-Map.

Integruje się z
R2
ROS 2
Otwarty framework do tworzenia oprogramowania robotów. Następca ROS 1 oparty na DDS, z natywnym wsparciem dla systemów rozproszonych, real-time i wielu platform. Standard de facto w robotyce badawczej i komercyjnej.
R2
ROS 2 Humble
Wersja LTS frameworka ROS 2 bazująca na Ubuntu 22.04. Wsparcie do maja 2027 r. Najczęściej deployowane wydanie w humanoidach, AMR i platformach badawczych. Pełna integracja Nav2, MoveIt 2 i ros2_control.
R2
ROS 2 Jazzy Jalisco
ROS 2 Jazzy Jalisco — najnowszy LTS (maj 2024, wsparcie do maja 2029) na Ubuntu 24.04. C++17→C++17, Fast DDS 3.0, ulepszone executors, RMW Zenoh, lepsze QoS dla zmiennych sieci.
R
realsense-ros
Oficjalny ROS 2 wrapper Intela dla kamer RealSense. Publikuje topics depth, color, infrared, IMU, pointcloud2; wspiera Action Server triggera kalibracji. Repo IntelRealSense/realsense-ros — najczęściej instalowany wrapper kamerowy w ROS 2.
O
OpenCV
Open Source Computer Vision Library — najszerzej używana otwartoźródłowa biblioteka wizji maszynowej (> 4000 funkcji). Zainicjowana w 1999 r. przez Gary Bradskiego w Intel; obecnie pod opieką OpenCV Foundation.
P(
PCL (Point Cloud Library)
Otwartoźródłowa biblioteka C++ do przetwarzania chmur punktów 3D — filtrowanie, segmentacja, registracja (ICP), features 3D, surface reconstruction. Zainicjowana w Willow Garage w 2010 r.
N
Nav2
Profesjonalnie wspierany następca ROS Navigation Stack — produkcyjny framework nawigacji dla robotów mobilnych, quadrupedów i AGV. Behavior Trees, planery (Smac, NavFn, Theta*), kontrolery (MPPI, RPP, DWB), AMCL, costmapy.
M2
MoveIt 2
Otwartoźródłowy framework planowania ruchu, manipulacji i kinematyki dla ROS 2 — branch MoveIt na ROS 2 (Foxy → Jazzy). Główny opiekun PickNik Robotics. Standard de facto dla manipulatorów w ekosystemie ROS.
Wsparcie ROSKompatybilność z ekosystemem ROS / ROS 2
Official ROS 2 PackagePakiet dostępny w oficjalnym rejestrze ROS 2 przez rosdep / apt (packages.ros.org)
Official ROS 1 PackagePakiet dostępny w oficjalnym rejestrze ROS 1 (packages.ros.org)
ROS 2 RVIZ2 PluginPlugin do narzędzia RViz2 (wizualizacja 3D 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.

macOS

macOS to system operacyjny Apple wykorzystywany głównie na stacjach roboczych i laptopach deweloperskich do budowy, testowania i integracji oprogramowania.

Windows

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.

Wybierz pozycję, aby zobaczyć opis.
Minimalne wymagania sprzętowe
Minimalne wymagania sprzętowe
CPUCzterordzeniowy x86-64 ≥ 2 GHz lub ARM64 (Jetson Orin Nano+) — RTAB-Map jest wielowątkowy.
RAM (GB)4
GPUZalecana CUDA-compatible (NVIDIA GTX 1060+) dla GPU bag-of-words; działa też CPU-only.
Dysk (GB)5

Bazy danych mogą sięgać kilku GB dla dużych map. Ubuntu 22.04 + ROS 2 Humble/Jazzy rekomendowane.

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

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

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.

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.

GitHub Releases / GitHub Actions Artifacts

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

snap (Snapcraft)

System pakietów snap opracowany przez Canonical (twórca Ubuntu) – samodzielne, skompresowane pakiety zawierające aplikację i wszystkie jej zależności w izolowanym środowisku (sandbox). Instalacja przez snapd: 'snap install <package>'. Działają na wielu dystrybucjach Linux (Ubuntu, Debian, Fedora, Arch) bez modyfikacji. Automatyczne aktualizacje w tle z rollback w przypadku problemów. Zastosowania w robotyce: dystrybucja narzędzi deweloperskich i aplikacji desktopowych (RViz2, Gazebo mogłyby być dystrybuowane jako snap), oprogramowanie dla robotów edge działających na Ubuntu Core (minimalne Ubuntu dla embedded). Ubuntu Core (IoT/embedded wariant Ubuntu) używa wyłącznie snaps – potencjalnie ważny dla robotów produkcyjnych opartych na Ubuntu Core z aktualizacjami OTA przez Snap Store. Canonical Snapcraft Store obsługuje kanały (stable, candidate, beta, edge) umożliwiając stopniowe rollout aktualizacji na flotę robotów. Ograniczenia: izolacja sandbox może utrudniać dostęp do hardware i komunikację między procesami – wymaga explict plugs/slots konfiguracji.

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.

Apple Silicon – AArch64 (macOS)

Procesory Apple Silicon (M1, M2, M3, M4 i warianty Pro/Max/Ultra) oparte na architekturze AArch64 (ARMv8.5-A+), stosowane w MacBook, Mac mini, Mac Studio i Mac Pro od 2020 r. Platforma deweloperska rosnącego znaczenia w ekosystemie robotycznym – wielu deweloperów ROS 2 używa MacBooków z Apple Silicon. Wsparcie ROS 2: tier-3 (community supported) dla macOS, ROS 2 Humble i Jazzy można zainstalować przez: Homebrew ('brew install ros-humble' przez tap), RoboStack (conda-forge – najwygodniejsza metoda: 'conda install -c conda-forge ros-humble-desktop'), budowanie ze źródeł przez colcon. RoboStack/conda-forge jest rekomendowaną metodą instalacji ROS 2 na Apple Silicon macOS. Apple Silicon: unified memory architecture (CPU, GPU i Neural Engine współdzielą pamięć), Metal GPU API (brak CUDA – wymaga PyTorch z Metal Performance Shaders backend), Core ML / Apple Neural Engine dla inference. Ograniczenia: brak wsparcia CUDA (biblioteki NVIDIA CUDA-only nie działają natywnie), Rosetta 2 umożliwia uruchomienie x86_64 binary ale bez pełnej wydajności, niektóre pakiety ROS 2 wymagają patchowania dla macOS. Gazebo/Ignition: dostępne na macOS ARM64. Zastosowanie: deweloperzy piszący i testujący kod ROS 2, symulacje, narzędzia CLI – nie deployment na robot.

Wybierz pozycję, aby zobaczyć opis.
Trudność instalacji
PoziomUmiarkowana
Protokoły i interfejsy
Protokoły komunikacji
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.

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.

Shared Memory (POSIX / mmap)

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.

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.

MIPI CSI-2

Mobile Industry Processor Interface Camera Serial Interface 2 – dedykowany interfejs kamer stosowany w modułach embedded (NVIDIA Jetson: 6 portów CSI-2). Obsługuje prędkości do 4.5 Gbit/s na tor. Dominujący interfejs kamer w robotach korzystających z modułów Jetson.

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.

Soft Real-Time (100–500 ms)

Klasa miękkiego czasu rzeczywistego 100–500 ms – odpowiedź w granicach setek milisekund wymagana dla płynnej pracy, ale przekroczenia nie powodują awarii. Zastosowania: task planning (Nav2 planner: 100–300 ms), rozpoznawanie gestów i mowy dla HRI, przetwarzanie obrazów (YOLO na GPU: 20–100 ms), feedback wizualny. Większość oprogramowania komercyjnego dla AMR i robotów usługowych operuje w tej klasie.

Wybierz pozycję, aby zobaczyć opis.
Typy wdrożenia
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.

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.

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 Classic (Gazebo 11)
Oryginalna wersja symulatora Gazebo – legacy, EOL 2025.
NVIDIA Isaac Sim
Zaawansowany fotorealistyczny symulator robotyczny NVIDIA oparty na Omniverse.
Oficjalne obrazy Docker
ros:humble-desktopros:jazzy-desktop
Licencje
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
RTAB-Map 0.22gru 2024

Aktualizacja dla ROS 2 Jazzy, ulepszone visual loop closure (DBoW3).

RTAB-Map 0.21cze 2023

Pełne wsparcie ROS 2 Humble + Iron, fluid pamięć.

RTAB-Map 0.20.16lut 2021

ROS 2 Foxy wsparcie, dodanie OctoMap integration.

RTAB-Map 0.19wrz 2019

Wsparcie 3D LiDAR (Velodyne, Ouster), ICP odometry.

RTAB-Map 0.11cze 2016

Pełne wsparcie ROS Indigo/Kinetic, RGB-D + Stereo + LiDAR.

RTAB-Map 0.5wrz 2013

Pierwsze publiczne wydanie z pracy doktorskiej Labbé.