Inhoudsopgave:
- Stap 1: Componenten
- Stap 2: Toepassingen
- Stap 3: Montagem Do Ambiente
- Stap 4: Programmeren
- Stap 5: Conclusie
Video: Controle De Gás E Poeira Com O NodeMCU - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
Este foi um trabalho para medir níveis de poeira en gás num dado ambiente, en compartilharestes dados nas nuvens e em seu celular, include dispararum e-mail de alerta caso os valores sejam considerados altos.
Stap 1: Componenten
Andere onderdelen van het gebruik:
- KnooppuntMCU
- Sensor de Gas MQ-2
- Sensor de Poeira en Fumaça Dsm501a Arduino
Een belangrijk observar que a pinagem do NodeMCU geen vervolg op padrão GPIO.
Stap 2: Toepassingen
Andere nuttige toepassingen:
ThingSpeak: een plataforma IoT open source gratuito, die uploadt van informações en posterior visualizáção grafisch em tempo real;
Blynk: u kunt een eenvoudige integratie van smartphones (iOS en Android) en microcontrollers (Arduino, Node MCU, Raspberry Pi, entre outros) maken.
Stap 3: Montagem Do Ambiente
Primeiramente, deve-se criar uma conta no ThingSpeak. Siga zoals beschreven site:
Em seguida, roep het nieuwe kanaal, en definieer het parâmetros que serão recebidos. Você receberá um número de identificação (ID) do canal criado em seu e-mail. Este ID is nodig voor het uploaden van de dados voor een ander kanaal.
Agora, vamos configurar o Blynk:
Baixe o aplicativo do Blynk voor seu Android, e cria uma conta no serviço. Em seguida, crie um novo projeto, escolha a plataforma, neste caso of NodeMCU. U kunt een verzoek indienen om een e-mail te sturen naar een autenticação.
Stap 4: Programmeren
Voor een code van een projeto geen NodeMCU, gebruik een IDE voor Arduino (veja aqui como configurar:
Primeiramente, vamos incluir as bibliotecas necessárias para comunicação com o ThingSpeak e o Blynk:
#erbij betrekken
WiFiClient-client; /* Blynk */ #define BLYNK_PRINT Serienummer #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 analoog
int valor_mq2 = 0;
/* Sensor de Poeira */
#define dsmpin 2 //DSM501A invoer D4 byte buff [2]; ongetekende lange duur; ongetekende lange starttijd; ongetekende lange eindtijd; niet-ondertekende lange sampletime_ms = 1000; niet-ondertekende lange lage pulsbezetting = 0; vlotterverhouding = 0; vlotterconcentratie = 0;
/************************************************** ** * Recebendo Dados do Sensor de Gás **************************************** **********/ ongeldig getGasData(void) {valor_mq2 = 0; vertraging (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(" e-mail voor het ontvangen van berichten"); } } /************************************************** **** * Recebendo Dados do Sensor de Poeira **************************************** ***********/ void getPoeiraData(void) {duur = pulseIn(dsmpin, LOW); lage pulsbezetting += duur; eindtijd = millis(); zweven aux1, aux2 =0; if ((eindtijd-starttijd) > sampletime_ms) { aux1 = (lowpulseoccupancy-eindtijd+starttime + sampletime_ms)/(sampletime_ms*10.0); // Integer percentage 0=>100 aux2 = 0.1*pow(aux1, 2)+(619*aux1)+50; // gebruik specificatiebladcurve if (aux1 42){ Blynk.email("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira!!!"); Serial.println(" e-mail de waarschuwing van de poeira enviado"); } } }
Let op que, em ambas funções acima, utilizamos uma função do Blynk para disparar um e-mail, como um alerta caso os níveis de gás e poeira atinjam eis 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 o ThingSpeak. Voor communicatie met ThingSpeak, gebruik van HTTP-protocollen, voor gebruik van POST.
/************************************************** ** * Enviando os Dados para o ThingSpeak ***************************************** *********/ void sendDataTS(void) {if (client.connect(server, 80)) { String postStr = apiKey; postStr += "&field1="; postStr += String (verhouding); postStr += "&field2="; postStr += String (concentratie); postStr += "&field3="; postStr += String (valor_mq2); postStr += "\r\n\r\n"; client.print("POST /update HTTP/1.1\n"); client.print("Host: api.thingspeak.com\n"); client.print("Verbinding: sluiten\n"); client.print("X-THINGSPEAKAPIKEY: " + apiKey + "\n"); client.print("Inhoudstype: applicatie/x-www-form-urlencoded\n"); client.print ("Inhoudslengte: "); client.print(postStr.length()); cliënt.print("\n\n"); cliënt.print(postStr); vertraging (1000); } klant.stop(); }
Neste codigo, e montado of cabeçalho da requisição HTTP, adicionando o ID do canal criado (apiKey), en uma string strijdo cada um dos parâmetros identificados on criação do canal, com os valores lidos dos sensores de poeira e gás (concentração de gás). No ThingSpeak, você pode visualizar as informações em forma de graficos.
Finalmente, enviamos os mesmos dados para um aplicativo Android com o Blynk:
/************************************************** ** * Enviando Dados voor Blynk ***************************************** ********/ void sendDataBlynk() { Blynk.virtualWrite(10, verhouding); //pin V10 Blynk.virtualWrite (11, concentratie); // pin V11 Blynk.virtualWrite (12, valor_mq2); //virtuele pin V12}
Stap 5: Conclusie
Het is volledig mogelijk om een visuele achtergrond te hebben voor het zien van mobiele informatie over de concentratie van het gas en de omgeving, om samen te werken met de ontwikkeling van het internet.
Auto's:
- Egon Patrick Marques Silva
- Frederico Clark
- Paola Froes
Aanbevolen:
WiFi-controle toevoegen aan elk project -- ESP32-beginnersgids: 5 stappen
Hoe WiFi-controle aan elk project toe te voegen || ESP32 Beginner's Guide: In dit project zal ik je laten zien hoe gemakkelijk/moeilijk het is om een ESP32 te gebruiken met de Arduino IDE om WiFi-controle toe te voegen aan elk elektronicaproject. Onderweg laat ik je zien hoe je de ESP32 gebruikt om een eenvoudige wifi-server te maken en hoe je
Covid-19 Ventilator Controle-eenheid: 10 Stappen
Covid-19 Ventilator Control Unit: dit project is het prototype dat is gebouwd voor de Ventilator Crowd, crowd-sourced ventilator. De publieksgerichte website voor dit project is hier: https://www.ventilatorcrowd.org/Het wordt hier gedeeld zodat anderen kunnen voortbouwen op ons huidige werk, om te leren over
ESP8266 Relais-controle: 3 stappen (met afbeeldingen)
ESP8266 Relay-control: Update (07.02.2017): Ik heb de Windows-versie van het programma bijgewerkt om uw ESP8266 te bedienen. Ik heb een "Small Window"-Mode ("SW") toegevoegd: het zal een microversie van het programma boven je taakbalk aan de linkerkant plaatsen, zodat je
Hoe maak je een mobiel bestuurde robot - Op DTMF gebaseerd - Zonder Microcontroller & Programmering - Controle van overal ter wereld - RoboGeeks: 15 stappen
Hoe maak je een mobiel bestuurde robot | Op DTMF gebaseerd | Zonder Microcontroller & Programmering | Controle van overal ter wereld | RoboGeeks: Wil je een robot maken die overal ter wereld kan worden bestuurd, Lets do It
8x8 LED MATRIX DISPLAY - ARDUINO - BLUETOOTH-CONTROLE: 7 stappen (met afbeeldingen)
8x8 LED MATRIX DISPLAY | ARDUINO | BLUETOOTH-BEDIENING: In deze tutorial laat ik zien hoe je een 8 x 8 LED-matrix bouwt met behulp van een Arduino. REAGEER WAT JE DENKT OVER DIT INSTRUCTABLE, ZODAT IK IN MIJN VERDERE INSTRUCTABLES KAN VERBETEREN Bekijk de video-tutorial voor een beter begrip van de hele