Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Për më tepër ju mund të merrni një mesazh nga një mjedis i jashtëm, duke i krahasuar ato me ndihmën e një telefoni celular, duke përfshirë një e-mail në alarmin tuaj, i cili ju lejon të konsideroni një vlerë të konsiderueshme.
Hapi 1: Komponentët
Përzgjedh përbërësit e përdoruesit:
- NodeMCU
- Sensori i gazit MQ-2
- Sensor de Poeira e Fumaça Dsm501a Arduino
Observshtë e rëndësishme të vëzhgoni një pinagem të NodeMCU që të mos fillojë me GPIO.
Hapi 2: Aplikimet
Os seguintes aplicativos são utilizados:
ThingSpeak: të gjitha platformat IoT me burim të hapur falas, për të lejuar ngarkimin e informacionit dhe vizualizimin e pasmë të grimcave në tempo reale;
Përfundim: për sa i përket integrimit të thjeshtë të telefonave inteligjentë (iOS dhe Android) me mikrokontrollues (Arduino, Node MCU, Raspberry Pi, dalje jashtë).
Hapi 3: Montagem Do Ambiente
Primeiramente, deve-se criar uma conta no ThingSpeak. Siga si instruções në faqen:
Em seguida, crie um novo canal, e definina os parâmetros que serão recebidos. Você receberá um número de identificação (ID) do të bëjë një kërkesë me anë të kanalit të postës elektronike. Este ID është e nevojshme për fazën e ngarkimit të dados para o seu kanalit.
Agora, konfigurimi i vamos ose Blynk:
Aplikoni për të aplikuar për Blynk në Android, nëse nuk keni shërbim. Em seguida, crie um novo projeto, dhe escolha a plataforma, neste caso o NodeMCU. Após a criação do projeto, duke përdorur një e-mail për një shenjë autenticação.
Hapi 4: Programim
Për një kodifikim për të bërë pa NodeMCU, përdorni një IDE për Arduino (konfiguruesi i të dhënave të tjera:
Primeiramente, vamos incluir as bibliotecas ανάγκárias para comunicação com o ThingSpeak e o Blynk:
#përfshi
Klienti WiFiClient; / * Blynk */ #define BLYNK_PRINT Seriali #përfshi
Para capturar os dados dos sensores de gás e poeira, foram criadas duas funções:
/ * Sensor de gás */#përcaktoj mq2 A0 // MQ-2 analog
int valor_mq2 = 0;
/ * Sensori de Poeira */
#define dsmpin 2 // DSM501A input D4 byte buff [2]; kohëzgjatje e panënshkruar; orar i gjatë i pa firmosur; afat i gjatë i panënshkruar; sampletime_ms pa shenja të gjata = 1000; okupancë e ulët e nënshkruar e gjatë = 0; raporti notues = 0; përqendrimi i notit = 0;
/********************************************* ***Recebendo Dados do Sensor de Gás ************************************* *********/ void getGasData (pavlefshme) {valor_mq2 = 0; vonesa (1000); int N = 9; për (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 (pavlefshme) {kohëzgjatja = impulsIn (dsmpin, LOW); okupancë e ulët += kohëzgjatje; koha e përfundimit = millis (); noton aux1, aux2 = 0; if ((koha e fillimit-fillimi)> sampletime_ms) {aux1 = (lowpulseoccupancy-endtime + starttime + sampletime_ms)/(sampletime_ms*10.0); // Përqindja e plotë 0 => 100 aux2 = 0.1*pow (aux1, 2)+(619*aux1) +50; // duke përdorur kurbën e fletës së specifikimit nëse (aux1 42) {Blynk.email ("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira !!!"); Serial.println ("email de alerta de poeira enviado"); }}}
Vëzhgoni ato, duke përdorur ambasadat tona, duke përdorur shërbimet tona në Blynk për shpërndarjen e postës elektronike, si dhe për të kuptuar se si të përdorni të njëjtat nivele:
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. Për të komunikuar me ThingSpeak, përdorni protokollin HTTP, nëse dëshironi të kërkoni POST.
/********************************************* ***Enviando os Dados para o ThingSpeak ************************************* *********/ void sendDataTS (void) {if (client.connect (server, 80)) {String postStr = apiKey; postStr += "& field1 ="; postStr += Vargu (raporti); postStr += "& field2 ="; postStr += Vargu (përqendrimi); postStr += "& field3 ="; postStr += String (valor_mq2); postStr += "\ r / n / r / n"; client.print ("POST /përditëso HTTP /1.1 / n"); client.print ("Pritësi: api.thingspeak.com / n"); client.print ("Lidhja: mbyll / n"); client.print ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); client.print ("Lloji i përmbajtjes: aplikacioni/x-www-forma-urlencoded / n"); client.print ("Përmbajtja-Gjatësia:"); klient.print (postStr.length ()); client.print ("\ n / n"); klient.print (postStr); vonesa (1000); } client.stop (); }
Neste código, é montado o cabeçalho për të kërkuar 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 de përqendruar e gás (concentração de gás). No ThingSpeak, përdorni një pamje vizualizuese si informacione në formën e gráficos.
Përfundimisht, përdorimi i sistemit operativ Android për të aplikuar Android në Blynk:
/********************************************* ***Enviando Dados para o Blynk ************************************** ********/ void sendDataBlynk () {Blynk.virtualWrite (10, raporti); // pin V10 Blynk.virtualWrite (11, përqendrim); // pin V11 Blynk.virtualWrite (12, valor_mq2); // pin virtual V12}
Hapi 5: Përfundim
Plotësoni këtë udhëzim të suksesshëm, mund të shihni një pamje vizuale nga një celular që mund të informojë përqëndrimin e të dhënave tona në një mjedis të jashtëm, si dhe të evoluojë një detyrë të padiskutueshme në internet.
Autore:
- Egon Patrick Marques Silva
- Frederico Clark
- Paola Fróes