Offline
Newbie
Karma: 0
Posts: 28
|
 |
« on: December 26, 2012, 05:02:46 am » |
Ciao a tutti, ho un problema con una sonda lm35... Se collego l'lm35 all'arduino UNO la temperatura seganatami è 18°C (ed è la temperatura giusta)... Perchè se invece l'lm35 la collego all'arduino NANO come risultato ho 29°C?...Grazie mille a tutti...
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16431
Don't know what I do
|
 |
« Reply #1 on: December 26, 2012, 05:13:41 am » |
Stessa alimentazione in entrambi i casi? Stessi collegamenti?
|
|
|
|
|
Logged
|
|
|
|
|
BZ (I)
Online
Brattain Member
Karma: 160
Posts: 15605
+39 349 2158303
|
 |
« Reply #2 on: December 26, 2012, 09:11:09 am » |
Se usi come riferimento dei ADC la tensione di alimentazione cambia il risultato in funzione della tensione di aliemtnatzione. Se usi i 1,1V riferimento interno deve essere uguale. http://arduino.cc/en/Reference/AnalogReferenceCiao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
Cagliari
Offline
Faraday Member
Karma: 49
Posts: 3000
|
 |
« Reply #3 on: December 26, 2012, 09:21:07 am » |
Nella formula devi sostituire 5 con 3.3. 
|
|
|
|
|
Logged
|
IDE 1.0.4 - Arduino UNO R3 - Ethernet Shield R3 - DCF77 Module - Adafruit Data Loggin Shield - LCD 16x2 RGB positive backlight - i2c LCD backpack - RTC 1307 Board - Saleae Compatibile Logic Analyzer 8ch 24Mhz - ATtiny2313 ProtoBoard - Xino Board - ATtiny 4313 - Arduino 2009 - Arduino USB Serial Ligth - DS18B20 - LM35DZ - ShiftRegister - TL431 - ATtiny 85 Ultimi acquisti: CodeBender: http://codebender.cc/register/?referrer=PaoloP
|
|
|
|
BZ (I)
Online
Brattain Member
Karma: 160
Posts: 15605
+39 349 2158303
|
 |
« Reply #4 on: December 26, 2012, 10:01:53 am » |
3,3 o meglio 1,1? Ciao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 28
|
 |
« Reply #5 on: December 26, 2012, 11:44:22 am » |
Ciao, l'alimentazione e i collegamenti sono gli stessi in entrambi i casi... Anche mettendo 3.3 al posto di 5 ottengo sull'arduino UNO 16°C mentre sull'arduino NANO 18°C... Il codice che uso è questo: #include <LiquidCrystal.h> //include la libreria per il funzionamento dell'lcd
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //settia le uscite di arduino per lcd float tempC, tempK; //dichiarazione di variabile int tempPin = 0; //inizializzazione del pin di Arduino
void setup() {
lcd.begin(16, 2); // setta del numero delle colonne e delle righe }
void loop() { lcd.setCursor(0, 0); tempC = analogRead(tempPin); tempC = (5.0 * tempC * 100.0)/1024.0; tempK = (tempC + 273);
lcd.print(tempC); lcd.print(" C "); lcd.print(tempK); lcd.print(" K");
delay(1000);
lcd.clear();
} Grazie mille...
|
|
|
|
|
Logged
|
|
|
|
|
Cagliari
Offline
Faraday Member
Karma: 49
Posts: 3000
|
 |
« Reply #6 on: December 26, 2012, 03:43:06 pm » |
Sia la UNO che la NANO usano il 328 a 5V.  Quindi con lo stesso codice non dovresti avere differenze nella lettura. Inoltre: tempK = (tempC + 273.15);
|
|
|
|
|
Logged
|
IDE 1.0.4 - Arduino UNO R3 - Ethernet Shield R3 - DCF77 Module - Adafruit Data Loggin Shield - LCD 16x2 RGB positive backlight - i2c LCD backpack - RTC 1307 Board - Saleae Compatibile Logic Analyzer 8ch 24Mhz - ATtiny2313 ProtoBoard - Xino Board - ATtiny 4313 - Arduino 2009 - Arduino USB Serial Ligth - DS18B20 - LM35DZ - ShiftRegister - TL431 - ATtiny 85 Ultimi acquisti: CodeBender: http://codebender.cc/register/?referrer=PaoloP
|
|
|
|
BZ (I)
Online
Brattain Member
Karma: 160
Posts: 15605
+39 349 2158303
|
 |
« Reply #7 on: December 26, 2012, 05:06:12 pm » |
Nella formula devi sostituire 5 con 3.3.  Paolo cosa vuol dire questo suggerimento? Ciao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
Cagliari
Offline
Faraday Member
Karma: 49
Posts: 3000
|
 |
« Reply #8 on: December 26, 2012, 05:10:22 pm » |
Inizialmente pensavo che il NANO fosse alimentato a 3.3V e fosse quella la tensione di riferimento dell'ADC. Poi ho visto che invece è un normale 328 a 5V. Quindi non ci dovrebbero essere differenze nel codice e nelle misure tra UNO e NANO.
|
|
|
|
|
Logged
|
IDE 1.0.4 - Arduino UNO R3 - Ethernet Shield R3 - DCF77 Module - Adafruit Data Loggin Shield - LCD 16x2 RGB positive backlight - i2c LCD backpack - RTC 1307 Board - Saleae Compatibile Logic Analyzer 8ch 24Mhz - ATtiny2313 ProtoBoard - Xino Board - ATtiny 4313 - Arduino 2009 - Arduino USB Serial Ligth - DS18B20 - LM35DZ - ShiftRegister - TL431 - ATtiny 85 Ultimi acquisti: CodeBender: http://codebender.cc/register/?referrer=PaoloP
|
|
|
|
Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16431
Don't know what I do
|
 |
« Reply #9 on: December 26, 2012, 05:57:39 pm » |
è un normale 328 a 5V. Quindi non ci dovrebbero essere differenze nel codice e nelle misure tra UNO e NANO.
E' così, Difatti è strano per questo
|
|
|
|
|
Logged
|
|
|
|
|
BZ (I)
Online
Brattain Member
Karma: 160
Posts: 15605
+39 349 2158303
|
 |
« Reply #10 on: December 26, 2012, 06:39:54 pm » |
Visto che il LM35 da 10mV per °C basta un campo di misura fino a 1,1V. È meglio attivare il riferimento interno da 1,1V e si é indipendente da delle instabilitá della tensione di alimentazione.
Ciao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 28
|
 |
« Reply #11 on: December 27, 2012, 04:11:46 am » |
Il fatto è che però il mio NANO non ha un 328 ma un atmega 128...Come posso fare?
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10228
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #12 on: December 27, 2012, 05:17:13 am » |
Il fatto è che però il mio NANO non ha un 328 ma un atmega 128...Come posso fare?
un 128? non ne avevo mai sentito parlare  , allora prova a guardare il data-sheet e cerca di capire se l'ADC non ha una risoluzione diversa, nel qual caso ovviamente dovrai adeguare il firmware. Comunque fai male ad ignorare il suggerimento che Uwe ti ha dato per ben due volte: se attivi il riferimento interno a 1,1V, che è molto preciso, le letture non saranno più influenzate dalle differenze di tensione delle alimentazioni; probabilmente (sempre che 128 e 328 operino alla stesso modo) le differenze stanno proprio nelle diverse alimentazioni che arrivano ai due micro.
|
|
|
|
|
Logged
|
|
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 28
|
 |
« Reply #14 on: December 27, 2012, 07:41:23 am » |
Il fatto è che però il mio NANO non ha un 328 ma un atmega 128...Come posso fare?
un 128? non ne avevo mai sentito parlare  , allora prova a guardare il data-sheet e cerca di capire se l'ADC non ha una risoluzione diversa, nel qual caso ovviamente dovrai adeguare il firmware. Comunque fai male ad ignorare il suggerimento che Uwe ti ha dato per ben due volte: se attivi il riferimento interno a 1,1V, che è molto preciso, le letture non saranno più influenzate dalle differenze di tensione delle alimentazioni; probabilmente (sempre che 128 e 328 operino alla stesso modo) le differenze stanno proprio nelle diverse alimentazioni che arrivano ai due micro. Ciao, hai ragione, per togliere ogni dubbio e l'eventualità di tutti i possibili errori, seguirò il consiglio di Uwe; credo proprio sia la soluzione migliore...
|
|
|
|
|
Logged
|
|
|
|
|
|