সুচিপত্র:

Controle De Gás E Poeira Com O NodeMCU: 5 ধাপ
Controle De Gás E Poeira Com O NodeMCU: 5 ধাপ

ভিডিও: Controle De Gás E Poeira Com O NodeMCU: 5 ধাপ

ভিডিও: Controle De Gás E Poeira Com O NodeMCU: 5 ধাপ
ভিডিও: How to make a Nodemcu GAS LEVEL MONITORING system | Blynk with GAS LEVEL MONITORING [MQ2 sensor] 2024, নভেম্বর
Anonim
Controle De Gás E Poeira Com O NodeMCU
Controle 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 alertta caso os valores lidos sejam considerados altos।

ধাপ 1: কম্পোনেন্টস

কম্পোনেন্টস
কম্পোনেন্টস
কম্পোনেন্টস
কম্পোনেন্টস

ওস seguintes উপাদানগুলি

  • NodeMCU
  • সেন্সর ডি গ্যাস এমকিউ -২
  • Sensor de Poeira e Fumaça Dsm501a Arduino

NodeMCU não segue o padrão GPIO থেকে গুরুত্বপূর্ণ

ধাপ 2: অ্যাপলিক্যাটিভস

Se seguintes aplicativos são utilizados:

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

Blynk: uma plataforma que permite integração mais simples entre smartphones (iOS e Android) com microcontroladores (Arduino, Node MCU, Raspberry Pi, entre outros)।

ধাপ 3: Montagem Do Ambiente

Primeiramente, deve-se criar uma conta no ThingSpeak। Siga যন্ত্র হিসেবে সাইট করে:

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 é essentialário para fazer o upload de dados para o seu খাল।

আগোরা, ভ্যামোস কনফিগারার ও ব্লাইঙ্ক:

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।

ধাপ 4: প্রোগ্রাম

একটি কোডিফিকেশন ডো প্রজেটো নো নোডএমসিইউ, ইউডিজিমাস আইডিই ডু আরডুইনো (veja aqui como configurar:

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

#অন্তর্ভুক্ত

ওয়াইফাই ক্লায়েন্ট ক্লায়েন্ট; / * Blynk */ #BLYNK_PRINT সিরিয়াল #অন্তর্ভুক্ত করুন

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;

/ * সেন্সর ডি পোইরা */

#ডিএসএমপিন 2 নির্ধারণ করুন // DSM501A ইনপুট D4 বাইট বাফ [2]; স্বাক্ষরবিহীন দীর্ঘ সময়কাল; স্বাক্ষরবিহীন দীর্ঘ শুরুর সময়; স্বাক্ষরবিহীন দীর্ঘ শেষ সময়; স্বাক্ষরবিহীন দীর্ঘ নমুনা সময়_এমএস = 1000; স্বাক্ষরবিহীন দীর্ঘ নিম্নপুলসোকুপেন্সি = 0; ভাসা অনুপাত = 0; ভাসমান ঘনত্ব = 0;

/*************************************************** ***Recebendo Dados do Sensor de Gás ******************************************* *********/ অকার্যকর getGasData (অকার্যকর) {valor_mq2 = 0; বিলম্ব (1000); int N = 9; জন্য (int i = 0; i 130) {Blynk.email ("[email protected]", "Sensor de Gás", "ALERTA de Concentração de Gás !!!"); Serial.println ("email de alertta de gás enviado"); }} /************************************************* *****Recebendo Dados do Sensor de Poeira ***************************************** ***********/ void getPoeiraData (void) {period = pulseIn (dsmpin, LOW); lowpulseoccupancy += সময়কাল; শেষ সময় = মিলিস (); ভাসা aux1, aux2 = 0; যদি ((শেষ সময়-শুরুর সময়)> sampletime_ms) {aux1 = (lowpulseoccupancy-endtime + starttime + sampletime_ms)/(sampletime_ms*10.0); // পূর্ণসংখ্যা শতাংশ 0 => 100 aux2 = 0.1*pow (aux1, 2)+(619*aux1) +50; // স্পেক শীট কার্ভ ব্যবহার করে যদি (aux1 42) {Blynk.email ("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira !!!"); Serial.println ("email de alertta de poeira enviado"); }}}

কিউ, এম অ্যাম্বাস ফানেস এসিমা, ইউটিলিজামোস উমা ফানিও ডো ব্লিনক প্যারা ডিসপারার ইম ইমেল, কমো উম অ্যালার্টা ক্যাসো ওস নোভিস ডি গেস ই পোয়েরা এটিনজাম নেভিস এলিভাদোস:

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। 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 (server, 80)) {String postStr = apiKey; postStr += "& field1 ="; postStr += স্ট্রিং (অনুপাত); postStr += "& field2 ="; postStr += স্ট্রিং (ঘনত্ব); postStr += "& field3 ="; postStr += স্ট্রিং (valor_mq2); postStr += "\ r / n / r / n"; client.print ("পোস্ট /আপডেট HTTP /1.1 / n"); client.print ("হোস্ট: api.thingspeak.com / n"); client.print ("সংযোগ: বন্ধ / n"); client.print ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); client.print ("বিষয়বস্তু-প্রকার: অ্যাপ্লিকেশন/x-www-form-urlencoded / n"); client.print ("বিষয়বস্তু-দৈর্ঘ্য:"); client.print (postStr.length ()); client.print ("\ n / n"); client.print (postStr); বিলম্ব (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 gás (concentração de gás)। No ThingSpeak, você pode visualizar as informações em forma de gráficos।

চূড়ান্ত, enviamos os mesmos dados para um aplicativo Android com o Blynk:

/*************************************************** ***Enviando Dados para o Blynk ******************************************** ********/ অকার্যকর sendDataBlynk () {Blynk.virtualWrite (10, অনুপাত); // পিন V10 Blynk.virtualWrite (11, ঘনত্ব); // পিন V11 Blynk.virtualWrite (12, valor_mq2); // ভার্চুয়াল পিন V12}

ধাপ 5: উপসংহার

Completendo este guia com sucesso, você poderá tanto visualizar 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।

Autores:

  • ইগন প্যাট্রিক মার্কস সিলভা
  • ফ্রেডেরিকো ক্লার্ক
  • পাওলা ফ্রিস

প্রস্তাবিত: