Documente Academic
Documente Profesional
Documente Cultură
Embedded Systems: 1. Introducere
Embedded Systems: 1. Introducere
1. Introducere
OBIECTIVE
introducere n tehnicile de proiectare i de implementare a sistemelor cu calculator nglobat (ES - Embedded Systems). n urma absolvirii cursului studenii vor dobndi cunotine necesare pentru elaborarea specificaiilor hardware i software pentru un sistem embedded particular i n proiectarea hardware i software a acestora inclusiv n cadrul unor colective de proiectare. ctig n cunotine generale privind metodele de proiectare i construcie prin aplicarea a ceea s-a studiat la cursurile disciplinele anterioare de aceea, unele aspecte ale cursului se doresc a fi o sistematizare a cunotinelor acumulate la multe din disciplinele de hardware i software studiate pn acum.
MOTIVAIE
proiectarea ES se bazeaz pe cunoaterea diverselor tehnologii i sunt direct influenate de avansurile n domenii ca: electronic (senzori, microelectronic, conversie AD i DA), circuite logice, microprocesoare, limbaje de programare, sisteme de operare, tehnologia comunicaiilor, interfee utilizator, tehnologia asamblrii, studiul nevoilor umane i a cerinelor pieei.
disciplina poate fi privit ca o introducere n filozofia proiectrii sistemelor dedicate bazate pe calculator, util pentru specializare n domenii ca:
sisteme de control procesare digital de semnal sisteme n timp real robotic proiectare VLSI reele de senzori inteligeni i elemente de execuie inteligente testare i fiabilitate de sisteme pe baz de calculator tehnici de proiectare low-power aplicaii diverse n domeniile: telecomunicaii integrate, sisteme distribuite de prelucrare, automobile, echipamente medicale, cldiri inteligente etc.
4
DOMENII PRINCIPALE
electronic de consum / multimedia / timp liber autovehicule / echipamente transport calculatoare / periferice / birotic telecomunicaii, reele tehnic industrial de msurare i control tehnic medical
Electronic de consum
buctrie: cuptoare cu microunde, congelatoare, automate cafea maini de splat automate, aparate fotografice, camere video, DVD player televizoare analogice (selecia canalelor, procesare audio) i digitale televizoare digitale inteligente cu senzor de lumin jocuri interactive multimedia, jucrii inteligente Sisteme de securitate i alarmare PDA, Web pads (Instant messaging, acces pagini Internet, album foto, colecie media, etc.) telecomenzi, etc.
Exemplu n 2005, 30-90 procesoare pe un automobil engine control, break system, airbag, door lock, entertainment systems, BMW 745i
Windows CE OS peste 60 de microprocesoare 53 - 8 bii, 11 - 32 bii, 7 - 16 bii tipuri de reele multiple
probleme
timp de proiectare i dezvoltare diferit pentru autoturism i sisteme nglobate upgrade dificil nu se pot include alte dispozitive n sistem de la ali productori
8
Telecomunicaii, reele
telefon mobil sisteme de comutaie automate routere, Hubs radar, etc.
10
comenzi la distan robotic automatizri ale proceselor chimice, nucleare sisteme de supraveghere i nregistrare automat osciloscoape digitale cu memorie analizoare logice analizoare spectrale etc.
11
Tehnic medical
monitoare ale semnalelor fiziologice (cu prelucrare, alarmare, diagnosticare etc.) grafic medical controlul instrumentaiei complexe (radiaii, ultrasunete, etc) pompe de infuzie (medicaie, alimentaie direct n sistemul circulator al pacientului)
12
Ce este un ES?
sistemele nglobate sunt sisteme la care calculatorul / microprocesorul sunt doar simple componente. Principalul scop al utilizrii microprocesorului este s simplifice construcia sistemului i s ofere flexibilitate n proiectare i construcie. un ES este un sistem pe baz de microprocesor construit pentru a controla o funcie sau un domeniu de funcii particulare i care nu este proiectat pentru a fi programat de ctre utilizatorul final. Sigura interaciune cu utilizatorul se face n scopul realizrii funciilor impuse sistemului - aplicaiei. un sistem nglobat folosete o combinaie de hardware i software (o main computaional) pentru a rezolva o funcie specific lucrnd ntr-un mediu reactiv i care impune constrngeri de timp. sistemele embedded sunt sisteme de prelucrare a informaiei nglobate n produse mai mari i care nu sunt de obicei direct vizibile utilizatorului.
13
PROIECTAREA
procesul de proiectare al ES este similar cu cel al proiectrii din lumea calculatoarelor de uz general: hardware, software i date intrare/ ieire, posibil legare ntr-o reea. diferene principale ale ES fa de un PC: sistemul trebuie s lucreze rapid, continuu i corect n prelucrarea datelor de intrare pentru a produce un rezultat cu mare grad de ncredere Ex: sistemul de frnare cost redus / rezonabil Ex: Home Cinema
14
Tradiional proiectul unui sistem de control era mprit n hardware i software care se proiectau i testau separat, iar la sfrit se realiza integrarea i testarea sistemului complet modificri, reluri frecvente ale proiectrii consumator de timp, scump i neproductiv Dac hardware i software pot fi proiectate (co-design) i testate mpreun nc din fazele iniiale ale proiectrii, costurile de dezvoltare pot fi reduse, iar produsul poate ajunge pe pia mai repede, cu avantaje de productivitate pentru companie.
15
Creterea complexitii
Trei tendine au permis creterea complexitii ES, la care hardware i software nu trebuie privite ca domenii diferite, ci ca dou opiuni de implementare ce difer prin metrici de proiectare, cost, performan, dimensiune i flexibilitate: creterea capacitii de integrare a Circuitelor Integrate (IC). creterea calitii compilatoarelor au condus la utilizarea comun a limbajelor independente de procesor i a mediilor de dezvoltare integrate (IDE) n proiectarea sistemelor embedded. dezvoltarea unor unelte software pentru proiectarea componentelor hardware ale sistemului. Uneltele de sintez permit proiectantului s descrie funcionalitatea dorit ntr-un limbaj de programare de nivel nalt i apoi s genereze automat o implementare de procesor cu hardware particularizat
16
TENDINE
CE a alocat aproximativ 1,3 miliarde EURO/an pentru programe de cercetare n acest domeniu, pe baza programului cadru FP7 ARTEMIS1 creat n 2004 ca platforma tehnologic european n domeniul ES. Parteneri vizai: universiti, institute de cercetare, productori de EmS sau dezvoltare de toools-uri de proiectare, integratori de sistem, dezvoltatori de aplicaii. Unul dintre obiective: organizarea reelelor de calcul, n special a celor wireless aplicaii, topologii, distane de aplicare, protocoale, interferene i compatibiliti (babilonie: Bluetooth, ZigBee, WiFi, WiMaX, RFID, etc) O dat cu omniprezena dispozitivelor embedded apar noi provocri n domeniile: tehnologie, inter-operabilitate, standardizare, medodologie, siguran i securitate Pentru c miniaturizarea sistemelor avanseaz foarte rapid exist un decalaj ntre arhitectur i implementarea fizic. ARTEMIS ncearc s nlture acest decalaj din punctul de vedere al software, iar platforma ENIAC2 face acelai lucru din punctul de vedere al nano-arhitecturilor.
17
n prezent circa 90% din dispozitivele de calcul implementate pe pia sunt ES, distribuite n special n domeniile: automobile, industrie i energie, aprare i tehnici spaiale n 2010 - numr de componente embedded programabile de aproximativ 16 miliarde (aproape 3 dispozitive embedded pe persoan pe planet) 2020 - peste 40 miliarde componente ES n urmtorii 5 ani, documentele europene prevd o distribuie procentual pe arii, astfel: automatizri industriale (15%) telecomunicaii (30%) electronic de consum i cldiri inteligente (40%) echipamente medicale i de asigurare a sntii (15%)
18
Microcontrollerul are o frecven de pn la 16Mhz. Voltajul este de 4.5-5.4V, existnd o versiune ATmega16L care funcioneaz la voltaje ntre 2.7 - 5.5V. ca i periferice interne ATmega16 ofer:
3 timere - dou pe 8 bii, unul pe 16 bii interfee seriale: USART, SPI, TWI (two-wire serial interface) convertor analog digital cu precizie de 10 bii. 4 canale PWM (pulse width modulation) watchdog timer RTC (real time counter) interfa JTAG.
Aceste periferice interne chip-ului pot fi accesate din exterior prin intermediul pinilor porturilor, care funcioneaz i intr-un al doilea mod, ca pini de intrare/ieire ctre periferice externe.
20
Mediul de dezvoltare
n cadrul laboratoarelor se va scrie cod direct n C, nu i n assembler (avr asm), compilatorul fiind avr-gcc. Acesta se poate folosi atat pe sisteme Linux/Unix ct i pe Windows sub forma precompilat, numit WinAVR. WinAVR include i bibliotec de C, avr-libc. Pentru dezvoltarea programelor se poate folosi orice editor text (notepad++, vim etc), recomandat fiind programmers' notepad. Se poate utiliza deasemenea i IDE-ul AVR Studio 4 oferit de Atmel, ce folosete compilatorul WinAVR.
21
Fiierul care poate fi programat pe placu trebuie s fie n formatul ihex. De aceea este necesar extragerea seciunilor de date i cod din fiierul elf obinut n urma compilrii integrarea lor ntr-un fiier ihex. Acest pas folosete utilitarul avr-objcopy din suita win-avr. 22
Comanda avr-size arat ct memorie ocup diverse seciuni de cod ale programului. Trebuie avut n vedere c n memoria SRAM de date, n afar de seciunea .data, o s fie pus i stiva. Pentru a putea rula programul pe microcontroller-ul atmega16 trebuie ca seciunea .text s fie < 16K i seciunea .data s fie < 1K . Pentru a compila programul de mai sus cu Programmer's Notepad se poate folosi shortcut-ul setat pentru comanda de make. Rezultatul compilrii este fiierul lab1.hex care urmeaz a fi ncrcat n microcontroller.
Simularea
Proteus reprezint o suit de aplicaii produs de Labcenter Electronics pentru designul de sisteme electronice. Suita ofer aplicaii pentru realizarea de scheme electronice, simularea acestora, scrierea i compilarea de cod destinat circuitelor simulate, PCB design etc. Utilitarul folosit cel mai des la orele de laborator este ISIS care va permite realizarea i simularea schemelor electronice folosite n cursul lucrrilor 23 de laborator.
BIBLIOGRAFIE
Circuit Cellar http://www.circellar.com/ Compliance Engineering (CE) www.ce-mag.com Dedicated Systems Magazine http://www.realtime-magazine.com/magazine/magazine.htm Design News http://www.designnews.com/index.asp?cfd=1 Dr. Dobbs Journal http://www.ddj.com/ Dr. Dobbs Embedded Systems http://www.ddjembedded.com/resources/articles/2001/0112g/0112g.htm EE Product News http://www.eepn.com/ EDN Magazine Europe http://www.reed-electronics.com/ednmag/ EE Times - North America http://www.eet.com/ EE Times UK http://www.eetuk.com/ Electronic Design http://www.elecdesign.com/Index.cfm?Ad=1 Elektor - UK http://www.elektor-electronics.co.uk/ Electronics Express Europe http://www.electronics-express.com/ Embedded Linux Journal http://www.linuxjournal.com/ Embedded Systems Engineering http://www.esemagazine.co.uk/ Embedded Systems Europe http://www.embedded.com/europe Embedded Systems Programming http://www.embedded.com/ IEEE Spectrum http://www.spectrum.ieee.org/ Wireless Systems Design http://www.wsdmag.com/
24