Vestavěné systémy (Embedded Systems)

Vestavěný systém (anglicky embedded system) je speciální počítačový systém, který je navržen pro provádění jedné nebo několika málo specifických funkcí v rámci většího mechanického, elektrického nebo elektronického celku.

Na rozdíl od běžného osobního počítače (PC), který je univerzální a uživatel si na něj může nainstalovat libovolný software (od textového editoru po moderní hry), je vestavěný systém pevně spjat s hardwarem daného zařízení a vykonává pouze dedikovaný program, pro který byl stvořen.

Základní charakteristiky

Vestavěné systémy se od klasických počítačů liší v několika klíčových oblastech:

Omezené zdroje: Často disponují velmi malým výpočetním výkonem a pamětí (RAM a Flash paměť se běžně pohybují v řádech kilobajtů nebo megabajtů).

Vysoká spolehlivost a stabilita: Tyto systémy musí fungovat nepřetržitě měsíce či roky bez restartu a bez lidského zásahu (např. kardiostimulátor nebo řídicí jednotka v automobilu).

Efektivita a nízká spotřeba: Mnohá zařízení jsou napájena z baterií nebo solárních panelů, proto je kladen extrémní důraz na minimální spotřebu energie (např. bezdrátové senzory).

Real-time provoz (Reálný čas): Velká část embedded systémů spadá do kategorie Real-Time Systems. To znamená, že systém musí na vnější podnět reagovat v přesně definovaném a garantovaném časovém okně. Pokud reakce přijde pozdě, je považována za selhání celého systému (např. vystřelení airbagu).

Hardwarová architektura

Srdcem každého vestavěného systému je řídicí čip. Podle složitosti aplikace se používají dva hlavní typy:

1. Mikrokontrolér (MCU - Microcontroller Unit)

Jedná se o kompletní počítač integrovaný na jediném křemíkovém čipu (tzv. System on a Chip). Obsahuje:

Procesorové jádro (CPU) – vykonává instrukce.

Paměť (RAM a ROM/Flash) – pro běh programu a uložení kódu.

Periferie – časovače, čítače, analogově-digitální převodníky (ADC) a komunikační rozhraní (UART, SPI, I2C).

Příklady architektur: AVR (využívané v Arduino), ARM Cortex-M, ESP32, PIC.

2. Mikroprocesor (MPU - Microprocessor Unit)

Pro výkonnější vestavěné systémy (např. chytré televize, bankomaty, routery) se používají klasické mikroprocesory, které potřebují externí paměť RAM a Flash úložiště. Příklad: Architektury ARM Cortex-A běžící na jednodeskových počítačích jako Raspberry Pi.

[Image of embedded system hardware architecture showing MCU connected to sensors and actuators]

Softwarová vrstva

Software pro vestavěné systémy se zásadně liší od běžných aplikací. Program, který ovládá hardware na té nejnižší úrovni a je trvale uložen v paměti čipu, se nazývá firmware.

Podle složitosti systému může software fungovat v několika režimech:

Bare-metal (Bez OS): Kód běží přímo na hardwaru v nekonečné smyčce (tzv. super-loop). Typické pro velmi jednoduché aplikace (např. blikač, jednoduchý termostat).

RTOS (Real-Time Operating System): Odlehčený operační systém navržený pro plánování úloh s garantovanou odezvou. Umožňuje multitasking na mikroprocesorech s omezenými zdroji. (Příklady: FreeRTOS, Zephyr, Zephyr RTOS).

Embedded Linux: Upravená a ořezaná verze operačního systému Linux pro výkonnější embedded zařízení, která vyžadují síťovou konektivitu, grafické rozhraní a složité ovladače.

Příklady využití v každodenním životě

S vestavěnými systémy se setkáváme na každém kroku, i když jsou často skryté uvnitř spotřebičů:

Automobilový průmysl: Moderní auta obsahují desítky embedded systémů (tzv. ECU) – řízení motoru, ABS, ESP, tempomat, parkovací asistenti.

Spotřební elektronika: Pračky, mikrovlnné trouby, kávovary, chytré televize, digitální fotoaparáty.

Lékařská zařízení: Insulinové pumpy, monitory životních funkcí, rentgeny.

**Pr