Archivo de la categoría: LM35

Midiendo Sensores

He decidido dotar al ArduRover de tres entradas analógicas para poder medir y representar sensores externo que se conecten a él.

Es una evolución de la anterior entrada. En esta ocasión, doto al programa de un panel de configuración, para que se pueda personalizar las medidas que se realicen.

Configuración

Como podemos ver se puede configurar el nombre del sensor a representar, el valor de aviso(por si queremos que al llegar a un valor dado nos avise), si se representa o no, el valor máximo en la escala y un último valor que ajustará los valores recibidos a una escala real de medición.

Si conectásemos el sensor siguiente, el valor de conversión sería -> 0.4882

lm35.png

Continuamos con la posibilidad de almacenar los valores en una hoja de Excel, para su posterior análisis.

La programación con VB es casi idéntica al realizado en la entrada “Conociendo el Estado de los Sensores” y el posterior “ Exportando a Excel los valores”  con unos pequeños ajustes para parametrizar las medidas.

Una mejora que puede dar muy buen resultado es realizar una media de diez mediciones antes de enviar el valor desde Arduino a la aplicación, con esta minimizamos parte de los errores por ruido.

Esquema Práctico del Sensor LM35:

Medir_Temperaturas_Sensor

Esquema Práctico de las Entradas Analógicas:

Esquema_Practico

Lista de Piezas

Dibujo de la Pieza Nombre Nº Piezas
Hembra Soporte Hembra 1
Macho Soporte Macho 1
Pasamuros Porta Soporte 2

 

Extracto del Programa Arduino:

codigo_Arduino

 

 

Fotos:

Arriba_01

Vista SuperiorArriba_02

Detalle con sensores

frontal_01

Primer plano

VB_01

Visión General del Programa

Configuración

Detalle del Panel de Configuración

Código Fuente  Arduino Completo

Midiendo.ino

Proyecto VB 2015

Sensores de Entrada.zip

Vídeo resumen:

 

 

 

 

 

 

Anuncios

Medir Temperaturas

analogReference

Descripción

Configura el voltaje de referencia usado por la entrada analógica. La función analogRead() devolverá un valor de 1023 para aquella tensión de entrada que sea igual a la tensión de referencia.

 Las opciones son:

      DEFAULT: Es el valor de referencia analógico que viene por defecto que de 5 voltios en placas Arduino de y de 3.3 voltios en placas Arduino que funcionen con 3.3 voltios.

      INTERNAL: Es una referencia de tensión interna de 1.1 voltios en el ATmega168 o ATmega328 y de 2.56 voltios en el ATmega8.

      EXTERNAL: Se usará una tensión de referencia externa que tendrá que ser conectada al pin AREF.

Precaución

Es recomendable que cuando se use la referencia de tensión externa se conecte al pin AREF una resistencia, esto evitará posibles daños internos en el ATmega, si la configuración de la referencia analógica es incompatible con el montaje físico que se ha llevado a cabo.

Para saber más -> http://arduino.cc/es/Reference/AnalogReference#.Uxjmf2eYahs

 

El LM35 es un sensor de temperatura común del tipo TO-92, con una precisión calibrada de 1ºC. Su rango de medición abarca desde -55°C hasta 150°C. La salida es lineal y cada grado centígrado equivale a 10mV.

 Sus características más relevantes son:

      Está calibrado directamente en grados Celsius.

      La tensión de salida es proporcional a la temperatura.

      Tiene una precisión garantizada de 0.5°C a 25°C.Encapsulado_LM35

      Tensión de alimentación entre 4 Vcc y 30 Vcc.

      Baja impedancia de salida.

      Baja corriente de alimentación (60uA).

      Bajo coste (1.5 euros).

 

Algunos esquemas de utilización:

Circuitos_LM35

El LM35 sólo produce tensiones de 0-1 V, como la tensión de referencia del ADC es de 5V, sucede que perdemos el 80% de la gama posible. Si cambia Aref a 1.1 V, obtendrá casi la mayor resolución posible.

La ecuación que vamos a utilizar es la siguiente:

Temperatura Medída = Valor Leído / 9.31

Si dividimos 1.1 V entre 1024, cada paso en la lectura analógica es igual a aproximadamente 0.001074V = 1,0742 mV. Si 10mV es igual a 1 grado Celsius, 10 / 1,0742 = ~ 9,31. Así, para cada cambio de 9,31 en la lectura analógica, hay un grado de cambio de temperatura.

Para cambiar Aref a 1.1 V, se utiliza el comando  “analogReference (INTERNO)

Esto no quiere decir que tengamos una precisión elevada, pues Aref no será exactamente 1.1 V  y el LM 35 tiene una precisión de menor de 0.5 grados. Sin embargo, si que tenemos una resolución más alta. Con esto el rango de temperatura del LM35 está limitado a 0 a 110 grados Celsius.

Una cosa más, si realizamos una serie de medidas y realizamos la media aritmética, obtendremos un valor más adecuado y evitaremos medidas con ruidos.

Nota importante. Si cambiamos la referencia analógica con analogReference(), esto afecta a todas las entradas analógicas de la placa. Si quiero combinar medidas con la referencia de 1,1 y 5V en el mismo programa, tendré que llamar a la función analogReference() antes de cambiar el tipo de medida en el programa

Esquema Eléctrico:

Medir_Temperatura_Esquema

Esquema Práctico:

Medir_Temperaturas_bb

Código del Programa:

Medir_Temperaturas_Codigo

Fotos:

Vista_1

Vista Posterior

Vista_2

Vista Anterior

Instantánea - 2

Código fuente:

Medir_temperatura_II.ino

Ficha del Proyecto:

Medir_Temperaturas_Ficha_23

Vídeo resumen: