Სარჩევი:

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 ნაბიჯი
ვიდეო: POCO X5 PRO - ყველაზე დეტალური მიმოხილვა და ტესტები 2024, ნოემბერი
Anonim
Controle De Gás E Poeira Com O NodeMCU
Controle De Gás E Poeira Com O NodeMCU

ეს ნიშნავს, რომ თქვენ გექნებათ შესაძლებლობა შეაფასოთ თქვენი გარემო და შეაფასოთ ის თქვენს მობილურ ტელეფონზე, რომელიც შეიცავს ელექტრონულ ფოსტაზე, რომელიც შეიცავს ელ.ფოსტის სიგნალს, რომლითაც შეგიძლიათ შეაფასოთ თქვენი შესაძლებლობები.

ნაბიჯი 1: კომპონენტები

კომპონენტები
კომპონენტები
კომპონენტები
კომპონენტები

Os seguintes componentes são utilizados:

  • NodeMCU
  • სენსორი de Gas MQ-2
  • Sensor de Poeira e Fumaça Dsm501a Arduino

მნიშვნელოვანია დაიცვან პინეგიმი NodeMCU– ში და არ გამოიყენოთ GPIO.

ნაბიჯი 2: აპლიკაცია

Os seguintes aplicativos são utilizados:

ThingSpeak: ua plataforma IoT ღია კოდის უფასოა, რაც საშუალებას მოგცემთ ატვირთოთ ინფორმაცია და posterior visualização gráfica em tempo რეალური;

ბლინკი: ყველა პლატფორმა, რომელიც მოიცავს სრულყოფილ ინტეგრაციას, ასახავს სმარტფონებს (iOS და Android) და მიკროკონტროლერულ სისტემებს (Arduino, Node MCU, Raspberry Pi, entre outros).

ნაბიჯი 3: Montagem Do Ambiente

Primeiramente, deve-se criar uma conta no ThingSpeak. გაეცანით როგორც ინსტრუქციას საიტზე:

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. ეს არის ID, რომელიც აუცილებელია ფაზისათვის ან არხის ატვირთვაზე.

აგორა, vamos კონფიგურატორი ბლინკში:

გამოიყენეთ და გამოიყენეთ Blynk Android– ზე ან თქვენს Android– ზე, რაც არ ემსახურება. ჩვენ განვსაზღვრავთ, ვიმსჯელოთ ახალ პროექტზე, გამოვიყენო პლატფორმა, შევინახე NodeMCU. ეს არის კრიტერიუმები, რომლებიც მიმართულია ელექტრონული ფოსტის საშუალებით, რათა გამოვიყენოთ ავტონომიური ნიშნები.

ნაბიჯი 4: პროგრამა

Codificação do projeto no NodeMCU, გამოიყენე IDE და Arduino (გამოიყენე კონფიგურაცია:

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

#ჩართეთ

WiFiClient კლიენტი; / * ბლინკი */ #განსაზღვრეთ BLYNK_PRINT სერიული #მოიცავს

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

/ * Sensor de gás */#განსაზღვრა mq2 A0 // MQ-2 ანალოგი

int valor_mq2 = 0;

/ * სენსორი დე პოეირა */

#define dsmpin 2 // DSM501A input D4 byte buff [2]; ხელმოუწერელი ხანგრძლივობა; ხელმოუწერელი ხანგრძლივი დაწყების დრო; ხელმოუწერელი ხანგრძლივი ვადა; ხელმოუწერელი გრძელი sampletime_ms = 1000; ხელმოუწერელი დაბალი დაბალი პულსის ოკუპაცია = 0; float თანაფარდობა = 0; float კონცენტრაცია = 0;

/********************************************** ***Recebendo Dados do Sensor de Gás ************************************** *********/ void getGasData (void) {valor_mq2 = 0; დაგვიანება (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 ("email de alerta de gás enviado"); }} /******************************************* *****Recebendo Dados do Sensor de Poeira ************************************ ***********/ void getPoeiraData (void) {ხანგრძლივობა = pulseIn (dsmpin, LOW); დაბალი პულსის შეკავება += ხანგრძლივობა; დასასრულის დრო = მილი (); float aux1, aux2 = 0; if ((ბოლო დრო-დაწყების დრო)> 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 alerta 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. გამოიყენეთ კომუნიკაცია ThingSpeak, გამოიყენეთ HTTP პროტოკოლით, გამოიყენეთ 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 ("POST /განახლება 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 (კონცენტრაცია) e gás (კონცენტრაცია de gás). No ThingSpeak, ვიზუალიზაციას მოგცემთ როგორც ინფორმაციის გაცნობის ფორმას.

საბოლოო ჯამში, enviamos os mesmos dados Android და Blynk პროგრამების გამოყენებით:

/********************************************** ***ენდიანდო დადოს პარა ო ბლინკი ************************************** ********/ void sendDataBlynk () {Blynk.virtualWrite (10, თანაფარდობა); // pin V10 Blynk.virtualWrite (11, კონცენტრაცია); // pin V11 Blynk.virtualWrite (12, valor_mq2); // ვირტუალური პინი V12}

ნაბიჯი 5: დასკვნა

დაასრულეთ ეს გონივრული ინფორმაცია, ვიზუალიზაციას ვუწევთ ჩვენს მობილურ ტელეფონზე ინფორმაციის კონცენტრაციას და ვცდილობ, რომ ჩვენ ვიმსჯელოთ და გავზარდოთ ინტერნეტი.

ავტოები:

  • ეგონ პატრიკ მარკეს სილვა
  • ფრედერიკო კლარკი
  • პაოლა ფროესი

გირჩევთ: