Siemens nudi oboje ugrađeni softver za automobile i ugrađeni softverski inženjering rješenja. Siemens je prestao nuditi samostalni ugrađeni softver za SoC-ove s umirovljenjem u studenom 2023. proizvoda Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux i Sourcery CodeBench proizvoda (uključujući povezane dodatke). Postojeći ugovori o podršci za ove proizvode i dalje se poštuju, kontaktirajte Siemens Centar za podršku za više informacija.
Koje su različite vrste ugrađenog softvera i njihove svrhe?
- Operativni sustav (OS), u svom najopćenitijem smislu, softver je koji korisniku omogućuje pokretanje drugih aplikacija na računalnom uređaju. Operativni sustav upravlja hardverskim resursima procesora, uključujući ulazne uređaje poput tipkovnice i miša, izlazne uređaje poput zaslona ili pisača, mrežne veze i uređaje za pohranu poput tvrdih diskova i memorije. OS također pruža usluge za olakšavanje učinkovitog izvršenja i upravljanja softverskim aplikacijskim programima i dodjele memorije za njih.
- Firmware - Firmware je vrsta softvera koji je napisan izravno za komad hardvera. Radi bez prolaska kroz API-je, operativni sustav ili upravljačke programe uređaja - pružajući potrebne upute i smjernice za komunikaciju s drugim uređajima ili obavljanje osnovnih zadataka i funkcija kako je predviđeno.
- Middleware — Middleware je softverski sloj smješten između aplikacija i operativnih sustava. Middleware se često koristi u distribuiranim sustavima gdje pojednostavljuje razvoj softvera pružajući sljedeće:
- Skrivanje zamršenosti distribuiranih aplikacija
- Maskiranje heterogenosti hardvera, operativnih sustava i protokola
- Pružanje ujednačenih sučelja na visokoj razini koja se koriste za izradu interoperabilnih, višekratnih i prijenosnih aplikacija.
- Pružanje skupa zajedničkih usluga koje minimiziraju dupliciranje napora i poboljšavaju suradnju između aplikacija
- Aplikacija — Krajnji korisnik razvija konačnu softversku aplikaciju koja radi na operativnom sustavu, koristi ili komunicira s međuprogramom i firmware-om te je primarni fokus ciljne funkcije ugrađenih sustava. Svaka krajnja aplikacija jedinstvena je, dok operativni sustavi i firmver mogu biti identični od uređaja do uređaja.
Ugrađeni softver nasuprot ugrađenim sustavima
Hardverske komponente unutar uređaja s ugrađenim softverom nazivaju se "ugrađenim sustavom". Neki primjeri hardverskih komponenti koje se koriste u ugrađenim sustavima su krugovi napajanja, središnje procesorske jedinice, flash memorijski uređaji, mjerači vremena i serijski komunikacijski priključci. Tijekom ranih faza dizajna uređaja odlučuje se hardver koji će činiti ugrađeni sustav - i njegova konfiguracija unutar uređaja. Zatim se ugrađeni softver razvija od nule za pokretanje isključivo na tom hardveru u toj preciznoj konfiguraciji. To čini dizajn ugrađenog softvera specijaliziranim područjem koje zahtijeva duboko poznavanje hardverskih mogućnosti i računalnog programiranja.
Primjeri ugrađenih softverskih funkcija
Gotovo svaki uređaj s pločicama i računalnim čipovima ima ove komponente raspoređene u ugrađeni softverski sustav. Kao rezultat toga, ugrađeni softverski sustavi sveprisutni su u svakodnevnom životu i nalaze se u potrošačkoj, industrijskoj, automobilskoj, zrakoplovnoj, medicinskoj, komercijalnoj, telekomunikacijskoj i vojnoj tehnologiji.
Uobičajeni primjeri ugrađenih značajki temeljenih na softveru uključuju:
- Sustavi za obradu slika pronađeni u medicinskoj opremi za snimanje
- Kontrolni sustavi fly-by-wire pronađeni u zrakoplovu
- Sustavi za detekciju pokreta u sigurnosnim kamerama
- Sustavi kontrole prometa pronađeni u semaforima
- Sustavi vremena i automatizacije pronađeni u pametnim kućnim uređajima
Koje su različite vrste ugrađenih sustava?
Kada se temelje na performansama i funkcionalnim zahtjevima, postoji pet glavnih klasa ugrađenih sustava:
- Ugrađeni sustavi u stvarnom vremenu izvršavaju zadatke na deterministički i ponovljiv način, na što utječe temeljna arhitektura i raspored operativnih sustava, kao i performanse niti, grananje i prekid kašnjenja. Ugrađeni sustavi opće namjene ne sadrže zahtjeve u stvarnom vremenu i mogu upravljati prekidima ili grananjem bez ovisnosti o vremenu završetka. Grafički zasloni i upravljanje tipkovnicom i mišem dobri su primjeri općih sustava.
- Samostalni ugrađeni sustavi mogu izvršavati zadatke bez host sustava ili vanjskih resursa za obradu. Oni mogu izlaziti ili primati podatke s povezanih uređaja, ali se ne oslanjaju na njih kako bi dovršili svoj zadatak.
- Samostalni ugrađeni sustavi mogu izvršiti svoj zadatak bez host sustava ili vanjskih resursa za obradu. Oni mogu izlaziti ili primati podatke s povezanih uređaja, ali se ne oslanjaju na njih kako bi dovršili svoj zadatak.
- Umreženi ugrađeni sustavi ovise o povezanoj mreži za obavljanje dodijeljenih zadataka.
- Na temelju složenosti hardverske arhitekture sustava, postoje tri glavne vrste ugrađenih sustava: Umreženi ugrađeni sustavi ovise o povezanoj mreži za obavljanje dodijeljenih zadataka.
Kako krajnja tržišta utječu na ugrađene sustave
Zahtjevi i komponente ugrađenog sustava razlikovat će se ovisno o zahtjevima ciljnog tržišta. Neki primjeri uključuju:
- Potrošač - U aplikacijama poput robe široke potrošnje kao što su perilice rublja, nosivi uređaji i mobilni telefoni ugrađeni sustavi naglašavaju smanjenu veličinu
- Sustav na čipu, mala potrošnja energije ili rad baterije i grafička sučelja. U tim se aplikacijama vrednuju prilagodljivi operativni sustavi i mogućnost isključivanja neoperativnih "domena" dizajna.
- Umrežavanje — Aplikacije koje omogućuju povezivanje, komunikaciju, rad i upravljanje mrežom poduzeća. Pruža komunikacijski put i usluge između korisnika, procesa, aplikacija, usluga i vanjskih mreža/interneta. Ugrađene mrežne aplikacije usredotočuju se na brzinu odziva, obradu paketa i periferne hardverske putanje.
- Industrijski - Za aplikacije kao što su upravljanje tvorničkim podom, motori i vjetrenjače, naglasak ima tendenciju osiguranja povezivanja u oblaku i determinističkog rada u "stvarnom vremenu" i može se uvelike usredotočiti na međusoftver.
- Medicinska, automobilska i zrakoplovna industrija — Ove industrije trebaju mješovite sigurnosne kritične sustave, gdje su dijelovi dizajna izolirani jedni od drugih kako bi se osiguralo da samo potrebni podaci unose ili izađu iz sustava (sigurnost), a pritom se ne jamči šteta krajnjem korisniku (sigurnost). Primjeri su autonomni sustavi vožnje u automobilima i medicinskim uređajima. Ovi ugrađeni sustavi mogu sadržavati mješavinu otvorenog koda (Linux) i determinističkih operativnih sustava u stvarnom vremenu (RTOS) i uvelike koriste dokazani međusoftver.
Zašto se ugrađeni softver u automobilima razlikuje?
U automobilskoj elektronici, složene interakcije u stvarnom vremenu događaju se u više ugrađenih sustava kojima svaki upravlja funkcijama kao što su kočenje, upravljanje, ovjes, pogonski sklop itd. Fizičko kućište koje sadrži svaki ugrađeni sustav naziva se elektronička upravljačka jedinica (ECU). Svaki ECU i njegov ugrađeni softver dio su složene električne arhitekture poznate kao distribuirani sustav.
Komunicirajući jedni s drugima, ECU-ovi koji čine distribuirani sustav vozila mogu izvršavati razne funkcije, kao što su automatsko kočenje u nuždi, prilagodljivi tempomat, kontrola stabilnosti, prilagodljiva prednja svjetla i još mnogo toga. Jedna funkcija može zahtijevati interakcije u 20 ili više ugrađenih softverskih aplikacija raspoređenih na brojnim ECU-ima povezanim s više mrežnih protokola. Složeni upravljački algoritmi raspoređeni s ugrađenim softverom osiguravaju pravilno vrijeme funkcija, potrebne ulaze i izlaze te sigurnost podataka.
Uobičajeni primjeri značajki temeljenih na automobilskom softveru uključuju:
- Značajke ADAS (Advanced Driver Assist Systems) kao što su prilagodljivi tempomat, automatsko kočenje u nuždi, pomoć pri održavanju trake, pomoć u prometu, upozorenja o napuštanju trake
- Upravljanje baterijama
- Kompenzacija momenta
- Kontrola brzine ubrizgavanja goriva
ECU softverski snop
Elektronička upravljačka jedinica ili ECU sastoji se od glavne računalne jedinice s hardverom na razini čipa i hrpom ugrađenog softvera. Međutim, postoji sve veći trend među proizvođačima automobila da dizajniraju ECU-ove sa složenim integriranim krugovima koji sadrže više računalnih jezgri na jednom čipu - ono što se naziva Sustav na čipu (SoC). Ovi SoC-ovi mogu ugostiti mnoštvo ECU apstrakcija kako bi se konsolidirao hardver. Softver za ECU obično uključuje niz rješenja, od firmvera niske razine do ugrađenih softverskih aplikacija visoke razine.
ECU stog | Opis |
Ugrađena softverska aplikacija | Algoritmi upravljanja, obrada, usluge |
Okvir primjene | Sigurnosni i sigurnosni okviri |
Radno okruženje | AUTOSAR classic, AUTOSAR Adaptive, Ulazni/izlazni kanali |
Ugrađene virtualizacije | OS u stvarnom vremenu, ECU apstrakcije |
Firmware | Utovarivači, sigurna pohrana, siguran navoj |
Hardver | Uređaji na bazi silicija, mikrokontroleri, jednoslojne ili višeslojne ploče |