Proiect De Licenta Cruceru Ionut Copy (2) Cata11 [609283]

UNIVERSITATEA DIN CRAIOVA
FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI
ELECTRONICĂ
DEPARTAMENTUL DE AUTOMATICĂ ȘI ELECTRONICĂ
PROIECT DE DIPLOMĂ
CruceruCatalinIonut
COORDONATOR ȘTIINȚIFIC
Prof.Dr. Ing.Traian Titi Serban
Iulie 2017
CRAIOVA

UNIVERSITATEA DIN CRAIOVA
FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI
ELECTRONICĂ
DEPARTAMENTUL DE AUTOMATICĂ ȘI ELECTRONICĂ
Controlul automat si telecomanda manuala a iluminarii unei incinte
CruceruCatalinIonut
COORDONATOR ȘTIINȚIFIC
Prof. Dr. Ing. Traian Titi Serban
Iulie 2017
CRAIOVA

TEMĂ PROIECT
Proiectul urmareste realizarea unui sistem ce permite controlul automat al luminii interioare
cat si ajustarea intensitatii acesteia prin intermediul unur senzori de distanta/detectie miscare cat si
prin intermediul unei telecomenzi IR , totul bazandu -se pe relatia operator u man-sistem.

1INTRODUCERE
Sistemul de alimentare:
Drivere de putere:
Driverele de putere, sunt switch -uri de putere, care pot comuta curenți mari în condiții de siguranță și
în conformitate cu mediul auto dur. Acestea sunt compatibile atât cu nivelele de 3V cât și cu nivelele
de 5V și au o interfață specială ce oferă o diag noză asupra sarcinilor. Ele pot conduce cu ușurință atât
sarcini rezistive cât și sarcini inductive.
Avantaje ale drivere -lor:
-Detectarea ieșirii în gol sau a ieșirea din parametrii a sarcinei
-Protecție scurt -circuit
-Protecție termică
-Protecție la supratensiune și închidere în cazul nivelului foarte mic al tensiunii de
alimentare
-Protecție împotriva pierderii tensiunii de alimentare și a GND -ului
-Putere disipată redusă în standby
-Monitorizarea Vbat și temperaturii
Driverele sunt concepute pentru a lucra de la -40° C până la +150° C(specific domeniului
automotive). Acestea pot avea o intrare, două intrări sau 4 intrări digitale.
1.1Driver de putere –BTS6142D
BTS6142D este un driver de putere cu o rezistență drena -sursa de 22mOhm, încorporat într -o
capsulă JEDEC 5 -pin TO-252 oferind funcții de protecție și diagnostic. Acesta este proiectat pentru a
rezista la o putere de 22W.

Caracteristici de bază:
-Un canal de ieșire
-Protecție la scurtcircuit
-Protecție la suprasarc ină
-Protecție la supratensiune
-Curent de standby redus
-Protecție împotriva descărcării electrostatice (ESD)
-Compatibilitate electromagnetică optimizată
-Calificare AEC (automotive)
-Diagnosticare
Figura.2.4 Schema bloc a driverului
Funcția de diagnosticare poate detecta printr -un semnal de eroare definit: suprasarcină, depășire
temperatură și/sau scurtcircuit
Aplicații: Comutator de putere cu diagnosticare pentru dispozitive ce se alimentează cu 12V sau 24V.
Acestuia i se pot conecta atât sarci ni rezistive, capacitive cât și inductive. Înlocuiește releele
electromagnetice, siguranțe și circuite discrete.

Parametrii:
Kilis-urile pentru diagnosticare:
Una dintre cele mai utile funcții ale acestui driver este diagnosticarea sarcinii. În rânduri le ce urmează
voi explica cum funcționează acesta funcție.

1.1.1Depa șirea curentului
Figura.2.5 Schema de principiu utilizata pentru detectia de curent
Tranzistorul de „sens”,M2, este adăugat în paralel cu tranzistorul principal, M1, pentru reflectarea
curentului de sense, Isense, care este apoi comparat cu o tensiune de referință. M1 și M2 au drenă și
sursa legate împreună. Amplificatorul A1 forțează ten siunile din sursele celor doi tranzistori să fie
egale. Ca urmare tranzistorii M1 și M2 sunt conectați practic în paralel, astfel încât densitatea de
curent să fie egală.Raportul între ieșire și curentul de sens este dat de următoarea relație:
Isarcina = KILIS x Isense
unde valoarea tipică pentru Kilis este între 100 și 10000 în funcție de dimensiunea tranzistorului de
putere.
Curentul de sens este transformat în tensiune, prin înserierea unui rezistor de sens, Rsense, care este
apoi comparată cu o tensi une de referință, Vref.
Vsense = Isense x Rsense
Un curent de referință este utilizat pentru a genera tensiunea de referință , Vref, pe o rezistență
de referință, Rref, ce corespunde cu Rsense. În cazul în care curentul de sarcină trece de un anumit
prag, tensiunea de sens devine mai mare decât tensiunea de referință, deci semnalele din comparatorul
A2 depășesc condiția de curent. Condiția de prag este:

Vsense = IsenseRsense = IrefRref = Vref
Pragul pentru curentul de ieșire se poate determina din relația:
Iload = KILIS Iref
Această ecuația evidențiază factorii care influențează precizia senzorului de curent: puterea
tranzistorilor, Kilis, raportul Rref/Rsense și curentul de referință. Rezistențele integrate se pot
presupune cu o toleranță de sub 1%, astfel raportul Rref/Rsense nu influențează foarte mult rezultatul
senzorului. Valoarea Kilis are cel mai mare impact asupra preciziei senzorului de curent.
Figura.2.6 Prezicia Kilis in functie de tensiunea Vds a tranzistorului
1.1.2Schemaechivalenta
Înainte apariției acestor drivere, chiar si in prezent, pe mașinile ieftine se folosea o alternativă
care sa nu impună un cost ridicat, dar care prezenta și o serie de dezavantaje. Releele
electromagnetice erau folosite pentru comanda luminilor , fără a se putea diagnostica statusul
becurilor. Ulterior s -a introdus o metodă pentru verificarea sarcinii conectate la ieșire, folosindu -se un
amplificator operațional cu shunt.

Figura.2.7 Comanda sarcinii cu prin intermediul releului si citirea cure ntului cu INA138
Monitorul de curent cu shunt
Eroarea totală: Pentru semnale diferențiale mici la intrare eroarea este determinată de
tensiunea de offset a amplificatorului. Pentru semnalele diferențiale de intrare mari, eroarea este
determinată de eroarea amplificatorului de instrumentație.
Figura.2.8 Eroarea totala vs tensiunea de intrare diferentiala

Microcontroller –ATMEGA328
ATmega328esteunmicrocontroler RISCpe8bițirealizatdefirmaAtmel.ATmega328
estedemicăputerebazatpearhitectura RISCAVR îmbunatațită. Memoriile ROM,EEPROM
șiSRAMsuntintegrate înacela șichip,înlaturând nevoiadememorie externă.Dispunede32de
regiștrideuzgeneralcaresuntdirectadresabile deUnitatea Logică Aritmetică (ALU),permițând
accesarea adouăregistere independente într-osingurăinstrucțiune.Astfelseobțineoeficiențamai
mareinexecuție(depânăla10orimairapidedecâtceleconvenționaleCISC).[1]
Microcontrolerele AVR pe 8 bi ți (Atmel) au la bază un nucleu RISC cu arhitectura Harvard.
Aceste microcontrolere sunt destinate aplica țiilor simple: controlul motoarelor, controlul fluxului de
informație pe portul USB, aplicații din domeniul automobilelor, controlul accesului de la distan ță, etc.
Principalele caracteristici ale acestuia sunt:
 32 KB de memorie Flash reinscriptibilă pentru stocarea programelor;
 2KB de memorie RAM;
 1 KB de memorie EEPROM;
 douănumărătoare/temporizatoare de 8 bi ți;
 unnumărător/temporizator de 16 bi ți;
 conține un convertor analog –digital de 10 bi ți, cu intrări multiple;
 conține un comparator analogic;
 conține un modul USART pentru comunicație serial(port serial);
 dispune de un cronometru cu oscilator intern;
 oferă 23de linii I/O organizate in trei porturi (PB, PC, PD).

Figura5. Structura internă generală a microcontrolerului ATmega328
Funcția principală a nucleului CPU -AVR este aceea de a asigura executia corectă a
programului. Pentru aceasta, nucleul este capabil să acceseze memoriile, sa execute calcule, sa
controleze perifericele și sa prelucreze întreruperile. Structura internă generală a controler ului este
prezentată în figura 5 .Se poate observa că există o magistrală generală de date la care sunt conectate
mai multe module [1]:
unitatea aritmetică și logică (ALU) ;
registrele generale ;
memoria RAM și memoria EEPROM ;
liniile de intrare (porturile I/O) și celelalte blocuri de intrare/ieșire.

Figura6. Diagrama bloc (Atmega328)
Ocaracteristică foarte importantă pentru orice procesor și în particular pentru
microcontrolereeste sistemul de întreruperi. O întrerupere reprezintă un semnal generat de un modul
extern unitățiicentrale de procesare (CPU) pentru a anunța apariția unui eveniment care trebuie tra tat.
Utilizarea unui astfel de sistem permite implementarea de module specializate care să execute operații
în paralel cu CPU și să solicite intervenția acestuia numai la terminarea operațiilor sau în alte cazuri
definite.
ATmega328dispune de 2 6surse de întrerupere. Atunci când una dintre ele devine activă se suspendă
cursul normal de execuție și se face salt automat la o adresă prestabilită din memoria program .
RESET-Generată la alimentare sau la un semnal pe pinul RESET

EXT_INT0 -Întrerupere externă 0
EXT_INT1 -Întrerupere externă 1
PCINT0-Cerere schimbare pin întrerupere 0
PCINT1-Cerere schimbare pin întrerupere 1
PCINT2-Cerere schimbare pin întrerupere 2
WDT-Generată de modulul WATCHDOG
TIM2_COMPA -Generată când timerul pe 16 biți atinge valoarea de prag A
TIM2_COMPB -Generată când timerul pe 16 bi ți atinge valoarea de prag B
TIM2_OVF -Generată când Timer/Counter2 atinge valoarea maximă
TIM1_CAPT -Generată de unitatea de captură a timerului pe 16 bi ți
TIM1_COMPA -Generată c ând timerul pe 16 bi ți atinge valoarea de prag A
TIM1_COMPB -Generată când timerul pe 16 bi ți atinge valoarea de prag B
TIM1_OVF -Generată când timerul pe 16 bi ți atinge valoarea maximă
TIM0_COMPA -Generată când timerul pe 16 bi ți atinge valoarea de pra g A
TIM0_COMPB -Generată când timerul pe 16 bi ți atinge valoarea de prag B
TIM0_OVF -Generată când Timer/Counter0 atinge valoarea maximă
SPI_STC -Generată de unitatea SPI
USART_RXC -Generată la recep ția completă a unor date de catre modulul USART
USART_UDRE-Generată când registrul de date al modulului USART este gol
USART_TXC -Generată la transmisia completă a unor date de către modulul USART
ADC-Generată de modulul ADC
EE_RDY -Generată de modulul EEPROM
ANA_COMP -Generată de comparatorul analogic
TWI-Generată de modulul TWI

SPM_RDY -Generată de modulul de auto -scriere a memoriei Flash
Dacă o singură întrerupere nu este utilizată se recomandă ca pe poziția acesteia să se
introducă o instrucțiune de salt către eticheta RESET. Primele patr u instrucțiuni care apar după
eticheta RESET sunt utilizate pentru a inițializa pointer -ul de stivă definit de registrele SPH și SPL.
ATmega328 este sus ținut de o serie completă de instrumente de program și de dezvoltare a
sistemului, care include: compila toare, macroasambloare, programe debug/simulare etc.
Descrierea pinilor :
VCC –Alimentare partii digitale
GND –Ground
Port A –este un port bidirectional de opt biti dedicat pentru intrari si iesiri digitale cu rezistenta
interna de pull -up(selectabila pentru fiecare bit). Ca intrari, pinii Portului A sunt in mod normal cu
configuratie de pull -down doar daca functia de pull -down este inactiva. Pinii portului A sunt tri -state
atunci cand microcontroller -ul se afla in procesul de resetare.
Port B-areaceleasi functionalitati ca si Port A, doar ca Portul B are capacitati de conducere mai
bune decat alte porturi.
Port C, D,H,L,J si E sunt de asemenea porturi utilizate pentru intrari si iesiri digitale.
Port F,K –este un in care pinii sunt utilizati dr ept intrari pentru convertorului Analog -Digital. Portul
poate fi de asemenea folosit si ca intrari/iesiri digitale in cazul in care functia de ADC nu este activa.
O functie importanta pe care o prezinta portul F este aceea ca are inclusi pinii de JTAG. Dac a interfata
JTAG este activa, rezistentele de pull -up pentru pinii PF7(TDI), PF5(TMS), si PF4(TCK) raman
active chiar si in timpul procesului de resetare.
Port G –este port dedicat intrarilor si iesirilor digitale, care spre deosebire de celelalte portur i, acesta
este pe 8 biti.
RESET(negat) –Un nivel de 0 aplicat pe acest pin v -a genera o resetare pentru microcontroller.
Durata minima a nivelului de 0 care trebuie aplicata microcontroller -ului este configurabila. O simplu
impuls aplicat pe pinul de res et nu garanteaza resetarea acestuia.
XTAL1, XTAL2 –Pini folositi pentru conectarea osicilatorului extern.

Fig.XX Schema oscilatorului extern
AVCC –pinul dedicat alimentarii pentru portul F si convertorului A/D. Acesta ar trebuii conectat la
VCC chiar daca ADC -ul nu este folosit. Daca ADC -ul este folosit aceasta trebuie conectat la VCC
printr-un filtru trece -jos.
AREF –Pinul dedicat tensiunii de referinta pentru ADC.
Tabel. XX Alimentarea microcontroller -ului in functie de versiunea acestuia si de frecventa folosita
Controlul puterii si modurile de sleep
Modul de sleep permite, permite inchiderea modulelor neutilizate pentru economisirea e nergiei. AVR
ofera diferite moduri de sleep ce permite utilizatorului sa adapteze consumul de energiei in functie de
cerintele aplicatiei.
Porturile digitale
Toate porturile AVR au functia Citeste -Modifica-Scrie atunci cand sunt utilizate ca porturi de
Intrare/Iesire digitale. Aceasta se refera la faptul ca directia unui pin poate fi modificata fara a
modifica neintentional directia altui pin cu inscructiuile SBI si CBI. Acest lucru este valabil atunci
cand se schimba starea de conducere(daca este configu rat ca iesire) sau cand se
activeaza/dezactiveaza rezistenta de pull -up(atunci cand este configurat la intrare). Toti pinii de
intrare iesire au diode de protectie pentru tensiunea de VCC sau GND.

Fig. XX Schema echivalenta a unui pin de Intrare/Iesire
Stivamicrocontroller -ului
Microcontrolerele AVR folosesc o stivă organizată în memoria SRAM de date. Stiva se
folose ște în principal pentru stocarea temporară a datelor, pentru stocarea variabilelor locale dar și
pentru stocarea adreselor de revenire di n întreruperi. Accesarea stivei se face prin registrului contor de
stiva SP (Stack Pointer) care este actualizat de procesor la fiecare accesare a stivei. Stiva lucrează pe
principiul LI -FO (Last Input –First Output) și evoluează prin decrementarea adreselor. La încarcarea
unei date în stivă SP este decrementat, iar la citire este incrementat, de aceea SP indică întotdeauna
prima loca ție liberă din vârful s tivei. Dimensiunea memoriei SRAM instalate condi ționează
dimensiunea propriu -zisă a stivei. Utilizatorul setează prin program adresa de început a stivei (care
este adresa cea mai mare a zonei de memorie alocată stivei). Procesorul folose ște instrucțiunea P USH
pentru transferul de date în stivă, iar instruc țiunea POP este folosită pentru transferul din stivă.
Indicatorul de stivă (SP) este decrementat cu 1 când se introduc date în stivă cu instructiunea
PUSH, și decrementat cu 2 când sunt salvate în stivă a dresele de revenire la apelarea subrutinelor cu
instructiunile CALL sau GOTO sau la acceptarea unei întreruperi. Indicatorul de stivă este
incrementat cu 1 când datele sunt citite din stivă cu instructiunea POP, și incrementat cu 2 când sunt
citite din sti vă adrese la executia unei instructiuni de revenire dintr -o subrutina (RET) sau dintr -o
întrerupere (RETI).
Indicatorul de stivă este implementat cu două registre de 8 bi ți.Aceste registre sunt adresate în spatiul
de adrese al disp ozitivelor I/O (registre le SPH și SPL). De structura implementării depind numărul de
biți folosiți. Spațiul de adrese poate fi mic la unele implamentări ale arhitecturii AVR, deoarece este
folosit doar registrul SPL(SP Low). În acest caz registrul SPH (SP High) nu mai este utiliz at.

Figura XX. Indicatorul de stivă
Registru de deplasare 74HC595
Integratul 74HC595 este registru de deplasare pe 8 -biți de mare viteză, cu intrare serială,
ieșire paralelă sau serială cu trei etape de ieșire. Acesta primește datele și ceasul de tact de la
microcontroller și își umple buffe -rul intern de 8 biți. După ce buffer -ul s-a umplut primește un impuls
de 5V pe pinul registrului de stivă, determinându -l să scoată la ieșire datele primar e și sa reînceapă
procesul. [5]
Figura15. Piniiregistrului de deplasare 74HC595

2.9Senzorulinfraroșu receptor
Figura 34 . Senzor infraroșu receptor
Senzorul infraroșu receptor este folosit pentru detecția telecomenzii, în aproape toate
aplicațiile: televizoare, DVD playere, modulatoare FM auto…etc. Distanța dintre un emițator și un
receptor variează de la 8 la 45m. Senzorul conține un demodulator IR de o anumita frecvență. Î n
funcție de cum sunt modulate receptoarele sunt de 36 kHz, 38 kHz, 40 kHz și 56 kHz.[11]
În proiect sunt folosiți doi senzori infroșu receptori; unul pentru detecția telecomenzii, iar al
doilea pentru detecția semnalului emis de către ledul infraroșu emi țător.
Figura35. Schema bloc a receptorului infraroșu

2.13.1Elementul piezzo buzzer
Figura 47. Elementul piezzo buzzer
Elementul Piezo buzzer este o componentă electronică concepută să producă sunete. Datorită
prețului mic și modului simplu de a lucra cu el, acesta are folosit des în aplicații precum senzorul de
gaz, calculatoare, sonerii etc. [15]
2.14 Telecomanda
Figura51. Telecomanda
Telecomanda utizată în proiect a fost folosită la un modulator FM auto. Pentru a putea fi
folosită în proiect a trebuit să programez un microcontroller să îmi citească și să îmi afișeze codurile
în HEX ale butoanelor.
Telecomanda are la bază protocolul NEC. Protocolul utiliz ează codarea biților într -un puls.
Fiecare puls este de 560 µs, la o frecvență de 38 kHz. Semnalul logic “1” durează 2.25ms s ăse
transmită, în timp ce semnalul “0” durează la jumătate 1.125ms. [17]

Figura52. Modulația

2DESCRIEREA PROIECTULUI
Figura.2.3 Schema electronic ăa proiectului

3CONCEPEREA PROGRAMUL UI PENTRU
MICROCONTROLLER
Softul pentru proiect a fost realizat în limbajul de programare C, utilizând ca mediu de program are
utilitarul oferit de Arduino. Pentru încărcarea programului pe microcontroller s -a utilizat placa de
dezvoltare Arduino UNO . Placa de dezvoltare deți ne un microcontroller Atmega328 , fapt ce a
determinat folosirea acesteia pentru comanda driver -elor .
Figura.3.1 Placa de dezvoltare Arduino UNO

Figura.3.2 Schema electronica a placii de dezvoltare Arduino Mega2560
Functii PinArduino Tip Stare Comentarii
INPUT
Avarii 38Digital LOW
Claxon 40Digital LOW
Marsalier 42Digital LOW
Ceata 44Digital LOW
Fotorezistenta A0 Analogic Variabil
Flash 46Digital LOW
FazaLunga 48Digital LOW
Semnal_ST 50Digital LOW
Pozitii 52Digital LOW
Frana 53Digital LOW
HW_ver A1 Analogic 2.5V
Plafoniera 51Digital LOW
FazaScurta 49Digital LOW
Cooler A3 Digital HIGH
Semnal_DR 47Digital LOW
PCB_Temp A2 Analogic Variabil
LCD
RS 7Special
RW Special
E 6Special
D4 5Special
D5 4Special
D6 3Special
D7 2Special
OUTPUT
ClaxonOut 45Digital HIGH
Cooler_Out 10PWM 25%,50%,75%,100%
FazaScurta_out 43Digital HIGH
Marsalier_Out 39Digital HIGH
Ceata_Out 36Digital HIGH
FazaLunga_Out 34Digital HIGH
Semnal_ST_out 8PWM 50%
Pozitii_out 32Digital HIGH
Frana_OUT 30Digital HIGH
Plafoniera_OUT 11PWM 100% descrescator
Semnal_DR_OUT 13PWM 50%
EMGY 28Digital HIGH

Tabel.3.1 Atribuirea pinilor pentru realizarea soft -ului

Similar Posts