Domov

Panoge in delovna področja

Embedded razvoj v treh desetletjih je po svoji naravi medbranžen. Naslednjih devet delovnih področij odraža teme, na katerih sem dejansko delal.

Kdor tri desetletja deluje v embedded razvoju, kopiči izkušnje na več področjih — ne iz tržnih razlogov, ampak ker same naloge presegajo meje panog. Krmiljenje motorja v motorni žagi sledi enakim fizikalnim načelom kot krmiljenje motorja v avtomobilu.

Naslednji pregled prikazuje devet delovnih področij, na katerih sem izvedel konkretne projekte. Urejen je po pogostosti in prioriteti — automotive na čelu, ker se je tam začela moja kariera.

Automotive

1. Automotive

Glavno področje od 1990 — najprej pri Mercedes-Benzu, danes za več velikih proizvajalcev in njihovih dobaviteljev v Nemčiji, Veliki Britaniji in ZDA.

  • Krmiljenja motorjev (4-taktni, 2-taktni, varnostne funkcije)
  • Sistemi kamer (vzvratna vožnja, parkirni asistent, detekcija oseb)
  • Razvoj in testiranje krmilnih enot (ECU)
  • FMCW radar 77 GHz — avtomatizacija testov za dobavitelja avtomobilske industrije
  • Infotainment in MOST simulacija (glej projekt Audi v referencah)
  • Diagnostični koncepti (UDS, ISO 14229)
  • Funkcionalna varnost po ISO 26262
Medicina

2. Medicinska tehnika

Izkušnje z razvojem in testiranjem varnostno kritičnih medicinskih pripomočkov po IEC 62304 in IEC 60601-1.

  • Infuzijski sistemi (PCA, TCI)
  • Naprave za pranje in razkuževanje
  • Vizualizacija in analiza medicinskih podatkov
  • Algoritmi za interpretacijo presnovnih meritev (glukoza, ketoni)
  • IEC 62304 — življenjski cikel programske opreme
  • IEC 60601-1 — varnost naprave
Krmiljenje

3. Krmilni sistemi

Embedded krmiljenja za naprave, stroje in vozila — od krmiljenja motorjev z najstrožjimi zahtevami realnega časa do krmiljenja zgradb.

  • Elektronske krmilne enote (vozila)
  • Krmiljenja motorjev (predpaljenje, vbrizgavanje, varnost)
  • Krmiljenja naprav in strojev
  • Merjenje, krmiljenje, regulacija
  • Hišna avtomatizacija na večprocesorski strojni opremi: integrirano krmiljenje rolet in polken, krmiljenje strešnih oken Velux prek infrardečega vmesnika, PC vmesnik s časovnimi profili. Po želji oddaljen dostop iz mobilnega telefona prek šifrirane neposredne povezave.
  • Bare-metal realni čas na majhnih mikrokrmilnikih (glej projekt Stihl v referencah)
Signal

4. Navigacija in obdelava signalov

Algoritmi za zaznavanje gibanja, filtriranje signalov in izkoriščanje senzorskih podatkov — od analognih filtrirnih stopenj do adaptivnih digitalnih algoritmov.

  • 3D zaznavanje gibanja brez GPS (akcelerometri, Kalmanov filter)
  • Digitalni filtri (FIR, okenske funkcije: Hamming, Hann, Blackman, Kaiser)
  • Analogni filtri (Čebišev, Butterworth, aktivni in pasivni)
  • Izkoriščanje senzorskih podatkov v realnem času
  • Adaptivni algoritmi za spremenljiva okolja
Komunik.

5. Komunikacija

Implementacija vodil in radijskih vmesnikov — od ravni gonilnika blizu strojne opreme do prenosa, odpornega na napake, z Reed-Solomonovim kodiranjem.

  • Radijski vmesniki (prenos, odporen na napake)
  • Vodila CAN, CAN FD, Ethernet, EtherCAT
  • I²C, SPI, MOST, RS232
  • Redundanten prenos
  • Kodiranje za popravljanje napak (Reed-Solomon)
  • Strukturirana organizacija podatkov za samodejno zaznavanje in popravljanje
  • Chirp signali za prenos v zahtevnih razmerah
Proces

6. Spremljanje procesov in nadzorne sobe

Embedded sistemi in programska oprema za spremljanje, krmiljenje in vizualizacijo tehničnih naprav.

  • Realtime nadzorne plošče za spremljanje naprav in procesov
  • Večzaslonske postavitve s krivuljami trendov, alarmi in zgodovino
  • Alarmna in pragovna logika z eskalacijskimi ravnmi
  • Priklop senzorjev in zajem podatkov (embedded strojna oprema)
  • Spletni HMI koncepti
  • Večkanalna arhivacija podatkov
IoT

7. IoT in vizualizacija podatkov

Spletni vmesniki in aplikacije za spremljanje, krmiljenje in analizo embedded sistemov in merilnih podatkov.

  • IoT nadzorne plošče in spremljanje v realnem času (WebSocket, MQTT)
  • Spremljanje in oddaljeno krmiljenje
  • Spletni konfiguracijski vmesniki (Flask, REST API)
  • Vizualizacija merilnih podatkov (Chart.js, interaktivni diagrami)
  • Android aplikacije za embedded naprave (Kotlin)
Varnost

8. Šifriranje in varnost

Implementacija kriptografskih metod v embedded kontekstu. Opomba: nad določeno ravnijo šifriranja je morda potrebno dovoljenje pristojnega organa.

  • AES (128/192/256 bitov)
  • RSA, Twofish
  • Večkratno šifriranje za zelo varnostne aplikacije
  • Šifriranje v realnem času
  • Varnost omrežja (VLAN, port security)
  • Varna komunikacija na vodilu
  • Podpisane posodobitve vdelane programske opreme in varni bootloaderji
QA

9. Zagotavljanje kakovosti

Sistematična validacija embedded sistemov — na ravni strojne opreme, kode in sistema.

  • Pregled PCB in pregled zasnove
  • Pregled kode in statična analiza
  • Ročni testi in avtomatizacija testov
  • Tehnična dokumentacija (tudi video)
  • Kalibracija (tok, napetost, temperatura, tlak)
  • Validacija glede na zahteve
  • Specifikacija testov po ASPICE

Katera delovna področja se pogosto kombinirajo

Večina dejanskih projektov ne sodi le v eno od zgornjih področij, ampak kombinira več:

Barvna shema

Jezik