Mundarija:
- 1 -qadam: Materiais Utilizados
- 2 -qadam: ThingSpeak -ni sozlang
- 3 -qadam: Aplicativo - MIT App Inventor
- 4 -qadam: Montagem Do Prototipo
- 5 -qadam: Mikrokontrolor dasturlari
Video: Projeto IoT - De Fumaça detektori tizimi: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
Kirish
IoT tizimidagi aniqlik detektori Android -ning signalizatsiyasi ham, Android -da ham mavjud bo'lgan signallarni tekshirish uchun mo'ljallangan. Wi -Fi tarmog'iga ulangan mikrokontroldan keyin siz sensorli signalni topishingiz mumkin. Telegramma orqali telegramma orqali xabarnomalar yozib olinganidan so'ng, bu tizimda ham kuzatuvlar amalga oshiriladi.
Desenvoldorlar
- Bruno Gonsalves Pereyra
- Joau Paulu Tadeu Borxes Payva
- Juliana Guimarães Soares Buére
- Willan Aleksandr Condor Asenjo
1 -qadam: Materiais Utilizados
Ma'lumotni loyihalashtirish uchun:
- ESP8266 NodeMcu ESP-12 moduli: ESP8266 chipining kombinatsiyasi (Wi-Fi tarmoqlari), usb-seriyali usb-interfeys va 3.3V. Arduino-da IDE va mikroavtobus orqali ulanish dasturlari mavjud.
- Sensor de Gás MQ-135 to Gazic Tóxicos: O Sensor de Gás MQ-135, shuningdek, gazlar, gazlar, gazlar, benzenlar, oksidlar nítrico, e também fumaça ou.
- Led vermelho
- Led verde
- 2 qarshilik 200Ω
- Protokollar va protokollar uchun o'tish moslamalari
2 -qadam: ThingSpeak -ni sozlang
ThingSpeak va IoT xizmatlari Internet -serverlar uchun HTTP va MQTT protokoli yordamida mahalliy tarmoqqa ulangan. ThingSpeak -ni tasdiqlang, bu ma'lumotni tahlil qilish va tahlil qilish.
U ThingSpeak -ning asosiy vazifasi bo'lib xizmat qiladi (bu 3 yil davomida 8000 ta menyuga ega). Maqolalar bir -biridan farqli o'laroq, standart, akademik, talaba va uy.
ThingSpeak kanalining konfiguratsiyasi
ThingSpeak yo'q, shuning uchun kanal kerak emas. Mana, siz ham aniqlab olishingiz mumkin. 8 ta kanalni o'z ichiga oladigan bo'lsak, bu 3 ta lagerni mahalliylashtirish uchun 1 ta maqom. Ommaviy kanallar, shuningdek, ThingSpeak-ni tahlil qilish uchun mo'ljallangan.
IoTProject-SmokeDetector va 3-chi dasturlar uchun eng yaxshi loyihalar:
- 1 -maydon: konsentratsiya
- 2 -maydon: signal
- 3 -maydon: Komando yozish
"Xususiy ko'rish" bo'limida siz "Clospace" ni ko'rishingiz mumkin. Neste projeto, foram criados:
- CO2 -ni tezlashtirish uchun bir vaqtning o'zida bir xil vazifalarni bajaring.
- 1 signal indikatori signal indikatori signal
- 1 -sonli o'yinlar tezligi va tezligi
ThingSpeak yo'q
ThingSpeak yoki kanal identifikatori (kanal identifikatori) sizning shaxsiy ma'lumotlaringizni aniqlab olish imkonini beradi. "API kalitlari" ni o'chirib qo'yish kerak (API kalitini yozish) va API kalitini o'qish). Qachonki, API so'rovlari (HTTP so'rovlarini qabul qilish) kabi, biz ham sizning talablarimizga javob beramiz.
Kanalni aniqlang, chunki mikrokontroldor yo'q. Shunday qilib, API Android -ning dasturiy ta'minotini ishlatishni talab qiladi.
3 -qadam: Aplicativo - MIT App Inventor
MIT App Inventor -dan foydalanish uchun monitoringi kerak. Massachusets Texnologiya Instituti (MIT) bilan bog'liq holda, MIT App Inventor veb -saytini bepul yaratdi. Android va iOS uchun dasturlar o'rnatiladi.
Masalan, MIT App Inventor-ni topa olmasangiz, IotProject_SmokeDetector-ni loyihalashingiz mumkin.
Dizayner ham mumkin emas, chunki u yonma -yon (menyu, yorliqlar, tasvirlar va boshqalar) hech qanday menyuga mos kelmaydi (Palitra). Umumiy komponentlar bir -biridan farqli o'laroq, yadrolarni sozlash, sozlash, sozlash va boshqa menyuga kiruvchi menejerlar (Xususiyatlar) yo'q.
Blocks yoki boshqa dasturlarni blokirovka qilish dasturiy ta'minot. Dastur blokirovka qilish uchun qulayliklar yaratadi.
Tushuntirish
Ma'lumot almashish joylari: signalData va sensor Ma'lumotlar.
Bu birinchi navbatda (Clock1 -ni aniqlagan holda), "API kalitlari" dan keyin ThingSpeak -ning URL -manzili ham, kanalning o'zi ham talab qilinmaydi. Ma'lumotlar almashinuvi uchun CO2 va boshqa datchiklar bilan aloqa o'rnatiladi. Test signallari:
- Aloqa signallari (alarmData = 1), yoki siz "Atensao! Bu juda muhim!" e -botão de desligar alarme (Button1) va habilitado.
- Aloqa signallari (signalData = 0), yoki "Menimcha, hech narsa emas!" Tugmachasini bosing. e o botão de desligar alarme (Button1) va desabilitado.
Klaviatura tugmachalari (tugma1) tugmachalarni bosish yoki o'chirish uchun hech qanday maydon yo'q, Field3: hech qanday ThingSpeak yo'q, bu esa signallarni o'chirish yoki o'chirish uchun kerak. Siz "API kalitlari" ni nusxalash uchun ThingSpeak manzilini yoki URL manzilini topishingiz mumkin.
4 -qadam: Montagem Do Prototipo
Yo'q, hech qanday protoboard mos kelmaydi.
Sensor MQ135
- Pino AO: AD0 va ESP8266 modullari
- PND GND: ESP8266 yoki GND bilan aloqa
- Pino Vcc: VIN va ESP8266 modullari
LED yoritgich
- Umumiy qarshilik 200 Ω pino D5 va modulli ESP8266 emas
- Quvvat manbai - LED (pozitivo - maior perna) va qarshilik qarshiligi
- LEDni yoqish moslamasi (negativ - menor), GSP va ESP8266 yo'q
LED vermelho
- ESP8266 uchun D7 va p7 pino -dorezistorlar mavjud.
- Quvvat manbai - LED (pozitivo - maior perna) va qarshilik qarshiligi
- LEDni yoqish moslamasi (negativ - menor) GND va modulli ESP8266 yo'q
5 -qadam: Mikrokontrolor dasturlari
ESP8266 mikrokontrolorlari Arduino IDE dasturidan foydalanish uchun (suvni yuklab olish).
O'qish uchun hech qanday yakuniy qo'llanma yo'q (Iot_project.ino). Asosiy vazifalar: elektron tsiklni sozlash.
Fluxo ni sozlash:
- Portal haqida rasmiy ma'lumot
- Chiqish natijalari (pinos dos leds)
- Wi -Fi tarmog'iga ulanish
- ThingSpeak haqida ma'lumot oling
Fluxo do loopi:
- Sensor MQ135
-
Ma'lumki, CO2 ultrabinafsha konsentratsiyasi (ideal: CO2 <= 700 ppm)
- Liga yoki signal (LED yoritgichi), LED holati yoki holati (Telegram), Telegram -ni yoqib yuboring.
- Aloqa signallari (LED yoritgichlari) yoki LED holati (yuqori darajali).
-
ThingSpeak -ni "signalizatsiya qilish" vazifasini bajaring
Bu erda = 1, signalizatsiya (LED yoritgichlari) yoki LED holati (holat)
- Sensorli qurilmalar, ThingSpeak -ning 20 -sonli signallari haqida ogohlantiring.
Maqolani bajarish uchun dasturni tuzish kerak.
Wi -Fi -ni qayta ishlatish
Arduino-da IDE-ni tanlang, Fayl-> Parametrlar bo'limi menejerining qo'shimcha URL manzili
Asboblar-> Kengashlar-> Kengashlar menejeri-ESP8266, ularni o'rnatish va o'rnatish.
Ma'lumotni o'zgartirish uchun ikkita variant kerak bo'ladi:
- WIFI_SSID: Wi -Fi tarmog'iga ulanishning hech qanday usuli yo'q
- WIFI_PASSWORD: qayta tiklash
Wi -Fi -ni nusxalash, shuningdek, WIFI -ni o'zgartirish uchun ESP8266 -ni yuklashning hojati yo'q.
#include /************************ ABAIXO ta'rifi sifatida ALTERE ******************* *******/ #define_SSID "SIZNI WIFI SSID" ni belgilang // Nomi da rede wifi #define_WIFI_PASSWORD "SIZNING WIFI PAROLINI" // Siz Wi -Fi WiFi mijozining mijozi; // ConnectToWiFi (void) aloqasi yo'q bo'lsa, u holda // Serial.println ("Conectando à rede WiFi") bilan aloqa o'rnatiladi; WiFi.begin (WIFI_SSID, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {kechiktirish (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi conectado com sucesso!"); Serial.println ("IP obtido:"); Serial.println (WiFi.localIP ()); } // O'rnatish bo'sh joyni o'rnatish () {Serial.begin (115200); kechikish (50); // ConnectToWiFi () bilan aloqa o'rnatish; }
Lendo dados sensori MQ135
MQ135 sensori, MQ135.biblioteca va bluxotexnika, shuningdek, Arduino-dagi IDE va Skecth-> Kutubxonani qo'shish-> ZIP kutubxonasini qo'shish.
Depois, nusxa ko'chirish uchun hech qanday uskuna yuklanmagan. U CO2 em ppm va undan ko'p vaqtni o'z ichiga oladi, chunki ketma -ket monitor yo'q.
#"MQ135.h" ni qo'shing #SMOKE_SENSOR A0 ni aniqlang // IO do sensori de fumaça float sensorValue; // O'rnatish bo'sh joyni o'rnatish () {Serial.begin (115200); kechikish (50); } // Loop asosiy void loop () {// Sensor MQ135 gasSensor = MQ135 (SMOKE_SENSOR); sensorValue = gasSensor.getPPM (); Serial.print ("CO2 konsentratsiyasi (ppm):"); Serial.println (sensorValue); }
ThingSpeak -ni ishlating
Bosh vazir, Biblioteca va ThingSpeak no Arduino IDE. Asboblar-> Kengashlar-> Kengashlar menejeri ThingSpeak-ni o'rnatadi, ularni o'rnatish mumkin.
ThingSpeak-ni bepul yuklab oling, siz 20-chi kunni boshidan oxirigacha yuklashingiz mumkin, lekin hech qanday tajriba yo'q, lekin bu hech qanday qiyinchilik tug'dirmaydi.
ThingSpeak -ning zaruriy shartlari quyidagilardan iborat:
- myChannelNumber: ThingSpeak kanali yo'q
- myWriteAPIKey: ThingSpeak kanalini yaratish
- myReadAPIKey: ThingSpeak kanalini yaratish
ThingSpeak -ni yozib oling, nusxa ko'chiring yoki nusxa oling, ESP8266 -ni yuklashda hech qanday farq yo'q.
#include #include /************************ ABAIXO ta'rifi sifatida ALTERE *********/ WIFI_SSID "SIZNI WIFI SSID" ni belgilang // Wifi parolini belgilang #WIFI_PASSWORD "SIZNI WIFI PAROLINGIZNI" // Siz Wi -Fi parolini belgilang #THINGSPEAK_WRITE_INTERVAL 20000 ni belgilang // Intervallar va boshqalar. dados ao ThingSpeak /************************ VARIÁVEIS ABAIXO ALTERET VERIÁVEIS ABAIXO ****************** ********/ imzosiz uzun myChannelNumber = 0000000; // ThingSpeak const char * myWriteAPIKey = "kanal yozish uchun kalit"; // ThingSpeak const char * myReadAPIKey = "your api key" ni o'qing; // ThingSpeak kanalining imzolanmagan belgisi last lastTime; imzosiz uzoq joriy vaqt; WiFiClient mijozi; // ConnectToWiFi (void) aloqasi yo'qligi sababli, // // api.telegram.org configTime (0, 0, "pool.ntp.org") uchun ildiz sertifikatining konfiguratsiyasi; clientSecure.setTrustAnchors (& sertifikat); // Serial.println ("Conectando à rede WiFi") Wi -Fi tarmog'idan foydalanish; WiFi.begin (WIFI_SSID, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {kechiktirish (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi conectado com sucesso!"); Serial.println (WiFi.localIP ()); } // O'rnatish bo'sh joyni o'rnatish () {Serial.begin (115200); kechikish (50); // ConnectToWiFi () bilan aloqa o'rnatish; // ThingSpeak lastTime = 0 ni yozib oling; ThingSpeak.begin (mijoz); } // Loop asosiy void loop () {currentTime = millis (); // sozlash tezligi // ThingSpeak int qiymati = ThingSpeak.readIntField (myChannelNumber, 1, myReadAPIKey); Serial.println ("Ding no campo 1 do ThingSpeak:"); Serial.println (qiymat); // ThingSpeak if ((currentTime - lastTime> THINGSPEAK_WRITE_INTERVAL)) {ThingSpeak.setField (1, 100); ThingSpeak.writeFields (myChannelNumber, myWriteAPIKey); lastTime = currentTime; } kechikish (20000); }
Telegram -da eng yaxshi xabarlar
Boshlang'ich, Arduino IDE bo'lmagan Telegram va Biblioteca. Asboblar-> Kengashlar-> Kengashlar menejeri UniversalTelegramBot-ni o'rnatadi, ularni o'rnatish mumkin.
Telegram va elektron pochta xabarlari Bot -ga tegishli. Boshlang'ich, sotib oling va botta otasi sotib oling. Bu erda hech qanday savol yo'q, lekin hech narsa yo'q. Saytga yozish yoki yozish buyrug'i sifatida. Umumiy noma'lum va noma'lum. Bu botni ochish uchun, bu sizning kompyuteringiz uchun havolani tanlashga yordam beradi. ESP8266 ma'lumotlarini eslatib o'tamiz, bu ma'lumotni aniq belgilashga imkon beradi.
Masalan, Telegram va IDBot -dan foydalaning. Ma'lumotni boshqa raqamga aylantirish mumkin. Ma'lumotni identifikatsiya qilish uchun javobgar bo'lishingiz kerak. Shaxsiy identifikatorni saqlang, aniq ma'lumotni aniqlang.
Telegram (BOT_TOKEN va CHAT_ID) va ESP8266 fayllarini yuklashda hech qanday farq yo'qligi sababli, ular telegram, nusxa ko'chirish yoki nusxa ko'chirish imkoniyatiga ega.
#include #include #include /********************* ALTERAR ta'riflari ABAIXO ******************* *******/ #WIFI_SSID "SIZNI WIFI SSID" ni aniqlang // Nomi da rede wifi #WIFI_PASSWORD "SIZNI WIFI PAROLI" // Senha da rede wifi #define BOT_TOKEN "CHANGEYOURTOKEN" // Token do bot do do telegram # CHAT_ID "CHANGEYOURCHATID" ni belgilang // telegramda X509List sertifikati (TELEGRAM_CERTIFICATE_ROOT) bilan suhbatlashing; WiFiClientSecure clientSecure; UniversalTelegramBot bot (BOT_TOKEN, clientSecure); // Envia notificação ao Teo void SendTelegramNotification (String xabar) {bot.sendMessage (CHAT_ID, xabar, ""); Serial.println (xabar); } // FunToWi wifi void ConnectToWiFi (void) {// api.telegram.org configTime (0, 0, "pool.ntp.org") uchun ildiz sertifikatining konfiguratsiyasi; clientSecure.setTrustAnchors (& sertifikat); // Serial.println ("Conectando à rede WiFi") Wi -Fi tarmog'idan foydalanish; WiFi.begin (WIFI_SSID, WIFI_PASSWORD); while (WiFi.status ()! = WL_CONNECTED) {kechiktirish (500); Serial.print ("."); } Serial.println (""); Serial.println ("WiFi conectado com sucesso!"); Serial.println ("IP obtido:"); Serial.println (WiFi.localIP ()); } // O'rnatish bo'sh joyni o'rnatish () {Serial.begin (115200); kechikish (50); // ConnectToWiFi () bilan aloqa o'rnatish; // TestTo notificação pelo telegram SendTelegramNotification ("Testando envio de notificação."); }
Tavsiya:
IOT asosidagi gaz oqish detektori: 4 qadam
IOT asosidagi gaz qochqin detektori: talablar1 - Nodemcu (ESP8266) 2 - tutun sensori (MQ135) 3 - o'tish simlari (3)
Arduino va Raspberry Pi bilan IoT gaz detektori: 5 qadam
Arduino va Raspberry Pi bilan IoT gaz detektori: Bu yo'riqnomada siz Arduino, Raspberry Pi va MQ-5 gaz sensori yordamida IoT gaz detektori qurishni o'rganasiz. Bu qismlarga qo'shimcha ravishda, Arduino -ni gaz sensori bilan ulash uchun sizga uchta sim kerak bo'ladi. Bu tugagach, siz
Thingsai.io Iot bulutli platformasi yordamida harakat detektori: 6 qadam
Thingsai.io Iot bulutli platformasidan foydalanadigan harakat detektori: Ushbu qo'llanmada men PIR sensori va Esp32 yordamida Thingai.io IOT bulutli platformasi yordamida harakatni aniqlash haqida tushuntiraman
IoT o'simliklarini monitoring qilish tizimi (IBM IoT platformasi bilan): 11 qadam (rasmlar bilan)
O'simliklarni monitoring qilish tizimi (IBM IoT platformasi bilan): Umumiy ko'rib chiqish O'simliklarni monitoring qilish tizimi (PMS) - bu yashil barmog'i bilan ishchi sinfda bo'lgan shaxslar bilan yaratilgan dastur. Bugungi kunda ishlaydigan odamlar har qachongidan ham band; martabasini oshirish va moliyaviy holatini boshqarish.
IOT tutun detektori: IOT yordamida mavjud tutun detektorini yangilang: 6 qadam (rasmlar bilan)
IOT tutun detektori: IOT yordamida mavjud tutun detektorini yangilang: ishtirokchilar ro'yxati, ixtirochi: Tan Siew Chin, Tan Yit Peng, Tan Wee Xeng Nazoratchi: doktor Chia Kim Seng Mexatronika va robototexnika kafedrasi, Elektr va elektron injeneriya fakulteti, Universiti Tun Husayn Onn Malayziya. Tarqatish