Агуулгын хүснэгт:

Ус зайлуулах бөглөрөх мэдрэгч: 11 алхам (зурагтай)
Ус зайлуулах бөглөрөх мэдрэгч: 11 алхам (зурагтай)

Видео: Ус зайлуулах бөглөрөх мэдрэгч: 11 алхам (зурагтай)

Видео: Ус зайлуулах бөглөрөх мэдрэгч: 11 алхам (зурагтай)
Видео: Вентиляция в хрущевке. Как сделать? Переделка хрущевки от А до Я. #31 2024, Долдугаар сарын
Anonim
Image
Image

Бохирдсон ус зайлуулах хоолой таныг удаашруулж болохгүй! Амралтаасаа буцаж ирэхэд эхнэр бид хоёр байрныхаа шалыг бүрхсэн усыг хараад гайхсан бөгөөд энэ нь бүр цэвэр ус биш, хаа сайгүй ус зайлуулах суваг болохыг олж мэдсэн. Ус зайлуулах хоолойг цэвэрлэж, шалыг цэвэрлэсний дараа надад ийм асуулт гарч ирэв: яагаад бидэнд ус зайлуулах суваг бөглөрөх тухай дохиоллын систем байдаггүй юм бэ? Бөглөрсөн ус зайлуулах хоолой нь таны байшинг зогсоож зогсохгүй халааснаасаа нэмэлт зардал гаргадаг бөгөөд Homeiped -ийн мэдээлснээр, эвдэрсэн хивс, модон тавилга гэх мэт далд зардлаас гадна бөглөрсөн ус зайлуулах хоолойг цэвэрлэх зардал дунджаар 206 доллар байдаг. Бидний санаа бол байшингийн эзэд, түүнчлэн хот/нэгдлүүдийн засвар үйлчилгээний хэлтэс, мэргэшсэн үйлчилгээ үзүүлэгчид гэх мэт аж ахуйн нэгжүүдийг ухаалаг хотуудыг чухал үйл ажиллагаагаар баяжуулахад хувь нэмэр оруулдаг хариуцлагатай ажилтнуудад аль болох хурдан арга хэмжээ авахыг анхааруулдаг үр ашигтай, ухаалаг системтэй болгох явдал юм. онцлог.

Санаа: Хэдийгээр бөглөрлийг илрүүлэх ажлыг хийн мэдрэгч эсвэл дотоод механизм ашиглах гэх мэт хэд хэдэн арга техникээр хийж болох боловч нээгдсэн хоолойг тогших нь тохиолдсоноос өөр дуу гэдгийг бид мэддэг тул манай баг дууг оролт болгон ашиглахад анхаарлаа төвлөрүүлжээ. хаагдах үед. Энэхүү энгийн ойлголтын дагуу хэрэв бид бөглөрөх үед хоолойн гадаргуу дээр үүсч буй дууны хэв маягийг, мөн тэдгээр хэв маягийг онгойлгосон хоолойд тохиолддог загварыг сургаж чадвал бөглөрөл үүсч эхлэхэд уг загварыг идэвхтэй илрүүлж болно. хэдэн үнэт цаас бөглөх.

Зээл

  • Мохамед Хасан
  • Ахмед Эмам

Төслийн нарийвчилсан төсөл нь 3 үе шаттай: Өгөгдөл цуглуулах, Сурах, урьдчилан таамаглах.

Энэ системийг бодит амьдрал дээр хэрэгжүүлэхийн өмнө бид хоолой, урсдаг ус, бөглөрлийг дуурайх ямар нэгэн аргачлал бүхий симуляцийн орчинг бүрдүүлэх шаардлагатай болсон. Тиймээс, бид хоолой, усны эх үүсвэр бүхий усны хоолойг ванны саванд хийж, ванны гадаргууг ашиглан бөглөрлийг илэрхийлсэн хоолойг хаав. Энэхүү видеон дээр бид хүрээлэн буй орчныг хэрхэн бүрдүүлж, загвар сургалтын талаархи өгөгдлийг хэрхэн цуглуулсан талаар тайлбарласан болно.

Дараагийн видеон дээр бид систем, загварын туршилтыг хэрхэн нээлттэй горимд, дараа нь бөглөрөх горимд, нээлттэй горимд хэрхэн хийснийг харуулав.

Тиймээс бидний хэрэгжилтийг алхам алхамаар судалж үзье.

Алхам 1: Туршилт

Туршилт
Туршилт
Туршилт
Туршилт
Туршилт
Туршилт
Туршилт
Туршилт

Энэ тохиолдолд бид тоног төхөөрөмж, дууны мэдрэгчтэйгээ холбогдсон жижиг усны хоолой ашигладаг. Тоног төхөөрөмж нь мэдрэгчийн утгыг уншиж, Cloud руу буцааж илгээдэг. Үүнийг бөглөрсөн хоолойд 10 минутын турш хийсний дараа бөглөрөөгүй хоолойд өөр 10 минутын турш хийсэн болно.

Алхам 2: Техник хангамж

Техник хангамж
Техник хангамж
Техник хангамж
Техник хангамж
Техник хангамж
Техник хангамж

Би- Ардуино

Хоолойн доторх усны чимээг илрүүлэхийн тулд бидэнд дууны мэдрэгч хэрэгтэй болно. Гэсэн хэдий ч Raspberry Pi 3 дээр аналог GPIO байдаггүй. Энэ асуудлыг шийдэхийн тулд бид Arduino -г ашигладаг бөгөөд Arduino нь аналог GPIO -тэй байдаг. Тиймээс бид Grove Sound мэдрэгчийг Grove Arduino бамбай руу холбож, Shield -ийг Arduino UNO 3 -тэй холбож дараа нь USB кабель ашиглан Arduino & Raspberry -ийг холбоно. Grove Sound мэдрэгчийн талаар илүү их мэдээлэл авахын тулд та түүний мэдээллийн хуудсыг шалгаж болно. Мэдээллийн хүснэгтээс мэдрэгчийн утгыг хэрхэн унших талаар код авах боломжтой. Дээж код бараг ашиглагддаг, бага зэрэг өөрчлөлт орно. Доорх кодонд бид мэдрэгчийг бамбай дахь A0 руу холбодог. Цуваа бичихийн тулд бид Serial.begin () функцийг ашигладаг. Raspberry -ийн дамжуулах хурдыг 115200 болгож тохируулахын тулд дуу чимээг бууруулах тодорхой босго хэмжээнээс их байвал өгөгдлийг Raspberry руу илгээх болно. Босго нь 400, хойшлуулалтын утга нь 10 миллисекунд байна. Энгийн дуу чимээг шүүж, зөвхөн утга учиртай өгөгдлийг үүл рүү илгээхийг баталгаажуулахын тулд босгыг сонгосон бөгөөд мэдрэгч нь хоолой доторх урсгалын өөрчлөлтийг нэн даруй илрүүлэхийн тулд хойшлуулжээ.

II- Raspberry Pi 3 Raspberry дээр андройд зүйл татаж авахын тулд та Android Things консолоос хамгийн сүүлийн хувилбарыг татаж авах боломжтой. Энэ төсөлд бид OIR1.170720.017 хувилбарыг ашигладаг. Бөөрөлзгөнө дээр бөөрөлзгөнө дээр үйлдлийн систем суулгахын тулд Raspberry сайт дээрх алхмуудыг дагана уу, Windows дээр та эдгээр алхмуудыг ашиглаж болно Суулгасны дараа та Raspberry -ийг USB ашиглан компьютерт холбож болно. Дараа нь компьютерийн консол дээр Raspberry IP авахын тулд доорх тушаалыг ашиглана уу

nmap -sn 192.168.1.*

IP -г авсны дараа доорх тушаалыг ашиглан Raspberry -тай холбогдоно уу

adb холбох

Raspberry -ийг Wifi руу холбохын тулд (SSID болон нууц үгээ оруулна уу)

adb am startervice

-n com.google.wifisetup/. WifiSetupService

-WifiSetupService. Connect

-e ssid *****

-нэвтрэх үг ****

Алхам 3: Google Cloud - Бүртгэл

Google Cloud - Бүртгэл
Google Cloud - Бүртгэл
Google Cloud - Бүртгэл
Google Cloud - Бүртгэл
Google Cloud - Бүртгэл
Google Cloud - Бүртгэл
Google Cloud - Бүртгэл
Google Cloud - Бүртгэл

Google нь бүх хэрэглэгчдэд нэг жилийн турш 300 долларын үнэтэй үнэгүй түвшинг санал болгодог. Google -д баярлалаа:). Google Cloud дээр шинэ төсөл үүсгэхийн тулд дэлгэцийг дагана уу

Алхам 4: 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 нь бие даасан програмуудын хооронд мессеж илгээх, хүлээн авах боломжийг олгодог бүрэн цагийн удирдлагатай бодит цагийн мессежийн үйлчилгээ юм.

Алхам 5: 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 нь дэлхий даяар тархсан төхөөрөмжөөс өгөгдлийг хялбар, найдвартай холбох, удирдах, залгих бүрэн үйлчилгээтэй үйлчилгээ юм. IOT Core хэвээр байгаа бөгөөд үүнд хандахын тулд та Google -д үндэслэл өгөх хүсэлт гаргах шаардлагатай болно. Бид хүсэлт тавьсан, бидний үндэслэл бол энэ тэмцээн байсан. Google зөвшөөрсөн, Google -д дахин баярлалаа:). Raspberry нь мэдрэгчийн өгөгдлийг IOT Core руу илгээх бөгөөд энэ нь уншилтыг өмнөх алхамд үүсгэсэн PubSub сэдвээр дамжуулах болно

Алхам 6: Google Cloud - Cloud функцууд

Google Cloud - Cloud функцууд
Google Cloud - Cloud функцууд
Google Cloud - Cloud функцууд
Google Cloud - Cloud функцууд

Cloud Functions нь үүлний үйлчилгээг бий болгох, холбох сервергүй орчин юм. Энэ функцийг идэвхжүүлэх нь 1 -р алхам дээр үүсгэсэн PubSup сэдэв юм.;; Энэ функц нь PubSup дээр шинэ утгыг бичээд Cloud DataStore дээр "SoundValue" төрлөөр бичихэд идэвхжих болно.

Алхам 7: Google Cloud - Cloud DataStore

Google Cloud Datastore нь автоматаар хэмжих, өндөр гүйцэтгэл, програм хөгжүүлэхэд хялбар болгох зорилгоор бүтээгдсэн NoSQL баримт бичгийн мэдээллийн сан юм. Cloud Datastore интерфэйс нь уламжлалт өгөгдлийн сантай ижил төстэй шинж чанаруудтай боловч NoSQL мэдээллийн баазын хувьд өгөгдлийн объектуудын хоорондын харилцааг тайлбарлах замаар ялгаатай байдаг. Cloud функцууд мэдрэгчийн утгыг DataStore -д бичдэг тул өгөгдөл DataStore -д нэмэгдэх тул тохиргоо хийх шаардлагагүй болно

Алхам 8: 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

Бид дээжийг ердийн хоолойноос 10 мин, бөглөрсөн хоолойноос 10 минутын дараа 2 давталтын хооронд яг 1 цагийн зөрүүтэй цуглуулдаг. DataStore өгөгдлийг татаж авсны дараа мөр бүрт ангилал нэмэхийн тулд зарим залилан хий. Одоо бидэнд ангилал тус бүрт 2 csv файл байна. Хамгийн сайн туршлагын хувьд өгөгдлийг CSV файлуудыг эхлээд Cloud Storage руу байршуулна уу. Доорх дэлгэц дээр бид шинэ хувин үүсгэж, 2 CSV файлыг байршуулах болно. Энэ хувин нь зөвхөн шинжилгээ хийхэд ашиглагддаг тул олон бүсийн хувин сонгох шаардлагагүй, дараа нь BigQuery дээр шинэ өгөгдлийн багц ба шинэ хүснэгт үүсгээд 2 CSV файлыг хувингаас шинэ ширээ

Алхам 9: Google Cloud - Data Studio

Google Cloud - Өгөгдлийн студи
Google Cloud - Өгөгдлийн студи
Google Cloud - Өгөгдлийн студи
Google Cloud - Өгөгдлийн студи
Google Cloud - Өгөгдлийн студи
Google Cloud - Өгөгдлийн студи

Дараа нь бид Data Studio ашиглан зарим ойлголтыг зурдаг. Data Studio нь BigQuery хүснэгтээс өгөгдлийг унших болно. Графикаас бид телеметрийн тоо ба нэг минутын утгуудын нийлбэр гэсэн 2 ангиллын ялгааг харж болно. Эдгээр ойлголт дээр үндэслэн бид энгийн загвар зохион бүтээх боломжтой бөгөөд хэрэв 3 минутын дотор дуу чимээний босго (400) -аас өндөр телеметрийн утгын тоо 350 телеметрээс илүү байвал хоолойг блоклосон гэж үзнэ. мөн дараалсан 3 минутын дотор оч босгоос (720) өндөр телеметрийн утгын тоо 10 гаруй телеметр юм.

Алхам 10: Урьдчилан таамаглах үе шат

Урьдчилан таамаглах үе шат
Урьдчилан таамаглах үе шат

Уншлага гэж тооцохоос эхлээд хоолой дахь дуу чимээг бууруулж, усны урсгалыг бууруулдаг 350 гэж тогтоосон тодорхой утгыг (THRESHOLD_VALUE) давсан тохиолдолд бид үүнийг хэлнэ.

Мэдээллийн дүн шинжилгээгээр нээлттэй горимд унших тоо 100 -аас бага, харин бөглөрөх горимд утга нь хамаагүй өндөр (минутанд 900 хүрэх) боловч ховор тохиолдолд 100 -аас бага байсан боловч эдгээр тохиолдлууд давтагддаггүй., Үүний үр дүнд гурван минутын турш нийт уншилтын тоо үргэлж 350 -аас давж гардаг. Нээлттэй горимыг гурван минутын дотор 300 -аас бага тоогоор нэгтгэж үзвэл бид энэ дүрмийг итгэлтэйгээр тавьж чадна: Дүрэм # 1 Нийт уншилт бол гурван минутын турш түүхий хэлбэрээр. > 350, дараа нь бөглөрөл илэрдэг. Нээлттэй горимд хүрсэн хамгийн их утга нь 770 гэж тогтоосон тодорхой утга (SPARK_VALUE) -аас хэтрэхгүй байгааг бид олж тогтоосон тул бид энэ дүрмийг нэмсэн: Дүрэм # 2 Хэрэв утга нь> 350 бол уншихад бөглөрөл ихэвчлэн илэрдэг.

Хоёр дүрмийг хослуулан харуулсны дагуу илрүүлэх логикийг хэрэгжүүлэх хялбар аргыг бидэнд өгсөн. Доорх кодыг Arduino дээр байрлуулсан бөгөөд дараа нь хүлээн авсан телеметрийг манай загварт үндэслэн үнэлж, хоолой бөглөрсөн эсвэл нээлттэй байвал бөөрөлзгөнө рүү илгээдэг болохыг анхаарна уу.

Алхам 11: Код

Arduino, Raspberry & Cloud Function -ийн бүх кодыг Github дээрээс олж болно.

Дэлгэрэнгүй мэдээлэл авахыг хүсвэл энэ линкээр орж үзээрэй

Зөвлөмж болгож буй: