Siemens nabízí obojí vestavěný software pro automobilový průmysl a vestavěné softwarové inženýrství řešení. Společnost Siemens přestala nabízet samostatný vestavěný software pro SoC s ukončením v listopadu 2023 produktů Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux a Sourcery CodeBench (včetně přidružených doplňků). Stávající smlouvy o podpoře těchto produktů jsou stále dodržovány, kontaktujte Siemens Centrum podpory pro více informací.
Jaké jsou různé typy vestavěného softwaru a jejich účely?
- Operační systém - Operační systém (OS), ve svém nejobecnějším smyslu, je software, který umožňuje uživateli spouštět jiné aplikace na výpočetním zařízení. Operační systém spravuje hardwarové prostředky procesoru, včetně vstupních zařízení, jako jsou klávesnice a myš, výstupní zařízení, jako jsou displeje nebo tiskárny, síťová připojení a paměťová zařízení, jako jsou pevné disky a paměť. Operační systém také poskytuje služby, které usnadňují efektivní provádění a správu a přidělování paměti pro softwarové aplikační programy.
- Firmware - Firmware je typ softwaru, který je napsán přímo pro kus hardwaru. Funguje bez procházení API, operačním systémem nebo ovladači zařízení - poskytuje potřebné pokyny a pokyny pro komunikaci s jinými zařízeními nebo provádění základních úkolů a funkcí, jak bylo zamýšleno.
- Middleware - Middleware je softwarová vrstva umístěná mezi aplikacemi a operačními systémy. Middleware se často používá v distribuovaných systémech, kde zjednodušuje vývoj softwaru tím, že poskytuje následující:
- Skrytí složitosti distribuovaných aplikací
- Maskování heterogenity hardwaru, operačních systémů a protokolů
- Poskytování jednotných rozhraní na vysoké úrovni používaných k vytváření interoperabilních, opakovaně použitelných a přenosných aplikací.
- Poskytování sady společných služeb, které minimalizují zdvojování úsilí a zlepšují spolupráci mezi aplikacemi
- Aplikace - Koncový uživatel vyvíjí finální softwarovou aplikaci, která běží na operačním systému, používá nebo interaguje s middlewarem a firmwarem a je primárním zaměřením cílové funkce vestavěných systémů. Každá koncová aplikace je jedinečná, zatímco operační systémy a firmware mohou být identické od zařízení k zařízení.
Vestavěný software vs. vestavěné systémy
Hardwarové komponenty v zařízení se zabudovaným softwarem se nazývají „vestavěný systém“. Některé příklady hardwarových komponent používaných ve vestavěných systémech jsou napájecí obvody, centrální procesorové jednotky, zařízení flash paměti, časovače a sériové komunikační porty. Během raných fází návrhu zařízení se rozhoduje o hardwaru, který bude tvořit vestavěný systém - a jeho konfiguraci v zařízení. Poté je vestavěný software vyvíjen od nuly, aby fungoval výhradně na tomto hardwaru v této přesné konfiguraci. Díky tomu je návrh vestavěného softwaru specializovaným oborem vyžadujícím hluboké znalosti hardwarových schopností a počítačového programování.
Příklady vestavěných softwarových funkcí
Téměř každé zařízení s deskami plošných spojů a počítačovými čipy má tyto komponenty uspořádány do vestavěného softwarového systému. Výsledkem je, že vestavěné softwarové systémy jsou všudypřítomné v každodenním životě a nacházejí se ve spotřební, průmyslové, automobilové, letecké, lékařské, komerční, telekomunikační a vojenské technologii.
Mezi běžné příklady funkcí založených na vestavěném softwaru patří:
- Systémy zpracování obrazu nalezené v lékařských zobrazovacích zařízeních
- Řídicí systémy fly-by-wire nalezené v letadlech
- Systémy detekce pohybu v bezpečnostních kamerách
- Systémy řízení dopravy nalezené na semaforech
- Časovací a automatizační systémy nalezené v inteligentních domácích zařízeních
Jaké jsou různé typy vestavěných systémů?
Na základě požadavků na výkon a funkčnost existuje pět hlavních tříd vestavěných systémů:
- Vestavěné systémy v reálném čase plní úkoly deterministickým a opakovatelným způsobem, což je ovlivněno základní architekturou a plánováním operačních systémů, stejně jako výkonem vláken, větvení a latencí přerušení. Všeobecné vestavěné systémy neobsahují požadavek v reálném čase a mohou spravovat přerušení nebo větvení bez závislosti na době dokončení. Grafické displeje a správa klávesnice a myši jsou dobrými příklady obecných systémů.
- Samostatné vestavěné systémy mohou provádět úkoly bez hostitelského systému nebo externích prostředků zpracování. Mohou odesílat nebo přijímat data z připojených zařízení, ale nejsou na nich závislí, aby dokončili svůj úkol.
- Samostatné vestavěné systémy mohou dokončit svůj úkol bez hostitelského systému nebo externích prostředků zpracování. Mohou odesílat nebo přijímat data z připojených zařízení, ale nejsou na nich závislí, aby dokončili svůj úkol.
- Síťové vestavěné systémy jsou při provádění přiřazených úkolů závislé na připojené síti.
- Na základě složitosti hardwarové architektury systému existují tři hlavní typy vestavěných systémů: Síťové vestavěné systémy závisí na připojené síti při provádění přiřazených úkolů.
Jak koncové trhy ovlivňují vestavěné systémy
Požadavky na vestavěné systémy a komponenty se budou lišit podle požadavků cílového trhu. Některé příklady zahrnují:
- Spotřebitel - V aplikacích, jako jsou spotřební zboží, jako jsou pračky, nositelná zařízení a mobilní telefony, vestavěné systémy zdůrazňují zmenšenou velikost
- Systém na čipu, nízká spotřeba energie nebo provoz baterie a grafická rozhraní. V těchto aplikacích jsou oceňovány konfigurovatelné operační systémy a schopnost vypnout nefunkční „domény“ návrhu.
- Sítě — Aplikace, které umožňují konektivitu, komunikaci, provoz a správu podnikové sítě. Poskytuje komunikační cestu a služby mezi uživateli, procesy, aplikacemi, službami a externími sítím/internetem. Vestavěné síťové aplikace se zaměřují na rychlost odezvy, zpracování paketů a cesty periferního hardwaru.
- Průmyslové — U aplikací, jako je správa továrny, motory a větrné mlýny, je důraz kladen na zabezpečení cloudové konektivity a deterministického provozu „v reálném čase“ a může se silně zaměřit na middleware.
- Lékařství, automobilový průmysl a letecký průmysl — Tato průmyslová odvětví potřebují smíšené bezpečnostní kritické systémy, kde jsou části konstrukce od sebe odděleny, aby se zajistilo, že pouze nezbytná data vstupují nebo opouštějí systém (bezpečnost) a zároveň zaručují, že koncový uživatel nepoškodí (bezpečnost). Příkladem jsou systémy autonomního řízení v automobilech a zdravotnických zařízeních. Tyto vestavěné systémy mohou obsahovat kombinaci open source (Linux) a deterministických operačních systémů v reálném čase (RTOS) a silně využívají osvědčený middleware.
Proč se automobilový vestavěný software liší?
V automobilové elektronice dochází ke složitým interakcím v reálném čase napříč několika vestavěnými systémy, z nichž každý ovládá funkce, jako je brzdění, řízení, odpružení, hnací ústrojí atd. Fyzické pouzdro obsahující každý vestavěný systém je označováno jako elektronická řídicí jednotka (ECU). Každá ECU a její vestavěný software je součástí komplexní elektrické architektury známé jako distribuovaný systém.
Díky vzájemné komunikaci mohou ECU, které tvoří distribuovaný systém vozidla, provádět řadu funkcí, jako je automatické nouzové brzdění, adaptivní tempomat, kontrola stability, adaptivní světlomety a mnoho dalšího. Jedna funkce může vyžadovat interakce mezi 20 nebo více vestavěnými softwarovými aplikacemi rozmístěnými v mnoha ECU propojených několika síťovými protokoly. Komplexní řídicí algoritmy nasazené s vestavěným softwarem zajišťují správné načasování funkcí, potřebné vstupy a výstupy a bezpečnost dat.
Mezi běžné příklady funkcí založených na aplikacích automobilového softwaru patří:
- Funkce ADAS (Advanced Driver Assist Systems), jako je adaptivní tempomat, automatické nouzové brzdění, asistent udržování jízdního pruhu, dopravní asistent, varování při odjezdu z jízdního pruhu
- Správa baterií
- Kompenzace momentu
- Řízení rychlosti vstřikování paliva
Zásobník softwaru ECU
Elektronická řídicí jednotka nebo ECU se skládá z hlavní výpočetní jednotky s hardwarem na úrovni čipu a hromadou vestavěného softwaru. Mezi výrobci automobilů však existuje rostoucí trend navrhovat ECU se složitými integrovanými obvody, které obsahují více výpočetních jader na jednom čipu - to, co se označuje jako systém na čipu (SoC). Tyto SoC mohou hostit velké množství abstrakcí ECU za účelem konsolidace hardwaru. Softwarový balíček pro ECU obvykle zahrnuje řadu řešení, od firmwaru nízké úrovně až po vestavěné softwarové aplikace na vysoké úrovni.
Zásobník ECU | Popis |
Vestavěná softwarová aplikace | Řídicí algoritmy, zpracování, služby |
Aplikační rámec | Bezpečnostní a bezpečnostní rámce |
Provozní prostředí | AUTOSAR classic, AUTOSAR Adaptive, Vstupní/výstupní kanály |
Vestavěné virtualizace | Operační systém v reálném čase, abstrakce ECU |
Firmware | Bootovací nakladače, zabezpečené úložiště, zabezpečené závitování |
Hardware | Zařízení na bázi křemíku, mikrokontroléry, jednovrstvé nebo vícevrstvé desky |