Sisällysluettelo:

Ohjaus De Gás E Poeira Com O NodeMCU: 5 vaihetta
Ohjaus De Gás E Poeira Com O NodeMCU: 5 vaihetta

Video: Ohjaus De Gás E Poeira Com O NodeMCU: 5 vaihetta

Video: Ohjaus De Gás E Poeira Com O NodeMCU: 5 vaihetta
Video: Sensor de Gás e Fumaça Arduino ao Quadrado 2024, Heinäkuu
Anonim
Ohjaus De Gás E Poeira Com O NodeMCU
Ohjaus De Gás E Poeira Com O NodeMCU

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 Regardrados altos.

Vaihe 1: Komponentit

Komponentit
Komponentit
Komponentit
Komponentit

Os seguintes komponentit são utilizados:

  • NodeMCU
  • Kaasuanturi MQ-2
  • Anturi Poeira ja Fumaça Dsm501a Arduino

Tärkeä havainto on pinagem NodeMCU: lle tai GPIO: lle.

Vaihe 2: Sovellukset

Os seguintes aplicativos são utilizados:

ThingSpeak: uma plataforma IoT open source free, que permite upload de informações e posterior visualização gráfica em tempo real;

Blynk: uma plataforma que permite integração mais simples entre älypuhelimissa (iOS ja Android) ja mikrokontrollerit (Arduino, Node MCU, Raspberry Pi, entro outros).

Vaihe 3: Montagem Do Ambiente

Primeiramente, deve-se criar uma conta no ThingSpeak. Siga ohjeiden mukaan:

Em seguida, crie um novo canal, e defina os parâmetros que serão recebidos. Você receberá um número de identifação (ID) do canal criado em seu email. Este ID on välttämätön fazer tai upload de dados para o seu -kanava.

Agora, vamos configurar tai Blynk:

Baixe tai aplicativo do Blynk Androidille, ja se ei sisällä palvelua. Em seguida, crie um novo projeto, e escolha a plataforma, neste caso tai NodeMCU. Após a criação do projeto, será enviado para seu e-mail um token de autenticação.

Vaihe 4: Ohjelma

Para a codificação do projeto no no NodeMCU, use IDAM do Arduino (veja aqui como configurar:

Primeiramente, vamos incluir as bibliotecas requiredárias para comunicação com o ThingSpeak e Blynk:

#sisältää

WiFiClient -asiakas; / * Blynk */ #define BLYNK_PRINT Serial #include

Para capturar os dados dos sensores de gás e poeira, foram criadas duas funções:

/ * Sensor de gás */#define mq2 A0 // MQ-2 analog

int valor_mq2 = 0;

/ * Poeiran anturi */

#define dsmpin 2 // DSM501A -tulo D4 tavu buff [2]; allekirjoittamaton pitkä kesto; allekirjoittamaton pitkä aloitusaika; allekirjoittamaton pitkä päättymisaika; allekirjoittamaton pitkä sampletime_ms = 1000; allekirjoittamaton pitkä matalakäyttöaste = 0; kelluva suhde = 0; kellukonsentraatio = 0;

/************************************************* ***Recebendo Dados do Sensor de Gás **************************************** *********/ void getGasData (mitätön) {valor_mq2 = 0; viive (1000); int N = 9; for (int i = 0; i 130) {Blynk.email ("[email protected]", "Sensor de Gás", "ALERTA de Concentração de Gás !!!"); Serial.println ("sähköposti de alerta de gás enviado"); }} /********************************************** ***** Recebendo Dados do Sensor de Poeira ************************************** ***********/ void getPoeiraData (void) {duration = pulseIn (dsmpin, LOW); matala pulssikuormitus += kesto; päättymisaika = millis (); float aux1, aux2 = 0; if ((päättymisaika-aloitusaika)> sampletime_ms) {aux1 = (lowpulseoccupancy-endtime + starttime + sampletime_ms)/(sampletime_ms*10.0); // Kokonaislukuprosentti 0 => 100 aux2 = 0,1*pow (aux1, 2)+(619*aux1) +50; // käyttämällä teknisen taulukon käyrää, jos (aux1 42) {Blynk.email ("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira !!!"); Serial.println ("sähköposti de alerta de poeira enviado"); }}}

Tarkkaile 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 !!!");

Tendo os dados dos sensores salvos, agora vamos envia-los para tai ThingSpeak. ThungSpeak -kommunikaatiokommentti, HTTP -protokollan käyttö tai käyttö, PET -protokolla.

/************************************************* ***Enviando os Dados para tai ThingSpeak ***************************************** *********/ void sendDataTS (void) {if (client.connect (server, 80)) {String postStr = apiKey; postStr += "& field1 ="; postStr += Jono (suhde); postStr += "& field2 ="; postStr += Jono (keskittyminen); postStr += "& field3 ="; postStr += Jono (valor_mq2); postStr += "\ r / n / r / n"; client.print ("POST /päivitä HTTP /1.1 / n"); client.print ("Isäntä: api.thingspeak.com / n"); client.print ("Yhteys: sulje / n"); client.print ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); client.print ("Content-Type: application/x-www-form-urlencoded / n"); client.print ("Content-Length:"); client.print (postStr.length ()); client.print ("\ n / n"); client.print (postStr); viive (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 identifados na criação do canal, com os valores lidos dos sensores de poeira (keskittyminen ja osuudet) e gás (keskittyminen). No ThingSpeak, vokopode visualizar in informationções em forma de gráficos.

Finalmente, enviamos os mesmos dados para um applicativo Android com or Blynk:

/************************************************* ***Enviando Dados para o Blynk ***************************************** ********/ void sendDataBlynk () {Blynk.virtualWrite (10, suhde); // nasta V10 Blynk.virtualWrite (11, pitoisuus); // nasta V11 Blynk.virtualWrite (12, valor_mq2); // virtuaalinen nasta V12}

Vaihe 5: Conclusão

Completando este guia Comcesso, você poderá tanto visualizar em seu celular informationções de koncentração de gás e poeira em um dado ambiente, como acompanhar and evolução destes dados através de gráficos pela internet.

Autores:

  • Egon Patrick Marques Silva
  • Frederico Clark
  • Paola Fróes

Suositeltava: