Sommario:
- Passaggio 1: componenti
- Passaggio 2: applicazioni
- Passaggio 3: montaggio in ambiente
- Fase 4: Programmazione
- Passaggio 5: conclusione
Video: Controle De Gás E Poeira Com O NodeMCU: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Este foi um trabalho para medir níveis de poeira e 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 considerdos altos.
Passaggio 1: componenti
I seguenti componenti sono utilizzati per:
- NodoMCU
- Sensore di gas MQ-2
- Sensor de Poeira e Fumaça Dsm501a Arduino
È importante osservare che un pinagem do NodeMCU non segue o padrão GPIO.
Passaggio 2: applicazioni
Le seguenti applicazioni sono utili per l'uso:
ThingSpeak: una piattaforma IoT open source gratuito, che consente di caricare le informazioni e visualizzare la grafica a posteriori in tempo reale;
Blynk: una piattaforma che consente l'integrazione più semplice tra smartphone (iOS e Android) e microcontrollori (Arduino, Node MCU, Raspberry Pi, tra gli altri).
Passaggio 3: montaggio in ambiente
Primeiramente, deve-se criar uma conta no ThingSpeak. Siga come istruzioni sul sito:
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 é necessário para fazer o upload de dados para o seu canal.
Agora, vamos 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.
Fase 4: Programmazione
Per codificare il progetto su NodeMCU, utilizzare un IDE per Arduino (veja aqui come configurar:
Primeiramente, vamos incluir as bibliotecas necessárias para comunicação com o ThingSpeak e o Blynk:
#includere
client WiFi Client; /* Blynk */ #define BLYNK_PRINT Serial #include
Para capturar os dados dos sensors de gás e poeira, foram criadas duas funções:
/* Sensore di gas */#define mq2 A0 //MQ-2 analogico
int valore_mq2 = 0;
/* Sensore di Poeira */
#define dsmpin 2 //DSM501A input D4 byte buff[2]; lunga durata senza segno; tempo di inizio lungo non firmato; tempo di fine lungo non firmato; sampletime_ms lungo senza segno = 1000; unsigned long lowpulsoccupancy = 0; rapporto di galleggiamento = 0; concentrazione galleggiante = 0;
/************************************************** ** * Recbendo Dados do Sensor de Gás ***************************************** *********/ void getGasData(void) { valor_mq2 = 0; ritardo (1000); intN=9; for(int i = 0; i 130){ Blynk.email("[email protected]", "Sensor de Gás", "ALERTA de Concentração de Gás!!!"); Serial.println("email de alerta de gás enviado"); } } /************************************************** **** * Recbendo Dados do Sensor de Poeira *************************************** ***********/ void getPoeiraData(void) { duration = pulseIn(dsmpin, LOW); occupazione a basso impulso += durata; ora di fine = millis(); float aux1, aux2 =0; if ((endtime-starttime) > sampletime_ms) { aux1 = (lowpulseoccupancy-endtime+starttime + sampletime_ms)/(sampletime_ms*10.0); // Percentuale intera 0=>100 aux2 = 0.1*pow(aux1, 2)+(619*aux1)+50; // utilizzando la curva del foglio delle specifiche if (aux1 42){ Blynk.email("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira!!!"); Serial.println(" email de alerta de poeira enviado"); } } }
Osservare 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 elevados:
Blynk.email("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira!!!");
Tenete il passo con i sensori di sicurezza, agora vamos envia-los per ThingSpeak. Per comunicare con ThingSpeak, utilizzare il protocollo HTTP, eseguendo la richiesta di POST.
/************************************************** ** * Enviando os Dados para o ThingSpeak ***************************************** *********/ void sendDataTS(void) { if (client.connect(server, 80)) { String postStr = apiKey; postStr += "&field1="; postStr += String(rapporto); postStr += "&field2="; postStr += String(concentrazione); postStr += "&field3="; postStr += String(valor_mq2); postStr += "\r\n\r\n"; client.print("POST /update HTTP/1.1\n"); client.print("Host: api.thingspeak.com\n"); client.print("Connessione: chiudi\n"); client.print("X-THINGSPEAKAPIKEY: " + apiKey + "\n"); client.print("Content-Type: application/x-www-form-urlencoded\n"); client.print("Lunghezza contenuto: "); client.print(postStr.length()); client.print("\n\n"); client.print(postStr); ritardo(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 identificatodos na criação do canal, com os valores lidos dos sensors de poeira (concentração e proporção de poeira) e gás (concentrazione di gas). No ThingSpeak, você pode visualizar as informações em form de graphics.
Finalmente, abbiamo aggiornato i miei dati per l'applicazione Android con Blynk:
/************************************************** ** * Enviando Dados para o Blynk ***************************************** ********/ void sendDataBlynk() { Blynk.virtualWrite(10, rapporto); //pin V10 Blynk.virtualWrite(11, concentrazione); // pin V11 Blynk.virtualWrite(12, valor_mq2); //pin virtuale V12 }
Passaggio 5: conclusione
Completando este guia com sucesso, você poderá tanto visualizza em seu celular informaçes de concentração de gás e poeira em um dado ambiente, como acompanhar a evolução destes dados através de gráficos pela internet.
Autori:
- Egon Patrick Marques Silva
- Frederico Clark
- Paola Fróes
Consigliato:
Interfacciamento del sensore di gas con Arduino: 4 passaggi
Interfacciamento del sensore di gas con Arduino: Il sensore di fumo MQ-2 è sensibile al fumo e ai seguenti gas infiammabili: GPL, Butano, Propano, Metano, Alcool, Idrogeno. La resistenza del sensore è diversa a seconda del tipo di gas. Il sensore di fumo ha un potenziometro integrato
Limitatore di giri Arduino per motore a gas: 5 passaggi
Arduino RPM Limiter for Gas Engine: Youtube DemonstrationQuesto è per sostituire un regolatore per limitare la velocità di un motore a benzina. Questo limitatore di giri può essere attivato al volo su 3 diverse impostazioni. L'ho installato su un motore monocilindrico Briggs and Stratton e ho usato un Ardu
Leggi il contatore dell'elettricità e del gas (belga/olandese) e carica su Thingspeak: 5 passaggi
Leggi il contatore dell'elettricità e del gas (belga/olandese) e carica su Thingspeak: se sei preoccupato per il tuo consumo energetico o sei solo un nerd, probabilmente vorrai vedere i dati del tuo nuovo contatore digitale sul tuo smartphone. progetto otterremo i dati attuali da un elettrificatore digitale belga o olandese
COMO USAR O SENSOR DE GÁS MQ-7: 5 passaggi
COMO USAR O SENSOR DE GÁS MQ-7: Tutorial per come utilizzare il sensore di Gás MQ-7 per rilevare una presenza di Monóxido de Carbono (CO)
Etilometro Visuino Come utilizzare il sensore di gas alcolico MQ-3: 8 passaggi
Etilometro Visuino Come utilizzare il sensore di gas di alcol MQ-3: In questo tutorial utilizzeremo Arduino UNO, OLED Lcd, modulo sensore di gas di alcol MQ-3 e Visuino per visualizzare i livelli di alcol sull'LCD e impostare il rilevamento del limite. Guarda un video dimostrativo