Siemens ponúka oboje automobilový zabudovaný softvér a vložené softvérové inžinierstvo riešenia. Spoločnosť Siemens prestala ponúkať samostatný vstavaný softvér pre SoC s odchodom produktov Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux a Sourcery CodeBench (vrátane súvisiacich doplnkov) v novembri 2023. Existujúce zmluvy o podpore týchto produktov sú stále dodržané, kontaktujte Siemens Centrum podpory pre viac informácií.
Aké sú rôzne typy vstavaného softvéru a ich účely?
- Operačný systém (OS) je vo svojom najvšeobecnejšom zmysle softvér, ktorý umožňuje používateľovi spúšťať iné aplikácie na výpočtovom zariadení. Operačný systém spravuje hardvérové zdroje procesora vrátane vstupných zariadení, ako je klávesnica a myš, výstupných zariadení, ako sú displeje alebo tlačiarne, sieťové pripojenia a úložné zariadenia, ako sú pevné disky a pamäť. Operačný systém tiež poskytuje služby na uľahčenie efektívneho vykonávania a správy a prideľovania pamäte pre softvérové aplikačné programy.
- Firmvér — Firmvér je typ softvéru, ktorý je napísaný priamo pre kus hardvéru. Funguje bez prechádzania cez APIs, operačný systém alebo ovládače zariadení - poskytuje potrebné pokyny a pokyny na komunikáciu s inými zariadeniami alebo vykonávanie základných úloh a funkcií podľa zamýšľania.
- Middleware - Middleware je softvérová vrstva umiestnená medzi aplikáciami a operačnými systémami. Middleware sa často používa v distribuovaných systémoch, kde zjednodušuje vývoj softvéru poskytovaním nasledujúcich možností:
- Skrytie zložitosti distribuovaných aplikácií
- Maskovanie heterogenity hardvéru, operačných systémov a protokolov
- Poskytovanie jednotných rozhraní na vysokej úrovni používaných na vytvorenie interoperabilných, opakovane použiteľných a prenosných aplikácií.
- Poskytovanie súboru spoločných služieb, ktoré minimalizujú duplikáciu úsilia a zlepšujú spoluprácu medzi aplikáciami
- Aplikácia — Koncový používateľ vyvíja konečnú softvérovú aplikáciu, ktorá beží na operačnom systéme, používa alebo interaguje s middleware a firmvérom a je primárnym zameraním cieľovej funkcie vstavaných systémov. Každá koncová aplikácia je jedinečná, zatiaľ čo operačné systémy a firmvér môžu byť rovnaké od zariadenia k zariadeniu.
Vstavaný softvér vs vstavané systémy
Hardvérové komponenty v zariadení so zabudovaným softvérom sa nazývajú „vstavaný systém“. Niektoré príklady hardvérových komponentov používaných vo vstavaných systémoch sú napájacie obvody, centrálne procesorové jednotky, zariadenia s pamäťou flash, časovače a porty sériovej komunikácie. Počas raných fáz návrhu zariadenia sa rozhoduje o hardvéri, ktorý bude tvoriť zabudovaný systém - a jeho konfigurácia v zariadení. Potom sa vstavaný softvér vyvinie od nuly, aby bežal výlučne na tomto hardvéri v tejto presnej konfigurácii. Vďaka tomu je návrh vstavaného softvéru špecializovaná oblasť vyžadujúca hlboké znalosti hardvérových schopností a počítačového programovania.
Príklady vložených softvérových funkcií
Takmer každé zariadenie s doskami plošných spojov a počítačovými čipmi má tieto komponenty usporiadané do vstavaného softvérového systému. Výsledkom je, že vstavané softvérové systémy sú všadeprítomné v každodennom živote a nachádzajú sa v spotrebiteľskej, priemyselnej, automobilovej, leteckej, lekárskej, komerčnej, telekomunikačnej a vojenskej technológii.
Bežné príklady vložených softvérových funkcií zahŕňajú:
- Systémy na spracovanie obrazu nachádzajúce sa v lekárskych zobrazovacích zariadeniach
- Riadiace systémy typu fly-by-wire nájdené v lietadle
- Systémy detekcie pohybu v bezpečnostných kamerách
- Systémy riadenia dopravy nachádzajúce sa v semaforoch
- Systémy časovania a automatizácie nachádzajúce sa v inteligentných domácich zariadeniach
Aké sú rôzne typy vstavaných systémov?
Na základe výkonnostných a funkčných požiadaviek existuje päť hlavných tried vstavaných systémov:
- Vstavané systémy v reálnom čase plnia úlohy deterministickým a opakovateľným spôsobom, čo je ovplyvnené základnou architektúrou a plánovaním operačných systémov, ako aj výkonom vlákien, vetvením a prerušujúcou latenciou. Všeobecné vstavané systémy neobsahujú požiadavky v reálnom čase a dokážu spravovať prerušenia alebo vetvenie bez závislosti od doby dokončenia. Grafické displeje a správa klávesnice a myši sú dobrými príkladmi všeobecných systémov.
- Samostatné vstavané systémy môžu vykonávať úlohy bez hostiteľského systému alebo externých zdrojov spracovania. Môžu vydávať alebo prijímať údaje z pripojených zariadení, ale pri dokončení úlohy sa na ne nespoliehajú.
- Samostatné vstavané systémy môžu dokončiť svoju úlohu bez hostiteľského systému alebo externých zdrojov spracovania. Môžu vydávať alebo prijímať údaje z pripojených zariadení, ale pri dokončení úlohy sa na ne nespoliehajú.
- Sieťové vstavané systémy závisia od pripojenej siete pri vykonávaní pridelených úloh.
- Na základe zložitosti hardvérovej architektúry systému existujú tri hlavné typy vstavaných systémov: Sieťové vstavané systémy závisia od pripojenej siete pri vykonávaní pridelených úloh.
Ako koncové trhy ovplyvňujú vstavané systémy
Vstavané systémové požiadavky a komponenty sa budú líšiť podľa požiadaviek cieľového trhu. Niektoré príklady zahŕňajú:
- Spotrebiteľ - V aplikáciách, ako je spotrebný tovar, ako sú práčky, nositeľné zariadenia a mobilné telefóny, vstavané systémy zdôrazňujú zmenšenú veľkosť
- Systém na čipe, nízka spotreba energie alebo prevádzka batérie a grafické rozhrania. V týchto aplikáciách sa oceňujú konfigurovateľné operačné systémy a schopnosť vypnúť nefungujúce „domény“ dizajnu.
- Networking — Aplikácie, ktoré umožňujú pripojenie, komunikáciu, prevádzku a správu podnikovej siete. Poskytuje komunikačnú cestu a služby medzi používateľmi, procesmi, aplikáciami, službami a externými sieťami/internetom. Vstavané sieťové aplikácie sa zameriavajú na rýchlosť odozvy, spracovanie paketov a periférne hardvérové cesty.
- Priemyselné — Pri aplikáciách, ako je správa podlahy v továrni, motory a veterné mlyny, kladie dôraz na zabezpečenie cloudového pripojenia a deterministickú prevádzku v reálnom čase a môže sa výrazne zamerať na middleware.
- Zdravotníctvo, automobilový priemysel a letecký priemysel — Tieto odvetvia potrebujú systémy kritické pre zmiešanú bezpečnosť, kde sú časti konštrukcie navzájom izolované, aby sa zabezpečilo, že iba potrebné údaje vstupujú alebo opúšťajú systém (bezpečnosť) a zároveň zaručujú žiadne poškodenie koncového používateľa (bezpečnosť). Príkladom sú autonómne systémy riadenia automobilov a zdravotníckych pomôcok. Tieto vstavané systémy môžu obsahovať kombináciu open source (Linux) a deterministických operačných systémov v reálnom čase (RTOS) a vo veľkej miere využívajú osvedčený middleware.
Prečo je vstavaný softvér v automobilovom priemysle iný?
V automobilovej elektronike dochádza k komplexným interakciám v reálnom čase vo viacerých zabudovaných systémoch, z ktorých každý riadi, ako je brzdenie, riadenie, odpruženie, hnací systém atď. Fyzické puzdro obsahujúce každý zabudovaný systém sa označuje ako elektronická riadiaca jednotka (ECU). Každý ECU a jeho vstavaný softvér sú súčasťou komplexnej elektrickej architektúry známej ako distribuovaný systém.
Vďaka vzájomnej komunikácii môžu ECU, ktoré tvoria distribuovaný systém vozidla, vykonávať rôzne funkcie, ako je automatické núdzové brzdenie, adaptívny tempomat, regulácia stability, adaptívne svetlomety a oveľa viac. Jedna funkcia môže vyžadovať interakcie naprieč 20 alebo viacerými vloženými softvérovými aplikáciami rozloženými cez početné ECU pripojené viacerými sieťovými protokolmi. Komplexné riadiace algoritmy nasadené so vstavaným softvérom zabezpečujú správne načasovanie funkcií, potrebné vstupy a výstupy a bezpečnosť dát.
Bežné príklady funkcií založených na aplikáciách automobilového softvéru zahŕňajú:
- Funkcie ADAS (Advanced Driver Assist Systems), ako je adaptívny tempomat, automatické núdzové brzdenie, asistent udržiavania jazdného pruhu, asistent premávky, upozornenia na odchod z pruhy
- Správa batérií
- Kompenzácia momentového momentu
- Regulácia rýchlosti vstrekovania paliva
Softvérový stoh ECU
Elektronická riadiaca jednotka alebo ECU sa skladá z hlavnej výpočtovej jednotky s hardvérom na úrovni čipu a zo stohu vstavaného softvéru. Medzi výrobcami automobilov však rastie trend navrhovania ECU so zložitými integrovanými obvodmi, ktoré obsahujú viac výpočtových jadier na jednom čipe - čo sa označuje ako systém na čipe (SoC). Tieto SoC môžu hostiť množstvo abstrakcií ECU s cieľom konsolidovať hardvér. Softvérový stoh pre ECU zvyčajne obsahuje celý rad riešení, od firmvéru nízkej úrovne až po vstavané softvérové aplikácie na vysokej úrovni.
Stoh ECU | Popis |
Vstavaná softvérová aplikácia | Riadiace algoritmy, spracovanie, služby |
Aplikačný rámec | Bezpečnostné a bezpečnostné rámce |
Prevádzkové prostredie | AUTOSAR classic, AUTOSAR Adaptive, Vstupné/výstupné kanály |
Vstavané virtualizácie | OS v reálnom čase, abstrakcie ECU |
Firmvér | Bootové nakladače, bezpečnostné skladovanie, bezpečnostné závitovanie |
Hardvér | Zariadenia na báze kremíka, mikrokontroléry, jednovrstvové alebo viacvrstvové dosky |