← Strona główna
Branże i obszary pracy
Rozwój embedded przez trzy dekady jest z natury przekraczający granice branż. Następujące dziewięć obszarów pracy odzwierciedla tematy, którymi rzeczywiście zajmowałem się — a nie to, co byłoby teoretycznie wyobrażalne.
Kto przez trzy dekady działa w rozwoju embedded, gromadzi doświadczenie w wielu branżach — nie z powodów marketingowych, lecz dlatego, że same zadania przekraczają granice branż. Sterowanie silnika w pile łańcuchowej kieruje się tymi samymi zasadami fizycznymi co sterowanie silnika w samochodzie. Kamera do detekcji osób w motoryzacji używa algorytmów, które pojawiają się również w medycynie. Magistrala przemysłowa nie jest technicznie daleko od magistrali samochodowej.
Następujący przegląd pokazuje dziewięć obszarów pracy, w których przeprowadziłem konkretne projekty. Jest uporządkowany według częstotliwości i priorytetu — motoryzacja na czele, ponieważ tam zaczęła się moja kariera i tam rozegrała się większość praktyki.
Motoryzacja
1. Motoryzacja
Główny obszar od 1990 — najpierw w Mercedes-Benz, dziś dla wielu dużych producentów i ich dostawców w Niemczech, Wielkiej Brytanii i USA. Doświadczenie obejmuje sterowania silnikami, testy sterowników, diagnostykę, infotainment i podsystemy bezpieczeństwa.
- Sterowania silnikami (4-suw, 2-suw, funkcje bezpieczeństwa)
- Systemy kamer (cofanie, asystent parkowania, detekcja osób)
- Rozwój i testowanie sterowników (ECU)
- Radar FMCW 77 GHz — automatyzacja testów dla dostawcy motoryzacyjnego
- Infotainment i symulacja MOST (zob. projekt Audi w referencjach)
- Koncepcje diagnostyczne (UDS, ISO 14229)
- Bezpieczeństwo funkcjonalne według ISO 26262
Medycyna
2. Technika medyczna
Doświadczenie w rozwoju i testowaniu krytycznych pod kątem bezpieczeństwa urządzeń medycznych według IEC 62304 (cykl życia oprogramowania) i IEC 60601-1 (bezpieczeństwo urządzenia). Punkt ciężkości na urządzeniach z krytycznymi pomiarami i zastosowaniem bliskim pacjentowi.
- Systemy infuzyjne (PCA, TCI)
- Urządzenia czyszczące i dezynfekujące
- Wizualizacja i analiza danych medycznych
- Algorytmy do interpretacji pomiarów metabolicznych (glukoza, ketony) do optymalizacji dawki insuliny i przyjmowania węglowodanów
- IEC 62304 — cykl życia oprogramowania
- IEC 60601-1 — bezpieczeństwo urządzenia
Sterowanie
3. Systemy sterowania
Sterowania embedded dla urządzeń, maszyn i pojazdów — od sterowań silników z najsurowszymi wymaganiami czasu rzeczywistego do sterowań budynków, które przetwarzają sygnały czasu rzeczywistego na sprzęcie wieloprocesorowym. Leżące u podstaw zasady są te same we wszystkich obszarach: deterministyczne taktowanie, odporne przetwarzanie sygnałów i śledzalne reakcje na wprowadzane przez użytkownika dane.
- Elektroniczne sterowniki (pojazdy)
- Sterowania silników (wyprzedzenie zapłonu, wtrysk, bezpieczeństwo)
- Sterowania urządzeń i maszyn
- Pomiar, sterowanie, regulacja
- Automatyka domowa na sprzęcie wieloprocesorowym: zasadniczo można zintegrować wszystko, co da się sterować elektrycznie lub wykrywać czujnikiem — rolety, okiennice, oświetlenie, ogrzewanie, drzwi, nawadnianie, czujniki pogody, czujniki ruchu. Konkretnie zrealizowano: zintegrowane sterowanie roletami i okiennicami, sterowanie oknami dachowymi Velux przez interfejs podczerwieni bez dodatkowego okablowania, interfejs do PC z profilami czasowymi. Na życzenie zdalny dostęp z telefonu komórkowego przez szyfrowane bezpośrednie połączenie z Państwa sterowaniem — bez okrężnych dróg przez serwery osób trzecich.
- Bare-metal czas rzeczywisty na małych mikrokontrolerach (zob. projekt Stihl w referencjach)
Sygnał
4. Nawigacja i przetwarzanie sygnałów
Algorytmy do wykrywania ruchu, filtrowania sygnałów i wykorzystania danych z czujników — od stopni filtrów analogowych do adaptacyjnych algorytmów cyfrowych. Stara dyscyplina, której wkład jest nadal często decydujący w nowoczesnych systemach embedded.
- Wykrywanie ruchu 3D bez GPS (akcelerometry, filtr Kalmana)
- Filtry cyfrowe (FIR, funkcje okna: Hamming, Hann, Blackman, Kaiser)
- Filtry analogowe (Czebyszew, Butterworth, aktywne i pasywne)
- Wykorzystanie danych z czujników w czasie rzeczywistym
- Algorytmy adaptacyjne do zmieniających się środowisk
Komunik.
5. Komunikacja
Implementacja magistrali i interfejsów radiowych — od poziomu sterownika bliskiego sprzętowi do transmisji odpornej na błędy z kodowaniem Reeda-Solomona. Punkt ciężkości leży nie tylko na samej transmisji, lecz na organizacji danych: dane do zabezpieczenia lub przekazania są tak strukturyzowane, by automatyczne wykrywanie i korekcja stały się możliwe — na kanale radiowym tak samo jak na nośniku pamięci.
- Interfejsy radiowe (transmisja odporna na błędy)
- Magistrale CAN, CAN FD, Ethernet, EtherCAT
- I²C, SPI, MOST, RS232
- Transmisja redundantna
- Kodowanie korekcyjne błędów (Reed-Solomon) do transmisji i przechowywania
- Strukturyzowana organizacja danych do automatycznego wykrywania i korekcji
- Sygnały chirp do transmisji w trudnych warunkach
Proces
6. Nadzór procesów i pomieszczenia kontrolne
Systemy embedded i oprogramowanie do nadzoru, sterowania i wizualizacji instalacji technicznych. Tu spotykają się sprzęt embedded, frontendy webowe i przetwarzanie danych w czasie rzeczywistym.
- Panele czasu rzeczywistego do nadzoru instalacji i procesów
- Układy wieloekranowe z krzywymi trendów, alarmami i historią
- Logika alarmowa i progowa z poziomami eskalacji
- Podłączanie czujników i akwizycja danych (sprzęt embedded)
- Koncepcje webowych HMI
- Wielokanałowa archiwizacja danych
IoT
7. IoT i wizualizacja danych
Interfejsy webowe i aplikacje do nadzoru, sterowania i analizy systemów embedded oraz danych pomiarowych. Ta warstwa decyduje, jak użytkownik postrzega system techniczny.
- Panele IoT i monitoring czasu rzeczywistego (WebSocket, MQTT)
- Nadzór i zdalne sterowanie
- Webowe interfejsy konfiguracyjne (Flask, API REST)
- Wizualizacja danych pomiarowych (Chart.js, interaktywne wykresy)
- Aplikacje Android dla urządzeń embedded (Kotlin)
Bezpiecz.
8. Szyfrowanie i bezpieczeństwo
Implementacja procedur kryptograficznych w kontekście embedded — od ustalonych algorytmów standardowych do rozwiązań szytych na miarę dla wysokich wymagań poufności. Uwaga: powyżej pewnego poziomu szyfrowania może być potrzebne pozwolenie właściwego organu, ponieważ niektórych technologii szyfrowania nie wolno eksportować do wszystkich krajów.
- AES (128/192/256 bitów)
- RSA, Twofish
- Szyfrowanie wielokrotne dla zastosowań wysokiego bezpieczeństwa
- Szyfrowanie czasu rzeczywistego
- Bezpieczeństwo sieci (VLAN, port security)
- Bezpieczna komunikacja magistralowa
- Podpisane aktualizacje oprogramowania układowego i bezpieczne bootloadery
QA
9. Zapewnienie jakości
Systematyczna walidacja systemów embedded — na poziomie sprzętu, kodu i systemu. Zapewnienie jakości nie jest dodanym na końcu krokiem, lecz częścią rozwoju od początku.
- Przegląd PCB i przegląd projektu
- Przegląd kodu i analiza statyczna
- Testy ręczne i automatyzacja testów
- Dokumentacja techniczna (również wideo)
- Kalibracja (prąd, napięcie, temperatura, ciśnienie)
- Walidacja wobec wymagań
- Specyfikacja testów według ASPICE
Które obszary pracy często się łączą
Większość rzeczywistych projektów nie mieści się tylko w jednym z powyższych obszarów, lecz łączy kilka. Typowe występujące kombinacje:
- Motoryzacja + sterowanie + komunikacja — klasyczny rozwój sterowników z połączeniem magistralowym
- Medycyna + przetwarzanie sygnałów + zapewnienie jakości — urządzenia z krytycznymi pomiarami
- Sterowanie + nadzór procesów + IoT — instalacje sieciowe ze zdalnym dostępem
- Szyfrowanie + komunikacja — bezpieczna transmisja w środowisku przemysłowym