Publicité

Design and development of microcontroller in car industry

Hardware and Software Test Engineer (External Consultant) at ZF Engineering Pilsen à ZF Engineering Pilsen
20 Mar 2016
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Publicité
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Publicité
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Publicité
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Publicité
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Publicité
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Publicité
Design and development of microcontroller in car industry
Design and development of microcontroller in car industry
Prochain SlideShare
PWM control of  LED-diodes on the MSP430x series development boardPWM control of LED-diodes on the MSP430x series development board
Chargement dans ... 3
1 sur 31
Publicité

Contenu connexe

Publicité

Design and development of microcontroller in car industry

  1. ELEKTROTEHNIČKI FAKULTET U BEOGRADU Odsek za elektroniku Predmet: Namenski računarski sistemi Projekat : Projektovanje mikrokontrolera i njegova primena u automobilskoj industriji Profesor: Student: Dr. Lazar Saranovac Jovan Vlajić 321/2008 Beograd, Septembar 2015
  2. 2 Sadržaj Projektni zadatak ........................................................................................................................1 1 MIKROKONTROLER .........................................................................................................5 1.1 Paralelni portovi ................................................................................................................6 1.2 UART.................................................................................................................................7 1.3 D/A konvertor.....................................................................................................................9 1.4 A/D konvertor....................................................................................................................10 1.5 Time -out logika.................................................................................................................11 1.6 Free running brojač ...........................................................................................................12 1.7 Kontroler prekida...............................................................................................................13 1.8 Adresni dekoder.................................................................................................................15 1.9 Watch dog timer ................................................................................................................16 2 PROJEKTOVANJE ELEKTRONSKE KONTROLE U AUTOMOBILU.....................17 2.1 Format podataka i protokol rada na magistrali....................................................................20 2.2 Podsistem za kontrolu otključavanja/zaključavanja vrata ..................................................21 2.3 Podsistem za kontrolu svetala ............................................................................................23 2.4 Podsistem za kontrolu prozora .......................................................................................... 25 2.5 Podsistem za kontrolu položaja sedišta i retrovizora..........................................................27 2.6 Podsistem za kontrolu temperature u automobile...............................................................28 2.7 Podsistem za kontrolu parking senzora...............................................................................29 2.8 Osvetljenje instrument table...............................................................................................30 LITERATURA………………………………………………………………………………..31
  3. 3 Projektni zadatak ETF je odlukom Minitarstva prosvete nauke i tehnološkog razvoja izgubio zgradu Lole.Tako da nema razloga više da se studenti bave automatizacijom te zgrade. Kako je automobilska industrija u Srbiji u naglom razvoju, a da bi se studenti pripremili za tu vrstu posla, ideja ovog projekta je da se upoznaju i probaju da projektuju deo elektronike koja se nalazi u savremenim kolima. Prvi deo Za osnovu sistema elektronske kontrole u automobilu treba projektovati odgovarajući mikrokontroler, koji će biti moguće upotrebiti kao kontrolu različitih sistema. Na raspolaganju je standardni 32-bitni procesor koji je prilagođen unutrašnjom arhitekturom WISHBONE sistemskoj magistrali (wbspec_B3). Procesor može da vidi memorijski prostor u bajtovima ( LITTLE ENDIAN format) i ima jedan prekidni ulaz sa aktivnim nivoom za prihvatanje prekida. Prekidi su vektorskog tipa. Mikrokontroler treba da poseduje: - prekidni kontroler za prihvatanje prekida od internih periferija - watch dog timer - 10-bitni AD konvertor - 10-bitni DA konvertor - odgovaraj odgovaraju¢i broj 8-bitnih paralelnih portova - UART sa programabilnim brojem bita koji se prenose (8 ili 9) - 16-bitni free running brojač sa više input capture registara i više output compare registara - periferije koje projektant nađe da su još neophodne (I2C, SPI, . . . ). 1.1 Nacrtati detaljnu logičku šemu unutrašnjosti mikrokontrolera 1.2 Napisati korisničko uputstvo, sa programskog stanovišta, za korišćenja periferija mikrokontrolera Drugi deo Svakim delom sistema upravlja nezavisni mikrokontroler.Centralizaciju radi glavni mikrokontroler, računar, koji prikuplja informacije, zadaje poslove i prikazuje informacije na intrument table automobila. Svi tasteri i pokazivači su povezani na centralni računar. Komunikacija između mikrokontrolera se obavlja preko zajedničke asinhrone pundupleks magistrale sa diferencijalnim prenosom signala. Kontrola ulaska i otključavanja automobila. Obezbediti da se sva vrata automatski otključaju kada priđe korisnik sa RF_ID karticom koja ima svoj jedinstveni kod. Kod je veličine 12 alfanumeričkih karaktera. Koristiti RF_ID čitač kojem može da se pristupi preko I2 C magistrale. Korisnički kodovi su fabrički zadati i nalaze se u memoriji centralnog računara. Kontrola svetla. U svakom faru se nalazi mikrokontroler koji na zahtev od centralnog računara pali i gasi poziciona svetla, srednja, dugačka svetla u prednjim farovima, sijalice u farovima za maglu, poziciona, stop i svetla za maglu u zadnjim farovima. Sijalice rade na 12V , pri čemu je njihova snaga veća od 12W, ali manja od 100W. Potrebno je detektovati neispravnost sijalice. Kontrola otvaranja i zatvaranja prozora.
  4. 4 Potrebno je obezbediti da se na zahtev korisnika preko tastera prozori otvaraju i zatvaraju automatski, pri čemu treba voditi računa da se u slučaju ako postoji prepreka (npr. ruka izbačena kroz prozor) zaustavi kretanje prozora na gore. Kontrola udaljenja vozačevog sedišta i položaja retrovizora. Obezbediti da se na pritisak tastera pomera vozačevo sedište napred i nazad, kao i podešavanje retrovizora sa posebnim tasterima. Sedičte se po otklju£avanju automobila automatski pomera na poslednji zadati položaj od tog korisnika. To isto se dešava i sa retrovizorima Kontrola temperature. Obezbediti merenje temperature u kolima i prosleđivanje informacije ka centralnom računaru. Zadnji parking senzori. Parking senzori se aktiviraju kada se vozilo kreće unazad. Rastojanje od prepreke se meri ultrazvučnim detektorom. Meri se vremensko rastojanje između emitovanog i primljenog zvuka. Emitovanje zvuka se radi preko predajnika kome je potrebno generisati talasni oblik signala. Prijem zvuka se radi detektorom koji na svom izlazu daje logičku jedinicu kada se ustanovi prisustvo zvuka. Informacija o udaljenosti u cm (max 300cm) se prenosi do centralnog računara i prikazuje na instrument tabli. Na zvučniku instrument table se generiše zvuk sa različitom visinom tona u zavisnosti od udaljenosti od prepreke. Jačina zvuka se podešava potenciometrom . Za kraću udaljenost ton je više ušestanosti. Osvetljenje instrument table. Za osvetljenje se koriste LED diode. Intezitet osvetljaja se podešava potenciometrom 2.1 Nacrtati blok šemu sistema i povezivanja pojedinih delova 2.2 Nacrtati projekat hardvera pojedinih delova 2.3 Defnisati formate i protokole rada za poruke koje se prenose po magistralama 2.4 Opisati programske poslove svakog pojedinačnog mikrokontrolera Dodatni poeni Realizacija ABS. Realizacija ESP.
  5. 5 1 Mikrokontroler Projektovani mikrokontroler poseduje 32 bitni procesor koji je prilagođen unutrašnjom arhitekturom WISHBONE sistemskoj magistrali. Mikorokontroler poseduje blok za kontrolu CLK signala dobijenog iz kristalnog oscilatora. Za napajanje postoje dva pina na koje se dovode VDD i VDA. Program ili delove programa je moguće smestiti u EPROM ili Flash memoriju. Mikrokontroler poseduje sledeće periferije: 1.4 paralelna I/O porta širine jednog bajta ( 8 bitova ) : P0, P1, P2, P3 2. UART sa programabilnim brojem bita koji se prenose (8 ili 9) 3. 10 bitni D/A konvertor 4. 10 bitni A/D konvertor 5. Time-out logika 6. 16 bitni free running brojač ( 4 input capture registra i 4 output compare registra ) 7. Kontroler prekida 8.Adresni dekoder 9.Watch dog tajmer Blok šema mikrokontrolera je prikazana na slici 1.
  6. 6 D A C Timer I/O Ports Adresni Dekoder Watch dog timer Time out logika UART kontroler Oscilator CPU Kontroler prekida T0 T1 T2 T3DACADC OSC0 OSC1 INT0 INT1 TX RX Prekidi od periferija P0 P1 P2 P3 8 8 8 8 A D C Slika 1.Blok šema mikrokontrolera U daljem tekstu objasnićemo i opisati hardver periferija njihov način funkcionisanja.Takođe navešćemo i korisničko upustvo za koriščenje svake od realizovanih periferija. 1.1 Paralelni portovi Mikrokontroler poseduje četiri 8-bitna I/O paralelna porta: P0, P1,P2, i P3, koji su povezani na 8 najnižih bitova magistrale podataka D7...D0. Pinovi portova su numerisani sa Pi0..7, i=0..3. Portovima Pi se pristupa pomoću adrese ZA+1+i, i=0..3. Kada se adresira odgovarajući port Pi, i=0..3 i inicira upis ili čitanje, aktivira se signal Wi+1 odnosno Ri+1 u zavisnosti da li se vrši upis ili očitavanje sa porta. Takođe, trenutno stanje izlaznog porta se može očitati sa memorijske lokacije ZA+5+i, i=1.. 3. Svaki od 32 pina Pij, i=0..3, j=0..7 je moguće nezavisno konfigurisati kao ulazni ili izlazni pin. Definisanje smera pina se vrši upisom u 32-bitni registar, koji se nalazi na adresi ZA+0. Vrednost 1 u registru označava da je odgovarajući pin izlazni, vrednost 0 označava da je pin ulazni. Da bi pin Pij, i=0..3, j=0..7 bio izlazni odnosno ulazni potrebno je postaviti bit D8i+j data magistrale na 1 odnosno 0, i izvršiti upis adresu ZA+0.
  7. 7 Pinovi P0.0 i P0.1 su povezani na kontroler prekida i imaju mogućnost generisanja prekida. Odgovarajući flip-flopovi za definisanje smera imaju mogućnost asinhronog reseta, tako da su po resetu svi pinovi konfigurisani kao ulazni. Izgled jednog porta prikazan je na slici 2. Pij D8i+j W0 D8i+j Wi+1 Dj Ri+5 Ri+5 Slika 2.Šema jednog porta 1.2. UART ( Universal Asynhronous Receiver Transmiter) UART periferija obezbeđuje asinhroni serijski prenos sa programabilnom dužinom podatka koji se šalje ili prima. Broj bita u jednoj poruci se podešava upisom odgovarajuće vrednosti u flip-flopove koji se nalaze na adresi ZA+11 i, a povezani su na D0 (slanje) i D1(prijem) bitove magistale podataka. Upis jedinice označava prenos podatka dužine 9 bita dok upis 0 označava prenos podatka dužine 8 bita. UART periferija poseduje nezavisne pomeračke registre za prijem i slanje koji su povezani na 9 najnižih bita magistrale podataka i obezbeđuje full-duplex komunikaciju. U daljem tekstu dat je opis konfiguracije i funkcionisanja UART predajnika i prijemnika, kao i njihove šeme. Upisom podatka u pomerački registr na adresi ZA+10 aktivira se signal W10 i započinje slanje. Brzina slanja zavisi od CLK_T taktnog signala. Vrednost ovog takta se podešava konfiguracijom delitelja učestanosti, pa brzina prenosa zavisi od sistemskog takta CLK i odgovarajuće konfiguracije delitelja učetanosti. Nakon slanja 10 odnosno 11 bita (8 odnosno 9 bita poruke kao i START i STOP bita) generiše se prekid INT_T koji se vodi na odgovarajući ulaz kontrolera prekida. Stanje predajnika se može dobiti očitavanjem bita 0 sa adrese ZA+11.
  8. 8 Vrednost 1 ovog bita signalizira da je slanje poruke u toku i da predajnik nije u stanju da prihvati slanje nove poruke. Na slici 3 je data šema UART predajnika. ` ` UART_TQ1 Q0 S0 Q9..Q2Q10PE SI PISO Shift register 1 1 D7..D0 10 ` Q1 Q0Q2Q3 COUNTER INT_T CLK_T D0 R11 STATUS_T D0 W11 D8 W10 Slika 3. Šema UART predajnika Nakon detektovanja START bita započinje prijem podatka. Brzina prijema zavisi od CLK_R signala takta. Vrednost ovog takta se podešava konfiguracijom delitelja učestanosti, pa brzina prenosa zavisi od sistemskog takta CLK i odgovarajuće konfiguracije delitenja učetanosti. Ukoliko je poruka ispravno primljena, generiše se prekid INT_R, i setuje bit D1 na adresi ZA+11. Očitavanjem prihvatnog registra poruke ili očitavanjem ovog bita vrši se njegovo resetovanje. Ukoliko dodje do greške loš STOP bit ili loš START bit, generišu se prekidi ERRSTART i ERRSTOP i resetuje se prijemnik. Ispravno primljena poruka se očitava iz prihvatnog registra na adresi ZA+12. Na slici 4 je data šema UART prijemnika.
  9. 9 Q Q SET CLR S R Q1 Q0Q2Q3 Q1 Q0Q2Q3 COUNTER Q Q SET CLR D CMP Q1 Q0Q2Q3 COUNTER D1 W11 MUX Sel 16xCLK_R D0 D1=11 =10 =1 UART_R ERRSTART ERRSTOP CORRECT Q Q SET CLR D0 R11 R12 D1 R11 INT_R SIPO Shift register SI D8 D0 REGISTERD8 D0 D8 D0 E R12 D8..D0 ERRSTART ERRSTOP CORRECT DIFF UART_R Q8/9 Slika 4. Šema UART prijemnika 1.3 D/A konvertor ( 10 bita ) Mikrokontroler poseduje desetobitni digitalno-analogni konvertor. Početak DA konverzije se zadaje upisom podataka na adresu ZA+13. Na slici 5 prikazana šema D/A periferije. REGISTER GND VDD D9 D0 DAC 10 bit Vout A_VDD A_GND 1010 D9..D0 W13 Slika 5. Šema D/A perifierije
  10. 10 1.4. A/D konvertor ( 10 bita ) Mikrokontroler poseduje desetobitni analogno-digitalni konvertor. Početak A/D konverzije se zadaje upisom na adresu ZA+14. Kada je konverzija gotova, generiše se prekid INT_AD. Stanje konverzije se dobija očitavanjem bita D10 na adresi ZA+14.Vrednost 1 ovog bita označava da je A/D konverzija u toku. Desetobitni rezultat konverzije se dobija očitavanjem bitova D0..D9 sa adrese ZA+14. Na slici 6 je prikazana šema A/D periferije. GND VDD D9 D0 ADC 10 bit Vin A_VDD A_GND 10 D9..D0 W14 10 R14 BUSY R14 DIFF INT_ADC D10 Slika 6. Šema A/D perifierije
  11. 11 1.5 Time-out logika Time-out logic (TOL) kontroliše komunikaciju putem UART magistale i ispravnost rada uređaja povezanih na magistralu. TOL generiše prekid, ukoliko nakon slanja poruke izostane prijem odgovora u odgovarajućem vremenskom intervalu. Vreme prijema se softverski definiše upisom u 16-bitni registar na adresi ZA+17. Aktivacija merenja vremena se vrši signalom INT_T iz UART predajnika, a kao obaveštenje time-out logici da je primljena poruka, koristi se signal INT_R. Rad time-out logike je moguće zaustaviti upisom vrednosti logičke nule u registar na adresi ZA+15 na poziciji D0. Hardver time-out logike je prikazan na slici 7. Q Q SET CLR S R DIFF REGISTER W17 16 bit DOWN COUNTER PE D15..D0 16 16 CLK ENABLE Q Q SET CLR D W15 D0 INT_TOL INT_R INT_T RESET Slika 7. Šema Time-out logike
  12. 12 1.5 Free running brojač Mikrokontroler poseduje 16-bitni "free running" brojač sa 4 INPUT CAPTURE registra i 4 OUTPUT COMPARE registra. Po resetu, brojač je isključen. Startovanje se vrši upisom 1 u registar na adresi ZA+18, bit D0. Upisom 0 u pomenuti registar isključuje se brojač. 16-bitna vrednost brojača se može očitati sa adrese ZA+18. Kada brojač pređe sa maksimale vrednosti na 0, generiše se prekid INT_CNT. Vrednosti 4 CAPTURE registara se mogu očitati sa adresa ZA+19+i, i=0..3. Signali CAP_SIGNAL_i, i=0..3 predstavljaju eksterne signale sa pinova kontrolera. Na uzlaznu ili silaznu ivicu signala CAP_SIGNAL_i vrši se upis trenutne vrednosti brojača u CAPTURE registar i generiše se prekid INT_C_i. Konfiguracija reagovanja na uzlaznu ili silaznu ivicu vrši se upis 1 u bit D1+i za uzlaznu i 0 za silaznu na adresi ZA+18. COMPARE registri se nalaze na adresi ZA+19+i, i=0..3. Kada brojač dobroji do vrednosti u COMPARE registru i, , i=0..3 generiše se prekid INT_i, , i=0..3. Očitavanjem trenutne vrednosti brojača, upotrebom COMPARE i CAPTURE registara moguće je na jednostavan način meriti trajanja, periode, "duty cycle" ulaznih signala, generisanje PWM signala, generisanje prekida u tačno određenim trenucima itd.Na slici 8 je data šema brojača sa registrima. 16bit COUNTER Q Q SET CLR DD0 W18 CLK_CNT RESET 16 CMP 16 bit i INT_CNT_i INT_CNT 16 REGISTER D15 D0 i E R19+i D15..D0 E R18 D15..D0 16 bit REGISTER i D15..D0 W19+i 16 DIFF DIFF CAP_SIGNAL_i MUX Sel D0 D1 INT_C_i OUT Q Q SET CLR D D1+i W18 Slika 8. Šema 16-bitnog free-running brojača sa registrima
  13. 13 1.6 Kontroler prekida Kontroler prekida je vektorskog tipa i ima 16 ulaza. Ulaz15 (INT15) je ulaz najvišeg prioriteta, dok je ulaz 0 (INT0) ulaz najnižeg prioriteta. Ulaz 15 je nemaskirajući i povezan je sa prekidom koji generise TIME OUT logika. Ulazi 14 do 2 (INT14..INT2) su ulazi za maskirajuće prekide i dodeljeni su prekidima koje generišu periferije. Ovi ulazi su projektovani da reaguju na ivične prekide (uzlaznu ivicu) koje generišu periferije i pretvaraju ih u prekide sa nivoom. Ulazi 1 i 0 (INT1 i INT0 ) su ulazi za spoljne prekide i povezani su na pinove P0.0 i P0.1. Kod ovih ulaza u kontroler prekida moguće je izvršiti konfiguraciju da se prihvataju ivični ili prekidi sa nivoom, kao i na koju ivicu se reaguje uzlaznu ili silaznu. Maskiranje maskirajućih prekida (INT14..INT0) se vrši upisom na adresu ZA+23, vrednost 1 na poziciji Di dozvoljava prekid INTi, i=0..14. Konfiguracija ulaza 1 i 0 se vrši upisom odgovarajuće vrednosti na adresu ZA+25. Reagovanje na prekid sa aktivnim nivoom ili aktivnom ivicom se podešava bitovima D2 za izlaz 1 i D0 za ulaz 0.Vrednost 1 označava reagovanje na prekid sa aktivnim nivoom, a vrednost nula na ivični prekid 0. Reagovanje na uzlaznu ili silaznu ivicu se konfiguriše bitovima D3 za izlaz 1 i D1 za ulaz 0. Vrednost 1 označava reagovanje na silaznu, a vrednost 0 na uzlaznu ivicu. Očitavanjem sa adrese ZA+25 moguće je proveriti da li je neki prekid aktivan.Vrednost bita Di=1 signalizira da je prekid INTi, i=0..14 aktivan.Prekid se smatra aktivnim ukoliko postoji zahtev za prekid i prekid nije maskiran. Signal INT predstavlja signal koji se šalje procesoru kao indikacija da postoji prekid. Po prihvatanju prekida od strane procesora,( procesor postavlja signal ACK na aktivnu vrednost), kontroler prekida šalje po linijama D3..D0 4-bitnu vrednost koja predstavlja broj ulaza prekida najvišeg nivoa u tabelu prekidnih rutina. Takođe, po prihvatanju prekida resetuju se flip flop za pamćenje datog ivičnog prekida, tako da dati prekid postane neaktivan. Programeru je ostavljena mogućnost da softverski obriše flip-flop za praćenje prekida. Postavljanjem vrednosti 1 na liniju Di i upisom na adresu ZA+26 vrši se resetovanje flip flopa i-tog prekida. Posle reseta, svi maskirajući prekidi su maskirani. Hardver kontrolera prekida prikazan je na slici 9.
  14. 14 0 W Q Q SET CLR D D1 W25 Q Q SET CLR D D0 W25 Q Q SET CLR D W23 Q Q SET CLR D INT0 D0 RESET 1 CLR0 D0 R24 Q Q SET CLR D CLR14 Q Q SET CLR D RESET 1 INT14 D14 W23 Q Q SET CLR D CLR15 1 NMI D15 R24 D14 R24 15 14 . . . . . . . . 16/4 Koder prioriteta 3 2 1 0 4 `` INT E ACK D3..D0 0 E 15 . . . . . . 4/16 DEKODER 3 2 1 0 1 RESET W26 D15 CLR15 W26 D0 CLR0 RESET . . . . . . ACK 4 Slika 9. Šema Kontrolera prekida
  15. 15 2.8. Adresni dekoder Počev od adrese ZA do ZA+32 nalaze se periferije koje poseduje mikrokontroler. Pomoću adresnog dekodera se aktiviraju signali W0, W1...W31, R0, R1..R31 za upis,čitanje i kontrolu periferija. Viših 27 bita adresne magistarale se poredi za adresom ZA, koja je zajednička za sve periferije, a sa nižih 5 bita A4, A3, A2 ,A1 i A0 se vrši adresiranje tačno određene periferije. Tačna adresa svake periferije (registara periferije i kontrolnih signala) su date u delovima teksta koji se odnosi na opis i rad datih periferija. Na osnovu signala CYC_O, STB_O i WE_O se aktivira ENABLE signal jednog od dva dekodera 5/32 i dekodovanjem aktivira određeni Wi ili Ri, i=0..31 signal. Hardver adresnog dekodera dat je na slici 10. 27 bit CMP A31..A4 27 ZA 27 A31..A0 CPU CYC_0 STB_0 WE_0 ACK_I 1 E I4 I3 I2 I1 I0 A4 A3 A2 A1 A0 DEC 5/32 D0 D1 . . . . D30 D31 R0R1....R30R31 W0 W1 . . . . W30 W31 EN r I4I3I2I1I0 DEC 5/32 D0D1....D30D31 EN ADRESNA MAGISTRALA 32 Slika 10. Šema Adresnog dekodera
  16. 16 1.9 Watch-dog timer Watch-dog timer (WDT) vrši proveru ispravnosti izvršavanja programa na mikrokontroleru. Za ispravno izvršavanje potrebno je da se program obrati watch-dog tajmeru u određenom vremenskom intervalu. Ukoliko se to ne desi, generiše se RESET signal i resetuje se mikrokontroler. Obraćanje WDT-u se vrši upisom vrednosti 0xA5A5 na adresu ZA+27. Moguće je isključiti WDT upisom nule u bit D31 na adresu ZA+28. Posle reseta WTD je isključen. Šema WDT-a je prikazana na slici 11. 16bit COUNTERLOAD 16 CLK Q Q SET CLR D W28 D31 RESET E_WD RESET DATA IN 16bit CMP 16 16 TERMINAL VALUE 16bit CMP 16 D15..0 0xA5A5 16 W27 16 START VALUE Slika 11. Šema Watch-dog tajmera
  17. 17 2.Projektovanje elektronske kontrole u automobilu Sistem se sastoji od centralnog mikrokontrolera, koji upravlja celim sistemom, reaguje na zahteve korisnika, prikuplja informacije od drugih podsistema, reaguje na njihove zahteve i prikazuje informacije na instrument table.Imamo ukupno 10 podsistema koji vrše sledeće aktivnosti:  kontrolu ulaska, otljučavanja i zaključavanja vrata,  kontrolu prednjih farova,  kontrolu farova za maglu,  kontrolu zadnjih svetala,  kontrolu otvaranja i zatvaranja prednjih prozora,  kontrolu otvaranja i zatvaranja zadnjih prozora,  kontrolu temperature,  kontrolu položaja vozačevog sedišta,  kontrolu položaja retrovizora i  kontrolu zadnjih parking senzora. Svaki podsistem vrši jednu od navedenih kontrolnih funkcija i svakim upravlja poseban mikrokontroler. Komunikacija centralni mikrokontroler - mikrokontroleri podsistema se obavlja preko zajedničke asinhrone full-duplex magistrale sa diferencijalnim prenosom signala. Centralni računar je “master” na magistrali, dok se podsistemi ponašanju kao “slave” uređaji. Takođe, svi mikrokontroleri podsistema su povezani na zajedničku prekidnu liniju INT koja je povezana na ulaz za eksterni prekid centralnog mikrokontrolera.Šema sistema je prikazana na slici 12. Centralni mikrokontroler Displej Tastatura Mikrokontroler Podsistem 1 INT0 INT1 Mikrokontroler Podsistem 2 Mikrokontroler Podsistem 10 . . . . . . . . UART Magistrala Zajednička linija za prekide Slika 12. Blok šema celog sistema Povezivanje mikrokontrolera koji kontrolišu određene podsisteme i centralnog mikrokontrolera preko asinhrone pundupleks magistrale sa diferencijalnim prenosom signala je prikazano na slici 13.
  18. 18 Vcc0 Podsistem8 Rx Tx Vcc0 Vbus Vbus ` Rt Rt Vbus Vbus GNDbus GNDbus Vcc0 Podsistem1 Rx Tx Vcc0 Vbus Vbus ` (SLAVE 1) Vbus Vcc0 Vbus Centralni mikrokontroler Tx Tx Rx Vcc0 (MASTER) GNDbus GND . . . . . . (SLAVE 8) Slika 13. Šema povezivanja podsistema sa centralnim mikrokontrolerom Kako su kontrolisani podsistemi udaljeni i nezavisni jedni od drugih, izvršeno je galvansko razdvajanje pomoću optokaplera. Prilikom izbora optokaplera trebamo biti sigurni da su vremena trajanja uzlazne i silazne ivice dovoljno kratka za zahtevanu brzinu signalizacije i da izabrani tranzistori imaju dovoljan strujni kapacitet. Kod ovog vida prenosa se umesto jedne signalne linije koriste dve komplementarne, tako da se logički nivo određuje kao razlika napona komplementarnih linija umesto poređenjem napona jedne linije sa masom ili nekim drugim referentnim naponom. Između komplementarnih linija povezan je otpornik Rt koji je jednak karakterističnoj impedansi kabla za prenos da bi se smanjila refleksija. Takođe, postavljeni su i pull-up i pull-down otpornici kako bi bilo definisano stanje linije kada nema prenosa signala. Komunikacija na magistrali se inicira od strane centralnog mikrokontrolera kao master uređaja, dok se kontrolisani sistemi ponašaju kao slave uređaji. Mikrokontroleri u podsistemima imaju mogućnost javljanja nekog događaja centralnom računaru preko prekidne linije. Svi su povezani na jednu zajedničku prekidnu liniju koja se vodi na pin glavnog mikrokontrolera koji može da reaguje na eksterne prekide (pin P1.0) i povezan je na ulaz broj 2 kontrolera prekida. Takođe je i ovde izvršeno galvansko razdvajanje putem optokaplera. Šema povezivanja je data na slici 14.
  19. 19 Centralni mikrokontroler INT1 VCC0 Podsistem1 Vbus Podsistem10 GNDbus Vbus GNDbusGND Pull-down . . . . . INT Slika 14. Šema povezivanja centralnog mikrokontrolera i podsistema na zajedničku prekidnu liniju INT Po detektovanju prekida ( INT linija je na logičkoj jedinici ) centralni mikrokontroler vrši poliranje, tj. proziva jedan po jedan podsistem sa pitanjem da li je dati podsistem generisao prekid. Ovo se vrši specifičnim adresiranjem koje je opisano u daljem tekstu, u delu koji se odnosi na protokol komunikacije i formate podataka. Ovakvo reagovanje na prekid ima za posledicu nepotrebnu potrošnju procesorskog vremena, ali je postignuta ušteda izbegavanjem vođenja žice od jednog do drugog podsistema i njihovo povezivanje koje bi bilo neophodno u slučaju projektovanja prioritetnog lanca (daisy chain) i pseudo-vektorskog prihvatanja prekida. Prekidi koji se signaliziraju su sledeći: 1.Podsistem za kontrolu otključavanja generiše prekid kada je izvšeno očitavanje kartice i potrebno je proveriti njen kod. 2.Podsistemi za kontrolu svetala generišu prekide u slučaju detektovanja neispravnosti sijalica. 3.Podsistem za otvaranje i zatvaranje po detektovanju prepreke. 4.Podsistem za kontrolu temperature generiše prekid ako temperatura pređe neku dozvoljenu granicu. 5.Podsistem za kontrolu parking senzora, ako se detektuje kretanje unazad irastojanje od prepreke je manje od 300cm. 6.Svaki podsistem u slučaju kada i posle 3 pokušaja nije moguće izvršiti zadatukomandu ili je nemoguće očitati senzore. Kako se projektovani sistem sastoji od relativno malog broja podsistema, generisanje prekida od strane podsistema je retko, merene veličine se menjaju sporo i sve akcije se izvšavaju na komandu čoveka, što je relativno sporo, pretpostavljeno je da je poliranje po detektovanju prekida dovoljno efikasno za potrebe projektovanog sistema. Prioritet prekida je određen redosledom poliranja i može se softverski menjati. Prekidi koje generišu podsistemi su sa aktivnim nivoom, pa je potrebno odgovarajuće konfigurisati ulaz broj1 kontrolera prekida. Pogledati deo koji se odnosi na prekidni kontroler.
  20. 20 2.1 Format podataka i protokol rada na magistrali Kominikacija između centralnog mikrokontrolera i mikrokontrolera u podsistemima se obavlja preko zajedničke asinhrone pundupleks magistrale brzine prenosa 9600 bit/s sa jednim STOP i START bitom i bez bita parnosti. Poruke koje šalje centralni mikrokontroler po linijama Tx su dužine 9 bita, tako da treba konfigurisati UART prijemnike u podsistemima za prijem poruka dužine 9 bita. Poruke koje šalju i mikrokontroleri podsistema su dužine 8 bita. Poruke koje šalje centralni mikrokontroler mogu biti adresne ili komandne. Adresne poruke imaju bit 9, jednak logičkoj jedinici, dok je kod komandnih vrednost ovog bita jednaka 0 da bi se dve vrste poruka razlikovale. Format adresne poruke je dat u tabeli 1. 1 Tip2 Tip1 Tip0 Adresa3 Adresa2 Adresa1 Adresa0 / Tabela 1. Format adresne poruke Postoji 6 tipa adresnih poruka u zavisnosti od bitova Tip2, Tip1, Tip0. Značenje pomenutih bitova je dato u tabeli 2. Tip2 Tip1 Tip0 Značenje poruke 000 Adresiranje uređaja (sledeće komandne poruke se odnose na uređaj čija je adresa data sa bitima adresa3..0) 011 Provera prekida (uređaj čija je adresa data sa bitima adresa3..0 odgovara da li je generisao prekid) 001 Deselektovanje (vrši se deselektovanje uređaja čija je adresa data sa bitima adresa3..0) 010 Restart (vrši se restartovanje uređaja čija je adresa data sa bitima adresa3..0) 100 Deselektovanje svih uređaja (biti adresa3..0 nemaju efekta ) 111 Restart svih uređaja (biti adresa3..0 nemaju efekta ) Tabela 2. Tipovi adresnih poruka u zavisonosti od bitova Tip2 Tip1 Tip0 Bitovi Adresa3 ... Adresa0 predstavljaju adresu nekog od 8 podsistema. Adrese podsistema su fiksne i dodeljene su svakom prikom inicijalizacije. Najniži bit poruke se koristi za adresiranje i moguće je softverski implementirati da se u ovaj bit upiše bit parnosti, kao kontrola ispravnosti poslate poruke. Format komandnih poruka koje centralni računar šalje mikrokontrolerima podsistema je prikazan u tabeli 3. 0 C/RW R/W K5 K4 K3 K2 K1 K0 Tabela 3. Format komandne poruke Ukoliko je vrednost bita C/RW jednaka 1 radi se o komandnoj poruci i bitovi K5..K0 specificiraju određenu komandu adresiranom sistemu. Ukoliko je vrednost ovog bita 0, onda komandna poruka predstavlja početak
  21. 21 prenosa podataka i bitovima K5..K0 je dat broj podataka koji se prenose (veličina u bajtovima).(R/W=1 čitanje, R/W=0 upis). U tom slučaju, kada se radi o upisu, sledeće poruke koje se šalju adresiranom uređaju se tumače kao podaci. Poruke koje mikrokontroleri podsistema šalju su 8-bitne i njihov format je dat u tabeli 4. D7 D6 D5 D4 D3 D2 D1 D0 Tabela 4. Format poruke podataka U slučaju da se radi o eho poruci, D7..D0 su isti kao 8 nižih bitova primljenje poruke. U slučaju da je uređaj adresiran sa adresnom porukom koja označava proveru prekida, umesto pomenute eho poruke, vraća se poruka koja sadrži informaciju o prekidu i adresu uređaja. Adresa uređaja se šalje kao provera, tj. kao kratka eho poruka. Forma ove poruke data je u tabeli 5. P3 P2 P1 P0 A3 A2 A1 A0 Tabela 5. Format eho poruke Ako su P3..P0 jednaki 0000, adresirani sistem nije generisao prekid. Vrednost 1111 označava prekid usled nemogućnosti izvršavanja zadate komande i posle 3 pokušaja. Nekom drugom vrednošću bitova P3..P0 prozvani sistem obaveštava centralni računar o vrsti prekida specifičnoj za njega. Adresirani uređaj, čiji se prekid proverava, pored stanja prekida vraća i svoju adresu bitovima A3..A0 kao potvrdu da je ispravno protumačio primljenu poruku. 2.2 Podsistem za kontrolu otključavanja/zaključavanja vrata U svim modernim automobilima otključavanje odnosno zaključavanje je osim mehaničkim putem omogućeno i RF ID karticom. Pri prislanjanju RF ID kartice RF ID čitač šalje preko I2 C magistrale poruku mikrokontroleru da je stigao zahtev za otključavanje/zaključavanje vozila. Blok šema sistema koji kontroliše otključavanje/zaključavanje vrata je prikazana na slici 15. Mikrokontroler Otključaj vrata1 Otključaj vrata2 Otključaj vrata3 Otključaj vrata4 Zaključaj vrata1 Zaključaj vrata2 Zaključaj vrata3 Zaključaj vrata4 Senzor zaključano/otključano I2C RF ID Čitač Slika 15. Blok šema sistema za otkjučavanje/zaključavanje vrata
  22. 22 Na detekciju poruke mikrokontroler odgovara generisanjem prekida prekid postavljanjem logičke jedinice na pin koji je vezan na zajedničku prekidnu liniju. Prilikom poliranja od strane centralnog računara , šalje poruku koja označava da se radi o prekidu usled detektovanja kartice. Bitovi P3..P0 imaju vrednost 0001 dok A3..A0 predstavljaju adresu podsistema i zadati su prilikom inicijalizacije mikrokontrolera. Nakon prijema komandne poruke kojom se zahteva čitanje 2 bajta (vrednosti bita su C/WR=0, R/W=1 i K5..K0=000010), mikrokontroler šalje prvo viših 6 bitova koda zaštićenih bitom parnosti, a zatim i na isti način i nižih 6. Najviši bit osmobitne poruke se ne koristi. Po prijemu komandne poruke kojom se potvrđuje ispravnost koda kartice( C/WR=1 i svi bitovi K5..K0 imaju vrednost '1' ), mikrokontroler provera senzor koji detektuje da li su vrata prethodno bila zaključana ili otključana. Na osnovu te vrednosti, vrši se postavljanje signala Otključaj vrata1..Otključaj vrata4 , odnosno Zaključaj vrata1..Zaključaj vrata4 na vrednost logičke jedinice. Trajanje signala zavisi od mehanike za kontrolu brave. Ukoliko i posle 3 pokušaja zaključavanja/otključavanja vrata mikrokontroler putem senzora detektuje da akcija nije sprovedena, generiše prekid. Prilikom poliranja šalje centralnom mikrokontroleru poruku kojom označava da se prekid desio usled neispravnosti. Vrednosti bitova u ovoj poruci već su opisani u delu o formatu podataka. Komunikacija sa čitačem RF ID kartice se vrši putem I2 C magistrale. Signali SDA i SCL se generišu iz paralelnih portova mikrokonrtolera, a protokol komunikacije je implementiran softverski. Hardver za otključavanje i zaključavanje vrata je prikazan je na slici 16. Mehanika za kontrolu brave Otključaj/zaključaj vrata i VCC GND Slika 16. Šema hardvera za otključavanje/zaključavanje vrata
  23. 23 2.3 Podsistem za kontrolu svetala Za kontrolu svetala u automobilu se koriste 3 mikrokontrolera, za svaki par farova po jedan (prednji farovi, farovi za maglu i zadnji farovi). Mikrokontroleri se nalaze na pogodom mestu izmedju farova. Hardver za kontrolu svetala kao i detktovanja ispravnosti sijalice je prikazan na slici 17. Mehanika za kontrolu brave VCC GND PP - +Šant R< 0,1 GND_A OP GND_AGND VCC PP VCC Slika 17. Blok šema hardvera za kontrolu svetala Sa blok šeme vidimo da se upisom visokog naponskog nivoa na pinu preko releja pali sijalica. Preko otpornika i Šmitovog kola vodi se informacija o struji sijalice. Ako je ova informacija jednaka logičkoj nuli to znači da je sijalica pregorela odnosno da nije ispravna. Poruka o paljenju ili gašenju svetala se prenosi preko centralnog mikrokontrolera pa se u zavisnosti od adresiranja kontrolera i komandne poruke pali/gasi određeno svetlo. Značenja komandnih poruka koje su upućene kontrolerima su date u tabeli 6. 0 1 0 U/I SR(M) DUG POZ STOP L/D Tabela 6. Format komandne poruke za kontrolu svetala Značenja pojedinih bitova iz komandne poruke su data ispod:  Bit U/I predstavlja informaciju za uključivanje/isključivanje svetla ( U/I=1 uključivanje , U/I=0 isključivanje ).  Bit SR(M) predstavlja informaciju o uključivanju/isključivanju srednjih svetala ukoliko je poruka upućena mikrokontroleru prednjih farova ( SR(M)=1 uključeno, SR(M)=0 isključeno ),
  24. 24 Ako je poruka upućena mikrokontrolerima u zadnjim i farovima za maglu uključuju se zadnja svetla i svetla za maglu, Istovremeno se uključuju oba fara, i levi i desni.  Bit DUG predstavlja informaciju o uključivanju/isključivanju dugih svetala (DUG=1 uključeno,DUG=0 isključeno).Uključivanje/isključivanje dugih svetala se vrši za oba svetla istovremeno. Bit se koristi samo za mikrokontroler prednjih farova.  Bit POZ predstavlja informaciju o uključivanju/isključivanju pozicionih svetala (POZ=1 uključeno,POZ=0 isključeno). U zavisnosti od bita L/D, uključuje se levo ili desto poziciono svetlo. Bit se koristi za mikrokontroler prednjih i zadnjih farova.  Bit STOP predstavlja informaciju o uključivanju/isključivanju stop svetala (STOP=1 uključeno,STOP=0 isključeno). Bit se koristi samo za mikrokontroler zadnjih farova. Nakon primanja komande poruke, mikrokontroler vrši uključivanje sijalica postavljanjem logičke jedinice na paralelne portove. Ako je neka sijalica uključena, mikrokontroler poliranjem proverava prednost pina kojim se detektuje ispravnost. Interval poliranja je moguće generisati pomoću tajmera, korišćenjem compare registara. Ukoliko se detektuje da je sijalica neispravna, generiše se prekid. Prilikom poliranja šalje se poruka kojom se signalizira koja sijalica je pregorela. Bitovi P3..P0 imaju sledeće vrednosti, u zavisnosti od neispravne sijalice: P3..P0 Značenje 0001 Levo srednje svetlo 0010 Desno srednje svetlo 0011 Levo dugo svetlo 0100 Desno dugo svetlo 0101 Levo poziciono svetlo 0110 Desno poziciono svetlo 0111 Levo stop svetlo 1000 Desno stop svetlo 1001 Leva sijalica za maglu 1010 Desna sijalica za maglu 1111 Neuspelo izvršavanje komandne poruke Tabela 7. Značenje bitova za detekciju neispravnosti sijalice
  25. 25 2.4 Podsistem za kontrolu prozora Prozori se kontrolišu sa 2 mikrokontrolera, jedan kontroliše prednje, a drugi zadnje prozore. Omogućeno je posebno kretanje svakog prozora na gore ili na dole, kao i zatvaranje i otvaranje svih prozora. Šema sistema za kontrolu jednog para prozora je prikazana na slici 18. Signal1 Signal2 Signal3 Signal4 PP PP PP PP MIKROKONTROLER ADC PP PP PP PP PP PP PP Analogni multiplekser S Signal sa strujnog senzora L Signal sa strujnog senzora D Napred Nazad PWM ENERGETSKI BLOK Napred Nazad PWM ENERGETSKI BLOK M M Motor za pomeranje desnog prozora Motor za pomeranje levog prozora Slika 18. Blok šema sistema za kontrolu prozora Signali Signal1...Signal3 predstavljaju indikaciju da je prozor stigao u krajnji donji ili krajnji gornji položaj. U krajnjem položaju, prozor zatvara mehanički prekidač koji se nalazi na vratima. Na osnovu vrednosti ovih signala, mikrokontroler zna kada da zaustavi motore. Pomoću ovih signala moguće je takođe detektovati da li je prozor potpuno zatvoren ili otvoren. Šema senzora za detektovanje krajnjih položaja prozora je prikazana je na slici 19.
  26. 26 Vcc Mehanički prekidač na vratima Vcc Signal i GND Slika 19. Hardver za detektovanje krajnjih položaja prozora Strujnim senzorima se meri struja motora. Ovi senzori se obično postavljaju na pogodno mesto u energetskom bloku kojim se upravlja motor. Izlaz senzora je analogna veličina proporcionalna struji motora. Izvšeno je multipleksiranje signala pošto mikrokontroler poseduje jedan A/D konvertor. Jednosmernim motorima se upravlja preko energetskog bloka koji u sebi sadrzi H-most čime je omogućeno kontrolisanje smera okretanja motora promenom polariteta struje. Signal kojim se kontroliše jednosmerni motor je PWM signal koji se generiše upotrebom tajmera. Učestanost PWM signala i "duty cycle" vrednosti zavise od kontrolnog bloka i motora. Na detekciju pritiska tastera, centralni mikrokontroler šalje poruku za pokretanje prozora na gore ili dole. Po otpuštanju tastera se zaustavlja kretanje prozora. Format komandne poruke je dat u tabeli 8. 0 1 0 O/Z L/D / / / / Tabela 8. Format komandne poruke za kontrolu prozora  Bit O/Z predstavlja informaciju za otvaranje/zatvaranje prozora ( O/Z=1 otvaranje , O/Z=0 zatvaranje )  Bit L/D predstavlja informaciju koja se odnosi na levi/desni prozor ( L/D=1 levi prozor , L/D=0 desni prozor ) Po primanju komande mikrokontroler podešava smer kretanja motora i generiše PWM signal kojim se upravlja motorom. PWM signali se generišu upotrebom tajmera i COMPARE registara. Potrebno je u prekidnoj rutini tajmera ažurirati vrednosti COMPARE registra u zavisnosi od željenje periode i "duty cycle" vrednosti. Po primanju komande za zaustavljanje mikrokontroler zaustavlja kretanje prozora. Ukoliko se ne primi komanda za zaustavljanje, kretanje prozora se zaustavlja kada se prozor nadje u nekom od krajnih položaja. Ova informacija se dobija očitavanjem vrednosti paralelnih portova na koje su vezani Signal1…Signal3. Tokom kretanja prozora mikrokontroler poliranjem proverava vrednost struje motora. Ukoliko se vrši pomeranje oba prozora potrebno je prvo očitati vrednost jedne struje, pa druge. U slučaju prepreke, struja motora će preći
  27. 27 neku softverski podešenu granicu usled povećanja opterećenja. Mikrokontroler tada zaustavlja kretanje prozora i generiše prekid. Poruka koja se šalje centralnom računaru prilikom poliranja ima vrednost bitova P3..P0 = 0100. Mikrokontroleri prozora takođe generišu prekid po detektovanju neispravnosti sistema. Detekcija neispravnosti je jednostavna korišćenjem signala sa senzora. Na primer: ako je struja motora 0 i nakon zadavanju signala potrebnih za pokretanje. 2.5 Podsistem za kontrolu položaja sedišta i retrovizora Oba sedišta se kontrolišu jednim mikrokontrolerom ,a takođe se jednim mikrokontrolerom kontrolišu i oba retrovizora. Sistem za kontrolu sedišta i sistem za kontrolu retrovizora se razlikuju jedino u snazi motora.Šema sistema za kontrolu jednog sedišta/retrovizora je prikazana na slici 20. MIKROKONTROLER IMPULS SMER PP PP PP PP PP HARDVER Napred Nazad PWM ENERGETSKI BLOK M A NM B ENKODER Slika 20. Blok šema sistema za kontrolu položaja sedišta i retrovizora Hardver za generisanje signala impuls i smer je dat na slici 21. IMPULS A B Q Q SET CLR D B A SMER Slika 21. Šema hardvera za generisanje signala impuls i smer Jednosmernim motorima se upravlja na isti način kao i motorom za pokretanje prozora. Upravljanje je opisano u prethodnoj glavi. Obrtnim enkoderom se meri pomeraj osovine. Za poznavanje pozicije sistema potrebno
  28. 28 je zadati referentnu poziciju. Ova inicijalizacija je urađena pri instaliranju sistema. Kako postoji mogućnost mehaničkog pomeranja položaja retrovizara i sedišta, potrebno je meriti pomeraj i kada se on ne vrši motorom kojim upravlja mikrokontroler. Mikrokontoler je dužan da u svakom trenutku “zna” poziciju sistema. U slučaju nestanka napajanja mikrokontrolera izvršiće se automatska inicijalizacija sistema, tako što se sistem pomera dok se ne dođe do nultog markera, signal NM. Pretpostavljeno je da je mikrokontroler koji meri položaj stalno pod napajanjem, tako je inicijalizacija sistema potrebna samo u specijalnim slučajevima nestanka napajanja i reseta sistema. Na detekciju pritiska taster, centralni mikrokontroler šalje poruku za pokretanje sedišta/ retrovizora. Po otpuštanju tastera se zaustavlja kretanje prozora. Format komandne poruke je dat u tabeli 9. 0 1 0 RL/RD L/D OTK ZAK / / Tabela 9. Format komandne poruke za kontrolu položaja sedišta i retrovizora  Bit RL/RD predstavlja informaciju o kontroli smera okretanja motora tj pomeranja sistema u jednu ili drugu stranu  Bit L/D predstavlja informaciju koja se odnosi na levi/desni retrovizor ili sedište  Bit OTK predstavlja informaciju koja se odnosi na otključavanje (OTK=1) Bit ZAK predstavlja informaciju koja se odnosi na otključavanje (ZAK=1) Po primanju informacije o otključavanju, mikrokontroler podešava sistem u položaj pre zaključavanja. Na signalizaciju zaključavanja mikrokontroler pamti trenutnu poziciju sistema. Mikrokontroleri generišu prekid samo po detektovanju neispravnosti sistema. Detekcija neispravnosti je jednostavna i vrši se poređenjem signala sa enkodera i signala za upravljanje motora. 2.6 Podsistem za kontrolu temperature u automobile Za merenje temperature se koristi sensor koji na izlazu daje PWM signal čiji je "duty cycle" srazmeran temperaturi. Merenje temperature moguće je realizovati pomoću tajmera, upotrebom CAPTURE registara. Mikrokontroler očitava senzor i na zahtev centralnog računara šalje podatak. U slučaju da temperatura predje neku dozvoljenu granicu, generiše se prekid. Kao odgovor na poliranje, sistem vraća poruku koja ima bitove P3..P0 jednake vrednosti 0011. Format poruka kojima se zahteva čitanje podataka iz mikrokontrolera podsistema je već opisan u prethodnim poglavljima i formatu podataka. Šema sistema za merenje temperature je prikazana na slici 22. Mikrokontroler Senzor temperature PP Slika 22. Blok šema za kontrolu temperature u automobile
  29. 29 2.7 Podsistem za kontrolu parking senzora Šema sistema koji kontroliše ultrazvučni detektor udaljenosti je prikazana na slici 23. MIKROKONTROLER DAC PP PP Ultrazvučni predajnik out Detektor LP Filter Input ˃ Start Kretanje unazad Slika 23. Blok šema sistema za kontrolu zadnjih parking senzora Kretanje unazad se detektuje prekidačem koji se nalazi na menjaču prikazan je na slici 24. Vcc Prekidač na menjaču Vcc Kretanje unazad GND Slika 24. Šema hardvera za detekciju kretanja unazad Za upotrebu ultrazvučnog senzora potreban je sinusoidalni signal koji se generiše sintezom učestanosti. Odbirci sinusoide se šalju u određenim vremenskim periodima na A/D konvertor i konverzija se startuje. Vreme startovanja konverzije meri se tajmerom dok brzina slanja odbiraka zavisi od učestanosti date sinusoide.
  30. 30 U slučaju da je rastojanje manje od zadatog, od 300cm, detektor generiše prekid na uzlaznu ivicu. Vreme starta konverzije i detektovanja prijema meri se tajmerom i srazmerno je rastojanju automobila od prepreke. Pri prijemu prekida, centralni mikrokontroler prima poruku oblika P3..P0 = 0011 i na displeju očitava vrednost ovog senzora. Takođe, po prijemu informacije o nailasku na prepreku na max 300cm od nje, centralni mikrokontroler počinje slati signale zvučniku ugrađenom u kontrolnu tablu koji emituje zvuk u zavisnosti od daljine prepreke. Kako se automobil približava prepreci tako zvuk emitovan sa zvučnika postaje kontinualniji i jači. Blok sistema za kontrolu zvučnika prikazan je na slici 25. Centralni Mikrokontroler D/A Vcc Zvučnik GND Slika 25. Blok šema kontrole jačine zvučnog signala od blizine prepreke 2.8 Osvetljenje instrument table Za osvetljenje instrument table se koriste LED diode. Diode se atomatski pale preko pina centralnog mikrokontrolera i Darlintonovog para tranzistora po otljučavanju vozila. Intezitet osvetljenja se kontroliše potenciometrom koji korisnik može podešavati manuelno. Šema osvetljenja instrument table je prikazana na slici 26. GND PP LED diode za osvetljenje instrument table Vcc Slika 26.Šema hardvera za kontrolu osvetljenja instrument table
  31. 31 Literatura 1. Predavanja iz predmeta Namenski računarski sistemi, Lazar Saranovac 2. MSP430 data sheet, Texas Instruments 3. 8051 data sheet, Intel 4. WISHBONE System-on-Chip, Silicore
Publicité