Orodha ya maudhui:

Controle De Gás E Poeira Com O NodeMCU: 5 Hatua
Controle De Gás E Poeira Com O NodeMCU: 5 Hatua

Video: Controle De Gás E Poeira Com O NodeMCU: 5 Hatua

Video: Controle De Gás E Poeira Com O NodeMCU: 5 Hatua
Video: How to make a Nodemcu GAS LEVEL MONITORING system | Blynk with GAS LEVEL MONITORING [MQ2 sensor] 2024, Novemba
Anonim
Controle De Gás E Poeira Com O NodeMCU
Controle De Gás E Poeira Com O NodeMCU

Hili ni jukumu la kutafakari kwa njia nyingine kwa sababu inajumuisha idadi ya watu, na kushiriki katika orodha hiyo ya barua pepe, ambayo inaweza kutofautisha barua pepe ya arifa ya barua pepe ikiwa ni pamoja na orodha ya watu wengine.

Hatua ya 1: Vipengele

Vipengele
Vipengele
Vipengele
Vipengele

Vipengele vya Os seguintes são utilizados:

  • NodeMCU
  • Sensor de Gesi MQ-2
  • Sensor de Poeira na Fumaça Dsm501a Arduino

Muhimu ni muhimu kuona kwamba pinagem hufanya NodeMCU na sehemu ya GPIO.

Hatua ya 2: Aplicativos

Os seguintes aplicativos são utilizados:

ThingSpeak: uma plataforma IoT chanzo wazi, turuhusu kupakia habari kwa habari za nyuma na kuona baadaye kwa muda halisi;

Blynk.

Hatua ya 3: Montagem Fanya Ambiente

Primeiramente, deve-se criar uma conta no ThingSpeak. Siga kama tovuti inayofundishwa:

Em seguida, crie um novo canal, e defina os parâmetros que serão recebidos. Kupokea barua pepe kwa kitambulisho (ID) kufanya anwani ya barua pepe. Kitambulisho hiki ni cha lazima kwa fazer au upload kutoka kwa baba kwa mfereji wa maji.

Agora, usanidi wa mfumo wa Blynk:

Baixe o aplicativo do Blynk kwa kuwa wewe ni Android, na 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 sign to autenticação.

Hatua ya 4: Programação

Para a codificação do projeto no NodeMCU, utumiaji wa IDE kufanya Arduino (veja aqui como configurar:

Primeiramente, vamos incluir kama bibliotecas mahitaji ya mawasiliano kwa njia ya ThingSpeak na o Blynk:

# pamoja

Mteja wa Wateja wa WiFi; / * Blynk * / #fafanua BLYNK_PRINT Serial # pamoja na

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;

/ Sensor de Poeira * /

#fafanua dsmpin 2 // DSM501A pembejeo D4 byte buff [2]; muda mrefu usiosainiwa; muda wa kuanza usiosainiwa; muda wa mwisho usiotiwa saini; sampuli za muda mrefu_ms = 1000; utunzaji mdogo wa muda mrefu = 0; uwiano wa kuelea = 0; mkusanyiko wa kuelea = 0;

/ ***************************************************** ** * Recebendo Dados do Sensor de Gás ***************************************** ********* / utupu GetGasData (utupu) {valor_mq2 = 0; kuchelewesha (1000); int N = 9; kwa (int i = 0; i 130) {Blynk.email ("[email protected]", "Sensor de Gás", "ALERTA de Concentração de Gás !!!"); Serial.println ("barua pepe de alerta de gás enviado"); }} / / **** * Recebendo Dados do Sensor de Poeira *************************************** *********** / utupu GetPoeiraData (batili) {duration = pulseIn (dsmpin, LOW); unywaji mdogo + = muda; wakati wa mwisho = millis (); kuelea aux1, aux2 = 0; ikiwa ((wakati wa kuanza-wakati wa mwisho)> sampletime_ms) {aux1 = (wakati wa mwisho wa kunywa -wakati wa mwisho + wakati wa kuanza + sampletime_ms) / (sampletime_ms * 10.0); // Asilimia kamili 0 => 100 aux2 = 0.1 * pow (aux1, 2) + (619 * aux1) +50; // kutumia curve ya karatasi ikiwa (aux1 42) {Blynk.email ("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira !!!"); Serial.println ("barua pepe de alerta de poeira enviado"); }}}

Chunguza, ikiwa ni pamoja na kujifurahisha, utumie umaarufu wa kufanya Blynk kwa barua pepe tofauti, kama vile onyo la barua pepe na maoni yako ni pamoja na:

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 (batili) {if (client.connect (server, 80)) {String postStr = apiKey; postStr + = "& uwanja1 ="; postStr + = Kamba (uwiano); postStr + = "& shamba2 ="; postStr + = Kamba (mkusanyiko); postStr + = "& uwanja3 ="; postStr + = Kamba (valor_mq2); postStr + = "\ r / n / r / n"; alama ya mteja ("POST / sasisha HTTP / 1.1 / n"); mteja.print ("Mwenyeji: api.thingspeak.com / n"); alama ya mteja ("Uunganisho: funga / n"); alama ya mteja ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); mteja.print ("Aina ya Maudhui: matumizi / x-www-form-urlencoded / n"); alama ya mteja ("Urefu wa Yaliyomo:"); alama ya mteja (postStr.length ()); alama ya mteja ("\ n / n"); alama ya mteja (postStr); kuchelewesha (1000); } mteja.acha (); }

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çãoe propira e gás (concentração de gás). Hakuna ThingSpeak, kama sauti ya kuona kama habari juu ya fomu ya habari.

Mwisho, enviamos os mesmos dados para um aplicativo Android com o Blynk:

/ ***************************************************** ** * Enviando Dados para o Blynk ***************************************** ******** / batili sendDataBlynk () {Blynk.virtualWrite (10, uwiano); // pini V10 Blynk. VirtualWrite (11, mkusanyiko); // pini V11 Blynk. VirtualWrite (12, valor_mq2); // pini halisi V12}

Hatua ya 5: Hitimisho

Kukamilisha hali hii ni mafanikio, ni muhimu kuona picha hizi kwa njia ya maandishi kwa habari inayotokana na kujikita katika maeneo mengine, ili kupata huduma ya mtandao wa wavuti.

Autores:

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

Ilipendekeza: