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

IDC2018IOT холбогдсон гэрийн тэжээвэр амьтдын хоол хүнс, ус, хяналтын систем: 7 алхам
IDC2018IOT холбогдсон гэрийн тэжээвэр амьтдын хоол хүнс, ус, хяналтын систем: 7 алхам

Видео: IDC2018IOT холбогдсон гэрийн тэжээвэр амьтдын хоол хүнс, ус, хяналтын систем: 7 алхам

Видео: IDC2018IOT холбогдсон гэрийн тэжээвэр амьтдын хоол хүнс, ус, хяналтын систем: 7 алхам
Видео: Food as Medicine: Preventing and Treating the Most Common Diseases with Diet 2024, Долдугаар сарын
Anonim
Image
Image
IDC2018IOT холбогдсон гэрийн тэжээвэр амьтдын хоол хүнс, ус, хяналтын систем
IDC2018IOT холбогдсон гэрийн тэжээвэр амьтдын хоол хүнс, ус, хяналтын систем

Танилцуулга

Та дарамт шахалтанд өртсөн оюутан ч бай, шаргуу хөдөлмөрч хүн ч бай, эсвэл гэрээсээ хол байж өдөрт хэдэн цагаар ч хамаагүй бай. Гэрийн тэжээвэр амьтдын эздийн хувьд бид хайртай хүмүүсээ эрүүл байлгаж, хооллож, буйдан дээр хэвтүүлэхгүй байхыг хүсч байна (новш минь!). Тусламж хүсэх, тэр ч байтугай ийм үйлчилгээний төлбөрийг төлөхөө болих цаг болжээ.

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

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

Бидний тухай

Томер Маймон, Гилад Рам, Алон Шпрунг. IDC Герцелиягийн компьютерийн шинжлэх ухааны гурван оюутан. Энэ бол IoT семинарын нэг хэсэг болох бидний зааварчилгаа өгөх анхны төсөл юм. Танд үүнийг бүтээх нь сонирхолтой, хөгжилтэй байх болно гэж найдаж байна!

Алхам 1: Архитектурыг ойлгох:

Архитектурын тухай ойлголт
Архитектурын тухай ойлголт
Архитектурын тухай ойлголт
Архитектурын тухай ойлголт

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

  1. Ирж буй мэдээллийн сувгууд:

    • Усны мэдрэгч - гэрийн тэжээвэр амьтдын аяга доторх усны түвшинг түүвэрлэн өгөгдлийг Node -MCU нэгжээс Blynk сервер рүү дамжуулж, эцэст нь гэрийн тэжээвэр амьтдын хяналтын самбараар дамжуулан танилцуулдаг.
    • Sonar мэдрэгч - Хүнсний савны агууламжаас дээж авч, өгөгдлийг Arduino төхөөрөмжөөс (Ethernet бамбай өргөтгөлтэй) Blynk сервер рүү дамжуулж, эцэст нь гэрийн тэжээвэр амьтдын хяналтын самбараар дамжуулан танилцуулдаг.
    • Pi Camera Module - гэрийн тэжээвэр амьтдын талбайн хүрээг байнга дээжлэн авч үздэг бөгөөд Pi нь гэрийн тэжээвэр амьтдын хяналтын самбарыг тэжээлээр хангадаг өөрийн серверийг байршуулдаг.
  2. Командын урсгал:

    • Тэжээлийн товчлуур (Хяналтын самбар) - Blynk -ээр дамжуулан виртуал зүүгийн утгыг шинэчилж, холбогдох функцийг Arduino самбар дээр идэвхжүүлж, хоолыг тагнаас дамжин өнгөрөхийн тулд Servo хөдөлж байна.
    • Ус өгөх (Хяналтын самбар) - Blynk -ээр дамжуулан виртуал зүүний утгыг идэвхтэй шинэчилж, холбогдох функцийг Node -MCU самбар дээр асааж, релеийг асааж, усны шахуурга гэрийн тэжээмэл амьтны аяга руу ус цацаж эхэлнэ.
    • Гэрийн тэжээвэр амьтдын тэжээл (Хяналтын самбар) - хяналтын самбарт байрлуулсан бөгөөд Pi төхөөрөмж дээр ажилладаг колбоны серверээр дамжуулан шууд өгөгдлийг өгдөг.

Алхам 2: эд ангиудын жагсаалт

Эд ангиудын жагсаалт
Эд ангиудын жагсаалт
Эд ангиудын жагсаалт
Эд ангиудын жагсаалт
Эд ангиудын жагсаалт
Эд ангиудын жагсаалт

Энэ систем дээр ажиллаж эхлэхийн тулд танд дараах (эсвэл үүнтэй төстэй) хэсгүүд хэрэгтэй болно.

  1. Физик:

    • Хүнсний сав: Бид гэрийн их дэлгүүрээс худалдаж авсан үйлдвэрлэлийн 45 см хэмжээтэй хоёр талт хоолой ашигласан. 2 гарцтай байх нь чухал. Нэг нь агуулгыг хэмжих, хоёр дахь гарц нь нээлттэй/хаагдах механизм юм.
    • Сувгийн соронзон хальс: Аливаа зүйлийг хамт байлгах;)
    • Jumper Wires: Илүү сайн байх тусам ямар нэг зүйл буруу болвол нэмэлт зүйл авах нь үргэлж сайн байдаг.
    • Ethernet кабель: Манай Arduino (ethernet бамбайтай) интернетэд холбогдох зориулалттай.
    • Цэцэрлэгжүүлэлтийн лааз: Усны сав, усны шахуурга болгон ашигладаг.
    • Богино усны хоолой: Шахуургатай холбогдож гэрийн тэжээвэр амьтны аяганд ус асгадаг.
  2. Мэдрэгч:

    • WINGONEER усны түвшин мэдрэгч: Гэрийн тэжээвэр амьтдын аяга доторх усны түвшинг хэмжинэ.
    • Sonar Sensor - Савны дээд тагнаас хүнсний түвшний зайг хэмжинэ.
    • TONGLING Relay: Ус урсдаг усны насосыг асаах/унтраах боломжийг бидэнд олгодог.
    • Pi камерын модуль: Бөөрөлзгөнө Pi төхөөрөмжтэй холбогдсон бөгөөд гэрийн тэжээвэр амьтдын талбайн зургийг дамжуулдаг.
    • Ерөнхий Servo: Хүнсний савыг түгжиж, онгойлгоно.
  3. Цахим төхөөрөмж / самбар:

    • Arduino Uno: Хүнсний савны нэгжийн хэрэгжилтийг хянадаг.
    • Arduino Ethernet Shield: Манай самбарт интернет холболт өгдөг.
    • NodeMCU (ESP-8266): Ус хэмжих, асгах зориулалттай усны нэгжийг хянадаг. Энэхүү самбар нь WiFi -ээр холбогдох боломжтой.
    • Raspberry Pi 3 - камерын серверийг байрлуулж, гэрийн тэжээвэр амьтдын хяналтын самбарыг тэжээлээр хангадаг.
    • VicTsing 80 GPH гүний насос: Цэцэрлэгжүүлэлтийн савнаас усыг усны хоолойтой хамт аяганд хийнэ.

Алхам 3: Юмыг хооронд нь холбож, байрлуулах

Утас холбож, зүйлийг хамтад нь байрлуулах
Утас холбож, зүйлийг хамтад нь байрлуулах
Утас холбож, зүйлийг хамтад нь байрлуулах
Утас холбож, зүйлийг хамтад нь байрлуулах
Утас холбож, зүйлийг хамтад нь байрлуулах
Утас холбож, зүйлийг хамтад нь байрлуулах

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

Эхлэхээсээ өмнө бүх утсыг холбож, ямар ч физик байршилд байрлуулахад хялбар болгохын тулд Arduino / Node-MCU-ийг талхны тавцан дээр байрлуулахыг зөвлөж байна. Үүнээс гадна кабелийг салгахаас үүдэлтэй алдаанаас урьдчилан сэргийлэхийн тулд урт утсыг ашиглахыг зөвлөж байна. Бид танд Node-MCU (Water Unit) ба Arduino (Food Unit) -ийн утаснуудын диаграммыг өгсөн.

  1. Хүнсний нэгж (Arduino):

    • Сонар мэдрэгч:

      • GND (Хар) = GND
      • VCC (Улаан) = 5V
      • Триг (ягаан) = 3
      • Цуурай (Цэнхэр) = 4
    • Серво:

      • GND (Хар) = GND
      • VCC (Улаан) = 5V
      • Дохио (Шар) = 9
  2. Усны нэгж (зангилаа):

    • Усны түвшин мэдрэгч:

      • S (Цэнхэр) = A0
      • + (Улаан) = 3v3
      • - (Хар) = GND
    • Реле (усны шахуурга руу цахилгаанаар холбогдсон):

      • IN (Шар) = D1
      • VCC (Улаан) = Вин
      • GND (Хар) = GND
  3. Камерын нэгж (Pi):

    • Камер мэдрэгч:

      • Pi -ийн нэг камертай порт руу холбогдоно уу (урсгал кабель)
      • Хэрэв та камерын модулийн тусламжтайгаар Pi -ийн талаар илүү ихийг мэдэхийг хүсч байвал - Холбоос

Эд ангиудыг хамтад нь угсрах

Энэ хэсэгт та "өөрийн болгох" зорилгоор энэхүү төслийг өөрчилж, өөрчлөх боломжтой. Гэхдээ бид танд бүтээгдэхүүнийхээ хувилбарыг сэргээхийн тулд зураг, тайлбарыг өгөх болно.

  1. Хоолны хэсэг (Arduino): Контейнер нь урагшаа урагшаа чиглэсэн тул бид хоёр тагийг урлахад анхаарлаа хандуулах болно.

    • Дээд таг: Sonar мэдрэгчийг тааруулахын тулд тагны 2 нүхийг хайчилж ав (хавсаргасан зургийг үзнэ үү).
    • Доод таг + Механизм: Хуванцар бэхэлгээний нэгийг (servo мэдрэгчээр тоноглогдсон) эхэлж, наалдамхай тууз / модон саваа ашиглан "Чанга алх" хэлбэрийг бүтээгээрэй (бид зөвхөн соронзон хальс ашигладаг байсан). Дараа нь servo -ийг холбоно уу. Одоо бидэнд тагны 2 нүх хэрэгтэй. Эхнийх нь servo -ийг тагны "дотор талд" байрлуулсан механизмд нийцүүлэх боломжийг олгох ёстой. Таны хийсэн "алхны толгой" -ны тал дээр үндэслэн өөр нүх хайчилж ав. Ийнхүү servo нээгдэх бүрт алхны сүүл нь гарц руу хоолоо шүүрдэж, том хэсгүүд хоорондоо наалдахаас сэргийлнэ.
  2. Усны нэгж (Node-MCU): Усны хоолойг усны шахуургатай холбоод л цэцэрлэгжүүлэлтийн савны дотор байрлуулна уу (реле болон цахилгаан утсыг усны дотор буруу байрлуулж болохгүй).
  3. Камерын нэгж: Таны хийх ёстой зүйл бол Pi модулийг камерын модулийг хүссэн газартаа байрлуулах явдал юм.

Алхам 4: Blynk -ийг тохируулна уу

Blynk -ийг тохируулах
Blynk -ийг тохируулах
Blynk -ийг тохируулах
Blynk -ийг тохируулах

Энэ төслийн алсын бүх боломжууд Blynk дээр суурилсан болно. Энэхүү үйлчилгээ нь үндсэндээ HTTP протокол ашиглан интернетээр дамжуулан манай Arduino/Node-MCU төхөөрөмжүүдтэй харилцах үнэгүй вэб сервер болон RESTful API-ийг өгдөг. Blynk нь ус асгах, янз бүрийн мэдрэгчийг тэжээх, дээж авахтай холбоотой тодорхой үүргийг гүйцэтгэх хаяг болгон ашиглах виртуал тээглүүрийг тодорхойлох боломжийг бидэнд олгодог (бид энэ хэсгийг танд зориулж хийсэн, таны хийх ёстой зүйл бол өөрийн програмын жетоныг авах явдал юм. Үүнийг цаашид тайлбарлах болно).

Миний Blynk баталгаажуулалтын токеныг хэрхэн авах вэ

  1. Blynk програмыг AppStore / PlayStore ашиглан гар утсандаа татаж аваарай.
  2. Энэ үйлчилгээнд бүртгүүлнэ үү (ашиглахад үнэгүй).
  3. Шинэ төсөл эхлүүлээд зөв төхөөрөмжийг сонгохоо мартуузай (манай тохиолдолд ESP8266).
  4. Үүсгэсний дараа AUTHENTICATION TOKEN бүхий имэйл илгээх болно. Дараагийн алхамуудын токеныг хадгална уу.

Анхаарна уу: Blynk -ийг програмаар дамжуулан бүрэн ашиглах боломжтой боловч бид өөрсдийн тохируулсан хяналтын самбарыг хэрэгжүүлэхээр шийдсэн.

Эцэст нь хэлэхэд, дараагийн алхам руу шилжихийн тулд та Blynk номын санг татаж аваад суулгах хэрэгтэй - Холбоос (3 -р хэсэг рүү алгасах)

Алхам 5: Хүнсний сав, усны насос, амьд камерыг тохируулна уу

Хүнсний сав, усны насос, амьд камерыг тохируулах
Хүнсний сав, усны насос, амьд камерыг тохируулах
Хүнсний сав, усны насос, амьд камерыг тохируулах
Хүнсний сав, усны насос, амьд камерыг тохируулах

Энэ үед бид бүх эд ангиудыг угсарч дуусгаад blynkAuthAppToken -ээ авлаа (3 -р алхамыг үзнэ үү).

Бид танд энэ төслийг ажиллуулахад шаардлагатай бүх кодыг өгсөн бөгөөд кодын цөөн тооны хувьсагчийг өөрчлөхөд л хангалттай бөгөөд ингэснээр үүнийг "өөрийн" хувийн систем болгоно.

Юуны өмнө Arduino IDE татаж авахаас эхэл (хэрэв та хараахан хийгээгүй бол) - Холбоос

Arduino хүнсний сав

  1. IDE -ийг Arduino самбар дээр тохируулна уу: Багаж хэрэгсэл -> Самбар -> Arduino/Genuino Uno
  2. Эдгээр номын санг суулгасан эсэхээ шалгаарай: Sketch -> Номын санг оруулах -> Номын санг удирдах

    Реле (Рафаэль бичсэн)

  3. PetFeeder.ino ноорог файлыг нээгээд дараах параметрүүдийг тохируулна уу (тусламж авахын тулд хавсаргасан зургийг үзнэ үү):

    auth = "REPLACE_WITH_YOUR_BLYNK_TOKEN";

  4. Ноорог зургийг хөрвүүлж, Arduino төхөөрөмждөө байршуулна уу.

Зангилаа-MCU усны нэгж

  1. IDE-ийг Node-MCU самбар дээр тохируулах:

    Дэлгэрэнгүй тайлбарыг энэ зааврын эхний хэсгээс үзнэ үү

  2. Эдгээр номын санг суулгасан эсэхээ шалгаарай: Sketch -> Номын санг оруулах -> Номын санг удирдах

    WiFi менежер (tzapu)

  3. PetFeeder.ino ноорог файлыг нээгээд дараах параметрүүдийг тохируулна уу (тусламж авахын тулд хавсаргасан зургийг үзнэ үү):

    • auth = "REPLACE_WITH_YOUR_BLYNK_TOKEN";
    • ssid = "YOUR_WIFI_SSID"; // Үндсэндээ энэ бол таны WiFi сүлжээний нэр юм
    • pass = "YOUR_WIFI_PASSWORD"; // хэрэв танд нууц үг байхгүй бол хоосон "" мөрийг ашиглана уу
  4. Ноорогоо Node-MCU төхөөрөмждөө эмхэтгэж байршуулна уу.

Pi Live камерын модуль

  1. Pi камерын модулийг холбоно уу
  2. "Sudo raspi-config" -ийг ажиллуулаад "камер" сонголтыг идэвхжүүлнэ үү.
  3. Зураг авахын тулд "raspistill" командыг ашиглан камерыг туршиж үзээрэй

    r aspistill -o image.jpg

  4. Flask вэб камерын серверийг тохируулах:

    • Pip install -r талаптар.txt ашиглан бүх шаардлагыг суулгаарай
    • Camera_server.py програмыг ажиллуулахын тулд python ашиглана уу
    • 127.0.0.1:5000/video_feed дээрээс үзээрэй
  5. Flask вэб серверийг ачаалах үед ажиллуулахаар тохируулна уу:

    • Дараах мөрийг /etc/rc.local дээр нэмэх (гарах мөрөөс өмнө):

      python /камер_сервер.py

Алхам 6: Хяналтын самбарыг хэрхэн ашиглах талаар

Хяналтын самбарыг хэрхэн ашиглах талаар
Хяналтын самбарыг хэрхэн ашиглах талаар

Тохируулах

Энэ хэсэг нь маш энгийн бөгөөд таны хийх ёстой зүйл бол "blynk апп токен" -ийг "index.js" файлд дараах байдлаар оруулах явдал юм.

const blynkToken = "YOUR_BLYNK_APP_TOKEN" // өмнөх алхмуудаас ижил токен ашиглана уу.

Хэрэглээ

  1. "Index.html" файл дээр давхар товшиж хяналтын самбарыг нээнэ үү.
  2. Хяналтын самбар нь системийг 10 минут тутамд автоматаар дээжлэх болно.
  3. Ус, хүнсний савны арга хэмжээг гараар авах боломжтой.
  4. "Ус өгөх" ба "Тэжээл өгөх" товчлуурууд нь гэрийн тэжээвэр амьтдаа хоол хүнс, усаар идэвхтэй хангахад хэрэглэгддэг.
  5. Хэрэв та өмнөх алхамуудын зааврыг анхааралтай дагаж мөрдвөл хяналтын самбарын доод хэсэг нь камерын модулийн шууд тэжээлийг үзүүлэх болно.

Тэмдэглэл: Хэрэв та хооллох үед хүнсний сав хэдэн удаа нээгдэхийг тохируулахыг хүсч байвал "index.js" файлыг нээгээд "3" гэсэн дараагийн мөрийн "утгыг" хүссэн тоогоороо өөрчилнө үү.

fetch (baseURL + '/update/V1? value = 3');

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

Сорилтууд

Энэхүү төслийн хувьд бидний тулгарч буй гол бэрхшээл бол хүнсний савыг онгойлгох, хаах механизмыг төлөвлөх, хүнсний нэгжийг хянах, хэмжих тогтвортой нэгэн зэрэг код үүсгэх явдал байв. Бид сэтгэл хангалуун байх хүртлээ дор хаяж 4 өөр хувилбарыг туршиж үзсэн гэдэгт би итгэж байна. Гол санаа зовоосон зүйл бол гарцыг хааж буй хүнсний бүтээгдэхүүн байв. Үүнээс урьдчилан сэргийлэхийн тулд бид чарга алхны загварыг сонгосон бөгөөд ингэснээр савыг онгойлгох бүрт "алх" -ын сүүл нь гарц руу хоолоо шүүрдэж байв. Түүгээр ч барахгүй хоёр талын хоолой ашиглах нь хүнсний савыг бүтээхэд бидний амьдралыг илүү хялбар болгосон. Ийм объект нь гаралтын механизмыг нэг талдаа, нөгөө талд нь түүний агуулгыг хэмжих зайны мэдрэгчийг байрлуулахад төгс төгөлдөр юм.

Хязгаар

Төслийн энэ үе шатанд системийн хязгаарлалт цөөн байна:

  1. Энэ нь бүрэн автоматжуулаагүй байгаа тул ус асгах, хянах ажлыг ухаалаг хяналтын хуваарьгүйгээр хяналтын самбараар гараар хийдэг (үүнийг ирээдүйд нэмж болно, эсвэл та өөрөө хэрэгжүүлж болно!).
  2. Хяналтын самбарыг өөрийн зөөврийн компьютерээс орон нутагт ажиллуулж байгаа бөгөөд үүнийг илүү хүртээмжтэй болгох үүднээс "Heroku" гэх мэт алдартай платформ дээр байрлуулж болно.
  3. Бид маш энгийн камерын модулийг ашигласан бөгөөд үүнийг илүү нарийн төвөгтэй модулиар сольж, зургийн чанарыг сайжруулж, гэрийн тэжээвэр амьтантайгаа холбоо барих суваг нэмж оруулах боломжтой (чанга яригч ашиглан).

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

Хэрэв бид энэ системийг үргэлжлүүлэн хөгжүүлэх цаг хугацаа, төсөвтэй бол бидэнд хэдэн санаа, боломжит хуваарь байсан:

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

Энэхүү төслийг унших нь танд таалагдсан гэж найдаж байна.

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