Isi kandungan:
- Langkah 1: Komponen
- Langkah 2: Aplicativos
- Langkah 3: Montagem Do Ambiente
- Langkah 4: Programação
- Langkah 5: Kesimpulannya
Video: Controle De Gás E Poeira Com O NodeMCU: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
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 selular, incluindo disparar um e-mail de alerta caso os valores lidos sejam thinkados altos.
Langkah 1: Komponen
Os seguintes komponenes são utilizados:
- NodeMCU
- Sensor de Gas MQ-2
- Sensor de Poeira e Fumaça Dsm501a Arduino
É penting pemerhati que a pinagem do NodeMCU não segue o padrão GPIO.
Langkah 2: Aplicativos
Os seguintes aplicativos são utilizados:
ThingSpeak: uma plataforma IoT open source gratuito, que permite upload de informações e posterior visualização gráfica em tempo real;
Blynk: uma plataforma que permite integração mais simles entre smartphones (iOS e Android) com microcontroladores (Arduino, Node MCU, Raspberry Pi, entre outros).
Langkah 3: Montagem Do Ambiente
Primeiramente, deve-se criar uma conta no ThingSpeak. Siga sebagai instrukses melakukan laman web:
Em seguida, terusan crie um novo, e defina os parâmetros que serão recebidos. Você receberá um número de identificação (ID) do canal criado em seu e-mel. Este ID diperlukan untuk memuat naik terusan de dados para o seu.
Agora, vamos configurar o Blynk:
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. Apo a criação do projeto, será enviado para seu e-mail um token de autenticação.
Langkah 4: Programação
Sebagai codificação do projeto no NodeMCU, gunakan IDE do Arduino (veja aqui como configurar:
Primeiramente, vamos incluir as bibliotecas requárias para comunicação com o ThingSpeak e e Blynk:
#sertakan
Pelanggan WiFiClient; / * Blynk * / #tentukan BLYNK_PRINT Serial #masuk
Para capturar os dados dos sensores de gás e poeira, foram criadas duas funções:
/ * Sensor de gás * / # tentukan mq2 A0 // MQ-2 analog
int valor_mq2 = 0;
/ * Sensor de Poeira * /
#define dsmpin 2 // DSM501A input D4 bait buff [2]; jangka masa panjang yang tidak ditandatangani; waktu mula lama yang tidak ditandatangani; waktu tamat lama yang tidak ditandatangani; sampletime_ms = 1000 yang tidak ditandatangani; lowpulseoccupancy panjang yang tidak ditandatangani = 0; nisbah apungan = 0; kepekatan apungan = 0;
/ ************************************************* ** * Recebendo Dados do Sensor de Gás ***************************************** ********* / batal getGasData (tidak sah) {valor_mq2 = 0; kelewatan (1000); int N = 9; untuk (int i = 0; i 130) {Blynk.email ("[email protected]", "Sensor de Gás", "ALERTA de Concentração de Gás !!!"); Serial.println ("e-mel de alerta de gás enviado"); }} / *********************************************** **** * Recebendo Dados do Sensor de Poeira *************************************** *********** / void getPoeiraData (void) {tempoh = pulseIn (dsmpin, LOW); lowpulseoccupancy + = tempoh; waktu tamat = milis (); apungan aux1, aux2 = 0; jika ((endtime-starttime)> sampletime_ms) {aux1 = (lowpulseoccupancy-endtime + starttime + sampletime_ms) / (sampletime_ms * 10.0); // Peratusan integer 0 => 100 aux2 = 0.1 * pow (aux1, 2) + (619 * aux1) +50; // menggunakan keluk lembaran spesifikasi jika (aux1 42) {Blynk.email ("[email protected]", "Sensor de Poeira", "ALERTA de Concentração de Poeira !!!"); Serial.println ("e-mel de alerta de poeira enviado"); }}}
Perhatikan que, em ambas funções acima, utilizamos uma função do Blynk para disparar um email, como um alerta caso os níveis de gás e poeira atinjam níveis 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. Para 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 + = "& bidang1 ="; postStr + = Rentetan (nisbah); postStr + = "& bidang2 ="; postStr + = Rentetan (kepekatan); postStr + = "& bidang3 ="; postStr + = Rentetan (nilai_mq2); postStr + = "\ r / n / r / n"; client.print ("POST / kemas kini HTTP / 1.1 / n"); client.print ("Host: api.thingspeak.com / n"); client.print ("Sambungan: tutup / n"); client.print ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); client.print ("Content-Type: application / x-www-form-urlencoded / n"); client.print ("Panjang Kandungan:"); client.print (postStr.length ()); client.print ("\ n / n"); client.print (postStr); kelewatan (1000); } pelanggan.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 (concentrração de proporção de proporção de proporção e gás (centração de gás). No ThingSpeak, visualiz pode sebagai maklumat sebagai forma de gráficos.
Finalmente, enviamos os mesmos dados para um aplicativo Android com o Blynk:
/ ************************************************* ** * Enviando Dados para o Blynk ****************************************** ******** / batal sendDataBlynk () {Blynk.virtualWrite (10, nisbah); // pin V10 Blynk.virtualWrite (11, kepekatan); // pin V11 Blynk.virtualWrite (12, nilai_mq2); // pin maya V12}
Langkah 5: Kesimpulannya
Komen lengkap, maklumat lanjut, visual visual, dan maklumat selular de konsentração de gás e poeira em um dado ambiente, como acompanhar a evolução destes dados através de gráficos pela internet.
Autore:
- Egon Patrick Marques Silva
- Frederico Clark
- Paola Fróes
Disyorkan:
Sensor Gas Antaramuka Dengan Arduino: 4 Langkah
Sensor Gas Interfacing Dengan Arduino: Sensor asap MQ-2 sensitif terhadap asap dan gas mudah terbakar berikut: LPG, Butana, Propana, Metana, Alkohol, Hidrogen. Rintangan sensor berbeza bergantung pada jenis gas. Sensor asap mempunyai potensiometer terbina dalam
Arduino RPM Limiter untuk Mesin Gas: 5 Langkah
Arduino RPM Limiter untuk Gas Engine: Demonstrasi YoutubeIni adalah untuk menggantikan gabenor untuk menghadkan kelajuan enjin petrol. Pembatas RPM ini dapat ditukar ke 3 tetapan yang berlainan dengan cepat. Saya memasang ini pada satu silinder, mesin Briggs dan Stratton dan menggunakan Ardu
Baca Meteran Elektrik dan Gas (Belgian / Belanda) dan Muat Naik ke Thingspeak: 5 Langkah
Baca Meteran Elektrik dan Gas (Belgian / Belanda) dan Muat Naik ke Thingspeak: Sekiranya anda bimbang tentang penggunaan tenaga anda atau hanya sedikit kutu buku, anda mungkin ingin melihat data dari meter digital baru anda yang menarik pada telefon pintar anda. projek kami akan memperoleh data semasa dari elektrik digital Belgia atau Belanda
COMO USAR O SENSOR DE GÁS MQ-7: 5 Langkah
COMO USAR O SENSOR DE GÁS MQ-7: Tutorial de como usar o sensor de gás MQ-7 para detar a presença de Monóxido de Carbono (CO)
Visuino Breathalyzer Cara Menggunakan Sensor Gas Alkohol MQ-3: 8 Langkah
Visuino Breathalyzer Cara Menggunakan Sensor Gas Alkohol MQ-3: Dalam tutorial ini kita akan menggunakan modul Arduino UNO, OLED Lcd, MQ-3 Sensor Gas Alkohol, dan Visuino untuk memaparkan tahap Alkohol pada Lcd dan menetapkan pengesanan had. Tonton video demonstrasi