Mundarija:

Drenaj tiqilishi detektori: 11 qadam (rasmlar bilan)
Drenaj tiqilishi detektori: 11 qadam (rasmlar bilan)

Video: Drenaj tiqilishi detektori: 11 qadam (rasmlar bilan)

Video: Drenaj tiqilishi detektori: 11 qadam (rasmlar bilan)
Video: Лимфа. 5 способов очищения лимфы. Лимфатическая система. 2024, Noyabr
Anonim
Image
Image

Tiqilib qolgan drenaj sizni sekinlashtirishiga yo'l qo'ymang! Ta'tildan qaytganimizda, men va xotinim xonadonimizning polini qoplagan suvdan hayron bo'ldik va biz bu toza suv emas, hamma joyda drenaj ekanligini bilib oldik. Drenajni tozalash va polni tozalashdan so'ng, menda shunday savol bor edi: nega bizda kanalizatsiya to'kilishi mumkinligi haqida signalizatsiya tizimi yo'q? Kanalizatsiya tiqilib qolishi nafaqat sizning uyingizni to'xtatib qo'yishi, balki cho'ntagingizdan qo'shimcha xarajatlarni talab qiladi, Homeiped ma'lumotlariga ko'ra, tiqilib qolgan drenajni tozalash uchun o'rtacha 206 dollar, buzilgan gilam, yog'och mebel va boshqalarning yashirin xarajatlaridan tashqari. Bizning fikrimiz - uy -joy mulkdorlariga, shuningdek, shahar/birikmalarga xizmat ko'rsatuvchi bo'limlar va ixtisoslashgan xizmat ko'rsatuvchi provayderlar kabi, aqlli shaharlarni muhim tadbirlar bilan boyitishga hissa qo'shadigan, iloji boricha tezroq mas'ul bo'lganlarni ogohlantiruvchi, samarali va aqlli tizimga ega bo'lishga ruxsat berish. xususiyati.

Garchi tiqilib qolishni aniqlash gaz sensorlar yoki ichki mexanizmlardan foydalanish kabi bir qancha usullar yordamida amalga oshirilishi mumkin bo'lsa -da, bizning jamoamiz ovozni biz kiritgan ovoz sifatida ishlatishga e'tibor qaratdi, chunki biz bilamizki, u ochilgan naychani taqillatish, sodir bo'lganidan farq qiladi. yopilganda. Ushbu oddiy kontseptsiyaga ko'ra, agar biz modelni trubka yuzasida tiqilib qolganda paydo bo'ladigan tovush naqshlarini o'rgata olsak, va bu naqshlar ochilgan quvurlarda paydo bo'lsa, biz tiqilib qola boshlaganda proaktiv ravishda aniqlash uchun modelni qo'llashimiz mumkin. ba'zi hisoblarni jiringlatish.

Uchun kreditlar

  • Muhammad Hasan
  • Ahmad Emam

Tafsilotli loyiha 3 bosqichda amalga oshiriladi: ma'lumotlar yig'ish, o'rganish va bashorat qilish.

Bu tizimni real hayotda qo'llashdan oldin, biz simulyatsiya muhitini yaratishimiz kerak edi, u erda bizda quvur, oqadigan suv va qandaydir tiqinni simulyatsiya qilish kerak edi. Shunday qilib, biz naychani oldik, suv manbaiga ega bo'lgan shlang, bu vannada, va vannaning yuzasi yordamida tiqilib qolgan naychani yopadi. Ushbu videoda biz atrof -muhitni qanday qurganimizni va model mashg'ulotlari uchun ma'lumotlarni qanday yig'ganimizni tushuntiramiz.

Va keyingi videoda biz tizim va modelni qanday sinovdan o'tkazganimizni ko'rsatamiz, ochiq rejimda, keyin tiqilib qolish rejimida va ochiq rejimga qaytamiz.

Shunday qilib, keling, bosqichma -bosqich amalga oshirishni ko'rib chiqaylik:

1 -qadam: Tajriba

Tajriba
Tajriba
Tajriba
Tajriba
Tajriba
Tajriba
Tajriba
Tajriba

Bunday holda, biz apparat va ovoz sensori bilan bog'langan kichik suv quvuridan foydalanamiz. Uskuna sensor qiymatini o'qiydi va uni bulutga qaytaradi. Bu blokirovka qilingan trubka uchun 10 minut, keyin bloklanmagan quvur uchun yana 10 minut davomida qilingan.

2 -qadam: Uskuna

Uskuna
Uskuna
Uskuna
Uskuna
Uskuna
Uskuna

Men- Arduino

Quvur ichidagi suv tovushini aniqlash uchun bizga ovoz sensori kerak. Biroq, Raspberry Pi 3 -da Analog GPIO yo'q. Ushbu muammoni hal qilish uchun biz Arduino -dan foydalanamiz, chunki Arduino -da analog GPIO mavjud. Shunday qilib, biz Grove Sound sensorini Grove Arduino qalqoni bilan bog'laymiz va Shieldni Arduino UNO 3 ga ulaymiz. Keyin USB kabeli yordamida Arduino va Raspberry -ni ulaymiz. Grove Sound sensori haqida ko'proq ma'lumot olish uchun siz uning ma'lumotlar varag'ini tekshirishingiz mumkin. Ma'lumotlar varag'ida sensor qiymatlarini o'qish uchun namuna kodini topishingiz mumkin. Misol kodi deyarli ishlatiladi, kichik o'zgarishlar bo'ladi. Quyidagi kodda biz sensorni qalqonda A0 ga ulaymiz. Seriyali yozish uchun biz Serial.begin () funktsiyasidan foydalanamiz. Raspberry bilan aloqa tezligi 115200 ga o'rnatildi, agar u shovqinni pasaytirish uchun ma'lum bir chegaradan katta bo'lsa, malinali ma'lumot yuboriladi. Chegara 400 va kechikish qiymati 10 millisekundga teng. Oddiy shovqinni filtrlash va bulutga faqat mazmunli ma'lumot yuborilishini ta'minlash uchun chegara tanlangan, sensori quvur ichidagi oqim tovushidagi har qanday o'zgarishlarni darhol aniqlashini ta'minlash uchun kechiktirilgan.

II- Raspberry Pi 3 Raspberry-da Android-ni yuklab olish uchun siz Android Things Console-dan so'nggi versiyani yuklab olishingiz mumkin. Ushbu loyihada biz OIR1.170720.017 versiyasidan foydalanamiz. malinaga operatsion tizimni o'rnatish uchun Raspberry saytidagi qadamlarni bajaring, Windows uchun siz ushbu bosqichlardan foydalanishingiz mumkin O'rnatishdan so'ng Raspberry -ni kompyuteringizga USB yordamida ulashingiz mumkin. Keyin kompyuter konsolida Raspberry IP -ni olish uchun quyidagi buyruqdan foydalaning

nmap -sn 192.168.1.*

IP -ni olganingizdan so'ng, quyidagi buyruq yordamida Raspberry -ga ulaning

adb ulanish

Malinani Wi -Fi -ga ulash uchun (SSID va parolingizni qo'shing)

adb am startervice

-n com.google.wifisetup/. WifiSetupService

-WifiSetupService. Connect

-ssid *****

-parol parol ****

3 -qadam: Google Cloud - Ro'yxatdan o'tish

Google Cloud - Ro'yxatdan o'tish
Google Cloud - Ro'yxatdan o'tish
Google Cloud - Ro'yxatdan o'tish
Google Cloud - Ro'yxatdan o'tish
Google Cloud - Ro'yxatdan o'tish
Google Cloud - Ro'yxatdan o'tish
Google Cloud - Ro'yxatdan o'tish
Google Cloud - Ro'yxatdan o'tish

Google barcha foydalanuvchilar uchun cheksiz 300 dollarlik bir yillik bepul darajani taklif qiladi, Google rahmat:). Google Cloud -da yangi loyihani yaratish uchun ekranlarni kuzatib boring

4 -qadam: Google Cloud - Pub/Sub

Google Cloud - Pub/Sub
Google Cloud - Pub/Sub
Google Cloud - Pub/Sub
Google Cloud - Pub/Sub
Google Cloud - Pub/Sub
Google Cloud - Pub/Sub
Google Cloud - Pub/Sub
Google Cloud - Pub/Sub

Google Cloud Pub/Sub-bu mustaqil boshqariladigan ilovalar o'rtasida xabarlarni yuborish va qabul qilish imkonini beruvchi to'liq vaqtda boshqariladigan real vaqtda xabar almashish xizmati.

5 -qadam: Google Cloud - IOT Core

Google Cloud - IOT Core
Google Cloud - IOT Core
Google Cloud - IOT Core
Google Cloud - IOT Core
Google Cloud - IOT Core
Google Cloud - IOT Core

II- IOT CoreA butun dunyo bo'ylab tarqalgan qurilmalardan ma'lumotlarni osongina va xavfsiz ulash, boshqarish va qabul qilish uchun to'liq boshqariladigan xizmat. IOT Core hali ham Beta, unga kirish uchun siz Google asoslash bilan so'rov yuborishingiz kerak. Biz so'rov yubordik, bizning tanlovimiz bu tanlov edi. Google tasdiqladi, Googlega yana rahmat:). Raspberry sensor ma'lumotlarini IOT Core -ga yuboradi, u o'qishni oldingi bosqichda yaratilgan PubSub mavzusiga o'tkazadi

6 -qadam: Google Cloud - Bulut funktsiyalari

Google Cloud - Bulut funktsiyalari
Google Cloud - Bulut funktsiyalari
Google Cloud - Bulut funktsiyalari
Google Cloud - Bulut funktsiyalari

Bulutli funktsiyalar - bu bulutli xizmatlarni yaratish va ulash uchun serversiz muhit. Bu funktsiyani ishga tushirish - bu 1 -qadamda yaratilgan PubSup mavzusi.;; Bu funksiya PubSup -da yangi qiymat yozilganda va uni Cloud DataStore -da "SoundValue" bilan yozganda ishga tushadi.

7 -qadam: Google Cloud - Cloud DataStore

Google Cloud Datastore - bu NoSQL hujjatlar bazasi, avtomatik miqyoslash, yuqori ishlash va ilovalarni ishlab chiqish qulayligi uchun yaratilgan. Cloud Datastore interfeysi an'anaviy ma'lumotlar bazalari bilan bir xil xususiyatlarga ega bo'lsa -da, NoSQL ma'lumotlar bazasi sifatida u ma'lumotlar ob'ektlari o'rtasidagi munosabatlarni tavsiflashda farq qiladi. Hech qanday sozlashning hojati yo'q, chunki Cloud funktsiyalari Sensor qiymatlarini DataStore -ga yozgandan so'ng, ma'lumotlar DataStore -ga qo'shiladi

8 -qadam: Google Cloud - BigQuery

Google Cloud - BigQuery
Google Cloud - BigQuery
Google Cloud - BigQuery
Google Cloud - BigQuery
Google Cloud - BigQuery
Google Cloud - BigQuery
Google Cloud - BigQuery
Google Cloud - BigQuery

Biz namunani oddiy trubadan 10 minut va blokirovka qilingan trubadan 10 minutdan yig'ib olamiz, bu 2 ta takrorlash o'rtasida aniq 1 soat. DataStore -ni yuklaganingizdan so'ng, har bir qatorga tasnif qo'shish uchun bir oz manipulyatsiya qiling. Endi bizda har bir toifaga bittadan 2 ta csv fayli bor. Eng yaxshi amaliyot sifatida CSV fayllarini birinchi bo'lib Cloud Storage -ga yuklang. Quyidagi ekranda biz yangi chelak yaratamiz va 2 ta CSV faylini yuklaymiz, chunki bu chelak faqat tahlil uchun ishlatiladi, shuning uchun ko'p mintaqali chelakni tanlashning hojati yo'q, keyin BigQuery-da yangi ma'lumotlar to'plami va yangi jadval yarating va 2 ta CSV faylini chelakdan yuklang. yangi stol

9 -qadam: Google Cloud - Ma'lumotlar studiyasi

Google Cloud - Ma'lumotlar studiyasi
Google Cloud - Ma'lumotlar studiyasi
Google Cloud - Ma'lumotlar studiyasi
Google Cloud - Ma'lumotlar studiyasi
Google Cloud - Ma'lumotlar studiyasi
Google Cloud - Ma'lumotlar studiyasi

Keyin Data Studio -dan foydalanib, ba'zi tushunchalarni olamiz. Data Studio BigQuery jadvalidagi ma'lumotlarni o'qiydi. Grafiklardan biz telemetriya soni va daqiqadagi qiymatlar yig'indisi bo'yicha 2 toifadagi farqni ko'rishimiz mumkin. Ushbu ma'lumotlarga asoslanib, biz oddiy modelni ishlab chiqishimiz mumkin, agar quvur ketma -ket 3 daqiqada shovqin chegarasidan (400) yuqori bo'lgan telemetriya qiymatlari 350 telemetrdan oshsa, quvur bloklangan hisoblanadi. va ketma -ket 3 daqiqada uchqun chegarasidan (720) yuqori bo'lgan telemetriya qiymati 10 dan ortiq telemetrga teng.

10 -qadam: bashorat qilish bosqichi

Bashorat qilish bosqichi
Bashorat qilish bosqichi

Biz o'qiymiz, agar u ma'lum bir qiymatdan oshsa (THRESHOLD_VALUE), u 350 ga o'rnatildi, u shovqinni filtrlaydi va trubadagi suv oqimini pasaytiradi, bu o'qish deb hisoblanadi.

Ma'lumotlar tahlili shuni ko'rsatadiki, ochiq rejimda o'qishlar soni 100 dan kam, lekin tiqilib qolish holatida qiymatlar ancha yuqori (daqiqada 900 ga yetgan), lekin kamdan -kam hollarda 100 dan kam bo'lgan. Ammo bu holatlar takrorlanmaydi. va natijada uch daqiqada o'qishlarning umumiy soni har doim 350 dan oshib ketdi. Ochiq rejimda uch daqiqada 300 dan kam bo'lsa, biz bu qoidani ishonch bilan qo'yamiz: 1 -qoida Hamma o'qishda uch daqiqa davomida > 350, keyin tiqilib qolishi aniqlanadi. Biz ochiq rejimda erishilgan maksimal qiymat 770 ga teng bo'lgan ma'lum bir qiymatdan oshmasligini aniqladik, shuning uchun biz ushbu qoidani qo'shdik: 2 -qoida. Agar o'qish qiymati> 350 bo'lsa, unda tiqilib qolish aniqlanadi.

Ikkala qoidani birlashtirib, bizga ko'rsatilgandek, aniqlash mantig'ini amalga oshirishning oson yo'lini berdi. E'tibor bering, quyida Arduino -da kod joylashtirilgan, u qabul qilingan telemetrlarni bizning modelimiz asosida baholaydi va quvur tiqilib qolsa yoki ochiq bo'lsa, malinaga yuboradi.

11 -qadam: kod

Arduino, Raspberry & Cloud Function uchun barcha kodlarni Github -da topish mumkin.

Qo'shimcha ma'lumot olish uchun ushbu havolani tekshirishingiz mumkin

Tavsiya: