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

IDC2018IOT GarbageCan-Online: 7 алхам
IDC2018IOT GarbageCan-Online: 7 алхам

Видео: IDC2018IOT GarbageCan-Online: 7 алхам

Видео: IDC2018IOT GarbageCan-Online: 7 алхам
Видео: Child's Play 2: A brand new set of eyes HD CLIP 2024, Арваннэгдүгээр
Anonim
Image
Image
Шаардлагатай эд анги
Шаардлагатай эд анги

Танилцуулга

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

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

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

Үндсэн онцлог

  1. Хяналтын самбар:

    • Үндсэн хэсэг:

      • Хогийн сав бүрийн бүрэн байдлын түвшин.
      • Хогийн сав бүрийн температур, чийгшил.
    • Статистикийн хэсэг:

      • Хамгийн бүрэн хогийн сав.
      • Хамгийн халуун хогийн сав.
  2. Анхааруулга ба мэдэгдлийн систем:

    • Дараах үйл явдлуудыг дэмждэг.

      • Хогийн сав дүүрэн байна.
      • Мэдрэгчийн алдаа гарлаа.
    • Бүрэн байдлын сэрэмжлүүлэг нь хогийн савны дүүргэлтийн түвшинг харгалзан үзэхээс гадна хогийн савны температур, чийгшлийн түвшинг харгалзан үздэг.
    • Сэрэмжлүүлгийг утасны мэдэгдэл болон хяналтын самбарын дохиогоор илгээх боломжтой.
    • Сэрэмжлүүлэх суваг бүрийг хяналтын самбараар асааж, унтрааж болно.
  3. Өргөтгөх боломжтой:

    • Тохируулах товчлуурыг ашиглан системийг янз бүрийн багтаамжтай янз бүрийн хогийн саванд тохируулах боломжтой.
    • Илүү хялбараар хогийн сав нэмж оруулах боломжтой. Нэг системийг шинэ хогийн сав дээр угсарч, хогийн савны ID -г тохируулж, тохируулж болно (товчлуур дарахад). 3 -аас дээш хогийн савтай байхын тулд хяналтын самбарыг сунгах шаардлагатай болно (гүйцэтгэхэд хялбар).

Бид хэн бэ?

Энэхүү төслийг Ром Цинцинатус, Даниел Алима нар IDC Herzliya -ийн оюутнууд бидний IoT курсын эцсийн төсөл болгон бүтээсэн. Танд манай ажил хэрэг болно гэж найдаж байна, мөн ашиглахад таатай байх болно!

Алхам 1: Шаардлагатай эд ангиуд

Системийг бий болгохын тулд та дараахь бүрэлдэхүүн хэсгүүд, хэсгүүдийг олж авах болно.

  1. Хогийн сав (тагтай нь илүү зохимжтой): Үүнийг ашиглах болно … сайн.. бид үүнийг юу хийхээ мэдэж байна уу?;)
  2. Breadboard: Янз бүрийн бүрэлдэхүүн хэсгүүдийг гагнуур ашиглахгүйгээр холбох.
  3. NodeMCU (ESP-8266): Мэдрэгчийг уншиж, мэдээллийг үүл рүү илгээх үүрэгтэй.
  4. IR зайны мэдрэгч - Sharp 0A41SK: Энэхүү мэдрэгч нь лааз доторх хогны хэмжээг (бүрэн байдлын түвшин) хэмжих болно.
  5. Температур ба чийгшил мэдрэгч - DHT11: Энэхүү мэдрэгч нь хогийн савны доторх температур, чийгшлийг хэмжих болно.
  6. Түр зуурын унтраалга: Хогийн савны хэмжээг харгалзан зайны мэдрэгчийг тохируулахад ашиглана.
  7. Хөнгөн цагаан тугалган цаас: Нээлттэй эсвэл хаалттай эсэхээс үл хамааран тагны байдлыг тодорхойлох детектор үүсгэхэд ашиглана.
  8. Холбогч утас: Янз бүрийн урт, өнгөөр элбэг дэлбэг авах боломжтой. Бүгдийг хооронд нь холбох болно.
  9. Сувгийн соронзон хальс: Бид бүх зүйлийг байранд нь холбох ёстой.
  10. Микро-USB кабель: NodeMCU-ийг компьютер дээрээ програмчлах, дараа нь тэжээлийн хангамжид холбох.
  11. USB цахилгаан хангамж (ухаалаг гар утасны цэнэглэгч): Хогийн саванд суулгасан үед NodeMCU -ийг эрчим хүчээр хангах болно.

Алхам 2: Утас ба угсралт

Утас ба угсралт
Утас ба угсралт
Утас ба угсралт
Утас ба угсралт
Утас ба угсралт
Утас ба угсралт

Цахилгаан утас

NodeMCU -ийг талхны тавцан дээр байрлуул, дараа нь хогийн саванд хийж, USB кабелийг холбоно уу. Дараа нь янз бүрийн бүрэлдэхүүн хэсгүүдийг NodeMCU руу холбохын тулд дээрх диаграмын зургийг үзнэ үү. Мэдрэгч болон статусын утаснуудад урт утас ашиглахаа мартуузай, ингэснээр системийг суурилуулах, түүнтэй хамт хогийн сав ашиглахад тохиромжтой байх болно.

  • IR зайны мэдрэгч - Sharp 0A41SK:

    • Вин (Улаан) Вин
    • GND (Хар) GND
    • Vout (шар) A0
  • Температур ба чийгшил мэдрэгч - DHT11:

    • Вин (Улаан) 3V3
    • GND (Хар) GND
    • Өгөгдөл (шар) D4
  • Түр зуурын унтраалга:

    • Pin 1 D3
    • Pin2 GND
  • Тагны байдал (нээлттэй / хаагдах) утаснууд:

    • Утас1 D2
    • Утас2 GND

Чуулган

Хогийн сав дээр системийг угсрах нь маш энгийн. Талхны самбарыг хогийн саванд хийж, таганд ойрхон байрлуул. Үүнийг бэхлэхийн тулд тууз эсвэл кабелийн оосор ашиглана уу. Дараа нь:

  1. IR зайны мэдрэгчийг тагны дунд байрлуулна (дотор талаас!). Үүнийг найдвартай хамгаалж байгаарай, эс тэгвээс та хуурамч уншилттай тулгарах болно!
  2. Температур ба чийгшлийн мэдрэгчийг хогийн савны дотор байрлуулна уу. Туузаар бэхлээрэй.
  3. Тагны хажуу ба хогийн савны үзүүрийг хөнгөн цагаан тугалган цаасаар хучих. Тагийг хаах үед сайн холбоо барих хэрэгтэй. Энэ нь хогийн савыг онгойлгох, хаах тухай дохио өгөх болно. Дараа нь тагны статусын утас бүрийг хөнгөн цагаан тугалган цаасны аль нэгэнд наагаад туузаар бэхлээрэй.

Алхам 3: MQTT, Node-RED, IFTTT-ийг тохируулна уу

MQTT, Node-RED, IFTTT-ийг тохируулах
MQTT, Node-RED, IFTTT-ийг тохируулах
MQTT, Node-RED, IFTTT-ийг тохируулах
MQTT, Node-RED, IFTTT-ийг тохируулах
MQTT, Node-RED, IFTTT-ийг тохируулах
MQTT, Node-RED, IFTTT-ийг тохируулах

Төслийн ихэнх логик нь үүлэн дээр хэрэгждэг. NodeMCU нь өгөгдлийг MQTT сервер рүү илгээдэг бөгөөд Node-RED нь үүнийг ашиглаж логикийг нь ашигладаг (цаашдын архитектурын талаар дэлгэрэнгүй). Эцэст нь хэлэхэд, ухаалаг гар утсанд түлхэх мэдэгдэл (анхааруулга) дамжуулахын тулд бид IFTTT -ийг ашигласан.

Бид CloudMQTT ба FRED үүл үйлчилгээг MQTT болон Node-RED сервер болгон ашиглах бөгөөд түлхүүрийн мэдэгдэлд IFTTT-ийг ашиглах болно.

  1. Үнэгүй төлөвлөгөөний дагуу CloudMQTT -д бүртгүүлнэ үү. Итгэмжлэх жуух бичгээ MQTT сервер дээр (хэрэглэгчийн нэр, нууц үг) тэмдэглэнэ үү.
  2. IFTTT -д бүртгүүлэх. "Webhooks IFTTT програмын мэдэгдэл" -ийн шинэ апплет үүсгэнэ үү. WebHookds үйл явдлын нэр болгон "Гар утасны мэдэгдэл" -ийг ашиглана уу. Зөөлөн ширүүн дэлгэрэнгүй мэдээллийг дээрх зургаас үзнэ үү. Өөрийн үйлдвэрлэгчийн API түлхүүрийг анхаарна уу.
  3. IFTTT програмыг утсандаа татаж аваад итгэмжлэлээрээ нэвтэрнэ үү. Энэ нь танд мэдэгдэл хүлээн авах боломжийг олгоно.
  4. Үнэгүй төлөвлөгөөний дагуу FRED -д бүртгүүлнэ үү.
  5. FRED -ийг ажиллуулсны дараа түүнд хавсаргасан урсгалыг импортлоорой (3 баар товчлуурыг санах ойгоос оруулах). Файл бүрийн агуулгыг (widgest.json, alerts.json, statistics.json) буулгаад импортло.
  6. CloudMQTT итгэмжлэлээ шинэчлэхийн тулд MQTT зангилааны нэгийг (нэг нь хангалттай) засварлана уу.
  7. IFTTT үйлдвэрлэгч API түлхүүрээ шинэчлэхийн тулд IFTTT зангилааг засна уу.

Алхам 4: NodeMCU ба хогны багтаамжийн шалгалт тохируулгыг програмчил

Бүх зүйл утастай болсны дараа бид NodeMCU -ийг зохих програм хангамжаар (ноорог) програмчлах хэрэгтэй бөгөөд ингэснээр түүнтэй холбогдсон бүх зүйлийг ашиглах, интернеттэй холбогдох боломжтой болно.

  1. Arduino IDE -г эндээс татаж аваад суулгаарай.
  2. Дараах зааврын эхэнд тайлбарласны дагуу NodeMCU хавтангийн төрлийг суулгаж тохируулна уу.
  3. Дараахь номын санг суулгана уу (Sketch Include Library Manage Libraries …):

    1. Adafruit MQTT номын сан (Adafruit)
    2. DHT мэдрэгчийн номын сан (By Adafruit)
    3. SharpIR (Жузеппе Масино)
    4. EEPROMA ямар нэг зүйл - энд тайлбар.
  4. GarbageCanOnline.ino файлыг нээгээд дараахь зүйлийг шинэчилнэ үү.

    1. Таны WiFi итгэмжлэлүүд (WLAN_SSID, WLAN_PASS)
    2. Таны CloudMQTT итгэмжлэлүүд (MQTT_USERNAME, MQTT_PASSWORD)
    3. Хэрэв энэ нь хоёр дахь хогийн сав буюу түүнээс дээш бол хогийн савны ID -г солино уу (GARBAGECAN_ID)
  5. Шинэчлэгдсэн ноорогоо NodeMCU дээрээ байршуулна уу.
  6. Цуваа дэлгэцийн цонхыг нээнэ үү (Ctrl+M), мэдрэгчийн өгөгдлийг CloudMQTT дээр нийтлэх боломжтой эсэхийг шалгаарай.
  7. Одоо тагийг хааж, хогийн сав хоосон байвал тохируулах товчийг удаан дарж хогийн савны багтаамжийг тохируулна уу.
  8. Хогийн савыг бүхэлд нь бэлдсэн. Та үүнийг компьютерээсээ салгаж, USB тэжээлийн хангамжийг ашиглан тогтоосон байршилд холбож болно.

Алхам 5: Системийг ашиглах

Системийг ашиглаж байна
Системийг ашиглаж байна
Системийг ашиглаж байна
Системийг ашиглаж байна
Системийг ашиглаж байна
Системийг ашиглаж байна

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

Танд ганцхан хогийн сав холбогдсон гэж бодож байна, гэхдээ дараа нь нэмж оруулах нь амархан!

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

Хогийн савны доторхи хогны хэмжээ өөрчлөгдөхөд хэмжигч зохих ёсоор өөрчлөгдөж байгааг харах болно. Энэ нь температур, чийгшлийн графикийн хувьд мөн адил юм.

Бүрэн байдлын түвшин 85% -90% хүрэхэд (яг босго нь температур, чийгшлээс хамаарна) эсвэл мэдрэгчийн алдаа гарсан тохиолдолд та өөрийн сонгосон аргуудаар дамжуулан мэдэгдэл хүлээн авах болно. Та хогийн сав бүрт цаг тутамд нэг удаа мэдэгдэх болно.

Статистикийн харагдацаас та одоогоор хамгийн их дүүрсэн, хамгийн халуухан хогийн савыг харах боломжтой болно. Гайхамшигтай гарчиг, хэрэв бид хэлж чадвал …

Алхам 6: Урсгалыг ойлгох

Урсгалыг ойлгох
Урсгалыг ойлгох
Урсгалыг ойлгох
Урсгалыг ойлгох
Урсгалыг ойлгох
Урсгалыг ойлгох
Урсгалыг ойлгох
Урсгалыг ойлгох

Таны анзаарсан байх шиг, системд маш олон "хөдөлгөөнт хэсгүүд" байдаг. Аливаа зүйл хоорондоо хэрхэн холбоотой болохыг тодруулахыг хичээх болно.

Нэгдүгээрт, бидэнд NodeMCU болон түүний мэдрэгч бүхий хогийн сав байна. Бидэнд эдгээр олон зүйл байж болно - зөвхөн бие биенийхээ "хуулбар".

NodeMCU нь хогийн саванд байрлуулсан өөр өөр мэдрэгчийг хэмжиж, өгөгдлийг MQTT серверт (MQTT протокол) нийтэлдэг. Та MQTT серверийг олон хогийн сав мэдээллээ мэдээлэх боломжтой том мэдээллийн солилцоо гэж ойлгож болно.

MQTT сервертэй холбогддог өөр нэг байгууллага бол Node-RED юм. Node-RED нь мэдрэмтгий өгөгдлийг дамжуулж буй хогийн савнаас ирж буй янз бүрийн мессежийг сонсож, логикийг нь ашигладаг. Энэ нь мэдээллийн "урсгалыг" ашиглах замаар ажилладаг. Мессежийг хүлээн авах бүрдээ түүний төрөл (MQTT сэдэв) дээр үндэслэн тухайн системийн янз бүрийн онцлогуудыг идэвхжүүлдэг (хяналтын самбарыг шинэчлэх, сэрэмжлүүлэг илгээх гэх мэт) тодорхой үйлдлийн сүлжээнд ордог бөгөөд үүнийг хэлэх нь маш зөв байх болно. Node-RED бол системийн "тархи" юм. Энэ нь хаа сайгүй тохиолддог бүх зүйлийг мэддэг бөгөөд үүний дагуу арга хэмжээ авах боломжтой.

Node-RED дотор бид 3 үндсэн мэдээллийн урсгалыг бий болгосон.

  1. Виджетүүд - Мэдрэхүйн мэдээллийг Node -RED -д оруулах багаж, график ашиглан хяналтын самбарт харуулдаг.
  2. Анхааруулга - Мэдрэхүйн мэдээллийг боловсруулж, дохио өгөх шаардлагатай эсэхийг (хяналтын самбар дээр эсвэл ухаалаг гар утасны програм дээр) боловсруулдаг. Температур, чийгшил зэргийг харгалзан дүүргэлтийн түвшинг харгалзан хог хаягдал дүүрэн байгаа талаар хэрэглэгчдэд мэдээлэх болно. Түүнчлэн мэдрэхүйн алдааг ижил урсгалаар мэдээлдэг.
  3. Статистик - Мэдрэхүйн мэдээллийг нэгтгэн хамгийн бүрэн дүүрэн, хамгийн халуун хогийн савыг харуулдаг.

Node-RED түлхэх мэдэгдэл илгээхийн тулд IFTTT (HTTP протоколоор) нэртэй үйлчилгээнд холбогддог. Энэ нь IFTTT -ийн тодорхой үйл явдлыг холбогдох мэдэгдлийн текстээр идэвхжүүлдэг бөгөөд IFTTT нь мэдэгдэлийг манай ухаалаг гар утсанд илгээдэг (HTTP & XMPP протоколууд).

(A) системийн ерөнхий бүтэц, (b) Node-RED доторх 3 өөр мэдээллийн урсгалыг илүү сайн ойлгохын тулд дээрх зургуудыг үзнэ үү

Алхам 7: Сорилт, хязгаарлалт, ирээдүйн төлөвлөгөө …

Сорилтууд

Энэхүү төслийн гол бэрхшээл нь ихэвчлэн MQTT болон Node-RED үйлчилгээг ашиглах явдал байв. Бид анх AdafruitIO -ийг ашигласан боловч түүний тусгай MQTT хэрэгжилт нь бидний хувьд тийм ч сайн биш байсан. Node-RED доторх "тэжээлүүд" -тэйгээ ажиллах нь тийм ч тохиромжтой биш байсан. Тиймээс бид эцэст нь Mosquitto MQTT сервер дээр суурилсан CloudMQTT -ийг сонгосон бөгөөд энэ нь илүү стандарт юм. Дараа нь бид Node-RED-ийг зохицуулах ажлыг эхлүүлсэн бөгөөд энэ нь нэлээд хэцүү байсан бөгөөд ихэнхдээ Node-RED бол араатан юм. Жишээлбэл, энэ нь бидний үзэж байгаагаар IFTTT -ээс хамаагүй илүү өргөн цар хүрээтэй, мэргэжлийн юм. Системийн шаардлагатай шинж чанаруудыг бий болгохын тулд бид урсгалд суурилсан дизайны аргыг хэрхэн ашиглах, хэрхэн ашиглах талаар сурах ёстой байв. Түүгээр ч зогсохгүй түүний хамгийн том давуу талуудын нэг бол javascript кодыг дэмжих явдал юм, гэхдээ бид JavaScript програмист биш тул дасахад нэлээд хугацаа шаардагджээ. Энэ бүхнийг үл харгалзан энэхүү тусгай хэрэгсэлтэй ажиллах нь бидэнд үнэхээр таалагдсан бөгөөд энэ нь маш сонирхолтой бөгөөд хэрэгтэй санагдсан.

Хязгаарлалт

Хязгаарлалтын хувьд эхнийх нь бид зөвхөн үнэ төлбөргүй үйлчилгээ ашигладаг байсан бөгөөд энэ нь бүрэн хэмжээгээр ашиглахыг зөвшөөрдөггүй. CloudMQTT үнэгүй төлөвлөгөө нь 5-аас дээш зэрэгцээ холболт хийхийг зөвшөөрөхгүй бөгөөд энэ нь зөвхөн 4 хогийн сав, Node-RED байж болно гэсэн үг юм. FRED Node-RED үнэгүй төлөвлөгөө нь зөвхөн 24 цагийн турш шууд ашиглах боломжийг олгодог бөгөөд үүний дараа та гараар нэвтэрч, таймерыг дахин тохируулах ёстой. Гэсэн хэдий ч эдгээр үйлчилгээг орон нутагт ажиллуулах эсвэл хязгаарлалтыг арилгахын тулд бага зэрэг нэмэлт төлбөр төлөх замаар эдгээр асуудлыг амархан шийдэх боломжтой. Хоёрдахь хязгаарлалт бол дөрөв дэх хогийн савыг нэмж оруулах үед тэрээр тохирох виджетээ нэмэхийн тулд Node-RED дахь виджетүүдийн урсгалыг гараар засах ёстой болдог.

Ирээдүйн төлөвлөгөө

Бид системээ улам боловсронгуй болгож, өргөтгөх хэдэн санаатай байсан.

  1. Үнэгүй үүл үйлчилгээ рүү шилжих. (ажлын ганц өдөр).
  2. Хогийн сав руу хогны компрессор нэмж оруулах нь хог хаях давтамжийг бууруулдаг. (4 сар ажилласан)
  3. Хотын хог хаягдлыг тээвэрлэдэг хотын ачааны машинуудын үр ашгийг дээшлүүлэхийн тулд хотын болон үйлдвэрийн хогийн савтай ажиллах. Энэ нь ачааны машины жолооч нар хог хаягдалтай харьцахдаа маршрутаа илүү сайн төлөвлөх боломжтой болохын тулд хяналтын самбар болон мэдэгдлийн системийг эрс сайжруулна гэсэн үг юм. (6 сарын ажил).
  4. Дахин боловсруулах чадварыг хогийн саванд нэмж оруулах нь хог руу тусгай биологийн уусмал асгах, хогийн сав дотор байтал дахин боловсруулахад туслах чадвар юм. Үүнийг дотооддоо жишээлбэл цэцэрлэгт бордоо үйлдвэрлэхэд ашиглаж болох боловч үйлдвэрлэлийн лаазанд ч бас ашиглах нь ойлгомжтой. (6 сарын ажил).

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