sábado, 10 de diciembre de 2016

Avance dentro de los prototipos

Dentro de este proyecto se han ido generando varios prototipos que evolucionaron hasta el prototipo funcional con el que contamos actualmente, y en este post queríamos mostrar las distintas versiones de la estación de monitoreo que se han ido construyendo.



En primera instancia se midió temperatura y humedad ambiental a modo de prueba, y luego mostrando estos datos por pantalla. Se midió humedad ambiental con el sensor HS101 y temperatura con el TMP36.





Luego añadimos un sensor para medir radiación UV, el GUVAS12SD y alimentamos nuestro Arduino con una batería externa para poder realizar mediciones en el exterior.






Cuando pudimos obtener los datos necesarios el siguiente paso fue reducir el tamaño de nuestra estación de monitoreo, resultando de esto un cambio como el siguiente:

   


 Midiendo exactamente los mismos datos, resultó una estación que resultó ser menos de una octava parte de lo que comprendía en cuanto a espacio con respecto al prototipo anterior de esta estación.





Luego de lograr optimizar el espacio utilizado por la estación el siguiente paso fue el cambio de tecnología en términos de los sensores que estábamos utilizando, tal como lo mencionamos en el post anterior, se veló por sensores igual o más precisos a la hora de medir y que tuvieran un soporte mas grande por parte de la comunidad en cuanto a librerías para facilitar su uso. También agregamos un sensor barométrico (BMP180) y un módulo de tarjetas MicroSD para poder almacenar los datos que se fueran obteniendo a lo largo de nuestras pruebas. El resultado es la estación actual con la que contamos y la cual sin duda también evolucionará a su siguiente forma.







jueves, 1 de diciembre de 2016

Obteniendo datos en nuestro Arduino

Obtener datos en Arduino puede variar en dificultad dependiendo de los sensores que se vayan a utilizar. Hay sensores los cuales hay que calibrar y para obtener un dato en alguna unidad de medida específica se debe recurrir a ecuaciones y procesos un tanto largos. Por oro lado, existen sensores que cuentan con librerías hechas por la comunidad y que hacen que el proceso de obtener datos sea mucho menos tedioso y complicado.

En este proyecto usamos tanto sensores los cuales ya cuentan con librerías hechas, como sensores los cuales hemos tenido que calibrar por nuestra cuenta. A lo largo del proyecto hemos ido cambiando algunos sensores por otros que efectivamente tuvieran una librería creada y así facilitar el proceso de obtener datos atmosféricos.

Un ejemplo es la obtención que llevamos a cabo actualmente de temperatura y humedad atmosférica.
En un comienzo del proyecto se obtendrían estos datos mediante 2 sensores distintos: TMP36 para la temperatura y HS1101 para la humedad atmosférica. Estos sensores se debían calibrar cada uno para poder entregar en ºC y % respectivamente. Actualmente estos 2 datos se obtienen mediante un solo sensor el cual es el DHT22, este sensor además de poder obtener varios tipos de datos, cuenta con un sinfín de librerías para poder medir tanto con el módulo en su versión pre-calibrada como en su versión mas estándar.

A continuación mostraremos la diferencia en términos de código para obtener la temperatura mediante el TMP36 y el DHT22:

Tmp36:

 int temp_pin = A0;
 byte pin, analogPin;
 float volt = 0, temp = 0;
 volt = (analogRead(temp_pin) * 5.0) / 1024;
 temp = (volt * 100) - 50;


DHT22:

#include <cactus_io_DHT22.h>
DHT22 dht(2);

dht.begin();  //Esto dentro de setup();
temperatura = dht.temperature_C     //esto dentro de nuestro loop


Como pueden observar, con el sensor DHT22 basta con una simple función para poder leer ya en ºC a diferencia del TMP36 en el cual se ha tenido que transformar el valor análogo leído a voltaje y luego este voltaje a temperatura.

sábado, 26 de noviembre de 2016

Primera etapa

Es normal que en el desarrollo de un proyecto se postulen nuevas tecnologías a usar... esto está pasando ahora mismo con nuestro proyecto de monitoreo ambiental.

Surgió la duda sobre si realmente es remoto tener un Raspberry midiendo mediante Arduino, y hemos llegado a la conclusión de que este proceso puede ser mejorado usando alternativas "Arduino- compatibles", pero,  ¿a qué nos referimos con estas alternativas?.

Arduino es una plataforma de tanto de hardware como software libre, por lo tanto, cada individuo puede crear su propia versión, ya sea mejorando en algún aspecto la parte de hardware o creando una librería para dispositivos terceros. Gracias a esto hemos podido tener opciones las cuales crearían una comunicación mas fácil entre dispositivos y poder usar nuestro Raspberry como servidor para este proyecto.

¿Cuáles son estas alternativas?, a continuación les presentaremos algunas de las opciones consideradas (las cuales también pueden ir cambiando al ir desarrollando el proyecto). Estas han sido escogidas específicamente por incorporar el modulo ESP8266 de WiFi, para así eliminar la comunicación serial mediante USB.

Puedes ver la información de cada dispositivo clickeando en su respectivo nombre.















martes, 22 de noviembre de 2016

Introducción al proyecto

Hola a todos! Cómo están? Somos Cristian y Lucas, estudiantes de ingeniería en computación de la Universidad Central de Chile. En esta ocasión queremos presentar un proyecto que estaremos realizando, el cual consiste en crear una estación de monitoreo ambiental la cuál es completamente remota. Para la primera versión de este proyecto queremos hacer uso de Arduino + Raspberry Pi. La idea es poder monitorear tanto temperatura ambiental como humedad relativa y rayos UV, con esto, poder tener lecturas certeras y en tiempo real de la condición climática local de ciertos lugares.

Los lista de materiales que hemos dispuesto para este proyecto, en esta primera instancia, son los siguientes:


    - Arduino UNO:
    Utilizado como placa de recolección de datos.



    - Raspberry Pi 3 Model B:
    Para poder procesar los datos adquiridos con arduino y poder acceder a ellos de manera remota.


    - DHT22:
    Sensor de temperatura y humedad.



   - GUVAS12SD:
   Sensor UV.


    - Cables Jumper:
    Cables de prueba para poder crear nuestro prototipo sin necesidad de soldar.



    - Protoboard:
    Placa de prueba donde crearemos los prototipos a lo largo del proyecto.
 



Hay que tener en cuenta que con el avance del proyecto pueden ir cambiando los materiales según la tecnología que vaya requiriendo este proyecto.
El código resultante lo podrás encontrar en GitHub y así crear tu propio hack de este proyecto!