Sistema purificador de aire simple e inteligente
Componentes y suministros
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Herramientas y máquinas necesarias
| ||||
| ||||
|
Aplicaciones y servicios en línea
| ||||
| ||||
| ||||
|
Acerca de este proyecto
La presencia de polvo en hogares, oficinas y otros entornos humanos es inevitable. De hecho, según la Agencia de Protección Ambiental, el aire interior puede estar de 2 a 5 veces más contaminado que el aire exterior. Esta contaminación en el aire contribuye a molestias menores como picazón en los ojos, estornudos y dolores de cabeza en los seres humanos. Peor aún, puede ser un factor importante que contribuye a las alergias graves y al asma potencialmente mortal.
Para resolver este problema, una máquina purificadora de aire que funcione bien abordará este problema. Pero me gustaría aprovechar las ventajas de IoT para hacer que el purificador de aire sea más inteligente. En lugar de la forma convencional de encender el purificador de aire todo el día, me gustaría implementar un "microcontrolador cerebral" y un "sensor" para que funcionen solo si la presencia de polvo alcanza cierto nivel de conciencia, esto podría ahorrar mucha electricidad. ! Y el estado operativo estará disponible para mi "ventana de terminal" en mi computadora portátil o cualquier dispositivo "cliente habilitado para MQTT" siempre que viaje a cualquier parte del mundo.
Paso 1:reúna todos los componentes
Para ver todos los componentes, puede descargar la lista de BOM desde mi Dropbox.
O consulte la sección de componentes y suministros.
Paso 2:asegúrese de que todas las piezas tengan sentido
Lo primero que obtuve es que todos mis componentes, los pruebo inmediatamente para asegurarme de que las funcionalidades de mis componentes se comportan como deberían.
Para GP 2Y1010AU0F Sensor de polvo afilado configuración, puede consultar este tutorial de blog de Cyrille Médard de Chardon y Christophe Trefois. El tutorial cubre lo mejor desde la conexión del cableado hasta la codificación.
Para módulo de relé configuración, solo uso un estado de alternancia simple (encendido y apagado) para probar la conexión para la función de relé.
Paso 3:codificación
La codificación es sencilla. El desafío aquí es usar AWS IoT para comunicar los datos del sensor a cualquier dispositivo habilitado para MQTT (como en mi caso, estoy usando una computadora portátil). Consulte la sección de codificación. Curiosamente, también creé un video tutorial para AWS CLI IoT, para que cualquiera pueda aprender sobre él.
(Tenga en cuenta:en el momento de hacer este video, solo cubre la versión beta)
Paso 4:cableado
Paso 5:obtenga el resultado
Demostración en video
Mejora futura
Sé que todavía se pueden hacer muchas mejoras para este proyecto, especialmente el "Proyecto IoT". Pero debido a mi trabajo durante el día, solo pude usar una parte de mi tiempo libre para el desarrollo de este proyecto. Sin embargo, me interesa la aplicación "forma en tiempo real para el monitoreo de datos" (pista:NodeJS). Y se agregará como una lista de deseos (o lista de tareas pendientes) para este proyecto en el futuro próximo. ¡Estén atentos!
Conclusión
Es muy divertido hacer este proyecto, especialmente con "IoT - Internet of Things". Las posibilidades y la mejora aún son amplias en IoT. Además, disfruto aprender a usar el servicio de IoT proporcionado por AWS, porque es muy conveniente de usar (configuración simple con el panel de AWS IoT) y protege todas las conexiones con cifrado.
Problemas | Preguntas | Comentarios | Sugerencia
Probablemente, hay algún problema técnico en este proyecto del que no tengo conocimiento, puedes dejarme un comentario o un mensaje privado, ¡tus comentarios son muy valorados!
Cualquier pregunta o problema para replicar este proyecto, puede contactarme o dejar un comentario a continuación. Haré todo lo posible para ayudarlo, ¡nuevamente estamos aquí para aprender hardware juntos!
Todo tipo de comentarios y sugerencias son bienvenidos.
Código
- Sistema-purificador-de-aire-simple-e-inteligente.ino
- iot_config.h
- iot_config.cpp
- dust_config.h
- dust_config.cpp
- aws_iot_config.h
- LICENCIA
Purificador-de-aire-simple-e-inteligente-System.ino Arduino
Código principal de Arduino/ * Código fuente para un sistema purificador de aire simple e inteligente Escrito por Aaron Kow Licencia:Licencia MIT * / # incluye "iot_config.h" #include "dust_config.h" aws_iot_setup aws_iot; dust_setup dust_sensor; int meterPin =4; int ledPower =12; int relayPin =13; resultado flotante; void setup () {pinMode (ledPower, OUTPUT); pinMode (relayPin, SALIDA); aws_iot.config ();} void loop () {// establece la densidad del polvo result result =dust_sensor.init (meterPin, ledPower); // AWS IoT MQTT para el monitoreo de datos en tiempo real aws_iot.data (result); // si la densidad del polvo es superior a 0,25 mg / m3, encienda el filtro de aire si (resultado> 0,25) {digitalWrite (relayPin, HIGH); } else {digitalWrite (relayPin, LOW); } retraso (1000);}
iot_config.h C / C ++
Archivo de encabezado para mi configuración de IoT/ * Código fuente para un sistema purificador de aire simple e inteligente Escrito por Aaron Kow Licencia:Licencia MIT * / # ifndef iotconfig_h # define iotconfig_h # include#include #include #include "aws_iot_config.h" class aws_iot_setup {public:void config (void); prueba nula (nula); datos vacíos (float);}; # endif
iot_config.cpp C / C ++
Mi archivo de configuración de IoT/ * * Copyright 2010-2015 Amazon.com, Inc. o sus afiliados. Reservados todos los derechos. * * Con licencia de Apache License, Versión 2.0 (la "Licencia"). * No puede utilizar este archivo excepto de conformidad con la Licencia. * Una copia de la licencia se encuentra en * * http://aws.amazon.com/apache2.0 * * o en el archivo de "licencia" que acompaña a este archivo. Este archivo se distribuye * "TAL CUAL", SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sea * expresas o implícitas. Consulte la Licencia para conocer el idioma específico que rige * los permisos y las limitaciones de la Licencia. * // * * Este código fuente está modificado para un sistema purificador de aire simple e inteligente * Escrito por Aaron Kow * / # include "iot_config.h" aws_iot_mqtt_client myClient; // init iot_mqtt_clientchar msg [32]; // bufferint lectura-escritura cnt =0; // recuento de bucles rc =-100; // devuelve el valor placeholdervoid msg_callback (char * src, int len) {Serial.println ("CALLBACK:"); int i; para (i =0; i0,25) {sprintf (mqtt, "Densidad del polvo:% s mg / m3, el filtro de aire está activado", msg); } else {sprintf (mqtt, "Densidad del polvo:% s mg / m3, el filtro de aire está APAGADO", msg); } if ((rc =myClient.publish ("nivel de polvo", mqtt, strlen (mqtt), 1, false))! =0) {Serial.println ("¡Publicación fallida!"); Serial.println (rc); // falla =-6} // para la impresión de depuración Serial.print ("Densidad del polvo:"); Serial.print (datos); Serial.println ("mg / m3");}
dust_config.h C / C ++
Archivo de encabezado para la configuración del sensor de polvo Código fuente/ * Código fuente para un sistema purificador de aire simple e inteligente Escrito por Aaron Kow Licencia:Licencia MIT * / # ifndef dustconfig_h # define dustconfig_h # includeclass dust_setup {public:float init (int, int);}; # endif
dust_config.cpp C / C ++
Código fuente de configuración del sensor de polvo/ * Boceto independiente para usar con un Arduino Fio y un sensor de polvo óptico Sharp GP2Y1010AU0F Blog:http://arduinodev.woofex.net/2012/12/01/standalone-sharp-dust-sensor / Código:https://github.com/Trefex/arduino-airquality/ Para conexiones Pin, consulte el Blog o la página del proyecto github Autores:Cyrille Mdard de Chardon (serialC), Christophe Trefois (Trefex) Registro de cambios:2012-Dic -01:Código limpiado Este trabajo tiene la licencia de Creative Commons Reconocimiento-No comercial-Compartir igual 3.0 Unported. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-sa/3.0/ o envíe una carta a Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, EE. UU. . * // * * Este código fuente está modificado para un sistema purificador de aire simple e inteligente * Escrito por Aaron Kow * / # include "dust_config.h" int sampleTime =280; int deltaTime =40; int sleepTime =9680; float voMeasured =0; float calcVoltage =0; float dustDensity =0; float dust_setup ::init (int meterPin, int ledPower) {digitalWrite (ledPower, LOW); // enciende el LED delayMicroseconds (sampleTime); voMeasured =analogRead (medirPin); // lee el valor del polvo delayMicroseconds (deltaTime); digitalWrite (ledPower, ALTO); // apaga el LED delayMicroseconds (sleepTime); // 0 - 5V mapeado a 0 - 1023 valores enteros // recuperar voltaje calcVoltage =voMeasured * (5.0 / 1024); // ecuación lineal tomada de http://www.howmuchsnow.com/arduino/airquality/ // Chris Nafis (c) 2012 dustDensity =0.17 * calcVoltage - 0.1; return dustDensity; // unidad:mg / m3}
aws_iot_config.h C / C ++
Archivo de encabezado para la configuración de AWS IoT/ * * Copyright 2010-2015 Amazon.com, Inc. o sus filiales. Reservados todos los derechos. * * Con licencia de Apache License, Versión 2.0 (la "Licencia"). * No puede utilizar este archivo excepto de conformidad con la Licencia. * Una copia de la licencia se encuentra en * * http://aws.amazon.com/apache2.0 * * o en el archivo de "licencia" que acompaña a este archivo. Este archivo se distribuye * "TAL CUAL", SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sea * expresas o implícitas. Consulte la Licencia para conocer el idioma específico que rige * los permisos y las limitaciones de la Licencia. * / # ifndef config_usr_h # define config_usr_h // Copia y pega tu configuración en este archivo // ===============================================================# definir AWS_IOT_MQTT_HOST "" #define AWS_IOT_MQTT_PORT 8883 // su port # define AWS_IOT_CLIENT_ID " ". define AWS_IOT_PRIVATE_KEY_FILENAME " " // ===============================================================// Configuración del SDK, NO la modifique # define AWS_IOT_PATH_PREFIX "./certs/"#define AWS_IOT_ROOT_CA_PATH AWS_IOT_PATH_PREFIX AWS_IOT_ROOT_CA_FILENAME // use esto en la llamada de configuración # define AWS_IOT_CERTIFICATE_PATH AWS_IOT_PATH_PREFIX AWS_IOT_CERTIFICATE_FILENAME // use esto en la llamada de configuración # define AWS_IOT_PRIVATE_KEY_PATH AWS_PATHAME end LICENCIA Markdown
Licencia MITLa Licencia MIT (MIT) Copyright (c) 2015 AaronKow Por la presente se otorga, sin cargo, el permiso a cualquier persona que obtenga una copia de este software y los archivos de documentación asociados (el "Software"), para negociar el Software sin restricciones , incluidos, entre otros, los derechos para usar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar y / o vender copias del Software, y permitir que las personas a quienes se les proporcione el Software lo hagan, sujeto a las siguientes condiciones:Los derechos de autor anteriores Este aviso y este aviso de permiso se incluirán en todas las copias o partes sustanciales del Software. EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O IMPLÍCITA, INCLUYENDO, PERO NO LIMITADO A, LAS GARANTÍAS DE COMERCIABILIDAD, ADECUACIÓN PARA UN PROPÓSITO PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO LOS AUTORES O TITULARES DE LOS DERECHOS DE AUTOR SERÁN RESPONSABLES DE NINGÚN RECLAMO, DAÑO U OTRA RESPONSABILIDAD, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O DE OTRO MODO, QUE SURJA DE, FUERA DE O EN RELACIÓN CON EL SOFTWARE O EL USO U OTRAS NEGOCIACIONES EN EL SOFTWARE <. / pre>Código fuente para un sistema purificador de aire simple e inteligente
Repositorio de GitHub para un sistema purificador de aire simple e inteligente https://github.com/AaronKow/Simple-and-Smart-Air-Purifier-System
Esquemas
Yo uso schematic.com para dibujar este esquema.Proceso de manufactura
- Purificador de aire
- Qué es un sistema operativo y sus componentes
- Sensor de temperatura múltiple
- Sistema de monitoreo de basura y calidad del aire interior
- MotionSense
- Seguridad contra incendios de la impresora 3D
- CoroFence - Detector térmico🖖
- Conexión y funcionamiento sencillos del sistema de control SYNTEC
- ¿Cuáles son los componentes de un sistema de aire comprimido?
- Comprender el sistema de suspensión neumática
- Cómo preparar su sistema de gas y aire comprimido para el invierno