Pages: 1 2 3 [4] 5 6 ... 17   Go Down
Author Topic: Sensore di temperatura collegato con 10m di filo  (Read 16995 times)
0 Members and 1 Guest are viewing this topic.
Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22800
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ora correggi la "correzione" e cerca di approssimare il valore a 0°C quando il sensore è appoggiato al cubetto di ghiaccio
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12573
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

No aspetta Leo, lo scopo di questa misura era quello di verificare che il sensore stesse funzionando....
Da quel che capisco leggendo il datasheet, sempre che lui abbia applicato la famosa figura 8 che gli consigliavo, dovrebbe avere un range da -5°C e +40°C, con 10mV/°C; per cui penso che a 0°C dovrebbe avere 50mV, ma sempre nella figura c'è la dicitura "Tambient + 10°C", quindi effettivamente dovremmo arrivare a 150mV a 0°C, però vedo una variazione enorme, considerando che dovremmo essere a temperatura costante.....
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Torino (ITA)
Offline Offline
Full Member
***
Karma: 1
Posts: 161
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

No aspetta Leo, lo scopo di questa misura era quello di verificare che il sensore stesse funzionando....
Da quel che capisco leggendo il datasheet, sempre che lui abbia applicato la famosa figura 8 che gli consigliavo, dovrebbe avere un range da -5°C e +40°C, con 10mV/°C; per cui penso che a 0°C dovrebbe avere 50mV, ma sempre nella figura c'è la dicitura "Tambient + 10°C", quindi effettivamente dovremmo arrivare a 150mV a 0°C, però vedo una variazione enorme, considerando che dovremmo essere a temperatura costante.....
Ora correggi la "correzione" e cerca di approssimare il valore a 0°C quando il sensore è appoggiato al cubetto di ghiaccio
quindi ora che devo fare??michele io ho riprodotto la figura 8. e messo una foto per avere maggiore sicurezza  di quello che ho fatto.
ragazzi siccome non ho niente da fare ho messo il sensore nel congelatore e dopo un pò ho avuto questi valori
Code:
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
9.78
 millivolts --> -49.02 °C
14.66
 millivolts --> -48.53 °C
14.66
 millivolts --> -48.53 °C
9.78
 millivolts --> -49.02 °C
14.66
 millivolts --> -48.53 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
4.89
 millivolts --> -49.51 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
9.78
 millivolts --> -49.02 °C
4.89
 millivolts --> -49.51 °C
9.78
 millivolts --> -49.02 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
4.89
 millivolts --> -49.51 °C
0.00
 millivolts --> -50.00 °C
poi uscendo il sensore e lasciandolo all'aria aperta ho avuto questo dato
Code:
146.63
 millivolts --> -35.34 °C
146.63
 millivolts --> -35.34 °C
151.52
 millivolts --> -34.85 °C
151.52
 millivolts --> -34.85 °C
151.52
 millivolts --> -34.85 °C
non se vi può essere utile
« Last Edit: December 24, 2012, 08:40:36 am by alberto39 » Logged

0
Offline Offline
Faraday Member
**
Karma: 31
Posts: 2908
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusate, io l'ho buttata li e sono andato via, ora sono tornato e ho letto tutto. Grazie Menniti per la fiducia ricambiata di sicuro.
Però c'è un però, forse più di uno, vediamone alcuni:
Però 10mt di filo sono tanti, se ho esperienza mi devo porre il problema prima ancora di cominciare. Se quello che voglio fare è andare al sodo nel più breve tempo possibile e in modo affidabile, devo documentarmi al meglio circa il miglior sistema conosciuto per ottenere il risultato che mi necessita. Ora io penso che non è questo il caso, ma si tratta di qualcosa di simile a; ho questo sensore lo devo usare con 10mt di cavo, punto..... e basta.

Sicuramente c'è un modo più affidabile , preciso e di sicuro funzionamento che mettere un LM35 collegato a 10mt di cavo, ma noi abbiamo assunto come imperativo l'uso di LM35 + 10mt di cavo. Allora l'obiettivo deve cambiare, passando da "devo andare al sodo" a vediamo come lavora LM35.

Però, fare funzionare il sensore direttamente collegato ad arduino tramite uno spezzone di cavo di 10 cm, mi permette di verificare il funzionamente del sensore, la sua precisione ecc. Dopo questo risultato si passa ad incrementare la capacità di pilotaggio del sensore, aggiungendo dei condensatori di capacità circa equivalente a quella che avremmo con 10mt di filo, oppure ancora meglio si fanno delle prove con 1mt, poi con 2 e via di seguito. Se lavora male già con 2mt di filo, inutile incrementare la lunghezza.

Però il datasheet potrebbe non essere sufficiente per ottenere il risultato sperato, cercare altro è d'obbligo. In particolare ci sono dei documenti che si chiamano genericamente AN (application note) i quali contengono preziose informazioni e alle volte si ha la fortuna di trovare il circuito pronto alle nostre esigenze e/o le formule per adattarlo.
Io ho trovato questo:
http://www.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=snoa748b&fileType=pdf
http://learn.adafruit.com/tmp36-temperature-sensor

Allora prima metti appunto il software e l'hardware come se non avessi bisogno di 10mt di filo, fallo funzionare con buona precisione e poi si passa oltre.

Tanto per dire, c'è anche la possibilità di creare un circutito convertitore temperatura/frequenza, se l'uscita viene bufferizzata a bassa impedenza, probabilmente anche con 10mt di filo comune si riesce ad ottenere una buona precisione e affidabilità, ma tutto è da verificare. E se non dovesse bastare si può amplificare il segnale e poi attenuarlo con un altro buffer seguito da un partitore resistivo.

PS: non ho dentro quel sensore.

Saluti e buone feste.
Logged

AvrDudeQui front end per avrdude https://gitorious.org/avrdudequi/pages/Home

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22800
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

No aspetta Leo, lo scopo di questa misura era quello di verificare che il sensore stesse funzionando....
Da quel che capisco leggendo il datasheet, sempre che lui abbia applicato la famosa figura 8 che gli consigliavo, dovrebbe avere un range da -5°C e +40°C, con 10mV/°C; per cui penso che a 0°C dovrebbe avere 50mV, ma sempre nella figura c'è la dicitura "Tambient + 10°C", quindi effettivamente dovremmo arrivare a 150mV a 0°C, però vedo una variazione enorme, considerando che dovremmo essere a temperatura costante.....
Ah, ok.
Però l'LM35 dovrebbe avere un range da -50 a +150. Immagino quindi che se a 25° dà 250 mV e gli incrementi sono di 10mV/°C, per temperature prossime allo zero dovrebbe avvicinarsi a 0 mV. O non ho capito io quel datasheet?
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12573
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Leo, non puoi ottenere una tensione negativa se alimenti il sensore con una tensione positiva, di conseguenza o il sensore in condizioni normali NON legge le temperature negative oppure 0mV NON può corrispondere a 0°C. Bisogna approfondire il funzionamento del sensore. Dal cicruito applicativo a cui faceva riferimento Mauro (bentornato!) io capisco che la temperatura minima di -5°C in realtà viene mostrata come se fosse +5°C (Tambient + 10°C), e quindi 0mV + 100mV = 100mV; poiché lui sta misurando 0°C è come se fossimo a +10°C, quindi 150mV.
La misura che ha appena fatto Alberto, anche se non si capisce nulla della conversione, sembrerebbe darmi ragione, visto che alla fine ha ottenuto un valore di 0,00mV, considerando che i congelatori di casa lavorano normalmente a -4/-5°C, se non erro.
Concordo al 1000% con Mauro quando dice che Alberto (vista anche la sua non grande esperienza) dovrebbe provare ad usare il sensore infilato nel ghiaccio ma con qualche cm di filo, per vedere i risultati che ottiene, poi magari può bypassare le varie metrature e collegare direttamente i 10mt, così vede subito la differenza, se c'è....
@ Alberto: il problema è che ci spari sfilze di numeri senza dirci il range di tempo in cui sono usciti, inoltre non si capisce come escono fuori quei mV e quella conversione in temperatura che, ovviamente è sballata, dubito che tu abbia -50°C nel congelatore e -35°C all'aria aperta, in Sicilia quella temperatura non c'è mai stata nemmeno ai tempi dell'Era Glaciale smiley-grin
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Cagliari, Italy
Online Online
Tesla Member
***
Karma: 112
Posts: 7122
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Potresti postare lo sketch che utilizzi? E' uguale a quello che ho messo io?
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Prova ad utilizzare un cavo twistato, tipo cavo di rete oppure per trasmissione dati e metti un piccolo   elettrolitico con anche un 100 nF in parallelo , con il sensore precedente LM 335 abbiamo fatto 15 metri senza problemi ma il cavo è indispensabile sia buono , poi il tutto veniva letto da un DVM a 3 cifre e mezzo !!!!
Moreno
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22800
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Che non possa dare tensioni negative senza avere un riferimento negativo è certo. Difatti in caso di alimentazione solo positiva il range del sensore credo diventi 0°C-150°C, correggetemi se sbaglio.
Logged


Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12573
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Che non possa dare tensioni negative senza avere un riferimento negativo è certo. Difatti in caso di alimentazione solo positiva il range del sensore credo diventi 0°C-150°C, correggetemi se sbaglio.

Hai guardato la figura del data-sheet a cui facevo riferimento nei primi post di questa discussione, a cui Alberto dovrebbe esssersi attenuto?
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22800
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sì, ho visto.
Se sta usando quello schema, allora anche secondo me dovrebbe leggere Tamb+10°C. Però a questo punto sarebbe utile un multimetro e leggere la tensione sul pin Vout e confrontarla con quanto legge sul pin analogico.
Logged


Torino (ITA)
Offline Offline
Full Member
***
Karma: 1
Posts: 161
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusate, io l'ho buttata li e sono andato via, ora sono tornato e ho letto tutto. Grazie Menniti per la fiducia ricambiata di sicuro.
Però c'è un però, forse più di uno, vediamone alcuni:
Però 10mt di filo sono tanti, se ho esperienza mi devo porre il problema prima ancora di cominciare. Se quello che voglio fare è andare al sodo nel più breve tempo possibile e in modo affidabile, devo documentarmi al meglio circa il miglior sistema conosciuto per ottenere il risultato che mi necessita. Ora io penso che non è questo il caso, ma si tratta di qualcosa di simile a; ho questo sensore lo devo usare con 10mt di cavo, punto..... e basta.

Sicuramente c'è un modo più affidabile , preciso e di sicuro funzionamento che mettere un LM35 collegato a 10mt di cavo, ma noi abbiamo assunto come imperativo l'uso di LM35 + 10mt di cavo. Allora l'obiettivo deve cambiare, passando da "devo andare al sodo" a vediamo come lavora LM35.

Però, fare funzionare il sensore direttamente collegato ad arduino tramite uno spezzone di cavo di 10 cm, mi permette di verificare il funzionamente del sensore, la sua precisione ecc. Dopo questo risultato si passa ad incrementare la capacità di pilotaggio del sensore, aggiungendo dei condensatori di capacità circa equivalente a quella che avremmo con 10mt di filo, oppure ancora meglio si fanno delle prove con 1mt, poi con 2 e via di seguito. Se lavora male già con 2mt di filo, inutile incrementare la lunghezza.

Però il datasheet potrebbe non essere sufficiente per ottenere il risultato sperato, cercare altro è d'obbligo. In particolare ci sono dei documenti che si chiamano genericamente AN (application note) i quali contengono preziose informazioni e alle volte si ha la fortuna di trovare il circuito pronto alle nostre esigenze e/o le formule per adattarlo.
Io ho trovato questo:
http://www.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=snoa748b&fileType=pdf
http://learn.adafruit.com/tmp36-temperature-sensor

Allora prima metti appunto il software e l'hardware come se non avessi bisogno di 10mt di filo, fallo funzionare con buona precisione e poi si passa oltre.

Tanto per dire, c'è anche la possibilità di creare un circutito convertitore temperatura/frequenza, se l'uscita viene bufferizzata a bassa impedenza, probabilmente anche con 10mt di filo comune si riesce ad ottenere una buona precisione e affidabilità, ma tutto è da verificare. E se non dovesse bastare si può amplificare il segnale e poi attenuarlo con un altro buffer seguito da un partitore resistivo.

PS: non ho dentro quel sensore.

Saluti e buone feste.

allora io ho aperto questa discussione per capire se il sensore che ho può essere usato con 10m di filo.Quindi se non si può fare ditemelo, che chiudiamo la discussione.
@ Alberto: il problema è che ci spari sfilze di numeri senza dirci il range di tempo in cui sono usciti
ho dato queste misurazione perchè ho letto non mi ricordo dove, che a un tot di mv dovevo  avere una certa temperatura, se non sbaglio
mi sembra di aver letto che a 150mv dovevo avere 0°, cosi ho messo il sensore nel congelatore,per verificarlo, ma non ho  controllato il tempo trascorso perchè pensavo che fosse inutile,e pensavo che fosse utile capire la quantità di mv per capire la temperatura.
inoltre non si capisce come escono fuori quei mV e quella conversione in temperatura che, ovviamente è sballata, dubito che tu abbia -50°C nel congelatore e -35°C all'aria aperta, in Sicilia quella temperatura non c'è mai stata nemmeno ai tempi dell'Era Glaciale smiley-grin
Potresti postare lo sketch che utilizzi? E' uguale a quello che ho messo io?
si le misure che avete visto escono dal sketch che a messo PaoloP. Fino a quando non mi dite un altro sketch da utilizzare io uso questo

grazie per gentile attenzione datami, spero essere stato chiaro, se non è cosi ditelo, buonnatale
Logged

Torino (ITA)
Offline Offline
Full Member
***
Karma: 1
Posts: 161
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hai guardato la figura del data-sheet a cui facevo riferimento nei primi post di questa discussione, a cui Alberto dovrebbe esssersi attenuto?
si io ho cercato di fare la figura 8. ho messo una foto per avere la conferma che quando fatto fosse giusto!!
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12573
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Alberto, la verità non la possiede nessuno, Mauro ti ha dato un suggerimento con un link e lo stiamo seguendo e pare dare qualche frutto, poi lui stesso è un po' scettico e ti ha dato un consiglio importante, fare una prova con pochissimo filo (20-30cm max) per vedere i valori reali che ottieni, e io sono d'accordo, Moreno è intervenuto dicendo che l'ha usato a 15mt e ti ha dato un altro sano consiglio, quindi dobbiamo restare fiduciosi, ma così stiamo solo facendo casino. Allora a mio parere dovremmo ricominciare come facemmo con sensore IR, un passo alla volta, e con molta pazienza arriveremo ad una risposta e possibilmente alla soluzione. QUindi io direi:
1 - Usando gli stessi collegamenti attuali, accorcia il cavo a 30cm
2 - Un riferimento certo è FONDAMENTALE, la storia del ghiaccio andrà bene in un secondo momento, quindi PROCURA un termometro digitale per ambienti
3 - Collega il sensore ad Arduino ed esegui questo semplice sketch (il minimo che serve per ora):
Quote
Quote
int tempPin = A0;  //inizializzazione del pin di Arduino
float lettura = 0; // impostazione valore iniziale della variabile
int media = 30; //n° letture per calcolo media
void setup()
{
  Serial.begin(9600); //apertura porta seriale, set della velocità a 9600 bps
  analogReference(INTERNAL); //setta il riferimento interno a 1,1V
}

void loop()
{
lettura = 0; //azzera il totalizzatore
for (int i = 0; i < media; i++) {
lettura += analogRead(tempPin); //totalizza tutti i valori letti dall’ADC
}

lettura = lettura / media; //calcolo del valore medio di lettura
  Serial.println(lettura); //lettura valore ADC
delay(1000); //pausa
}

4 - Accendi tutto e metti l'LM35 accanto al sensore del termomentro digitale ambiente
5 - Fai funzionare tutto per 5 minuti, poi resetta Arduino e rileva le letture di una trentina di secondi circa, in pratica da quando apri il serial monitor conta le prime trenta letture, le copi e le incolli nel tuo post, in modo che possiamo vedere una situazione certa e stabile e possiamo stabilire più o meno come si sta comportando il sensore, altrimenti qui ci impantaniamo.
Se sei d'accordo su queste prove procedi, se non sei d'accordo allora devi aspettare altri consigli.
« Last Edit: January 09, 2013, 08:53:00 am by Michele Menniti » Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Torino (ITA)
Offline Offline
Full Member
***
Karma: 1
Posts: 161
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Alberto, la verità non la possiede nessuno, Mauro ti ha dato un suggerimento con un link e lo stiamo seguendo e pare dare qualche frutto, poi lui stesso è un po' scettico e ti ha dato un consiglio importante, fare una prova con pochissimo filo (20-30cm max) per vedere i valori reali che ottieni, e io sono d'accordo, Moreno è intervenuto dicendo che l'ha usato a 15mt e ti ha dato un altro sano consiglio, quindi dobbiamo restare fiduciosi, ma così stiamo solo facendo casino. Allora a mio parere dovremmo ricominciare come facemmo con sensore IR, un passo alla volta, e con molta pazienza arriveremo ad una risposta e possibilmente alla soluzione. QUindi io direi:
1 - Usando gli stessi collegamenti attuali, accorcia il cavo a 30cm
2 - Un riferimento certo è FONDAMENTALE, la storia del ghiaccio andrà bene in un secondo momento, quindi PROCURA un termometro digitale per ambienti
3 - Collega il sensore ad Arduino ed esegui questo semplice sketch (il minimo che serve per ora):
Quote
int tempPin = A0;  //inizializzazione del pin di Arduino
float lettura = 0; // impostazione valore iniziale della variabile
int media = 30; //n° letture per calcolo media
void setup()
{
  Serial.begin(9600); //apertura porta seriale, set della velocità a 9600 bps
}

void loop()
{
lettura = 0; //azzera il totalizzatore
for (int i = 0; i < media; i++) {
lettura += analogRead(tempPin); //totalizza tutti i valori letti dall’ADC
}

lettura = lettura / media; //calcolo del valore medio di lettura
  Serial.println(lettura); //lettura valore ADC
delay(1000); //pausa
}

4 - Accendi tutto e metti l'LM35 accanto al sensore del termomentro digitale ambiente
5 - Fai funzionare tutto per 5 minuti, poi resetta Arduino e rileva le letture di una trentina di secondi circa, in pratica da quando apri il serial monitor conta le prime trenta letture, le copi e le incolli nel tuo post, in modo che possiamo vedere una situazione certa e stabile e possiamo stabilire più o meno come si sta comportando il sensore, altrimenti qui ci impantaniamo.
Se sei d'accordo su queste prove procedi, se non sei d'accordo allora devi aspettare altri consigli.
Michele vanno  bene i Ponticelli flessibili per breadboard da 20cm, ho devo tagliare il cavo lan?
Logged

Pages: 1 2 3 [4] 5 6 ... 17   Go Up
Jump to: