Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Termistore NTC

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utentecarloc, Foto UtenteDirtyDeeds, Foto UtenteIsidoroKZ, Foto Utenteg.schgor, Foto UtenteBrunoValente

0
voti

[21] Re: Termistore NTC

Messaggioda Foto UtenteIsidoroKZ » 23 dic 2009, 15:50

Galaxi93 ha scritto: dato che la tensione in uscita da un partitore di tensione è Vout=Vin*(R1/(R1+R2)) e avendo come Vin 5 volt, so che a determinati valori di tensione (valori fissi che inserisco nel PIC sotto forma di numeri a 10bit) corrispondono determinati valori di temperatura. Per i valori intermedi, li calcolo linearmente (tipo linearizzazione a tratti). E' la strada giusta?
Anche perché non saprei come scrivere la formula per calcolare il coefficiente B in C!!


L'idea va bene, seguono alcuni commenti.

Di solito i convertitori dei microcontrollori sono raziometrici, quindi non devi preoccuparti dei 5V di alimentazione. Il numero che leggi, ad esempio su 10 bit, pensato con una virgola a sinistra 0.b1b2b3b4b5b6b7.... oppure pensato come numero intero diviso per 1024 ti da` direttamente il rapporto di partizione del partitore R_NTC. In questo modo non devi stare a preoccuparti della precisione e stabilta` della tensione che alimenta il partitore.

Puoi fare una tabella precalcolata e usare una interpolazione lineare li` in mezzo, oppure puoi usare una interpolazione parabolica: vengono meno intervalli e meno coefficienti ma i conti sono leggermente piu` complicati. Puoi andare avanti con una interpolazione cubica, hai meno intervalli ma una funzione piu` complicata da calcolare

Oppure, se hai a disposizione la possibilita` di calcolare i logaritmi, perche' ad esempio scrivi in C e hai la libreria matematica linkata, e conosci il valore B dell'NTC, puoi scrivere direttamente la funzione analitica che passa dal valore di partizione alla temperatura, e la calcoli direttamente.
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
104,0k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 18479
Iscritto il: 17 ott 2009, 0:00

0
voti

[22] Re: Termistore NTC

Messaggioda Foto UtenteGalaxi93 » 23 dic 2009, 16:18

Ciao Isidoro,

per il fatto della tensione e la ripartizione del partitore ok, io (con exel) mi sono fatto alcune prove e ho diviso il valore di tensione per la milleventiquatresima parte di 5V ( Vout/(Vin/1024) ).

Poi parli di interpolazione parabolica e cubica, e qui già mi perdo. Cosa intendi dire?

E infine, l'ideale sarebbe scrivere la formula per intero e fargliela calcolare in tempo reale (memoria permettendo) solo che non so come si fa! (quel numero di nepero che mi manda fuori!).

Servirebbe l'aiuto di Paolino!! :roll:

Ciao,
Galaxi93.

Visita il mio sito!! E' ancora in costruzione, ma anche tu puoi contribuire a farlo crescere e darmi dei consigli per migliorarlo! Dai prova, provare non costa nulla! Vieni!
Avatar utente
Foto UtenteGalaxi93
3.094 3 7 13
Master
Master
 
Messaggi: 617
Iscritto il: 15 apr 2009, 16:27

0
voti

[23] Re: Termistore NTC

Messaggioda Foto UtenteGalaxi93 » 24 dic 2009, 15:09

Per il fatto di scrivere la formula in C, ho risolto: su mikroC PRO c'è la libreria math...

Ora il mio problema è un altro! Come faccio a calcolare la resistenza della NTC (che mi serve per calcolare la temperatura) se a disposizione ho la tensione e il valore della resistenza fissa (solito partitore di tensione)??

E poi avevo in mente un'idea per aumentare la risoluzione di acquisizione del PIC ma... la dico dopo perché è un po' strana... :roll:

Saluti,
Galaxi93.

Visita il mio sito!! E' ancora in costruzione, ma anche tu puoi contribuire a farlo crescere e darmi dei consigli per migliorarlo! Dai prova, provare non costa nulla! Vieni!
Avatar utente
Foto UtenteGalaxi93
3.094 3 7 13
Master
Master
 
Messaggi: 617
Iscritto il: 15 apr 2009, 16:27

0
voti

[24] Re: Termistore NTC

Messaggioda Foto UtenteIsidoroKZ » 24 dic 2009, 16:33

SE il convertitore del PIC e` raziometrico, non ti serve il valore della tensione.

Il valore della resistenza dell'ntc, data la lettura N, numero intero su 10 bit e la resistenza R del paritore vale R_{\text{ntc}}=R\,\frac{N}{1024-N}. Questo supponento R collegata all'alimentazione e l'NTC al riferimento. Se sono scambiate, basta prendere il reciproco della frazione.

Che scuola fai/hai fatto?
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
104,0k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 18479
Iscritto il: 17 ott 2009, 0:00

0
voti

[25] Re: Termistore NTC

Messaggioda Foto UtenteIsidoroKZ » 24 dic 2009, 16:44

Galaxi93 ha scritto:
Poi parli di interpolazione parabolica e cubica, e qui già mi perdo. Cosa intendi dire?


Con l'interpolazione lineare vuol dire che tutto il range di valori che escono dall'AD lo suddividi in intervalli, e in ogni intervallo c'e` una coppia di numeri che permette di fare l'interpolazione, che ha sempre la stessa espressione: T=a_k\cdot N+b_k.
In pratica leggi il numero N dal convertitore, guardi qual e` l'intervallo in cui cade questo numero. Ad esempio potresti avere da 0 a 55 il primo intervallo da 56 a 111 il secondo, da 112 a 177 il terzo, e cosi` via. Per ognuno di questi intervalli ci sono i coefficienti a e b, li leggi ed esegui l'interpolazione.

Interpolazione quadratica o cubica vuol dire che la formula per trovare la temperatura diventa T=a_k \cdot N^2 + b_k \cdot N+c_k oppure per quella cubica T=a_k \cdot N^3 + b_k \cdot N^2+c_k \cdot N + d_k. Per ognuno dei tre intervalli hai tre coefficienti a b e c se usi l'interpolazione quadratica, oppure 4, a b c e d se usi quella cubica. Il vantaggio delle interpolazioni di ordine alto e` che servono meno intervalli per avere comunque la stessa precisione.
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
104,0k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 18479
Iscritto il: 17 ott 2009, 0:00

0
voti

[26] Re: Termistore NTC

Messaggioda Foto UtenteGalaxi93 » 24 dic 2009, 20:08

IsidoroKZ ha scritto:Il valore della resistenza dell'ntc, data la lettura N, numero intero su 10 bit e la resistenza R del paritore vale . Questo supponento R collegata all'alimentazione e l'NTC al riferimento. Se sono scambiate, basta prendere il reciproco della frazione.


E' vero! Che stupido, bastava ragionarci un po' su... Grazie Isidoro.

IsidoroKZ ha scritto:Che scuola fai/hai fatto?


Come mai questa domanda? Comunque faccio un liceo scientifico tecnologico e sono al secondo anno.

Mentre per quello che riguarda l'interpolazione, si tutto chiaro, ma visto che posso, preferisco calcolare il valore direttamente.
Più tardi provo a scrivere qualche riga e vedo cosa succede.

Ah! quasi dimenticavo #-o , Buon Natale!!!
Ciao,
Galaxi93.

Visita il mio sito!! E' ancora in costruzione, ma anche tu puoi contribuire a farlo crescere e darmi dei consigli per migliorarlo! Dai prova, provare non costa nulla! Vieni!
Avatar utente
Foto UtenteGalaxi93
3.094 3 7 13
Master
Master
 
Messaggi: 617
Iscritto il: 15 apr 2009, 16:27

1
voti

[27] Re: Termistore NTC

Messaggioda Foto UtenteIsidoroKZ » 24 dic 2009, 21:06

Galaxi93 ha scritto:
IsidoroKZ ha scritto:Che scuola fai/hai fatto?


Come mai questa domanda? Comunque faccio un liceo scientifico tecnologico e sono al secondo anno.


Perche' al posto di darti la formula per trovare Rntc potevo dirti che il rapporto di partizione vale alpha=R/(R+Rntc) e ti potevo chiedere di trovare Rntc da questa complicata :) equazione di primo grado! Fatta una volta, ci si ricorda come fare per sempre. Da notare che non ricordavo la formula a memoria, l'ho ricavata per l'ennesima volta :)

Se devo spiegarti le interpolazioni so che non devo usare le derivati o i nodi di lagrange :)
Galaxi93 ha scritto:Mentre per quello che riguarda l'interpolazione, si tutto chiaro, ma visto che posso, preferisco calcolare il valore direttamente.


Ci sono pro e contro fra interpolare e calcolare il valore direttamente. Se interpoli fra punti che hai effettivamente misurato, cioe` fra punti calibrati, potresti ottenere una precisione migliore rispetto al fare il conto con l'ntc ideale.
Se poi hai ricavato da misure il valore di B e di R a 25 (pallino)C, allora va meglio, hai una identificazione migliore dell'ntc.

Tieni presente che l'equazione che ti e` stata data dell'ntc e` un modello, ha ancora qualche errorino. Ci sono modelli migliori, ad esempio quello cubico, di Steinhart Hart, oppure quelli di Hoge.

Mi e` capitato una volta di dover usare la relazione standard, e poi trovare una funzione per correggere gli errori residui. Ma e` una situazione anomala :)
Galaxi93 ha scritto:Ah! quasi dimenticavo #-o , Buon Natale!!!


Tibi quoque!
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
104,0k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 18479
Iscritto il: 17 ott 2009, 0:00

0
voti

[28] Re: Termistore NTC

Messaggioda Foto Utentecdileo » 10 feb 2010, 0:39

Ciao a tutti vorrei riaprire il post xche' mi trovo nella stessa situazione.
vengo subito al sodo, ho creato un partitore con una resistenza da 500 ohm e il mio NTC (2500 ohm a 20°C)verso massa, ho provato a simulare il tutto con proteus, ma i problemi che ho sono 2, il primo e' il dimensionamento della resistenza del partitore, e la seconda e' che non mi e' chiaro come impostare il software sul PIC, xche' all'aumentare della temperatura diminuisce la resistenza dell'NTC e di conseguenza anche la tensione del partitore. L'ADC del PIC mi legge la tensione del partitore e va proprio al contrario cioe' all'aumentare della temperatura ottengo un valore basso di tensione.
Ripeto che per ora sto solo simulando x ottimizzare i tempi, alla fine vorrei ottenere un termometro per controllare la temperatura dell'olio di un'automobile.
Avatar utente
Foto Utentecdileo
0 2
 
Messaggi: 19
Iscritto il: 29 dic 2009, 17:21

0
voti

[29] Re: Termistore NTC

Messaggioda Foto UtenteGalaxi93 » 10 feb 2010, 15:25

Ciao cdileo,

allora, per calcolare la resistenza dell'NTC, devi usare la formula che ha postato IsidoroKZ:

IsidoroKZ ha scritto:Il valore della resistenza dell'ntc, data la lettura N, numero intero su 10 bit e la resistenza R del paritore vale R_{\text{ntc}}=R\,\frac{N}{1024-N}. Questo supponento R collegata all'alimentazione e l'NTC al riferimento. Se sono scambiate, basta prendere il reciproco della frazione.


Per il resto, le formule le trovi sempre in questa discussione.

Ciao,
Galaxi93.

Visita il mio sito!! E' ancora in costruzione, ma anche tu puoi contribuire a farlo crescere e darmi dei consigli per migliorarlo! Dai prova, provare non costa nulla! Vieni!
Avatar utente
Foto UtenteGalaxi93
3.094 3 7 13
Master
Master
 
Messaggi: 617
Iscritto il: 15 apr 2009, 16:27

0
voti

[30] Re: Termistore NTC

Messaggioda Foto Utentecdileo » 10 feb 2010, 16:51

Galaxy, io conosco la resistenza dell'NTC in funzione della temperatura, ma il mio problema e' l'ADC del PIC che incrementa il valore all'aumentare della tensione. Il partitore da me costruito diminuisce la tensione all'aumentare della temperatura quindi quello che mi manca e' il modo di linearizzare e invertire la lettura dell'ADC.
con excel data la curva tensione-temperatura dell NTC stavo facendo delle prove spannometriche e ho notato che inserendo una formula tipo -0,08*LN(valore letto dall'ADC^32)+18 ottengo una curva opposta come si vede nell'immagine, il tutto si avvicina molto a quello che dovrei fare, ma e' troppo spannometrico vorrei capire se c'e' una relazione di correzione a tutto cio'...
Dimenticavo che uso MikroC per programmare.

Immagine

Immagine
Avatar utente
Foto Utentecdileo
0 2
 
Messaggi: 19
Iscritto il: 29 dic 2009, 17:21

PrecedenteProssimo

Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Google [Bot] e 38 ospiti