Leggi la tesina - ITIS in progress

ITIS G. GALILEI CONEGLIANO
DE MARTIN MARCO
V AART
A. S. 2012/13
1
INDICE
1 - INTRODUZIONE …………………………………………………………………………………………..PAG 3
2 - CIRCUITO PER RILEVAMENTO TEMPERATURA …………………………………………….PAG 3
2.1 - TRASDUTTORE DI TEMPERATURA AD590 …………………………………………………PAG 4
2.2 - AMPLIFICATORE OPERAZIONALE TL082 ……………………………………………………PAG 4
2.3 - STABILIZZATORE DI TENSIONE A 5V LM336 ………………………………………………PAG 5
2.4 - AMPLIFICATORE OPERAZIONALE TL084 ……………………………………………………PAG 5
2.5 - DESCRIZONE FUNZIONAMENTO ……………………………………………………………….PAG 5
2.6 - GRAFICO …………………………………………………………………………………………………..PAG 7
3 - CIRCUITO PER RILEVAMENTO UMIDITÀ ………………………………………………………PAG 8
3.1 - TRASDUTTORE DI UMIDITÀ MK33-W ……………………………………………………….PAG 9
3.2 - ASTABILE CON TIMER NE555 ………………………………………………………………….PAG 10
3.3 - CONVERTITORE f/V CON LM331 …………………………………………………………….PAG 11
4 - CIRCUITO PER LA LETTURA SU DISPLAY LCD ………………………………………………PAG 13
4.1 - DESCRIZIONE DEL PIC …………………………………………………………………………….PAG 13
4.2 - DISPLAYTECH 162b …………………………………………………………………………………PAG 14
4.3 - PROGRAMMA IN MPLAB ………………………………………………………………………..PAG 14
5 - CONCLUSIONI ……………………………………………………………………………………………PAG 21
6 - RINGRAZIAMENTI ……………………………………………………………………………………..PAG 21
7 - BIBLIOGRAFIA E SITOGRAFIA ……………………………………………………………………..PAG21
2
1 - INTRODUZONE
Questo progetto si basa sulla misurazione di due grandezze fisiche: la temperatura ambientale e
l’umidità relativa dell’aria. Per rilevare queste due misure si utilizzano due sensori, o meglio, due
trasduttori: l’AD590 per la temperatura e l’MK33-W per l’umidità. Dopodiché ho ampliato il
progetto aggiungendo la lettura delle varie misure su un display LCD tramite programmazione del
PIC.
Circuito
elettrico per
rilevamenti
della
temperatura
Circuito
elettrico con
PIC e
conseguente
lettura sull’LCD
Circuito
elettrico per
rilevamenti
dell’umidità
Quindi si può capire dallo schema a blocchi qui sopra riportato che il progetto può essere
suddiviso in tre grandi blocchi. A seguire verrà riportata l’analisi di ogni blocco.
2 - CIRCUITO PER RILEVAMENTO TEMPERATURA
Questo è lo schema elettrico per misurare la temperatura ambientale.
15 V
15 V
2
1
3
2
1
3
-
2
R1
8,2 k
R2
5k
-15 V
TL084
R8 10 k
+
R10 10 k
1
R5
10 k
15 V
-15 V
4
15 V
TL082
+
11
CAN
-V
+V
4
3
4
8
AD590
R6
5k
10
8
11
9
TL084
+
15 V
-15 V
15 V
3
8
7
5
R9 10 k
4
R4
20 k
15 V
-15 V
3
-15 V
TL084
7
4
LM336-5.0V
+
6
+
2
6
TL082
-
5
1
R7
10 k
11
R3
5,6 k
R11 10 k
Trasduttore
di
temperatura
AD590
Tensione di
riferimento
con LM3365.0
Amplificatore
operazionale
TL082
Amplificatore
per
strumentazione
TL084
Amplificatore
operazionale
TL082
Vout
2.1 - Trasduttore di temperatura AD590
L’AD590 è un trasduttore che viene utilizzato per rilevare la
temperatura ambientale trasformando una grandezza fisica in una
grandezza elettrica. Si comporta come un generatore di corrente
ad alta impedenza; la corrente generata è proporzionale alla
temperatura assoluta:
I = k*T
con T in Kelvin
con la costante di proporzionalità k che ha valore nominale di 1
µA/K.
Il range di temperatura va da -55 °C (218 K) a +150 °C (423 K), con una tensione di alimentazione
fra 4 e 30 V.
Il funzionamento in corrente presenta il vantaggio di rendere il sistema di misura insensibile a
cadute di tensione. La velocità di risposta del trasduttore è piuttosto alta: per raggiungere
l’equilibrio termico dopo una variazione di temperatura servono circa 3 costanti di tempo (la
costante termica è il tempo impiegato per adeguarsi al 63% del salto di temperatura ambientale).
Per trasformare la corrente d’uscita del trasduttore in tensione si fa cadere la corrente su una
resistenza (in questo caso su una resistenza fissa di 8,2 kΩ e in serie una resistenza variabile di 5
kΩ. La somma della serie risulta di 10 kΩ).
2.2 - Amplificatore operazionale TL082
L’amplificatore operazionale TL082 viene utilizzato
come inseguitore di tensione (voltage follower) e
presenta la particolarità di possedere una resistenza di
ingresso infinita e una resistenza di uscita nulla e un
guadagno unitario. Questo circuito è capace di
trasferire la tensione di ingresso in uscita senza
variarla, ma con la possibilità di lavorare con una
corrente superiore a quella possibile in ingresso. Si dice
anche che è un circuito buffer. L’uso dell’inseguitore di
tensione è tipico di tutte quelle situazioni dove
4
l’amplificazione del segnale non è richiesta come in questo caso. In questo circuito si poteva
evitare di usare due inseguitori perché è presente una amplificatore di strumentazione che
presenta resistenze di ingresso elevate.
2.3 - Stabilizzatore di tensione a 5V LM336
L’LM336 è uno stabilizzatore di tensione che viene usato per generare
tensioni di riferimento VREF. A monte di esso deve essere inserita una
resistenza da 5,6 kΩ per evitare che l’integrato si bruci; a valle viene
montato un potenziometro da 20 kΩ per regolare la VREF. Esso ha 3 piedini:
il primo, chiamato ADJ, serve per aggiustare la VREF e viene collegato con il
piedino centrale del potenziometro; il secondo, indicato con +, viene
collegato verso VCC; il terzo, indicato con -, viene collegato a massa.
1
2
3
2.4 - Amplificatore operazionale TL084
Il TL084 viene utilizzato come amplificatore per
strumentazione. Questo tipo di amplificatore viene
molto usato nei circuiti in cui si ha a che fare con i
trasduttori perché è molto più preciso
dell’amplificatore differenziale siccome ha resistenze
d’ingresso infinite e quindi le possibili resistenze in
serie non influiscono nel risultato finale. In questo caso
si mettono sei resistenze da 10 kΩ e un potenziometro
da 5 kΩ per regolare il guadagno (mentre nel
differenziale per variare il guadagno si devono
cambiare due resistenze). Il guadagno Av risulta essere:
Av = 1 +
2R
Rg
2.5 - Descrizione funzionamento
Il range di temperatura da misurare va da -20°C a 50°C cioè da 253°K a 323°K. Il trasduttore AD590
fornisce una corrente che segue la legge:
I = 1 µA x T[°K]
per cui, dai calcoli risulta:
µA
µA
IMAX = 1
x TMAX = 1
x 323°K = 323 µA
°K
IMIN = 1
µA
°K
°K
x TMIN = 1
µA
°K
x 253°K = 253 µA
5
Per convertire la corrente in una tensione si usa una resistenza che viene attraversata dalla
corrente stessa ai cui capi si può misurare la tensione. Se la resistenza è di 10 kΩ risulta:
VTRMAX = IMAX x R = 323 µA x 10 kΩ = 3,23 V
VTRMIN = IMIN x R = 253 µA x 10 kΩ = 2,53 V
Per eliminare la tolleranza dei resistori si sono utilizzati una resistenza da 8,2 kΩ e un trimmer da 5
kΩ.
A valle di questo circuito è stato inserito un inseguitore di tensione per evitare che il circuito
precedente venga caricato (il carico non deve assorbire corrente) e quindi perda la propria
caratteristica. La tensione di uscita dall’inseguitore va all’ingresso non invertente di un
amplificatore per strumentazione allo scopo di eliminare l’offset. Questo particolare circuito deve
fornire in uscita una tensione che varia da 0 V quando T=253°K a 5 V quando T=323°K. Da ciò si
deduce che bisogna sottrarre una tensione di 2,53 V alla tensione proveniente dal trasduttore. Per
generare questa tensione si deve prima di tutto stabilizzare una tensione di 5 V con l’integrato
LM335-5.0 a cui va collegato a valle un trimmer da 20 kΩ utilizzato per regolare la tensione di
riferimento a 2,53 V. Anche in questo caso va inserito nel circuito un inseguitore di tensione per
evitare che il trimmer venga caricato. La tensione di riferimento deve essere sottratta e quindi va
portata all’ingresso invertente dell’amplificatore per strumentazione. Ora la tensione, a cui è stato
eliminato l’offset, da 0 V a 0,7 V.
VMIN = VTRMIN - VRIF = 2,53 V – 2,53 V = 0 V
VMAX = VTRMAX - VRIF = 3,23 V – 2,53 V = 0,7 V
Per portare la tensione corrispondente alla temperatura massima al livello desiderato (5 V),
occorre amplificarla:
Av =
∆VOUT
∆VIN
= 5 V = 7,15
0,7 V
La resistenza Rg deve essere uguale a:
2R
20 kΩ
Rg =
=
= 3,28 kΩ
Av – 1
6,15
Per ottenere una simile resistenza si usa un trimmer da 5 kΩ.
6
2.6 - Grafico
Nel grafico è rappresentata la retta corrispondente alla tensione d’uscita in funzione della
temperatura.
6
5
4
VOUT [V]
3
2
1
0
-30
-20
-10
0
-1
10
20
30
40
T [°C]
 CALCOLO COEFFICIENTE ANGOLARE DELLA RETTA
m=
∆y
∆x
=
∆VOUT
∆T
=
5V
70 °C
= 0,0714 [V/°C]
 CALCOLO DI VOUT 0 °C
VOUT(-20°C) = 0,0714 V/°C x (-20) °C + VOUT(0°C)
VOUT(0°C) = 0 V + 0,0714 V/°C x 20 °C = 1,428 V
 CALCOLO DI VOUT A 50 °C
VOUT(50°C) = 0,0714 V/°C x 50 °C + 1,428 V = 3,57 V + 1,428 V = 5 V
7
50
60
3 - CIRCUITO PER RILEVAMENTO UMIDITÀ
Questo è lo schema elettrico per misurare l’umidità relativa dell’aria.
15 V
TP1
15 V
15 V
TEST POINT
1
R4
10 k
R7
6,8 k
R6
68 k
C4
C3
NE555
R8
10 k
7
2
5
R3
120 k
1
R9 10 k
10 nF
3
IOUT
15 V
IN
VCC
U1
FRQOUT
8
470 pF
REF
R/C
C2
10 nF
3
6
220 k
R2
CV
RST
THR
TRG
OUT
THRS
5
4
6
2
DSCHG
8
7
VS
R1
10 k
R5
10 k
LM331
U2
C1
TRASDUTTORE
-15 V
11
1
TL084
+
9
-
C5
3,3 uF
U3
8
10 k
R16
10 k
R17
R13
10 k
4
8
R10
47 k
10
15 V
15 V
U5
4
8
15 V
11
1
5
+
R11
RESISTOR
-
6
R14
10 k
-15 V
R15
10 k
1
4
8
2
R12
10 k
2
11
1
3
+
3
-
LM336-5.0V U6
15 V
-15 V
8
1
TL084
U4
10 k
R18
R19
10 k
TL084
7
Trasduttore
di umidità
MK33-W
Convertitore
f/V con
LM331
Astabile con
NE555
Tensione di
riferimento
con LM3365.0
Amplificatore
per
strumentazione
TL084
Vout
Il trasduttore è un condensatore che varia la sua capacità in funzione dell’umidità, esso viene
collegato ad un NE555 in configurazione astabile che produce un’onda quadra con frequenza
inversamente proporzionale al valore della capacità e quindi dell’umidità. Tale frequenza viene
convertita in un valore di tensione ad essa proporzionale da un convertitore f/V LM331. Per
adattare questa tensione al range d’uscita (0-5 V) l’amplificatore per strumentazione elimina
l’offset e amplifica il segnale.
3.1 - Trasduttore di umidità MK33-W
Capacità [pF]
Questo trasduttore sfrutta la dipendenza della costante dielettrica dei
materiali plastici o ceramici all’umidità. Quindi, variando la costante
dielettrica varia la capacità del condensatore che è legata all’umidità. La
capacità del condensatore varia anche al variare della frequenza di utilizzo.
Qui sotto è riportato il grafico in cui la percentuale di umidità dipende dalla
capacità del trasduttore.
Umidità relativa
[%]
9
3.2 - Astabile con Timer NE555
Il Timer 555 viene utilizzato come
multivibratore astabile e al suo interno
è composto di:



tre resistenze da 5 kΩ (dalle
quali deriva il nome
dell’integrato) collegate in serie
in modo da realizzare un
triplice partitore utilizzato per
generare due tensioni di
riferimento pari a ⅓Vcc e ⅔Vcc;
due comparatori semplici che
comparano le tensioni di
riferimento (⅓Vcc e ⅔Vcc) rispettivamente con le tensioni di ingresso nel trigger (2) e nel
threshold (6);
un flip-flop SR che genera l’onda rettangolare di uscita e pilota il BJT che scarica il
condensatore. Il segnale d’uscita si ottiene dopo che l’uscita negata del latch è stata
invertita da una NOT.
La tabella della verità di un flip-flop SR è la seguente:
S
0
0
1
1

R
0
1
0
1
Q (uscita)
Memorizza
0
1
Non valida
Q (negata)
Memorizza
1
0
Non valida
un BJT utilizzato per scaricare il condensatore: il collettore è collegato al piedino Discharge
(7), la base è collegata all’uscita negata del flip-flop SR e l’emettitore a massa.
Supponiamo il condensatore inizialmente scarico: all’ingresso invertente del comparatore
inferiore (B) è quindi presente una tensione inferiore a quella di riferimento di ⅓Vcc;
analogamente, all’ingresso non invertente del comparatore superiore (A) è presente una
tensione inferiore a quella di riferimento di ⅔Vcc. In queste condizioni si ha S = 1 ed R = 0 e
quindi Q = 0. Pertanto la base del BJT è a livello basso, esso non conduce e C si carica
attraverso (RA + RB). Appena viene raggiunta da C la tensione di ⅔Vcc, il comparatore A impone
R = 1 e, poiché il passaggio di S a zero è già avvenuto quando la tensione su C ha raggiunto
⅓Vcc, il flip-flop commuta e Q = 1. In queste condizioni il BJT diventa un cortocircuito e C si
scarica su RB; raggiunta la tensione di ⅓Vcc il flip-flop ricommuta e C torna a ricaricarsi.
Il tempo di carica del condensatore t1 si calcola con la seguente formula:
t1 = 0,693 x (RA + RB) x C
mentre il tempo di scarica del condensatore t2 è:
t2 = 0,693 x RB x C
10
Dalle formule si nota che t1>t2 quindi la forma d'onda avrà sempre un duty cycle maggiore del
50% per cui le onde di uscita non sono mai quadre, in pratica ponendo R A << RB il duty cycle si
avvicina molto al 50% quindi in prima approssimazione le onde si potrebbero ritenere quadre.
Facendo la somma di t1 e t2 si ottiene il periodo T dell’onda quadra del segnale in uscita:
T = t1 + t2 = 0,693 x (RA + 2RB) x C
e quindi la frequenza di uscita sarà:
f= 1 =
1,44
T
(RA + 2RB) x C
Sotto viene riportata l’onda quadra visualizzata attraverso l’oscilloscopio all’uscita dell’NE555
(TESTPOINT).
11
3.3 - Convertitore f/V con LM331
L’LM331 viene usato per la conversione di
precisione di tipo frequenza/tensione,
modulatore e demodulatore lineare di
frequenza e molte altre funzioni. Il principio su
cui è basato il convertitore è il seguente: il
segnale periodico di ingresso viene squadrato
dal comparatore e usato come segnale di
trigger del monostabile. Gli impulsi in uscita dal
monostabile di durata td comandano
l’apertura/chiusura dell’interruttore; si ottiene
così in ingresso all’integratore un treno di
impulsi di frequenza pari alla frequenza vs e
durata td. L’integratore, che è un passa-basso, elimina la componente alternata e preleva la
componente continua (che corrisponde al valore medio della tensione ai capi di C). Se a questo
punto si osserva che la corrente impulsiva i in ingresso all’integratore ha un valore medio:
Im = I
td
= I x td x f
T
e che a questa corrente media corrisponde una tensione media in uscita pari a –R x Im, si deduce
che la v0 presenta un’ampiezza direttamente proporzionale alla frequenza di vs:
V0m = -Im x R = -Im x td x R x f
12
4 - CIRCUITO PER LA LETTURA SU DISPLAY LCD
Questo è lo schema elettrico per la lettura sul display LCD.
5V
R1
10 k
SW1
MMBT2222A 2
R4
4,7 k
R2
1
1
10
9
8
7
6
5
4
3
2
40
39
38
37
36
35
34
33
MCLR
RC7
RC6
RC5
RC4
RC3
RC2
RC1
RC0
RE2
RE1
RE0
RD7
RD6
RD5
RD4
RD3
RD2
RD1
RD0
RA5
RA4
RA3
RA2
RA1
RA0
RB7
RB6
RB5
RB4
RB3
RB2
RB1
RB0
OSC1
OSC2
26
25
24
23
18
17
16
15
R3
2,2 k
Q1
3
Display tech 162B
8
7
6
5
4
3
3
E
R/W
RS
VEE
VCC
GND
GND
LCD
C1
1 uF
470 ohm
5V
DB0
DB1
DB2
DB3
DB4
DB5
DB6
DB7
30
29
28
27
22
21
20
19
13
14
5V
11
32
VDD
VDD
C2
1 uF
VSS
VSS
31
12
PIC18F4520
4.1 - Descrizione del PIC
Il PIC18F4520 è un microcontrollore che viene programmato con il PC attraverso un programma:
MPLAB.
Qui sotto vengono riportati i principali pin del PIC utilizzati in questa esperienza:
NOME PIN
NUMERO
PIN
MCLR/Vpp
1
RA0
2
VDD
11 – 32
VSS
12 – 31
DESCRIZIONE PIN
Ingresso di reset (attivo basso)/ingresso per la tensione di
programmazione
Linea digitale di IO: dove arriva la tensione di uscita dell’amplificatore
per strumentazione del circuito per il rilevamento della temperatura
Alimentazione positiva (MAX 5 V): si mette un condensatore
elettrolitico da 1µF che filtra verso massa gli eventuali disturbi sulla
linea di alimentazione
GND (massa)
13
9
10
11
12
13
14
15
16
OSC1 – OSC2
13 - 14
RD0, RD1,
RD2, RD3,
RD4, RD5,
RD6, RD7
Ingresso – uscita oscillatore al quarzo: in questo caso non serve perché
l’oscillazione è stata impostata nel programma
19 – 20 –
21 – 22 –
Linea digitale di IO: sono le uscite che vengono collegate al display LCD
27 – 28 –
29 – 30
4.2 - DISPLAYTECH 162b
Il DISPLAYTECH 162b è un LCD a due righe su cui viene mostrata la misura della temperatura in °C
rilevata con il trasduttore AD590. I pin utilizzati sono:







3 = GND (massa);
4 = collegato all’alimentazione positiva (5 V);
5 = collegato al pin centrale del trimmer per regolare il contrasto;
6 = register select;
7 = read/write;
8 = enable;
13  16 = ingressi dell’LCD collegati con le uscite del PIC.
4.3 – Programma in MPLAB
Ora viene riportato il programma per la lettura della temperatura sull’LCD.
/*
Microcontrollore: P18F4520
Oscillator:
HS, 04.0000 MHz
Ext. Modules:
LCD 2x16
Acquisizione tensione analogica su RA0
Visualizzazione su display
*/
#include <p18cxxx.h>
#include <stdio.h>
#include <xlcd.h>
#include <timers.h>
#include <delays.h>
#include <adc.h>
14
#define LED
LATBbits.LATB1
char stringa1[17];
char stringa2[17];
unsigned char ADCH,Cen,Dec,Uni;
unsigned char i;
void ScriviStringaXLCD(char *buffer)
{
while(*buffer)
// Scrive dati su LCD fino al null
{
DelayFor18TCY();
WriteDataXLCD(*buffer); // Scrive un carattere su LCD
buffer++;
// Incrementa buffer
}
return;
}
void DelayFor18TCY( void )
{
unsigned char i;
for(i=0;i<19;i++)
Nop();
}
void DelayPORXLCD( void )
{
Delay1KTCYx(120); //Delay of 15ms
15
return;
}
void DelayXLCD( void )
{
Delay1KTCYx(40); //Delay of 5ms
return;
}
void main(void) {
int convers;
int temperatura;
// Inizializza LCD
// 4 bit di dato (RD4-RD7)
OSCCON=0X70;
LATB = 0x00;
TRISB = 0b11111101;
//accende il diplay bit 7 di PORTD
TRISDbits.TRISD7=0;
//bit 7 della PORTD come uscita
LATDbits.LATD7=1;
//imposta a 1 il valore del bit7
TRISAbits.TRISA1=1;
//bit 1 della PORTA come ingresso
TRISAbits.TRISA5=1;
//bit 1 della PORTA come ingresso
TRISCbits.TRISC0=0;
//bit 0 della PORTC come uscita
TRISCbits.TRISC1=0;
//bit 1 della PORTC come uscita
TRISCbits.TRISC2=0;
//bit 2 della PORTC come uscita
16
//
TRISCbits.TRISC3=0;
//bit 3 della PORTC come uscita
TRISCbits.TRISC4=0;
//bit 4 della PORTC come uscita
TRISCbits.TRISC5=0;
//bit 5 della PORTC come uscita
TRISEbits.TRISE1=0;
//bit 1 della PORTE come uscita
LATCbits.LATC0=1;
//imposta a 1 il valore del bit7
LATEbits.LATE1=0;
OpenXLCD( FOUR_BIT & LINES_5X7 );
while(BusyXLCD());
WriteCmdXLCD(BLINK_OFF);
while(BusyXLCD());
//indirizzi memoria dati display
//prima riga DDRAM
0x80
//seconda riga DDRAM 0Xc0
SetDDRamAddr(0x80);
//si posiziona all’inizio della 1° riga
Delay10KTCYx(100);
//attesa per osservare il risultato
//ScriviStringaXLCD(stringa1);
//scrive la stringa
//Delay10KTCYx(200);
//attesa per osservare il risultato
//cancella il display
WriteCmdXLCD(0x01);
Delay10KTCYx(100);
/*
stringa1[0]=’P’;
stringa1[1]=’r’;
17
stringa1[2]=’i’;
stringa1[3]=’m’;
stringa1[4]=’a’;
stringa1[5]=’ ‘;
stringa1[6]=’R’;
stringa1[7]=’i’;
stringa1[8]=’g’;
stringa1[9]=’a’;
stringa1[10]=’\0’;
//carattere terminatore
//prima riga DDRAM
SetDDRamAddr(0x80);
Delay10KTCYx(100);
ScriviStringaXLCD(stringa1);
*/
//Configurazione ADC
TRISAbits.TRISA0 = 1;
//RA0 ingresso
ADCON0 = 0x01;
//00000001 Canale 0, A/D ON
ADCON1 = 0x0E;
//11001110 AN0 = Analogico
ADCON2 = 0x2A;
//00000001 SX, 12TAD, Fosc/32
//cancella il display
WriteCmdXLCD(0x01);
Delay10KTCYx(100);
while(1){
18
LED=LED^1;
Delay10KTCYx(50);
ADCON0bits.GO = 1;
while(ADCON0bits.DONE == 1);
//Avvio conversione
//Attende fine
ADCH = ADRESH;
if (ADCH > 72)
{
convers = (ADCH /3.6)-20;
}
else
{
//
convers = 255-(ADCH /3.6)-37; }
Calcolo cifre conversione
temperatura = convers;
Cen = convers/100;
convers = convers-Cen*100;
Dec = convers/10;
convers = convers-Dec*10;
Uni = convers;
if (ADCH <= 72)
{
stringa1[0]=’T’;
stringa1[1]=’e’;
stringa1[2]=’m’;
stringa1[3]=’p’;
stringa1[4]=’e’;
stringa1[5]=’r’;
stringa1[6]=’a’;
19
stringa1[7]=’t’;
stringa1[8]=’.’;
stringa1[9]=’=’;
stringa1[10]=’-‘;
//carattere terminatore
stringa1[11]=Dec+48;
//carattere terminatore
stringa1[12]=Uni+48;
stringa1[13]=(223);
stringa1[14]=’C’;
stringa1[15]=’ ‘;
//carattere terminatore
//prima riga DDRAM
SetDDRamAddr(0x80);
Delay10KTCYx(1);
ScriviStringaXLCD(stringa1);
}
if (ADCH > 72)
{
stringa1[0]=’T’;
stringa1[1]=’e’;
stringa1[2]=’m’;
stringa1[3]=’p’;
stringa1[4]=’e’;
stringa1[5]=’r’;
stringa1[6]=’a’;
stringa1[7]=’t’;
stringa1[8]=’.’;
stringa1[9]=’=’;
stringa1[10]=’ ‘;
//carattere terminatore
stringa1[11]=Dec+48;
//carattere terminatore
20
stringa1[12]=Uni+48;
stringa1[13]=(223);
stringa1[14]=’C’;
stringa1[15]=’ ‘;
//carattere terminatore
//prima riga DDRAM
SetDDRamAddr(0x80);
Delay10KTCYx(1);
ScriviStringaXLCD(stringa1);
}
}
}
5 - CONCLUSIONI
Il circuito funziona in gran parte anche se gli obbiettivi iniziali preposti non sono stati ottenuti. La
lettura della temperatura sull’LCD non è perfetta perché il trasduttore è poco stabile e per
migliorare ho inserito all’uscita dell’amplificatore per strumentazione un condensatore da 470nF
collegato a massa; invece la lettura dell’umidità sull’LCD non è visibile in quanto il sensore
installato è di difficile taratura e la scelta dello stesso non è quella ottimale per questo circuito.
6 - RINGRAZIAMENTI
Alla fine di questa esperienza scolastica il mio pensiero corre a ringraziare per la loro dedizione e
sopportazione, per la loro professionalità e paziente comprensione, prof RIGATO JOE e prof
CIRILLO RICCARDO. A loro va il mio cordiale ringraziamento, auspicando che possano continuare a
lungo nella loro opera di insegnamento con sempre l’entusiasmo che li contraddistingue.
7 - Bibliografia e sitografia


Wikipedia, www.datasheet.it;
L’elettronica - Applicazioni
21