Arduino control de Temperatura LM35, Para conectar los dispositivos ATmega328P usan niveles lógicos de 3.3v, a diferencia de otros dispositivos que pueden usar niveles lógicos de 5v. Por esta razón, un simple circuito divisor de voltaje es todo lo que se requiere para interactuar con otros dispositivos.
Característica del Controlador:
perating Voltage: 5V
Input Voltage (Recommended): 7-12V
Power 5V: Provided through USB Type-B Port
Power External: Through 2.1mm barrel jack (7v to 12v DC)
Digital I/O Pins: 14 (of which 6 provide PWM output)
Digital I/O: 3.3v Logic Levels
PWM Digital I/O Pins: 6
Analog Input Pins: 6 (3.3v Logic Levels) 4095 resolución
Para esta actividad usaremos la entrada análoga (A0) del controlador Arduino Wavgat en la lectura de temperatura con el chip LM-35DZ el cual tiene un rango de temperatura 0 @ 100 °C. Con la ayuda de proteus par el desarrollo de la actividad.
Recordemos que este controlador su resolución en la entrada analoga es de 12 bits a diferencia a su similar el Arduino Uno su resolucion es de 10 bits.
Arduino Uno 5.0 V @ 10 bits resolución 1023 Vs Arduino Wavgat 3.3V @ 12 bits resolución 4095. Como resultado el sensor su respuesta a la temperatura es lineal 10mV por grado centigrado, lo importante es que puedes comprobar con la ayuda del multimetro en el rando de medida voltios DC. Arduino Wavgat Con LM35.
Ejemplo:
250mV (0.25 V) es gual 25°C
180mV (0.18 V) es igual 18 °C
Sensor = analogRead (A0);
Arduino Wavgat
0 …………..4095
0…………… 5V
Arduinos
0 …………..1023
0…………… 5V
El Código para mostrar el valor de la temperatura en un Wavgat seria :
int sensor;
float temp;
void setup() {
Serial.begin(9600);
}
void loop() {
sensor = analogRead(A0);
temp= ((sensor * 3300.0) / 4095) / 10;
Serial.println(temp, 1);
delay(100);
}
El Código para mostrar el valor de la temp en un Arduino seria :
int sensor;
float temp;
void setup() {
Serial.begin(9600);
}
void loop() {
sensor = analogRead(A0);
temp= ((sensor * 5000.0) / 1023) / 10;
Serial.println(temp, 1);
delay(100);
}