
Synapticon Actuation Stack to zintegrowany stos sterowania ruchem (actuation) dzialajacy na serwonapedach SOMANET firmy Synapticon. Obejmuje firmware serwonapedu realizujacy petle sterowania momentem, predkoscia i polozeniem, serwer sterowania Motion Master, webowe narzedzie inzynierskie OBLAC Drives (uruchamianie, strojenie, diagnostyka), interfejs synapticon_ros2_control (ros2_control) do integracji z ROS 2 oraz platforme bezpieczenstwa funkcjonalnego POSITRON.
Sercem stosu jest algorytm Model-Predictive Deadbeat Field-Oriented Control (MPD Control), osiagajacy zadany punkt pracy w okolo jednym cyklu przelaczania, co ogranicza generowanie ciepla i podnosi sprawnosc. Sterowanie dziala w twardym czasie rzeczywistym na ukladach SOMANET Core (architektura XMOS xCORE, 8-32 rdzenie RISC 32-bit). Sprzezenie zwrotne polozenia opiera sie na enkoderach absolutnych (zgodnych z BiSS) czytanych bezposrednio przez CPU.
Komunikacja z nadrzednym sterownikiem odbywa sie przez EtherCAT z profilami CoE (CiA 402 / DS402). Zintegrowane funkcje bezpieczenstwa (STO, SS1, SS2) realizowane sa bez przerywania zasilania, eliminujac osobne komponenty bezpieczenstwa. Motion Master udostepnia biblioteki klienckie (m.in. C++, Python, TypeScript/JavaScript), a aktualizacje firmware dostarczane sa OTA (Mender). Czesc narzedzi jest otwarta (np. synapticon_ros2_control na licencji MIT, fork SOEM), natomiast rdzen stosu jest komercyjny.
Stos wykorzystywany jest w robotach humanoidalnych, ramionach robotycznych i cobotach, robotach mobilnych oraz maszynach przemyslowych, dostarczajac gotowa warstwe napedowa i sterowania ruchem.
Control Stack to zestaw komponentów programowych odpowiedzialnych za logikę sterowania, planowanie ruchu, wykonywanie komend oraz koordynację działania elementów wykonawczych robota.
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.
Developer Tool to oprogramowanie przeznaczone do wspierania pracy deweloperskiej, w tym konfiguracji, debugowania, testowania, monitorowania, walidacji lub integracji systemów robotycznych i embedded.
Rola sterowania czasu rzeczywistego opisuje oprogramowanie odpowiedzialne za zamknięte pętle regulacji wykonywane z gwarantowaną, deterministyczną częstotliwością — typowo od 1 do 10 kHz dla pętli prądu/momentu w aktuatorach. W przeciwieństwie do soft real-time, w twardym reżimie czasowym przekroczenie deadline'u jest traktowane jak błąd systemowy. Realizowane na deterministycznych jądrach (Linux PREEMPT_RT, QNX Neutrino RTOS) lub na dedykowanych mikrokontrolerach. Krytyczne dla stabilności balansu robotów dwunożnych, kontroli siły, sterowania impedancyjnego i bezpieczeństwa funkcjonalnego.
Robot Control oznacza rolę oprogramowania odpowiedzialnego za sterowanie ruchem, wykonywanie komend, koordynację działania elementów wykonawczych oraz bezpośrednią logikę operacyjną robota.
Rola bezpieczeństwa funkcjonalnego opisuje oprogramowanie odpowiedzialne za to, aby robot pracujący obok ludzi nie spowodował szkody nawet w przypadku awarii sprzętu, błędu oprogramowania lub nieprzewidzianego zdarzenia środowiskowego. Komponent safety realizuje: deterministyczne wykonywanie zadań krytycznych (twarda determinika czasowa), izolację błędów (fault containment), ciągłe monitorowanie integralności systemu, przejścia do bezpiecznych stanów awaryjnych (safe states), oraz zgodność z normami bezpieczeństwa funkcjonalnego — IEC 61508 (SIL), ISO 13849 (Performance Level), ISO/IEC TR 5469 (AI w systemach safety). Typowo działa na izolowanym podsystemie sprzętowym (np. wyspa FSI) niezależnym od głównego stosu obliczeniowego.
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.
Diagnostics & Monitoring oznacza rolę oprogramowania odpowiedzialnego za zbieranie telemetrii, monitoring stanu, wykrywanie błędów, diagnostykę pracy robota i analizę kondycji komponentów systemu.
Rodzina zintegrowanego sterowania ruchem Synapticon: serwonapedy SOMANET, aktuatory ACTILINK oraz stos oprogramowania Motion Master / OBLAC Drives.
Serwonapedy i aktuatory Synapticon (z tym stosem) stosowane w robotach humanoidalnych, cobotach, robotach mobilnych i maszynach przemyslowych.
Produkt komercyjny (dostawca Synapticon, okolo 85 osob); wybrane komponenty open source na GitHub (motion-master-client, synapticon_ros2_control, SOEM).
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++ 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 to wysokopoziomowy język programowania szeroko stosowany w robotyce, AI, computer vision, automatyzacji, testach i szybkiej integracji komponentów sprzętowych oraz software'owych.
JavaScript to język programowania powszechnie wykorzystywany w aplikacjach webowych, panelach administracyjnych, dashboardach, narzędziach frontendowych i lekkich warstwach integracyjnych.
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.
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.
Firmware dziala na ukladzie serwonapedu (bez OS); narzedzia hostowe (Motion Master, OBLAC Drives) uruchamiane sa na komputerze inzynierskim.
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.
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).
XMOS xCORE to architektura procesorow zlozona z 8 do 32 programowalnych 32-bitowych rdzeni RISC na uklad, komunikujacych sie przez szybkie magistrale czasu rzeczywistego. Sprzetowa wielowatkowosc i deterministyczne (twardy real-time) wykonanie czynia ja przydatna do rownoleglego, precyzyjnego sterowania ruchem. Synapticon wykorzystuje ta architekture w ukladach SOMANET Core (System-on-Chip) swoich serwonapedow.
Intel/AMD 64-bit – najpowszechniejsza architektura PC i serwerów.
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.
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.
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).
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ł.
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.
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 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.
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.
Rodzina licencji: Licencja permisywna
Jedna z najprostszych i najszerzej stosowanych licencji open source. Pozwala na dowolne użycie, modyfikację i dystrybucję kodu, w tym w produktach zamkniętych, pod warunkiem zachowania tekstu licencji i informacji o prawach autorskich. Nie zawiera klauzuli patentowej ani copyleft.
Dominująca licencja w małych bibliotekach ekosystemu ROS 2 i narzędziach deweloperskich. Idealna dla SDK robotów OEM chcących maksymalnej adopcji. Brak klauzuli patentowej oznacza ryzyko przy projektach z portfoliem patentowym – w takich przypadkach preferowana Apache 2.0.
Brak historii wersji.