Vgrajeni sistem

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 sistema. Običajno ni videti kot računalnik, pogosto nima tipkovnice, monitorja ali miške. Vendar ima kot vsak računalnik procesor in programsko opremo, vhod in izhod.

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.

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.

Slika notranjosti modema/usmerjevalnika ADSL. Sodoben primer vgrajenega sistema. Označeni deli vključujejo mikroprocesor (4), RAM (6) in bliskovni pomnilnik (7).Zoom
Slika notranjosti modema/usmerjevalnika ADSL. Sodoben primer vgrajenega sistema. Označeni deli vključujejo mikroprocesor (4), RAM (6) in bliskovni pomnilnik (7).

Primeri vgrajenih sistemov

Vgrajeni sistemi se uporabljajo v številnih vrstah električnih naprav, vključno z:

  • V telekomunikacijskih sistemih se uporabljajo za telefone, omrežja mobilne telefonije in usmerjevalnike wi-fi.
  • Potrošniška elektronika vključuje radijske sprejemnike, predvajalnike MP3, mobilne telefone, konzole za videoigre, digitalne fotoaparate, predvajalnike DVD, sprejemnike GPS, domače varnostne sisteme in tiskalnike.
  • Gospodinjski aparati, kot so mikrovalovne pečice, pralni stroji, protivlomni alarmni sistemi in pomivalni stroji, imajo vgrajene sisteme.
  • V prometu se vgrajeni sistemi uporabljajo za vse, od lokomotiv za vlake do letal in avtomobilov.
  • V industriji se uporabljajo električni motorji z elektronskimi krmilniki, čitalniki kartic in stroji CNC, ki samodejno izdelujejo kovinske dele.
  • Medicinski pripomočki, kot so defibrilatorji, avtomatski merilniki krvnega tlaka in avtomatske inzulinske črpalke.
  • Vojaške naprave, kot so radijske postaje, sateliti in sistemi za vodenje raket.

Skupne značilnosti

  • Vgrajeni sistemi so za razliko od računalnikov za splošne namene zasnovani za izvajanje specifičnih nalog.
  • Ni videti kot računalnik - morda nima celotnega monitorja ali tipkovnice.
  • Številni vgrajeni sistemi morajo biti sposobni opravljati stvari v realnem času - v kratkem času (s človeškega vidika skoraj takoj).
  • Številni vgrajeni sistemi morajo biti zelo varni in zanesljivi, zlasti pri medicinskih napravah ali avioniki za nadzor letal.
  • Zelo hitro se zažene. Ljudje ne želijo čakati minuto ali dve, da se zažene avto ali oprema za nujne primere.
  • Uporablja lahko poseben operacijski sistem (ali včasih zelo majhen doma narejen operacijski sistem), ki pomaga izpolnjevati te zahteve in se imenuje operacijski sistem v realnem času ali RTOS.
  • Programska navodila, napisana za vgrajene sisteme, se imenujejo vdelana programska oprema in so shranjena v bralnem pomnilniku ali bliskovnih pomnilniških čipih. Delujejo z omejenimi strojnimi viri računalnika: malo pomnilnika, majhna ali neobstoječa tipkovnica in/ali zaslon.

Vgrajeni sistemi niso vedno samostojne naprave. Včasih so sestavljeni kot sklop, kot so različni deli avtomobila - radio, krmiljenje plina, nadzor onesnaževanja itd. Včasih lahko komunicirajo z internetom ali omrežjem mobilnega telefona in imajo lahko bralnik USB ali druge povezave.

Uporabniški vmesniki

Vgrajeni sistemi so različni, od takih, ki sploh nimajo uporabniškega vmesnika - le pošiljajo in sprejemajo električne signale - do popolnega grafičnega uporabniškega vmesnika, kot ga imajo sodobni računalniki. Pogosto imajo nekaj gumbov, majhen zaslon in nekaj diod LED. Kompleksnejši sistemi imajo lahko zaslon na dotik, ki omogoča, da se pomen gumbov spreminja z vsakim zaslonom, tako kot pri pametnih telefonih.

Primer uporabniškega vmesnika z gumbi in preprostim zaslonom LCD.Zoom
Primer uporabniškega vmesnika z gumbi in preprostim zaslonom LCD.

Strojna oprema

Strojna oprema vključuje čipe, žice, tiskana vezja, gumbe in zaslone.

Procesorji

Najpomembnejši čip je osrednja procesna enota ali CPU. Ta izvaja programska navodila. To je lahko standardni mikroprocesor ali mikrokrmilnik. Mikrokrmilniki vključujejo mikroprocesor in preprosto periferno opremo, zato je lahko sistem manjši in cenejši. So manj prilagodljivi, ker teh delov ni mogoče spreminjati. Običajno ti deli vključujejo pomnilnik Flash in podporo za serijska vrata, USB itd.

V nasprotju z mikroprocesorjem za splošni računalnik večji in hitrejši ni vedno boljši. Številni vgrajeni procesorji so zelo majhni. Včasih zato, da porabijo manj prostora ali manj energije, včasih pa zato, da so cenejši. Splošno namenski računalniki uporabljajo mikroprocesorje, ki berejo 32- ali 64-bitne besede in delujejo s hitrostmi, merjenimi v GHz, vgrajeni procesorji pa so običajno 4 do 32-bitni in delujejo s hitrostmi, merjenimi v desetinah MHz (stokrat počasneje). (Toda programi so tudi manjši in ne preverjajo stvari, ki se ne uporabljajo).

Pripravljene računalniške plošče

Obstajajo "pripravljene" računalniške plošče, ki jih je mogoče uporabiti v nekaterih vgrajenih sistemih. Te pogosto uporabljajo operacijske sisteme Windows CE, Linux, NetBSD ali vgrajeni operacijski sistem v realnem času.

Včasih je morda lažje uporabiti že izdelano vezje. Te imajo običajno veliko skupnih komponent z računalniki za splošno rabo, vendar so manjše od tistih v računalnikih za splošno rabo. Na ploščah, kot je VIA EPIA, lahko poganjate operacijski sistem Microsoft Windows. Prednost je v tem, da se prihrani nekaj časa pri elektrotehniki in da se lahko uporabljajo ista orodja za razvoj programske opreme, ki se uporabljajo za razvoj programske opreme za osebne računalnike. Primeri takšnih vgrajenih naprav so bankomati ali zasloni v igralnicah. To se dobro obnese, če zahteve glede realnega časa niso zelo stroge (ni veliko pomembno, če na primer opravilo traja osem sekund namesto petih).

Rešitve ASIC in FPGA

Če mora biti naprava zelo majhna ali se bo prodajala v zelo velikem številu ("velika količina"), je smiselno izdelati čip po meri ali specializiran čip, ki opravlja točno to, kar je potrebno. To je sistem na čipu (SoC), ki vsebuje celoten sistem - procesor, enoto s plavajočo vejico, predpomnilnik in vmesnike na enem samem integriranem vezju. SoC so lahko izdelani kot integrirano vezje za posebne namene (ASIC) ali z uporabo polnega programirljivega matriksa (FPGA), ki ga programirajo ljudje, ki izdelujejo vgrajeni sistem.

Periferne naprave

Vgrajeni sistemi se z zunanjim svetom ali drugimi komponentami pogovarjajo prek perifernih naprav, kot so:

  • Serijski vhodi: RS-232, RS-422, RS-485. Včasih so bili ti priključki z 9-pinskim (ali večjim) priključkom precej pogosti.
  • Sinhroni serijski komunikacijski vmesnik: vmesno vezje I²C, vmesno vezje I²S, SPI, MIcrowire, ...
  • Univerzalno serijsko vodilo (USB).
  • Omrežja: Omrežja: Ethernet, omrežje krmilnikov, LonWorks, ...
  • Diskretni vhod/izhod: Vhod/izhod za splošne namene (GPIO). To je lahko ena sama žica s signalom za vklop/izklop. Uporablja se lahko za majhno tipkovnico ali za prižiganje LED.
  • Analogno-digitalni/digitalnoanalogni pretvorniki (ADC/DAC). Meri nekaj, kar spreminja moč, na primer svetlobni senzor ali krmilnik motorja.
  • Odstranjevanje napak: JTAG, vrata ICSP, za inženirje programske opreme.
Soekris net4801, vgrajeni sistem, namenjen omrežnim aplikacijam.Zoom
Soekris net4801, vgrajeni sistem, namenjen omrežnim aplikacijam.

Programska oprema

Operacijski sistemi

Vgrajeni sistemi pogosto ne potrebujejo popolnega operacijskega sistema. Nekateri uporabljajo posebej izdelane majhne in preproste operacijske sisteme, ki se zaženejo zelo hitro, drugi pa ga sploh ne potrebujejo. Vgrajenih sistemov ni mogoče tako enostavno prilagoditi, vendar so zgrajeni tako, da svoje naloge opravljajo veliko bolj zanesljivo. Ker je strojna oprema preprostejša, je pogosto tudi cenejša za izdelavo in deluje hitreje.

V nasprotju s tem mora biti splošni računalnik pripravljen na nove gonilnike naprav in programsko opremo za delovanje strojne opreme, ki je še ne pozna, kot so novi tiskalniki ali trdi diski. Izvajati mora različne uporabniške programe.

Z večanjem vgrajenih sistemov postajajo stvari, ki so bile prej značilne le za splošno namenske računalnike ali celo centralne računalnike, zdaj običajne tudi v vgrajenih sistemih. To vključuje zaščiten pomnilniški prostor in odprto programsko okolje, vključno z Linuxom, NetBSD itd.

Nekaj primerov operacijskih sistemov, od enostavnih do zapletenih:

  • Enostavna kontrolna zanka - Za večkratno klicanje različnih podprogramov se uporabljata časovnik in zanka. Za manjše sisteme to pogosto naredi ena oseba.
  • s prekinitvami - opravila se zaženejo z različnimi vrstami dogodkov. Dogodek je lahko časovno določen (na primer vsakih deset sekund), pritisk na gumb ali prejeti podatki.
  • večopravilnost brez izčrpavanja - Vsako opravilo je na vrsti za izvajanje in ko se konča, pokliče načrtovalec v operacijskem sistemu, da zažene naslednje opravilo.
  • preemptivno večopravilnost ali večnitnost - opravilo se lahko po določenem času ustavi, da se lahko nekaj časa izvaja drugo opravilo. Nobeno opravilo ne sme zasesti sistema. Na tej ravni se šteje, da ima sistem jedro "operacijskega sistema" in lahko izvaja opravila vzporedno. Ta vrsta operacijskega sistema se običajno kupi pri podjetju, ki se ukvarja samo z vgrajenimi operacijskimi sistemi.

Operacijski sistemi v realnem času vključujejo izdelke, kot so MicroC/OS-II, Green Hills INTEGRITY, QNX ali VxWorks. Za razliko od operacijskih sistemov MacOS ali Windows 7 teh operacijskih sistemov večina ljudi ne pozna dobro. Vendar se uporabljajo na številnih mestih, kjer sta čas in varnost zelo pomembna. Ljudje jih uporabljajo vsak dan in se tega ne zavedajo.

Pogosta primera večjih jeder sta vgrajeni Linux in Windows CE. Čeprav ti nimajo strogih časovnih omejitev, ki so potrebne za sistem strogega realnega časa, postajajo vse pogostejši, zlasti za zmogljivejše naprave, kot so brezžični usmerjevalniki in GPS-ji. Omogočajo ponovno uporabo kode v javni domeni za gonilnike naprav, spletne strežnike, požarne zidove in drugo kodo. Razvijalci programske opreme, ki jim je pisanje aplikacij za osebne računalnike bolj domače, bodo to tudi bolje spoznali. Po potrebi se lahko za stvari, ki potrebujejo stroge časovne omejitve, uporabi FPGA ali druga posebna strojna oprema.

Orodja

Podobno kot pri drugi programski opremi tudi oblikovalci vgrajenih sistemov za razvoj programske opreme za vgrajene sisteme uporabljajo prevajalnike, sestavljalnike in razhroščevalnike. Vendar pa lahko uporabljajo tudi nekatera bolj specifična orodja:

  • Pri sistemih, ki uporabljajo digitalno obdelavo signalov, lahko razvijalci uporabijo matematična orodja, kot so MATLAB, MathCad ali Mathematica.
  • Za boljšo optimizacijo za določeno strojno opremo se lahko uporabijo lastni prevajalniki in povezovalniki.
  • Vgrajeni sistem ima lahko svoj poseben jezik ali orodje za načrtovanje ali pa dodaja izboljšave obstoječemu jeziku, kot je jezik, ki ga uporablja Basic Stamp.

Orodja za odpravljanje napak:

  • Razhroščevalnik v vezju (ICD), strojna naprava, ki se z mikroprocesorjem poveže prek vmesnika JTAG. Ta od zunaj zažene in ustavi mikroprocesor med izvajanjem programske opreme. Omogoča tudi branje pomnilnika in registrov ter shranjevanje programa v pomnilnik.
  • Zunanje razhroščevanje z uporabo beleženja ali izpisa serijskih vrat za sledenje delovanja z uporabo utripajočega monitorja (printfs).
  • Interaktivno rezidenčno razhroščevanje - če ga operacijski sistem podpira, je to lupina na vgrajenem procesorju, ki izvaja ukaze, ki jih vnese razvijalec (na primer Linux).
  • Emulator v vezju nadomešča mikroprocesor na plošči in omogoča popoln nadzor nad vsem, kar bi lahko počel mikroprocesor.
  • Popoln emulator simulira vse funkcije strojne opreme, kar omogoča nadzor in spreminjanje. Strojna oprema v resnici ne obstaja, vendar je njena navidezna različica ("navidezni" stroj) v običajnem računalniku.
  • Preverjanje zunanjih linij z logičnim analizatorjem ali multimetrom.

Če zunanje razhroščevanje ni omejeno, lahko programer z orodji običajno naloži in zažene programsko opremo, pregleduje kodo, ki se izvaja v procesorju, ter zažene ali ustavi njegovo delovanje. Koda je lahko prikazana kot sestavljena ali izvorna koda. Nekateri integrirani sistemi (kot sta VxWorks ali Green Hills) imajo posebne funkcije, na primer sledenje temu, koliko prostora programska oprema zasede med delovanjem, katera opravila se izvajajo in kdaj se kaj zgodi.

Odvisno od vrste vgrajenega sistema je odvisno, kako ga je mogoče razhroščevati. Na primer, odpravljanje napak sistema z enim mikroprocesorjem se razlikuje od odpravljanja napak sistema, kjer se obdelava izvaja tudi na periferiji (DSP, FPGA, koprocesor).

Varnost in zanesljivost

Vgrajeni sistemi so pogosto v strojih, od katerih se pričakuje, da bodo brez napak delovali več let in se v nekaterih primerih ob napaki sami obnovili. To pomeni, da je programska oprema običajno razvita in preizkušena skrbneje kot pri osebnih računalnikih, izogibamo pa se tudi nezanesljivim mehanskim gibljivim delom, kot so diskovni pogoni in ventilatorji.

Na mestih, kjer sta pomembni varnost in zanesljivost:

  • Nekaterih sistemov ni mogoče varno ustaviti zaradi popravila ali pa je popravilo prezahtevno. Primeri so vesoljski sistemi (sateliti, roverji), kabli pod morjem in krmilniki jedrskih elektrarn.
  • Sistem lahko v primeru okvare ubije ljudi, na primer krmilniki letal, krmilniki kemičnih tovarn, železniški signali in srčni defibrilatorji.
  • Če se sistem ustavi ali če se zgodi napaka, bo izgubil velike zneske denarja: Telefonska stikala, tovarniške kontrole, blagajne, bankomati.

Načini za odpravljanje napak - tako programskih napak, kot je uhajanje pomnilnika, kot tudi mehkih napak v strojni opremi:

  • Watchdog timer, ki ponovno zažene vgrajeni sistem, če nekaj preneha delovati.
  • podvojeni deli, pri katerih lahko en sistem prevzame vlogo, če drugi preneha delovati.
  • programski načini "ohromitve", ki omogočajo delno delovanje.
  • Programiranje z upoštevanjem odpornosti

Sorodne strani

Vprašanja in odgovori

V: Kaj je vgrajeni sistem?


O: Vgrajeni sistem je računalnik, ki je narejen za reševanje posebnih problemov in ga ni lahko spremeniti.

V: Kako se vgrajeni sistem razlikuje od računalnika za splošne namene?


O: Vgrajeni sistem običajno nima tipkovnice, monitorja ali miške in ima specializirane funkcije. Splošno namenski računalnik lahko opravlja širok spekter nalog.

V: Kateri so nekateri primeri vgrajenih sistemov?


O: Primeri vgrajenih sistemov so krmilniki dvigal, sprejemniki televizijskih sprejemnikov, čitalniki kartic v ključavnicah hotelskih vrat, sistemi semaforjev, letala in montažne linije v tovarnah.

V: Kaj je računalništvo v realnem času?


O: Računalništvo v realnem času je, kadar mora vgrajeni sistem opraviti svoje delo v določenem času. Če je prekinjen, lahko povzroči težave, kot je slaba kakovost slike na televizorju.

V: Katere so komponente vgrajenega sistema?


O: Kot vsak računalnik ima tudi vgrajeni sistem procesor, programsko opremo, vhod in izhod.

V: Katere naloge lahko nadzoruje vgrajeni sistem?


O: Vgrajeni sistem lahko nadzoruje majhne naprave, kot so predvajalniki MP3 ali digitalni fotoaparati, ali večje sisteme, kot so semaforji ali letala.

V: Kaj pomeni izraz "vgrajen" v zvezi z vgrajenimi sistemi?


O: Izraz "vgrajen" pomeni, da je računalnik vgrajen v večji sistem in ga ni mogoče zlahka spremeniti.

AlegsaOnline.com - 2020 / 2023 - License CC3