Tabla de contenido:
- Paso 1: Componentes
- Paso 2: Aplicativos
- Paso 3: Montagem Do Ambiente
- Paso 4: Programación
- Paso 5: Conclusión
Video: Controle De Gás E Poeira Com O NodeMCU: 5 Pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
Este foi um trabalho para medir níveis de poeira y gás num dado ambiente, e compartilhar estes dados nas nuvens e em seu celular, incluindo disparar um e-mail de alerta caso os valores lidos sejam seleccionados altos.
Paso 1: Componentes
Os seguintes componentes são utilizados:
- NodeMCU
- Sensor de gas MQ-2
- Sensor de Poeira e Fumaça Dsm501a Arduino
É importante observar que un pinagem do NodeMCU não segue o padrão GPIO.
Paso 2: Aplicativos
Os seguintes aplicativos são used:
ThingSpeak: una plataforma IoT de código abierto gratuito, que permite cargar información y visualización posterior gráfica en tempo real;
Blynk: una plataforma que permite la integración de más simples entre smartphones (iOS y Android) con microcontroladores (Arduino, Node MCU, Raspberry Pi, entre otros).
Paso 3: Montagem Do Ambiente
Primeiramente, deve-se criar uma conta no ThingSpeak. Siga las instrucciones del sitio:
Em seguida, crie um novo canal, e defina os parâmetros que serão recebidos. Você receberá um número de identificação (ID) do canal criado em seu e-mail. Este ID es necesario para fazer o upload de dados para o seu canal.
Agora, vamos a configurar o Blynk:
Baixe o aplicativo do Blynk para o seu Android, e cria uma conta no serviço. Em seguida, crie um novo projeto, e escolha a plataforma, neste caso o NodeMCU. Após a criação do projeto, será enviado para seu e-mail um token de autenticação.
Paso 4: Programación
Para a codificação do projeto no NodeMCU, utilizamos un IDE do Arduino (veja aqui como configurar:
Primeiramente, vamos a incluir como bibliotecas necessárias para comunicação com o ThingSpeak e o Blynk:
#incluir
Cliente WiFiClient; / * Blynk * / #define BLYNK_PRINT Serie #include
Para capturar los datos de los sensores de gas e poeira, foram criadas duas funções:
/ * Sensor de gás * / # define mq2 A0 // MQ-2 analógico
int valor_mq2 = 0;
/ * Sensor de Poeira * /
#define dsmpin 2 // DSM501A input D4 byte buff [2]; larga duración sin firmar; tiempo de inicio largo sin firmar; tiempo de finalización largo sin firmar; unsigned long sampletime_ms = 1000; unsigned long lowpulseoccupancy = 0; relación de flotación = 0; concentración de flotación = 0;
/ ********************************************** ** * Recebendo Dados do Sensor de Gás *************************************** ********* / void getGasData (void) {valor_mq2 = 0; retraso (1000); int N = 9; para (int i = 0; i 130) {Blynk.email ("[email protected]", "Sensor de Gás", "ALERTA de Concentração de Gás !!!"); Serial.println ("correo electrónico de alerta de gás enviado"); }} / ******************************************** **** * Recebendo Dados do Sensor de Poeira ************************************* *********** / void getPoeiraData (void) {duración = pulseIn (dsmpin, LOW); baja ocupación de pulsos + = duración; hora de finalización = millis (); flotar aux1, aux2 = 0; if ((hora de finalización-hora de inicio)> sampletime_ms) {aux1 = (lowpulseoccupancy-endtime + starttime + sampletime_ms) / (sampletime_ms * 10.0); // Porcentaje entero 0 => 100 aux2 = 0.1 * pow (aux1, 2) + (619 * aux1) +50; // usando la curva de la hoja de especificaciones if (aux1 42) {Blynk.email ("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira !!!"); Serial.println ("email de alerta de poeira enviado"); }}}
Observe que, em ambas funções acima, utilizamos uma função do Blynk para disparar um email, como um alerta caso os níveis de gás e poeira atinjam níveis eleva:
Blynk.email ("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira !!!");
Tendo os dados dos sensores salvos, agora vamos envia-los para o ThingSpeak. Para comunicação com o ThingSpeak, utilizaremos o protocolo HTTP, efetuando uma requisição POST.
/ ********************************************** ** * Enviando os Dados para o ThingSpeak *************************************** ********* / void sendDataTS (void) {if (client.connect (servidor, 80)) {String postStr = apiKey; postStr + = "& campo1 ="; postStr + = Cadena (proporción); postStr + = "& campo2 ="; postStr + = String (concentración); postStr + = "& field3 ="; postStr + = String (valor_mq2); postStr + = "\ r / n / r / n"; client.print ("POST / actualización HTTP / 1.1 / n"); client.print ("Host: api.thingspeak.com / n"); client.print ("Conexión: cerrar / n"); client.print ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); client.print ("Tipo de contenido: aplicación / x-www-form-urlencoded / n"); client.print ("Content-Length:"); client.print (postStr.length ()); client.print ("\ n / n"); client.print (postStr); retraso (1000); } client.stop (); }
Neste código, é montado o cabeçalho da requisição HTTP, adicionando o ID do canal criado (apiKey), e uma string contendo cada um dos parâmetros identificados na criação do canal, com os valores lidos dos sensores de poeira (concentração e proporção de poeira) e gás (concentración de gás). No ThingSpeak, você pode visualizar as informações em forma de gráficos.
Finalmente, enviamos el mesmos dados para um aplicativo Android com o Blynk:
/ *********************************************** ** * Enviando Dados para o Blynk **************************************** ******** / void sendDataBlynk () {Blynk.virtualWrite (10, proporción); // pin V10 Blynk.virtualWrite (11, concentración); // pin V11 Blynk.virtualWrite (12, valor_mq2); // pin virtual V12}
Paso 5: Conclusión
Completando este guia con sucesos, você poderá tanto visualizar en seu celular información de concentración de gas y poesía en un ambiente dado, como acompanhar una evolución de datos através de gráficos pela internet.
Autores:
- Egon Patrick Marques Silva
- Frederico Clark
- Paola Fróes
Recomendado:
Interfaz del sensor de gas con Arduino: 4 pasos
Interfaz del sensor de gas con Arduino: El sensor de humo MQ-2 es sensible al humo y a los siguientes gases inflamables: GLP, butano, propano, metano, alcohol, hidrógeno. La resistencia del sensor es diferente según el tipo de gas. El sensor de humo tiene un potenciómetro incorporado
Limitador de RPM Arduino para motor de gas: 5 pasos
Limitador de RPM Arduino para motor de gasolina: demostración de Youtube Esto es para reemplazar un gobernador para limitar la velocidad de un motor de gasolina. Este limitador de RPM se puede cambiar a 3 configuraciones diferentes sobre la marcha. Instalé esto en un motor de un solo cilindro, Briggs and Stratton y usé un Ardu
Lea el medidor de gas y electricidad (belga / holandés) y cárguelo en Thingspeak: 5 pasos
Lea Medidor de electricidad y gas (belga / holandés) y cárguelo en Thingspeak: si está preocupado por su consumo de energía o simplemente es un poco nerd, probablemente quiera ver los datos de su nuevo y elegante medidor digital en su teléfono inteligente. proyecto obtendremos los datos actuales de un electr digital belga u holandés
COMO USAR O SENSOR DE GÁS MQ-7: 5 Pasos
COMO USAR O SENSOR DE GÁS MQ-7: Tutorial de como usar o sensor de gás MQ-7 para detectar a presença de Monóxido de Carbono (CO)
Controle los electrodomésticos con NodeMCU (ESP8266) y la aplicación Blynk: 8 pasos (con imágenes)
Controle los electrodomésticos usando NodeMCU (ESP8266) y la aplicación Blynk: en este tutorial, aprenderemos cómo usar la aplicación Blynk y NodeMCU (ESP8266) para controlar la lámpara (cualquier otro electrodoméstico estará bien), la combinación será ser a través de Internet. El propósito de este instructivo es mostrar la simp