Vgrajeni sistem je računalnik, ki je bil izdelan za reševanje le nekaj zelo specifičnih problemov in ga ni mogoče zlahka spremeniti. Beseda vgrajen pomeni, da je vgrajen v sistem — je stalni del večjega sestava. Običajno ni videti kot klasičen osebni računalnik; pogosto nima tipkovnice, monitorja ali miške. Vendar ima kot vsak računalnik procesor in programsko opremo, vhod in izhod, včasih tudi pomnilnik, napajalnik in komunikacijske vmesnike.
Glavne komponente vgrajenega sistema
- Strojna oprema: običajno temelji na mikrokrmilniku ali mikroprocesorju ter vključuje pomnilnik (RAM, ROM/Flash), napajalno enoto, vhodno-izhodne vmesnike, analogno-digitalne pretvornike (ADC), PWM izhode, senzorje in aktuatorje.
- Firmware in programska oprema: stalna programska oprema (firmware) je zapisana v nepovezanem pomnilniku in nadzoruje delovanje. Vgrajeni sistemi lahko uporabljajo tudi operacijski sistem v realnem času (RTOS) ali delujejo brez njega (bare-metal).
- Senzorji in aktuatorji: senzorji sprejemajo signale iz okolja (temperatura, pritisk, svetloba, hitrost), aktuatorji pa izvedejo dejanja (motori, ventili, luči).
- Vmesniki: komunikacijski protokoli, kot so UART, SPI, I2C, CAN, Ethernet, Wi‑Fi ali Bluetooth, omogočajo povezovanje z drugimi napravami ali oblakom.
Vrste in realnočasovno računalništvo
Vgrajene sisteme lahko razdelimo glede na zahtevnost dela in odzivni čas:
- Hard real‑time (strogo realnočasovno): sistem mora vedno odgovoriti v strogo določenem času; neuspeh pomeni napako sistema — primer so letalski krmilni sistemi ali sistemi za zaviranje v avtomobilu.
- Soft real‑time (mehko realnočasovno): zamude so nezaželene, a niso katastrofalne — primer so nekatere multimedijske aplikacije ali set-top boxi.
- Nerealnečasovni vgrajeni sistemi: naloge so pomembne, vendar nimajo strogih časovnih omejitev — primeri so nekateri gospodinjski aparati.
Na primer, krmilnik, vgrajen v dvigalo, na podlagi pritisnjenih gumbov naroči motorju, naj dvigalo premakne v različna nadstropja. Dekoder je vgrajen v satelitski televizijski sprejemnik (imenovan STB), da prebere signal s krožnika in pošlje nekaj, kar televizor razume. Pogosto mora ta vrsta sistema opraviti svoje delo v določenem času. To se imenuje računalništvo v realnem času. Če bi bil set-top box prekinjen, da bi opravil drugo nalogo, bi na primer na televizorju videli slabo sliko. Splošno namenski računalnik bo pogosto imel kratke prekinitve, medtem ko bo počel nekaj drugega, to pa ni realni čas.
Značilnosti in omejitve
- Omejeni viri: pomnilnik, procesorska moč in energija so pogosto omejeni zaradi stroškov, porabe in velikosti.
- Zanesljivost in robustnost: naprave morajo delovati dolgo časa brez napak, pogosto v neugodnih okoljih (vibracije, temperature, prah).
- Poraba energije: pri baterijsko napajanih napravah (sensorji, mobilne naprave) je optimizacija porabe ključna.
- Varnost in zanesljivost: povezani vgrajeni sistemi so tarče kibernetskih napadov; varna komunikacija, preverjanje avtentičnosti in posodobitve so nujne.
- Certifikati in standardi: varnostno-kritični sistemi pogosto potrebujejo certifikate (npr. v aviaciji, medicini ali avtomobilski industriji).
Razvoj in testiranje
Razvoj vgrajenega sistema vključuje faze zbiranja zahtev, izbire strojne opreme, pisanja firmware‑a, integracije z I/O napravami ter obsežnega testiranja. Pogoste metode in orodja:
- Uporaba razvojnih plošč (npr. Arduino, STM32, Raspberry Pi za prototipiranje).
- RTOS, task scheduling, obvladovanje prekinitev (interrupts), časovniki in watchdog mehanizmi za varnost.
- Testiranje v realnem okolju, vključno z enotnimi testi, sistemskim testiranjem in HIL (hardware‑in‑the‑loop) simulacijami.
- Orodja za odpravljanje napak: JTAG/SWD, logični analizatorji, osciloskopi, sledilniki porabe energije in emulatorji.
- Postopki za posodobitve: bootloaderji in varne OTA (over‑the‑air) posodobitve programske opreme.
Primeri uporabe
Vgrajeni sistemi nadzorujejo številne danes uporabljene naprave, kot so čitalniki kartic v hotelskih vratnih ključavnicah ali številne naprave v avtomobilu. Upravljajo lahko majhne stvari, kot je predvajalnik MP3 ali digitalni fotoaparat, in velike stvari, kot so sistemi semaforjev, letala ali montažne linije v tovarni.
- MP3 predvajalnik: pretvori datoteko v audio signal in jo pošlje DAC‑u ter upravlja uporabniški vmesnik in energetsko porabo.
- Digitalni fotoaparat: nadzoruje senzor slike, obdelavo signala, shranjevanje in komunikacijo.
- Sistemi semaforjev: sinhronizacija, odziv na prometne podatke in prioritetne signale za reševalna vozila.
- Letala: letalski sistemi so izredno zanesljivi in pogosto uporabljajo redundantne vgrajene sisteme z zahtevami za certifikacijo.
- Montažne linije: krmilniki PLC ali vgrajeni sistemi upravljajo robote, senzorje in varnostne mehanizme.
Trendi in prihodnost
- Internet stvari (IoT): množično povečevanje števila vgrajenih sistemov, povezanih v omrežja in v oblak.
- Edge computing in umetna inteligenca: izvajanje analitike in modelov strojnega učenja neposredno na napravah za hitrejše odločitve in manjšo odvisnost od povezave.
- Povečana pozornost na varnost: uvajanje varnostnih elementov, šifriranja, TPM modulov in varnostno usmerjenih arhitektur.
- Standardizacija in interoperabilnost: razvijajo se standardi za lažjo integracijo in vzdrževanje.
Vgrajeni sistemi so torej prisotni v številnih vsakdanjih in strokovnih napravah. Čeprav se razlikujejo v kompleksnosti in zahtevah, imajo skupne izzive: omejene vire, potrebo po zanesljivosti, učinkovitosti in varnosti. Razumevanje arhitekture, razvojnih praks in specifičnih zahtev realnega časa je ključno za uspešen razvoj teh sistemov.



