Manussüsteemide õpetus

⚡ Nutikas kokkuvõte

Sisseehitatud süsteemide õpetus selgitab kontrolleripõhiseid seadmeid, mis on loodud spetsiaalsete funktsioonide täitmiseks suuremates mehaanilistes või elektrilistes süsteemides. LessNeed hõlmavad komponente, omadusi, mikrokontrollereid, mikroprotsessoreid, programmeerimiskeeli, rakendusi, eeliseid ja puudusi nii algajatele kui ka kesktaseme inseneridele.

  • ⚙️ Pühendatud eesmärk: Manussüsteemid täidavad ühte kindlat ülesannet, kasutades hostseadmesse sisseehitatud protsessorit, mälu ja välisseadmeid.
  • 🧠 Põhikomponendid: Riistvara, püsivara ja reaalajas operatsioonisüsteemid koos annavad anduritele ja ajamitele deterministlikke vastuseid.
  • 📐 ArchiTekstuuri tüübid: Valige mikrokontrolleri-, mikroprotsessori- või FPGA-põhised konstruktsioonid, olenevalt maksumusest, võimsusest ja jõudlusvajadustest.
  • 💻 Programmeerimiskeeled: C domineerib manussüsteemide arenduses, kusjuures C++, Assembly, Pythonja Rust kogub populaarsust ohutuskriitiliste töökoormuste osas.
  • 🏭 Lai rakendused: Autotööstus, meditsiin, tarbeelektroonika, tööstusautomaatika ja lennundus tuginevad igapäevaselt manussüsteemidele.
  • 🤖 Tehisintellekt äärel: TinyML, servapõhised tehisintellekti kiibid ja närvikiirendid toovad seadmesisese intelligentsuse manustatud seadmetesse ilma pilvesõltuvuseta.

Manussüsteemide õpetus

Enne manustatud süsteemi õppimist õpime:

Mis on süsteem?

Süsteem on korraldus, kus kõik selle komponendid töötavad konkreetsete määratletud reeglite järgi. See on kindla plaani järgi ühe või mitme ülesande organiseerimise, töötamise või täitmise meetod.

Mis on manustatud süsteem?

Manussüsteem on arvutitarkvara ja riistvara kombinatsioon, mis on kas fikseeritud või programmeeritav. Manussüsteem võib olla kas iseseisev süsteem või osa suurest süsteemist. See on enamasti mõeldud konkreetse funktsiooni või suurema süsteemi funktsioonide jaoks. Näiteks tulekahjusignalisatsioon on tavaline näide sisseehitatud süsteemist, mis suudab tuvastada ainult suitsu.

Manussüsteemide näide

Laserprinter

Laserprinterid on üks näidetest sisseehitatud süsteemidest, mis kasutavad printimise erinevate aspektide haldamiseks manussüsteeme. Lisaks printimise põhiülesande täitmisele peab see võtma kasutaja sisestusi, haldama sidet arvutisüsteemiga, käsitlema tõrkeid ja tuvastama salve jäänud pabereid jne.

Siin on mikroprotsessori põhiülesanne tekstist aru saada ja prindipead juhtida nii, et see tühjendaks tinti sinna, kuhu vaja.

Selle tegemiseks peab see dekodeerima talle antud erinevad failid ning mõistma fonti ja graafikat. See võtab andmete töötlemiseks palju protsessori aega, samuti peab see võtma kasutaja sisendeid, juhtmootoreid jne.

Manussüsteemi ajalugu

Siin on olulised verstapostid manustatud süsteemi ajaloost:

  • 1960. aastal kasutati manustatud süsteemi esmakordselt arendusesping Apollo juhtimissüsteem, autor Charles Stark Draper MIT-s.
  • 1965. aastal töötas Autonetics välja Minutemani rakettide juhtimissüsteemis kasutatava arvuti D-17B.
  • 1968. aastal lasti välja esimene sõidukite sisseehitatud süsteem.
  • Texas Instruments töötas välja esimese mikrokontrolleri 1971. aastal.
  • 1987. aastal andis Wind River välja esimese manustatud operatsioonisüsteemi VxWorks.
  • Microsoft'S Windows manustatud CE 1996. aastal.
  • 1990. aastate lõpuks ilmus esimene manustatud Linuxi süsteem.
  • Manustatud turg ulatus 140. aastal 2013 miljardi dollarini.
  • Analüütikud prognoosivad 40. aastaks manustatud turgu, mis on suurem kui 2030 miljardit dollarit.

Manussüsteemi omadused

Manussüsteemi omadused
Manussüsteemi omadused

Manussüsteemi olulised omadused on järgmised:

  • Nõuab reaalajas jõudlust
  • Sellel peaks olema kõrge kättesaadavus ja töökindlus.
  • Välja töötatud reaalajas operatsioonisüsteemi ümber
  • Tavaliselt on lihtne ja kettata toiming, ROM-i alglaadimine
  • Mõeldud ühe konkreetse ülesande jaoks
  • Sisend- ja väljundseadmete ühendamiseks peab see olema ühendatud välisseadmetega.
  • Pakub kõrget töökindlust ja stabiilsust
  • Vaja on minimaalset kasutajaliidest
  • Piiratud mälu, madal hind, väiksem energiatarve
  • See ei vaja ühtegi sekundaarne mälu arvutis.

Manussüsteemides kasutatavad olulised terminoloogiad

Nüüd selles manustatud süsteemide õpetuses käsitleme mõningaid olulisi manustatud süsteemis kasutatavaid termineid.

Usaldusväärsus

See mõõdab süsteemi ellujäämise tõenäosust, kui funktsioon on tööaja jooksul kriitiline.

Veataluvus

Veataluvus on arvutisüsteemi võime rikete korral ellu jääda.

Real-Time

Manussüsteem peab vastama erinevatele ajastus- ja muudele piirangutele. Need on sellele peale surutud välismaailma reaalajas loomuliku käitumisega.

Näiteks õhuväe osakond, mis hoiab tracK saabuvate raketirünnakute arv peab reaalajas tähtaja tõttu oma vasturünnaku täpselt arvutama ja planeerima. Vastasel juhul see hävitatakse.

Paindlikkus

See on sisseehitatud silumisvõimalustega süsteemide ehitamine, mis võimaldab kaughooldust.

Näiteks ehitate kosmoselaeva, mis maandub teisele istutusmasinale, et koguda erinevat tüüpi andmeid ja saata kogutud üksikasjad meile tagasi. Kui see kosmoselaev läheb hulluks ja kaotab juhitavuse, peaksime suutma teha mõne olulise diagnostika. Seega on paindlikkus manustatud süsteemi kujundamisel ülioluline.

Kaasaskantavus

Kaasaskantavus on mõõt sama manussüsteemi tarkvara kasutamise lihtsusest erinevates keskkondades. See eeldab üldistatud teadmisi.tracrakendusprogrammi loogika enda ja madala taseme süsteemiliideste vahelisi seoseid.

Mis on mikrokontroller?

Mikrokontroller on ühe kiibiga VLSI seade, mida nimetatakse ka mikroarvutiks. See sisaldab kõiki vajalikke mälu- ja I/O-liideseid, samas kui üldotstarbeline mikroprotsessor vajab nende vajalike funktsioonide pakkumiseks täiendavaid kiipe. Mikrokontrollereid kasutatakse laialdaselt manussüsteemides reaalajas juhtimisrakenduste jaoks.

Mis on mikroprotsessor?

Mikroprotsessor on ühe kiibiga pooljuhtseade. Selle CPU sisaldab programmiloendurit, ALU-d pinukursorit, tööregistrit ja kella ajastusahelat. See sisaldab ka ROM ja RAM, mäludekooder ning paljud jada- ja paralleelpordid.

Archimanustatud süsteemi struktuur

Allpool on manustatud süsteemi põhiarhitektuur:

Archimanustatud süsteemi struktuur
Archimanustatud süsteemi struktuur

1) Andur

Andur aitab mõõta füüsilist suurust ja teisendab selle elektrisignaaliks. Samuti salvestab see mällu mõõdetud koguse. Seda signaali saab valmis seada vaatleja või mis tahes elektrooniline instrument, näiteks A2D-muundur.

2) AD-muundur

AD-muundur (analog-to-digital converter) võimaldab teisendada anduri saadetud analoogsignaali digitaalsignaaliks.

3) Mälu

Mälu kasutatakse teabe salvestamiseks. Manussüsteem sisaldab peamiselt kahte mäluelementi 1) muutlik 2) püsimälu.

4) Protsessor ja ASIC-id

See komponent töötleb andmeid, et mõõta väljundit ja salvestada need mällu.

5) DA muundur

DA-muundur (digitaal-analoogmuundur) aitab teil teisendada protsessori poolt etteantud digitaalsed andmed analoogandmeteks.

6) Täiturmehhanism

Täiturmehhanism võimaldab võrrelda DA-muunduri antud väljundit sellesse salvestatud tegeliku väljundiga ja salvestab heakskiidetud väljundi mällu.

Manussüsteemide tüübid

Manussüsteeme on kolme tüüpi:

  • Väike skaala
  • Keskmine skaala
  • Keerukas
Manussüsteemide tüübid

Manussüsteemide tüübid

Väikesed manussüsteemid

Seda manussüsteemi saab konstrueerida ühe 8- või 16-bitise mikrokontrolleriga. Seda saab töötada aku abil. Arendamiseksping Väikesemahulise manussüsteemi puhul on kõige olulisemad redaktor, assembler (IDE) ja ristassembler. programmeerimisvahendid.

Keskmise ulatusega manussüsteemid

Seda tüüpi manussüsteemid on loodud 16- või 32-bitiste mikrokontrollerite abil. Need süsteemid pakuvad nii riist- kui ka tarkvara keerukust. C, C++, Java, ja lähtekoodi inseneritööriista jne kasutatakse seda tüüpi manussüsteemide arendamiseks.

Keerukad manussüsteemid

Seda tüüpi manussüsteemidel on palju riist- ja tarkvara keerukust. Võimalik, et vajate IPS-i, ASIPS-i, PLA-sid, konfiguratsiooniprotsessorit või skaleeritavaid protsessoreid. Selle süsteemi arendamiseks vajate riist- ja tarkvara kaasdisaini ja komponente, mis tuleb lõplikus süsteemis kombineerida.

Mikroprotsessori ja mikrokontrolleri erinevus

Õppige vahet Mikroprotsessor ja mikrokontroller

Mikroprotsessor microcontrollers
See kasutab funktsionaalseid plokke nagu register, ALU, ajastus ja juhtplokid. See kasutab mikroprotsessorite funktsionaalseid plokke, nagu RAM, taimer, paralleelsed I/O, ADC ja DAC.
Mikroprotsessoris on bitikäsitluse juhiseid vähem, ainult ühte või kahte tüüpi. Mikrokontroller pakub mitmesuguseid bitikäsitsemise juhiseid.
Pakub koodi ja andmete kiiret liikumist välismälu ja mikroprotsessori vahel. Pakub koodi ja andmete kiiret liikumist mikrokontrolleris.
Aitab teil kujundada üldotstarbelist digitaalset arvutisüsteemi. Aitab teil kujundada rakendusepõhiseid spetsiaalseid süsteeme.
See võimaldab teil korraga teha multitegumtööd. See on ühele ülesandele orienteeritud süsteem.
Mikroprotsessorisüsteemis saate otsustada vajalike mälu- või I/O-portide arvu. Mikrokontrolleri süsteemis muudab mälu või I/O fikseeritud arv mikrokontrolleri ideaalseks konkreetse ülesande täitmiseks.
Pakub välismälu ja I/O-portide tuge, mis muudab süsteemi raskemaks ja kulukamaks. Seda tüüpi süsteem on mikroprotsessoriga võrreldes kerge ja odavam.
Välised seadmed vajavad rohkem ruumi ja nende voolutarve on üsna suurem. Seda tüüpi süsteem tarbib vähem ruumi ja ka energiatarve on väga madal.

Manussüsteemide rakendused

Järgmised on manustatud süsteemi olulised rakendused:

Robootikateadus

  • Maapealsed sõidukid
  • Drones
  • Allveesõidukid
  • Tööstuslikud robotid

Meditsiin

  • Dialüüsiaparaat
  • Infusioonipumbad
  • Südamemonitor
  • Proteesiseade

Automotive

  • Mootori juhtimine
  • süütesüsteem
  • pidurisüsteem

Networking

  • ruuter
  • rummud
  • Gateways
  • Elektroonikainstrumendid

Koduseadmed

  • TVs
  • Digital Alarm
  • Kliimaseade
  • DVD videomängija
  • Kaamerad

Autod

  • Kütuse sissepritse
  • Valgustussüsteem
  • Ukselukud
  • Turvapadjad
  • Windows
  • Parkimisabi süsteem
  • Vargusvastased alarmid Whippers Motion

Tööstuselektroonika

  • Robotics
  • Control System
  • Raketid
  • Tuumareaktorid
  • Kosmosejaamad
  • Shuttles

Manussüsteemi eelised

Siin on manustatud süsteemi kasutamise plussid ja eelised:

  • See on võimeline katma väga erinevaid keskkondi
  • Less võib tekitada vigu
  • Manussüsteem on lihtsustatud riistvara, mis vähendab üldkulusid.
  • Pakub täiustatud jõudlust
  • Manussüsteem on kasulik masstootmiseks.
  • Manussüsteem on väga töökindel.
  • Sellel on väga vähe ühendusi.
  • Manussüsteem on väikese suurusega.
  • Sellel on kiire toimimine.
  • Pakub paremat tootekvaliteeti.
  • See optimeerib süsteemiressursside kasutamist.
  • Sellel on väikese võimsusega töö.

Manustatud süsteemi puudused

Siin on manustatud süsteemi kasutamise olulised miinused/miinused.

  • Manussüsteemi arendamiseks on vaja suuri arenduspingutusi.
  • Selle turustamine nõuab pikka aega.
  • Manussüsteemid täidavad väga spetsiifilist ülesannet, nii et neid ei saa programmeerida erinevate asjade tegemiseks.
  • Manussüsteemid pakuvad mälu jaoks väga piiratud ressursse.
  • See ei paku tehnoloogilisi parandusi.
  • Manustatud failide varundamine on keeruline.

KKK

Manussüsteemid täidavad piiratud ressurssidega spetsiaalseid funktsioone, samas kui üldotstarbelised arvutid käitavad paljusid rakendusi. Manussüsteemide disainid seavad võimsuse, suuruse, hinna ja reaalajas reageerimise esikohale paindlikkuse ja laia tarkvaraühilduvuse ees.

Edge AI riistvara nagu Google Corali, NVIDIA Jetsoni ja TinyML-i raamistikud võimaldavad manussüsteemidel lokaalselt närvivõrke käitada. See võimaldab reaalajas nägemist, häält ja anomaaliate tuvastamist ilma andmeid pilve saatmata.

Jah. Tehisintellektil põhinevad kodeerimistööriistad genereerivad draiverikoodi, optimeerivad registritaseme rutiine ja selgitavad andmelehti. Need kiirendavad mikrokontrolleri käivitamist, pakuvad katkestuste käitlejaid ja aitavad siluda ajastusprobleeme STM32, ESP32 ja PIC platvormidel.

C jääb domineerivaks keeleks, kuna see pakub tihedat riistvaralist kontrolli ja väikest jalajälge. C++ Ja rooste kasvab ohutuskriitilistes projektides, samas kui mikroettevõttedPython ja vooluringPython lihtsustada kiiret prototüüpiping võimekate mikrokontrollerite peal.

RTOS ajastab ülesandeid deterministliku ajastusega, nii et sündmused täidetakse rangete tähtaegade piires. Populaarsete valikute hulka kuuluvad FreeRTOS, Zephyr, ThreadX ja VxWorks, mis on levinud autotööstuses, meditsiinis ja tööstuslikes juhtimisseadmetes.

Disainerid ühendavad väikese energiatarbega mikrokontrollerid, unerežiimid, tõhusad välisseadmed ja sündmustepõhise püsivara. Sellised tehnikad nagu töötsükkel, kella lülitid ja energiat tarbivad toiteplokid pikendavad IoT-andurite aku tööiga aastate võrra.

Kaasaegsetes sõidukites on kümneid sisseehitatud seadmeid, mis juhivad mootori juhtimist, ABS-i, teabe- ja meelelahutussüsteemi, ADAS-i ja aku haldamist. CAN-, LIN- ja Automotive Etherneti siinid ühendavad need sisseehitatud moodulid koordineeritud reaalajas tööks.

FoundationManussüsteemide oskuste omandamine võtab praktiliste mikrokontrolleriprojektide puhul kolm kuni kuus kuud. RTOS-i, sideprotokollide ja riistvara silumise valdamine nõuab tavaliselt ühte kuni kahte aastat järjepidevat praktilist kogemust.

Võta see postitus kokku järgmiselt: