Robocikowo>ROBOCIKOWO
VxWorks

Inne · Runtime i infrastruktura

VxWorks

VxWorks 7 SR0840·Wind River

Aktywny Real-time capable Dostępne API
KATEGORIAInne · Runtime i infrastruktura
GOTOWOŚĆTRL 9
SKALA ADOPCJIStandard branżowy
LICENCJELicenseRef-Proprietary
PIERWSZE WYDANIE1987

**VxWorks** to flagowy real-time operating system (RTOS) firmy **Wind River Systems**, w produkcji od 1987 r. — jeden z najstarszych komercyjnych RTOS-ów wciąż aktywnych. Zaprojektowany od podstaw pod **deterministyczną, mikro-sekundową** obsługę przerwań i zadań, co czyni go standardem w branżach gdzie awaria oprogramowania ma konsekwencje życiowe lub multi-miliardowe.

**Architektura**: VxWorks używa **monolithic kernel** z hierarchical scheduler (priority-based, 256 poziomów, preemptive, optional round-robin). Wspiera **AMP, SMP i mixed-mode multiprocessing**, plus opcjonalny **Type-1 Hypervisor** (Wind River Helix Virtualization Platform) dla mixed-criticality systems. **Memory Protection** dostępna w wariancie **VxWorks RTP** (Real-Time Processes) — chroniony user-mode wirtualnej pamięci dla aplikacji.

**Certyfikacje safety-critical**: VxWorks oferuje **VxWorks Cert Edition** z gotowymi certyfikatami do **DO-178C Level A** (lotnictwo, najwyższy poziom), **EN 50128 SIL 4** (transport kolejowy), **IEC 61508 SIL 3** (industrial), **ISO 26262 ASIL D** (automotive), **IEC 62304 Class C** (medical). Te certyfikaty pozwalają na deployment w lotnictwie komercyjnym, łazikach NASA (Spirit, Opportunity, Curiosity, Perseverance — wszystkie na VxWorks), satelitach (>500 missions), urządzeniach medycznych (chirurgiczne roboty da Vinci wcześniejsze generacje), kontrolerach przemysłowych.

**Dla robotyki**: VxWorks pokrywa **mid-to-high-end industrial robotics** — KUKA KRC4/KRC5, FANUC R-30iB, niektóre kontrolery ABB OmniCore (równolegle z RobotWare). W humanoidach: Honda ASIMO (2000-2018) używała VxWorks. W aerospace robotics: ramiona robotyczne ISS (Canadarm2, Dextre), VxWorks-based mission computers w SpaceX Dragon (rezerwowy stack), Boeing Starliner.

**Programming**: C/C++ dominują; VxWorks 7 wprowadził wsparcie dla **Rust** (od 2023) i **container-style deployment** przez OCI-compatible images. Wind River Workbench (Eclipse-based) lub Wind River Studio (cloud-native) jako primary IDE.

**Cena**: komercyjny RTOS — license per device + per developer seat, koszty zaczynają się od ~$10 000 dla evaluation kits i sięgają milionów dla enterprise deploymentów. Brak free tier, ale **VxWorks for Education** dostępny dla uniwersytetów.

Typ i role
Typy oprogramowania
RTOS (system czasu rzeczywistego)

System operacyjny czasu rzeczywistego z deterministycznym schedulerem i gwarantowaną latencją obsługi przerwań. Typowo używany w kontroli ruchu, systemach safety-critical, ADAS i robotyce przemysłowej (VxWorks, QNX Neutrino, RT-Linux, Zephyr).

System operacyjny

System operacyjny ogólnego przeznaczenia lub specjalizowany dla robotyki — Ubuntu, Ubuntu Core, dystrybucje ROS-aware. Stanowi platformę dla middleware, runtime i aplikacji robotycznych.

Runtime

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.

Firmware

Firmware to specjalistyczne oprogramowanie zapisane bezpośrednio w pamięci urządzenia, mikrokontrolera lub sterownika, odpowiedzialne za podstawową logikę działania sprzętu, komunikację oraz obsługę funkcji urządzenia.

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

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.

Integracja urządzeń

Device Integration oznacza rolę oprogramowania odpowiedzialnego za komunikację, konfigurację, inicjalizację i obsługę konkretnych urządzeń, sensorów, kontrolerów lub komponentów sprzętowych w systemie robotycznym.

Diagnostyka i monitoring

Diagnostics & Monitoring oznacza rolę oprogramowania odpowiedzialnego za zbieranie telemetrii, monitoring stanu, wykrywanie błędów, diagnostykę pracy robota i analizę kondycji komponentów systemu.

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

Rodzina produktów Wind River wokół RTOS VxWorks — Workbench IDE, Simics simulator, Wind River Studio dla orchestracji edge.

Dojrzałość i adopcja
9 / 9
Sprawdzone w warunkach operacyjnych
BadaniaPrototypProdukcja
Skala adopcjiStandard branżowy
Status utrzymaniaUtrzymywane przez jednego dostawcę
Pierwsze wydanie1987
Ostatnia aktualizacja20 maja 2026
Wdrożenia

**NASA Mars Rovers** — Sojourner (1997), Spirit & Opportunity (2003-2018), Curiosity (2012-present), Perseverance (2020-present) — wszystkie wykorzystują VxWorks jako primary OS. **NASA Voyager 1 i 2** (po 1986 software upgrade) — VxWorks dla mission control. **Mars Helicopter Ingenuity** (2021-2024) — VxWorks (pierwszy autonomiczny flight controller na innej planecie). **Boeing 787 Dreamliner** — VxWorks AERO Edition w avionics. **SpaceX Crew Dragon** — VxWorks jako backup mission computer OS. **KUKA KRC4/KRC5 robot controllers** — natywny VxWorks dla deterministycznego motion control. **FANUC R-30iB** — VxWorks-based industrial controller. **Da Vinci Surgical System** (Intuitive Surgical, generation Si do Xi) — VxWorks dla safety-critical surgical robot subsystems. **ISS Canadarm2 + Dextre** — VxWorks dla ISS robotyki.

Społeczność

Wind River community zamknięte (komercyjny RTOS): ~50 000 developerów z aktywnymi seat licenses. Wind River Customer Portal ~25 000 zarejestrowanych użytkowników. Wind River Studio Forum ~8 000 wątków rocznie. Nie ma 'community size' w open-source sense — wsparcie kontraktualne.

Docelowe platformy robotyczne
Robot przemysłowy
Ramię robotyczne
Dron / UAV
Humanoid
Robot usługowy
Wsparcie ROSKompatybilność z ekosystemem ROS / ROS 2
ROS 2 Wsparcie EksperymentalneEksperymentalna / nieoficjalna integracja ROS 2 w trakcie rozwoju
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 powszechnie wykorzystywany w firmware, sterownikach, mikrokontrolerach i systemach embedded, gdzie wymagana jest bezpośrednia kontrola nad zasobami sprzętowymi.

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.

Rust

Rust to język programowania systemowego zaprojektowany z myślą o bezpieczeństwie pamięci i wydajności. Coraz częściej wykorzystywany jest w systemach embedded, robotyce i warstwach komunikacyjnych.

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
VxWorks

VxWorks — komercyjny RTOS Wind River z deterministycznym schedulerem, używany w łazikach NASA Mars, sondach kosmicznych, ADAS, sprzęcie medycznym.

Wybierz pozycję, aby zobaczyć opis.
Minimalne wymagania sprzętowe
Minimalne wymagania sprzętowe
CPUBardzo szeroki zakres: PowerPC (e500, e6500), x86-64 (Intel Atom, Xeon-D, AMD EPYC Embedded), ARMv7/ARMv8 (Cortex-A53, A72, R52F lockstep), RISC-V (od 2024), MIPS32. Min: 100 MHz dla ekstremalnie embedded; rekomendowane ≥ 500 MHz.
RAM (GB)1
GPUGPU acceleration opcjonalna — wsparcie dla NVIDIA Jetson AGX Orin (CUDA 11.4 driver dla VxWorks 7), Imagination Technologies PowerVR, AMD Radeon embedded. Większość deploymentów to headless control workloads bez GPU.
Dysk (GB)1

Komercyjny RTOS — nie do pobrania publicznie. Wymaga kontaktu z Wind River, NDA, evaluation license. Standardowe deployment image to ~5-50 MB (kernel + minimal apps). VxWorks Workbench (IDE) Linux/Windows host. Pricing: per device royalty od $10-500/device + developer seats od $5 000/year.

Pakowanie i dystrybucja
Menadżery pakietów
Prebuilt Binary (bezpośrednie pobieranie)

Dystrybucja prekompilowanych binarnych plików wykonywalnych lub bibliotek przez bezpośrednie pobieranie (wget, curl, instalator .sh, .exe, .pkg) ze strony producenta, bez pośrednictwa menedżera pakietów. Stosowane dla: komercyjnych SDK robotów bez publicznego menedżera pakietów, własnościowych komponentów oprogramowania przemysłowego, narzędzi standalone nie wymagających zarządzania zależnościami. Przykłady w robotyce: pobieranie instalatora ze strony producenta robota, skrypt bootstrap.sh SDK, archiwum .tar.gz z bibliotekami. Wady: brak automatycznych aktualizacji, brak zarządzania zależnościami, konieczność ręcznej weryfikacji integralności (checksum SHA256), ryzyko rozbieżności wersji między różnymi komponentami, trudność w zarządzaniu na flocie wielu robotów. Zalety: prostota dla dostawcy (nie wymaga integracji z menedżerem pakietów), pełna kontrola nad tym co i kiedy jest aktualizowane. Stosowane gdy producent sprzętu udostępnia SDK wyłącznie w tej formie (firmware tools, calibration software, proprietary middleware).

OTA (Over-The-Air Update)

Mechanizm zdalnej aktualizacji oprogramowania na robotach w terenie bez fizycznego dostępu do urządzenia, przez sieć (Wi-Fi, 5G, Ethernet). Kluczowy element infrastruktury floty robotów produkcyjnych. Implementacje: Mender.io (open source OTA dla Linux embedded, obsługuje Yocto i Ubuntu Core), balena.io (kontenerowy OTA oparty na Docker), SWUpdate (open source, powszechny w Yocto/OpenEmbedded), RAUC (robust update framework), Ubuntu Core Snap Store (automatyczne aktualizacje snaps), AWS IoT Greengrass (OTA dla urządzeń edge), Azure IoT Hub Device Update. Wymagania dla OTA w robotyce: atomic updates (aktualizacja albo się powiodła w całości, albo nie – brak stanu pośredniego), A/B partition scheme (aktualizacja na nieaktywnej partycji, przełączenie po sukcesie), automatic rollback przy błędzie startu, delta updates (przesyłanie tylko zmian – ważne przy ograniczonym paśmie 4G/5G), cryptographic signing (weryfikacja integralności aktualizacji). Integralny element systemów zarządzania flotą AMR i humanoidów deployowanych w dużej skali.

Yocto Project / OpenEmbedded

Framework do budowania własnych dystrybucji Linux dla systemów embedded i robotycznych od podstaw. Nie jest menedżerem pakietów w klasycznym sensie – jest systemem tworzenia kompletnego obrazu systemu operacyjnego (BSP + kernel + rootfs + aplikacje) skrojonym pod konkretny hardware. Warstwy (layers) Yocto: meta-ros (oficjalna warstwa ROS 2 dla Yocto – umożliwia budowanie obrazu z ROS 2 dla dowolnego embedded hardware), meta-openembedded (dodatkowe biblioteki), meta-raspberrypi, meta-tegra (NVIDIA Jetson). BitBake: system budowania Yocto analizujący przepisy (recipes .bb) i budujący pakiety w prawidłowej kolejności. Stosowany przez: producentów robotów tworzących własny locked-down OS dla urządzeń produkcyjnych (deterministyczna, audytowalna wersja wszystkich komponentów), firmy wymagające certyfikacji oprogramowania (IEC 61508, ISO 26262 – pełna kontrola stosu), systemy wymagające minimalnego footprintu OS. Alternatywy: Buildroot (prostszy, mniej elastyczny), Debian/Ubuntu Core (łatwiejszy dostęp do pakietów). meta-ros umożliwia deployment ROS 2 Humble/Jazzy na niestandardowych platformach ARM/RISC-V niedostępnych w oficjalnych apt repos.

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.

aarch64 / ARM64

ARM 64-bit – NVIDIA Jetson, Raspberry Pi 4/5, Apple Silicon.

ARMv7 / ARM32 (armhf)

32-bitowa architektura ARM w wersji ARMv7-A z rozszerzeniem Thumb-2 i sprzętową jednostką zmiennoprzecinkową (Hard Float – stąd oznaczenie armhf w dystrybucjach Debian/Ubuntu). Dominowała w embedded Linux i robotyce mobilnej przed upowszechnieniem się ARM64. Stosowana w: starszych Raspberry Pi (Pi 2 Model B: ARMv7, Pi 3 32-bit OS), BeagleBone Black (AM335x Cortex-A8), STM32MP1 (Cortex-A7 + Cortex-M4), starszych platformach robotycznych (TurtleBot 2, kobuki). Ograniczenia: maksymalnie 4 GB RAM adresowalnej, brak nowoczesnych rozszerzeń SIMD porównywalnych z AArch64 (NEON 64-bit vs NEON 128-bit w AArch64), malejące wsparcie w nowszych pakietach. ROS 2 Humble: armhf jest tier-3 (best-effort, bez gwarancji oficjalnych buildów). Większość nowoczesnych SDK robotycznych (Unitree SDK2, Isaac ROS) nie wspiera armhf. Relevantna dla: utrzymania starszych platform robotycznych (legacy support), bardzo ograniczone embedded SBC gdzie ARM64 niedostępne, mikrokontrolerów z Linux (Cortex-A klasy niskiej). Nowe projekty powinny targetować ARM64 zamiast ARMv7.

STM32 – ARM Cortex-M (embedded MCU)

Rodzina mikrokontrolerów STMicroelectronics STM32 oparta na rdzeniach ARM Cortex-M (M0, M0+, M3, M4F, M7, M33, M55) – dominująca platforma MCU w embedded firmware robotycznym. Nie uruchamia systemu operacyjnego Linux – oprogramowanie wykonywane bare-metal lub na RTOS (FreeRTOS, Zephyr, ChibiOS, Mbed OS). Zastosowania w robotyce: kontrolery silników BLDC/PMSM (FOC – Field Oriented Control) z pętlą regulacji prądu 10–100 kHz, sterowniki stawów robotów (Dynamixel SDK wewnętrznie używa STM32), interfejsy sensorów (IMU, enkodery absolutne, czujniki siły/momentu), kontrolery bezpieczeństwa (safety monitor, E-Stop), elektronika power management. Popularne serie: STM32F4 (Cortex-M4F, 168 MHz – standard w robotyce), STM32G4 (Cortex-M4F, 170 MHz, CAN FD – nowa generacja dla kontrolerów silników), STM32H7 (Cortex-M7, 480 MHz – wymagające aplikacje DSP/control), STM32U5 (Cortex-M33, ultra-low power – IoT robotics). Środowiska programistyczne: STM32CubeIDE, PlatformIO, Arduino framework dla STM32 (community). Integracja z ROS 2: micro-ROS na STM32 przez FreeRTOS (oficjalnie wspierane – STM32 jest platformą referencyjną micro-ROS), Zephyr RTOS + micro-ROS. Programowanie i debugging: ST-LINK/V3, J-Link przez SWD/JTAG.

Wybierz pozycję, aby zobaczyć opis.
Trudność instalacji
PoziomTylko eksperci
Protokoły i interfejsy
Protokoły komunikacji
Ethernet / TCP-IP

Standardowy protokół sieciowy IEEE 802.3 z TCP/IP jako warstwą transportową. Stosowany jako główny interfejs komunikacji między komputerem nadrzędnym (host PC) a robotem w SDK takich jak Unitree SDK2, Boston Dynamics API, Universal Robots URScript. Nie zapewnia deterministyczności (best-effort delivery).

CAN bus (Controller Area Network)

Szeregowy protokół komunikacyjny opracowany przez Bosch, powszechnie stosowany w robotyce mobilnej, quadrupedach i dronach do komunikacji między kontrolerami silników, ESC i MCU. Obsługuje prędkości do 1 Mbit/s (CAN 2.0) lub do 5+ Mbit/s (CAN FD). Cechuje go bardzo niska latencja, odporność na zakłócenia elektromagnetyczne i deterministyczny arbitraż wiadomości. Używany m.in. w robotach Unitree (G1, H1) do komunikacji z modułami stawowymi w trybie low-level.

CAN FD (CAN with Flexible Data-Rate)

Rozszerzenie standardu CAN 2.0 zwiększające przepustowość do 8 Mbit/s i rozmiar ramki danych do 64 bajtów (vs 8 bajtów w CAN 2.0). Zachowuje wsteczną kompatybilność z CAN 2.0 na poziomie arbitrażu. Stosowany w nowoczesnych robotach humanoidalnych i manipulatorach wymagających szybkiej transmisji danych telemetrycznych z wielu stawów jednocześnie.

EtherCAT

Deterministyczny protokół komunikacji przemysłowej oparty na Ethernet, opracowany przez Beckhoff Automation, zarządzany przez organizację ETG (EtherCAT Technology Group). Używa standardowych ramek Ethernet przetwarzanych w locie przez węzły slave (on-the-fly processing), co zapewnia cykle komunikacyjne poniżej 100 µs przy synchronizacji rozproszonych osi. Stosowany powszechnie w napędach stawowych robotów humanoidalnych (np. Boston Dynamics, Agility Robotics), manipulatorach przemysłowych i systemach motion control wymagających hard real-time.

Modbus TCP/RTU

Jeden z najstarszych i najszerzej stosowanych protokołów przemysłowych (Modicon, 1979). Modbus RTU działa przez RS-485/RS-232, Modbus TCP przez Ethernet. Stosowany w robotyce do komunikacji z starszą infrastrukturą przemysłową.

PROFINET

Standard komunikacji przemysłowej oparty na Ethernet, opracowany przez Siemens i zarządzany przez organizację PROFIBUS International. Dominuje w europejskich instalacjach automatyki. Obsługuje tryb RT (cykl 1–10 ms) i IRT (cykl < 1 ms).

OPC UA (OPC Unified Architecture)

Standard komunikacyjny IEC 62541 stosowany powszechnie w automatyce przemysłowej i Industry 4.0 do integracji robotów z systemami SCADA, MES i ERP. Definiuje model informacyjny, serwisy i mechanizmy bezpieczeństwa (PKI, szyfrowanie, signing).

MQTT (Message Queuing Telemetry Transport)

Lekki protokół komunikacyjny publish-subscribe oparty na TCP/IP, zaprojektowany dla urządzeń IoT i systemów o ograniczonych zasobach. Stosowany w robotyce fleetowej i cloud robotics do telemetrii, monitoringu stanu floty i zdalnego zarządzania robotami AMR. Broker centralny (np. Mosquitto, AWS IoT Core) zarządza routingiem wiadomości między wydawcami a subskrybentami. MQTT 5.0 wprowadza session expiry, payload format indicator i flow control.

TSN (Time-Sensitive Networking)

Zestaw standardów IEEE 802.1 rozszerzający Ethernet o deterministyczną transmisję z gwarantowanymi opóźnieniami i pasmem (IEEE 802.1Qbv, 802.1Qbu, 802.1AS). Stosowany w przemysłowych robotach wymagających synchronizacji wielu osi przez standardową sieć Ethernet bez dedykowanego okablowania EtherCAT.

IEEE 1588 / PTP (Precision Time Protocol)

Standard synchronizacji czasu w sieci Ethernet (IEEE 1588-2008, PTPv2) zapewniający precyzję synchronizacji poniżej 1 µs w sieciach LAN. Niezbędny w systemach wielorobotowych i wielosensorycznych.

SOME/IP (Scalable service-Oriented MiddlewarE over IP)

Protokół middleware stosowany w systemach automotive (AUTOSAR) do komunikacji usługowej (service-oriented) przez IP. Coraz częściej pojawia się w robotach przemysłowych i mobilnych wywodzących się ze środowisk automotive.

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.

Ethernet 100BASE-TX (Fast Ethernet)

Standard IEEE 802.3u – Ethernet 100 Mbit/s przez skrętkę (Cat5 i wyżej), złącze RJ-45. W robotyce stosowany jako legacy interfejs w starszych robotach przemysłowych (KUKA KR C2, Fanuc R-J3), PLC i urządzeniach embedded niskiej klasy.

CAN 2.0A / 2.0B

Controller Area Network 2.0 – standardowy protokół CAN zdefiniowany przez Bosch (1991). CAN 2.0A obsługuje 11-bitowe identyfikatory ramek, CAN 2.0B (Extended) – 29-bitowe. Prędkości do 1 Mbit/s. Standard de facto w robotach kroczących i kołowych.

CAN FD (Flexible Data-Rate)

Controller Area Network Flexible Data-Rate – rozszerzenie CAN 2.0 zachowujące arbitraż przy 1 Mbit/s i zwiększające prędkość transmisji danych do 8 Mbit/s oraz rozmiar ramki do 64 bajtów. W robotyce humanoidalnej stosowany do szybkiej komunikacji między kontrolerem głównym a modułami stawowymi.

EtherCAT (Slave Interface)

Interfejs EtherCAT po stronie urządzenia slave – każdy slave zawiera dedykowany ASIC ESC (EtherCAT Slave Controller), np. ET1100 (Beckhoff), LAN9252 (Microchip). ESC przetwarza ramki Ethernet w locie (on-the-fly) bez buforowania – minimalna latencja ~300 ns na węzeł.

UART / RS-232

Universal Asynchronous Receiver-Transmitter w standardzie napięciowym RS-232 (±3V–±15V logika odwrócona). Standard fizycznej warstwy komunikacji szeregowej stosowany historycznie w robotyce przemysłowej. Typowe prędkości: 9600 – 115200 baud. Zasięg kabla do 15 m przy 9600 baud.

UART / RS-485

Universal Asynchronous Receiver-Transmitter w standardzie różnicowym RS-485 (EIA-485). Obsługuje magistralę wielopunktową do 32 urządzeń, zasięg do 1200 m, prędkości do 10 Mbit/s. W robotyce stosowany do sieci czujników rozproszonych i komunikacji Dynamixel Protocol 2.0.

SPI (Standard 4-wire)

Serial Peripheral Interface w klasycznej konfiguracji 4-przewodowej: MOSI, MISO, SCLK, CS (Chip Select). Synchroniczny, full-duplex protokół Master-Slave o prędkościach do 80 MHz. Stosowany do enkoderów absolutnych, przetworników ADC/DAC, wyświetlaczy OLED/TFT i modułów IMU.

I2C (Standard Mode / Fast Mode)

Inter-Integrated Circuit – dwuprzewodowy synchroniczny protokół (SDA + SCL) w trybach Standard (100 kbit/s) i Fast (400 kbit/s). Magistrala wielomaster, wieloslave z adresowaniem 7-bit (128 adresów) lub 10-bit. Stosowany do czujników IMU, magnetometrów, barometrów i ekspanderów I/O.

GPIO (3.3V LVTTL)

General Purpose Input/Output – cyfrowe piny I/O w standardzie logicznym 3.3V LVTTL (Low-Voltage TTL). Dominujący standard GPIO w nowoczesnych SBC i modułach embedded (Raspberry Pi, NVIDIA Jetson, BeagleBone). Stosowany w robotyce do odczytu sygnałów cyfrowych z sensorów, sterowania przekaźnikami i sygnalizacji E-Stop.

JTAG

Joint Test Action Group (IEEE 1149.1) – interfejs do programowania i debugowania układów cyfrowych (MCU, FPGA, SoC). W robotyce stosowany do flashowania firmware kontrolerów silników i debugowania oprogramowania embedded.

SWD (Serial Wire Debug)

Serial Wire Debug – dwuprzewodowy alternatywny interfejs debugowania dla procesorów ARM Cortex-M. Standard de facto w programowaniu i debugowaniu mikrokontrolerów ARM w robotyce: STM32, nRF52, RP2040.

Wybierz pozycję, aby zobaczyć opis.
Klasy opóźnień
Hard Real-Time (< 1 ms)

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.

Hard Real-Time (1–5 ms)

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.

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.

Hybrydowy

Hybrid oznacza typ wdrożenia łączący lokalne lub pokładowe uruchamianie komponentów z dodatkowymi usługami działającymi na edge lub w chmurze.

Wybierz pozycję, aby zobaczyć opis.
Licencje
LicenseRef-ProprietaryProprietary – All Rights Reserved

Rodzina licencji: Własnościowa – komercyjna

Domyślny status prawny oprogramowania bez jawnie określonej licencji – wszystkie prawa zastrzeżone przez właściciela praw autorskich. Użycie, modyfikacja i dystrybucja są zabronione bez pisemnej zgody właściciela. Nie jest licencją w ścisłym sensie, lecz brakiem licencji – kod bez pliku LICENSE jest domyślnie All Rights Reserved.

Uwaga dla robotyki

Ważna informacja dla edytorów: oprogramowanie bez jawnego pliku licencji jest automatycznie All Rights Reserved i nie może być legalnie używane, modyfikowane ani dystrybuowane. Producenci robotów powinni zawsze jawnie określać licencję. Redaktorzy Robocikowo powinni flagować wpisy bez określonej licencji i kontaktować się z producentem w celu wyjaśnienia.

Historia wersji
VxWorks 7 SR0840mar 2025

AI/ML acceleration framework (TensorFlow Lite, ONNX Runtime), NVIDIA CUDA 12 driver, Time-Sensitive Networking (TSN) full stack.

VxWorks 7 SR0720 (Rust support)paź 2023

Native Rust support (crate `vxworks-sys`), MISRA C 2023 compliance, RISC-V production-ready.

VxWorks 7 SR0660 (LTS)wrz 2022

LTS release. Native Python support, gRPC, modern toolchain (Clang 14).

VxWorks 7.0lis 2014

Modularna architektura, OCI-compatible deployment, container-style updates. ARM64 wsparcie.

VxWorks 6.6kwi 2008

Wprowadzenie RTP (Real-Time Processes) — chroniony user-mode dla aplikacji. SMP optimizations.

VxWorks 5.5mar 2001

Pierwszy SMP support, IPv6, intrinsic security wraparound. Używany w NASA Spirit/Opportunity.

VxWorks 1.0sty 1987

Pierwsze publiczne wydanie. Bazowo dla Motorola 68000. Multitasking, priority preemptive scheduling.