Sunteți pe pagina 1din 11

Termometru digital cu microcontroler AT Mega 128

Universitatea tefan cel Mare Suceava Facultatea de Inginerie Electric Specializarea Automatic si informatic aplicat

Proiect la Domotic

Termometru digital cu microcontroler AT Mega 128

Prof. ndrumtor: Asistent univ. drd. Ing. Sorin Pohoa

Student: Grupa 1241A

Termometru digital cu microcontroler AT Mega 128

Termometru digital cu microcontroler AT Mega 128


Ne propunem s proiectm un sistem de msurare a temperaturii comandat de un microcontroler tip Atmega 128. Sistemul va comanda un agregat de rcire in cazul in care temperatura ambiant este mai mare dect o temperatur presetat + 0.5 C, sau un agregat de nclzire atunci cnd temperatura scade sub Tset 0.5.

Sistemul are urmtoarele caracteristici:


gama de temperaturi msurate i reglate ntre 0 100 C temperatura afiat pe un afiaj cu leduri pe 3 digii 2 butoane de reglare a temperaturii cu posibilitatea modificrii temperaturii setate: la apsarea unuia dintre butoane aparatul intr in modul de setare. Dac timp de 5 secunde nu se apas nici un buton se revine la temperatura reala.

Afiajul conine de asemenea 2 leduri ce indica modul de afiare(real sau setare). Se vor folosi :

afiaje cu leduri cu anod sau catod comun. microcontroler Atmega 128 traductori de temperatura LM335

Temperaturile se vor afia in grade C.

Termometru digital cu microcontroler AT Mega 128

Microcontrolerul Atmega 128

O definiie, cu un sens foarte larg de cuprindere, ar fi aceea c un microcontroler este un microcircuit care incorporeaz o unitate central (CPU) i o memorie mpreun cu resurse care-i permit interaciunea cu mediul exterior. Utilizarea unui microcontroler constituie o soluie prin care se poate reduce dramatic numrul componentelor electronice precum i costul proiectrii i al dezvoltrii unui produs. Un concurent puternic al seriei PIC este familia numit AVR, a firmei ATMEL, familie aprut n ultimii ani, care ofer variante de microcontrolere oarecum asemntoare ca resurse cu familia PIC, la performane similare sau mai bune. Sunt bazate pe o arhitectur diferit, dar unitatea central este tot de tip RISC, cu cuvntul de date de 8 bii. La fel ca la PIC dimensiunea cuvntului de program este mai mare, fiind de 16 bii. Exist cel puin 3 sub familii mari, n ordinea complexitii resurselor, acestea fiind: AT Tiny, AT90 i ATMega.

Caracteristici generale: 1. microcontroler pe 8 bii cu arhitectura RISC 2. Tensiuni de operare in gama 4.5-5.5 V
3. Convertor analog-digital 4. 32x8 registre de uz general 5. 128 kb memorie flash reprogramabila 6. 4k EEPROM 7. 4k SRAM intern

8. 2 timere pe 8 bii si 2 timere extinse pe 16 bii 9. 133 instruciuni cu durata intre 1-3 cicli.

Termometru digital cu microcontroler AT Mega 128

Termometru digital cu microcontroler AT Mega 128

Schema bloc

1. Senzor de temperatura LM335 2. Amplificator 3. Taste 4. Convertor analog-digital cu conversii succesive 5. Microcontroler Atmega128

6. Afiaj cu leduri cu 3 digii + indicatori de comanda si modul de afiare(Tset/Treal) 7. Agregat de rcire 8. Agregat de nclzire

Termometru digital cu microcontroler AT Mega 128

V c c = 5 V

0
1 0 0 nL 1 F1 0 u H 52 21 A 2 2 2 2 2 3 3 3 5 (6 (7 (8 (9 (0 (1 (2 ( S C S D R x T x I C X C T 1 T 2 R T X O O O T I C A A A A T T T T V R W R A T T R x L A 5 / I P N A T 05 0 / IP N A T 14 1 1 P / I A N 24 T 1 /P I NA 34T ) P P D A 44 1 P) A P 54D P DP A 6 64 P DP A 7 7 0 VCC VCC T 1 0)( 9 )( 8 2( 73 ( 6 ( 5 5( 42 ( ( m AP A P A) )A A A A A2

1 e k g * a 31
DD D D DP PD D D D 0D 00 1 1 2D D3 4 5 6 *7 ) ) ) 2 )3 ) ) ) 4)

8 2 N 1 02 6N 9 1 02 6N 9 1 0 6 9

1
L R 1 R9 9 01 00 0 M 3 3 5

D 1 ) )

D K

0 0 0 0

I n c a l z i r e R a c i r e
2 3 4 5 6 37 8 9 ( ( ( ( (A ( ( ( 1 (0 (9 (8 (7 (6 (5 (4 ( 4 A 2 A 3 (4 (3 (8 (9 ( D

k
3 L 4 8 + -

T 1

S W 2 S W 1

1 0 P/ P B D 1 0 1I ) ( S P S E ) 0 x D 0 /P P B D 1 1 O 2 ( )S PC E K 1 1 ) C L 0 P / A B I 2 N1 3 0( M ) O P ES 2I C 3 A P / B A 3 I 1 N 4 ( 1M ) I S P OE C 3 B P / IB N 4 1 T 5 ( 4 O ) C P 0 E ) C 3 C P / B I N 5 1 T6 ( O5 ) C P 1 E A 3 / I N P T B 6 6) 1 P7 ( O E C6 1 B 3 / P I NB 7T 7 ( ) O P C E 2 7 / O D D D D C C C C 0 1 2 3 / P) P) P ) P ) AP AP AP PD R P CP CP C P C P DC DC DC C C E E 3 5 3 0F 6 0 ( A 3 1F 7 1 ( A 3 2 F 8 2( A 3 3 F 9 3( A C4 4 0 4 ( ) A C4 5 1 5 ( ) A 4C6 2 6 ( A) 7 7 )( A P 2 1 S 0 N E 1 T 0 k 8 9 ) )

5 0 * 8
4 ) 3) 5) ) C

s u t ze e c u i n i t a t i
1 C )

6 6 5 5 5 5 5 5 6 6 3 3 4 1 1

13

C M D D

K S O I / C E C F )

/ / A

1 1 P1 P1 1P 1

0 1 2F 3F 4F F 5

) ) )4 )5 ) 6 7)

R 4

R8 1 0 . 47 .k7 k

GND GND GND

2 4 P X G T 0A L 1 D ) P G 1 4 MY H1 L E ) P G 2 O S C 2 ) 2P 3 G 3 O S C 1 X ) T PA GL 2 4 C 2 7 3 C p2 F7

2 p F

63 53 22

000

Termometru digital cu microcontroler AT Mega 128

Senzorul de temperatura

Acest senzor funcioneaz intre temperaturile -40C si 100C pstrndu-i liniaritatea si impedana sczuta. Din cele 3 forme disponibile s-a ales SO-8 cu montare pe suprafa, avnd o rezistenta termica sczuta fa de celelalte variante. Circuitul are o impedana dinamica mai mic de 1 si funcioneaz intre 0.45mA i 5mA fr degradri ale perfomanelor. Calibrat la 25C, LM335 are o eroare mai mic de 1C la o variaie a temperaturii de 100C (tipic 0.5C). Are o ieire liniar in tensiune care variaz in funcie de temperatur cu 10mV/K. Rezistena R7 este folosita pentru calibrarea la 25C trebuind s asigure la ieire tensiunea de 2.982V pentru aceast temperatur. Legea de variaie:

, unde T este temperatura in grade Kelvin. Rezult


Tensiune de ieire la +100C: 3.732V Tensiune de ieire la -40C: 2.332V

Termometru digital cu microcontroler AT Mega 128

Adaptorul de semnal

Amplificatorul LT1013 este primul AO dual de precizie cu 8 pini. Poate fi alimentat de la o singur surs de 5V. Gama intrrii de mod comun poate include si masa. Ieirea poate oscila in limita a civa mV de la mas. Deoarece traductorul de temperatura LM335 are o panta de 10mV/K rezult ca, la capetele de scal ale termometrului (-40C si 100C) tensiunile de ieire vor avea valorile +2.332V (pt -40C) si 3.732V (pt100C) aadar excursia de tensiune va fi de 1.400V. Acest adaptor are rolul de a mari excursia tensiunii de la ieire de la 1.4V la 5V deoarece intrarea analogica a convertorului este cuprinsa intre valorile 0...5V. Amplificarea acestui adaptor trebuie s fie A=Uf/Ui=5/1.4=3.5714 pe fiecare grad Celsius. Amplificarea este: A=(R3+Rv2)/R2 R6R3+Rv2. Pentru R2=10k avem: R3+Rv2=35.714k rezulta ca R3=33K, iar Rv2=5K Se alege R6=36k.

Convertorul analog-digital
Convertorul analog-digital oferit de Atmega128 are urmtoarele caracteristici:

rezoluie de 10 bii precizie de 2 LSB timp de conversie intre 13-260s 8 canale de intrare multiplexate posibilitatea de ajustare stnga a rezultatului din registrul ADC excursia de tensiune 0-VCC moduri "Free-Running" sau conversie unica ntrerupere la terminarea unei conversii

Termometru digital cu microcontroler AT Mega 128

Acesta primete pe intrarea ADC0 o tensiune Vin(0..5V) si este alimentat la Vref=5V. Rezultatul conversiei pentru un nivel de tensiune de 0V este ADC = 0x00 iar pentru 5V 0xFF. Pentru a activa ADC-ul se seteaz bitul ADEN din registrul ADCSRA. Implicit rezultatul va fi aliniat la dreapta (ADCL apoi ADCH). Pentru a ncepe o conversie se seteaz ADSC. Acesta va fi resetat automat la finalizare cnd ADIF = 1. Circuitul prezint un multiplexor de selecie a canalului de intrare ce va fi setat in registrul ADMUX. Ultimii 3 bii din ADCSRA sunt destinai setrii frecventei de eantionare(pre-scale). Circuitul de aproximaii succesive necesita o frecventa intre 50 KHz si 200 KHz iar introducerea unei frecvente mai mari duce la scderea preciziei. In acest caz s-a ales un factor de pre-scale de 32 (ck/32 = 125 KHz).

Afiajul
Se vor folosi 3 afiaje cu leduri de 7 segmente pentru afiarea temperaturii in gama 0 100C. Acestea vor fi alimentate prin 3 tranzistoare npn care au rolul de ntreruptoare polarizate in baza de pinii portului A al microcontrolerului. De asemenea la portul A vor fi conectate 4 leduri ce vor semnala modul de afiare real/setare si comanda de rcire/nclzire. Selecia segmentelor celor 3 digii se va face prin portul B conectnd cele 3 afiaje la o magistral, aceasta avnd avantajul economiei de curent.

Pentru a aprinde un segment, pinul corespunztor al portului B va trece pe nivelul 0. Punctul din colul dreapta jos va fi conectat la pinul cel mai semnificativ al portului, el nefiind folosit.

Descrierea porturilor:
Port A:

PIN0PIN2 comanda tranzistoarelor PIN3 ledul de setare a temperaturii PIN4 ledul de afiare a temperaturii ambiante

Termometru digital cu microcontroler AT Mega 128

PIN5 ledul ce semnaleaz comanda de rcire PIN6 ledul ce semnaleaz comanda de nclzire

Port B:

PIN0PIN7 selecia segmentelor afiajului

Port C:

PIN0 butonul de cretere a temperaturii cu o unitate PIN1 butonul de scdere a temperaturii cu o unitate

Port D:

PIN0 comanda rcirea PIN1 comanda nclzirea

10

Termometru digital cu microcontroler AT Mega 128

Bibliografie :

1. 2. 3. 4. 5.

www.national.com www.atmel.com tet.pub.ro forum.softpedia.com www.datasheet.ro/ATM128-datasheet.shtml

11