Archivo del sitio

Escudo de Ethernet W5100 – III

En este caso el control lo realizaré a través de una aplicación creada con “App Inventor”.

Como solo es un ejemplo he decidido realizar la implementación de tres salida digitales y dos entradas analógicas, simulando la temperatura de dos estancias de una casa.

La programación es muy fácil, para las salidas digítales, se trata de realizar un “Get” con uno de estos códigos:

  • OnXXX para encender la estancia
  • OffXXX para apagar la estancia

Módulo de Control de un Led con AppInventos.

Para las entradas analógicas simuladas, se implementa un “Web” dentro de la aplicación y se referencia a la dirección del servidor web (192.168.1.177).

Esquema de los LED

Circuito teórico

Circuito Práctico.

Programa Arduino

AppInventos

Aspecto Simulado

Captura de Pantalla desde un móvil

Archivo aia de AppInventor.

Casa_Domotica_I.aia

App de la Aplicación.

Casa_Domotica_I.apk

Códigos Fuente  Arduino

Ethetnet_AppInventor.ino

Vídeo resumen:

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: