Obsah:

Inteligentný podávač domácich zvierat: 9 krokov
Inteligentný podávač domácich zvierat: 9 krokov

Video: Inteligentný podávač domácich zvierat: 9 krokov

Video: Inteligentný podávač domácich zvierat: 9 krokov
Video: Top 5 - najmladších matiek na svete 2024, November
Anonim
Image
Image
Inteligentné kŕmidlo pre domáce zvieratá
Inteligentné kŕmidlo pre domáce zvieratá

Máte domáceho maznáčika?

  • Nie: adoptujte si jedného! (a vráťte sa k tomuto pokynu).
  • Áno: dobrá práca!

Nebolo by skvelé, keby ste sa mohli kŕmiť a dávať vodu svojmu blízkemu bez toho, aby ste zrušili plány, aby ste sa včas dostali domov? Hovoríme si už žiadne starosti.

V tomto projekte sme vyrobili diaľkovo ovládané (cez web) dávkovače jedla a vody.

Prostredníctvom online panela si môžete prezerať údaje a ovládať výdajné stojany:

  • Pozrite sa na hladinu jedla a vody v nádržiach.
  • V miskách si pozrite hladinu jedla a vody.
  • V tejto chvíli zviera žerie alebo pije?
  • Naplánujte kŕmenie (zariadenie nevydá jedlo, ak je v miske dostatok jedla).
  • Automaticky vydáva vodu, keď je misa prázdna.
  • Jedlo/vodu vydáte stlačením tlačidla.
  • Prijímajte oznámenia push do svojho telefónu (prostredníctvom aplikácie Telegram).

Kto sme?

Vytvorili Tom Kaufman a Katya Fichman, študenti informatiky v IDC Herzliya.

Tento projekt bol vytvorený pre kurz IOT.

Zásoby

Elektronika

  • 2 X ESP8266 (Wemos d1 mini).
  • Prepojovacie vodiče.
  • 2 X Breadboard.
  • 4 X Ultrazvukový senzor.
  • 2 X Snímač zaťaženia.
  • 2 X zosilňovač zaťažovacích buniek (HX711).
  • Servo (180 °).
  • Servo (nepretržité otáčanie).
  • Napájanie 2 x 6V.

Časti

  • Dávkovač kukuričných vločiek (odkaz Amazon).
  • 3D tlačený lievik na výdaj jedla (https://www.thingiverse.com/thing:3998805).
  • 3D tlačený servo nástavec dávkovača jedla (https://www.thingiverse.com/thing:3269637).
  • Stojan na výdaj potravín s 3D tlačou (určený pre tento projekt:
  • Základňa a platňa snímača zaťaženia 3D (navrhnuté pre tento projekt:
  • Dávkovač vody (odkaz Amazonu na niečo podobné).
  • Drôt (na pripojenie gombíka dávkovača vody k servu).
  • 3 X Stojan ultrazvukového senzora.

Krok 1: Ako to funguje?

Ako to funguje?
Ako to funguje?

Dosky ESP8266 odosielajú údaje zo senzorov na Node-RED prostredníctvom Mosquitto (maklér MQTT).

Node-RED spracováva údaje, podľa toho vykonáva akcie (tiež odosiela príkazy na dávkovanie na dosky ESP8266 prostredníctvom Mosquitto) a zobrazuje informácie na palubnej doske.

Všetky výpočty sú vykonávané v Node-RED, takže by bolo ľahké replikovať tento projekt a zmeniť spracovanie údajov podľa vašich nastavení a preferencií bez toho, aby ste si zašpinili ruky kódovaním.

Krok 2: Softwary

Softvér
Softvér

Arduino IDE

Stiahnite a nainštalujte (odkaz:

Komár

Stiahnite a nainštalujte (odkaz:

Node.js

Stiahnite a nainštalujte (odkaz:

Uzol-ČERVENÝ

Postupujte podľa pokynov:

ngrok

Stiahnutie:

Telegram

Nainštalujte aplikáciu do svojho smartfónu.

Krok 3: Rozloženie obvodu

Rozloženie obvodu
Rozloženie obvodu

* Oba zariadenia majú identické obvody

Zásobník vody

  • Ultrazvukový senzor (pre nádrž na vodu)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • SPÚŠŤAČ - D0
  • Ultrazvukový senzor (na vzdialenosť domáceho maznáčika od misky)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • SPÚŠŤAČ - D7
  • Záťažová bunka
    • ZELENÁ - A+ (HX711)
    • BIELA - A- (HX711)
    • ČIERNA - E- (HX711)
    • ČERVENÁ - E+ (HX711)
  • HX711 (zosilňovač silových buniek)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • Servo (180 °)

    • GND - G
    • VCC - 5V

Dávkovač jedla

  • Ultrazvukový senzor (pre nádrž na potraviny)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • SPÚŠŤAČ - D0
  • Ultrazvukový senzor (na vzdialenosť domáceho maznáčika od misky)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • SPÚŠŤAČ - D7
  • Záťažová bunka
    • ZELENÁ - A+ (HX711)
    • BIELA - A- (HX711)
    • ČIERNA - E- (HX711)
    • ČERVENÁ - E+ (HX711)
  • HX711 (zosilňovač silových buniek)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • Servo (nepretržité otáčanie)

    • GND - G
    • VCC - 5V
    • OVLÁDANIE - D8

Krok 4: Remeslo

Remeslo
Remeslo
Remeslo
Remeslo
Remeslo
Remeslo

Zásobník vody

  1. Prilepte servo k hornej časti spodnej časti dávkovača (ako je znázornené na fotografii).
  2. Do gombíka dávkovača vody vyvŕtajte malý otvor.
  3. Pripojte servo hlavu k gombíku pomocou drôtu (uistite sa, že je servo hlava v polohe 0 a uistite sa, že je kábel pevne utiahnutý).
  4. Prilepte jeden ultrazvukový snímač na vnútornú stranu nádrže v blízkosti jej hornej časti (snímač smerom nadol).
  5. Prilepte jeden ultrazvukový snímač pod vodný gombík smerom von (uistite sa, že je dostatočne vysoký, aby nádoba na vodu neovplyvňovala jeho hodnoty).

Automat na potraviny

  1. Poskrutkujte servo do držiaka (3D tlačená časť).
  2. Prilepte lievik (3D vytlačená časť) k držiaku nádrže (3D vytlačená časť).
  3. Pripojte držiak nádrže k stojanu výdajného stojana (3D tlačená časť) a vložte nádrž na miesto.
  4. Vložte rotujúcu časť (3D vytlačenú) na svoje miesto a cez rotujúcu gumovú časť dávkovača.
  5. Naskrutkujte časť držiaka serva na stojan.
  6. Prilepte jeden ultrazvukový snímač na vnútornú stranu veka nádrže (snímač smerom nadol).
  7. Prilepte jeden ultrazvukový snímač na stranu držiaka nádrže otočenú smerom k miestu, kde bude váš maznáčik jesť.

Záťažové bunky

Prilepte každý silomer k 3D vytlačenej základni a doske (šípka snímača zaťaženia smeruje nadol)

Krok 5: Mosquitto

Komár
Komár

Otvorte Mosquitto (používatelia systému Windows: prejdite do priečinka Mosquitto, otvorte cmd a zadajte: „mosquitto -v“).

* Ak chcete získať internú adresu IP počítača, spustite príkaz cmd a zadajte príkaz „ipconfig“.

Krok 6: Arduino IDE

Arduino IDE
Arduino IDE
Arduino IDE
Arduino IDE

Otvorte Arduino IDE a postupujte podľa časti „Inštalácia doplnku ESP8266 do Arduino IDE“tejto príručky:

Prejdite na Nástroje-> Doska a zvoľte „LOLIN (WEMOS) D1 R2 & mini“.

Prejdite na Sketch-> Include Library-> Add. ZIP Library… a pridajte 3 knižnice do súboru „Libraries.rar“.

Otvorte skicu „Kalibrácia HX711“, nahrajte ju do oboch zariadení ESP8266, spustite ju a podľa pokynov (na začiatku kódu a v sériovom monitore) kalibrujte snímače zaťaženia (uistite sa, že prenosová rýchlosť sériového monitora je nastavená na 115200 baudov).

* Zapíšte si kalibračný faktor a nulový posun (na neskoršie použitie).

Otvorte „FoodDispenser“a „WaterDispenser“náčrty v IDE a zmeňte pomocou svojich nastavení nasledujúce premenné (v súbore „Settings.h“):

  • WIFI_SSID
  • WIFI_PASSWORD
  • MQTT_SERVER
  • LOAD_CELL_CALIBRATION_FACTOR
  • LOAD_CELL_ZERO_OFFSET

* V serveri MQTT_SERVER zadajte internú adresu IP z kroku „Mosquitto“.

Nahrajte náčrty do svojich dvoch ESP8266 (jeden kód na každú dosku).

* Všimnite si toho, že sme použili knižnicu „AsyncMqttClient“, a nie bežnejšiu knižnicu „pubsubclient“, pretože esp8266 v kombinácii s knižnicou „HX711“zlyhá.

* Ak sa rozhodnete vykonať zmeny v kóde, vo funkciách spätného volania nepoužívajte funkcie „oneskorenie“a „výnos“, pretože to spôsobí zlyhania.

Krok 7: Ngrok

Ngrok
Ngrok
Ngrok
Ngrok

Rozbaľte stiahnutý súbor (z odkazu v kroku „Softwares“).

Otvorte „ngrok.exe“a spustite príkaz „ngrok http 1880“.

* Môžete si vybrať región, ktorý je vám najbližšie (au, eu, ap, us, jp, in, sa). Predvolení sme my.

Napríklad spustite príkaz: "ngrok http --region = eu 1880" (nastavte región na Európu).

Teraz uvidíte svoju webovú adresu na externé použitie (túto adresu budeme označovať ako YOUR_NGROK_ADDRESS).

Krok 8: Uzol-ČERVENÝ

Uzol-ČERVENÝ
Uzol-ČERVENÝ
Uzol-ČERVENÝ
Uzol-ČERVENÝ
Uzol-ČERVENÝ
Uzol-ČERVENÝ

Otvorte Node-RED (používatelia systému Windows: otvorte cmd a zadajte „node-red“) a prejdite na adresu https:// localhost: 1880 (ak to nefunguje, vyhľadajte adresu v okne cmd, kde je napísané „Server teraz beží na “).

Otvorte ponuku (v pravom hornom rohu) a kliknite na položku „Spravovať paletu“.

Prejdite na kartu „Inštalovať“, vyhľadajte a nainštalujte tieto moduly:

  • node-red-contrib-persist.
  • node-red-contrib-cron-plus.
  • node-red-contrib-ui-led.
  • uzol-červená-palubná doska.
  • node-red-contrib-telegrambot.

Prejdite do ponuky-> Importovať a nahrajte súbor toku (rozbaľte priložený súbor RAR a nahrajte súbor json).

Vysvetlenie toku nájdete na priložených obrázkoch.

Tieto uzly budete musieť upraviť pomocou svojich nastavení:

  • Aktualizujte profil uzla „Telegram odosielateľa“pomocou používateľského mena a tokenu vášho robota (použite tohto sprievodcu:
  • V spodnej časti toku zmeňte užitočné zaťaženie uzlov „Adresa Ngrok“a „Telegram Chat Id“(získajte svoje ID chatu pomocou sprievodcu telegramom v odkaze vyššie).
  • V spodnej časti toku sú uzly nastavení - upravte ich podľa svojich potrieb:

    • Aktivujte zviera upozornenie na jedenie/pitie.
    • Definujte, aká je vzdialenosť pre aktiváciu upozornenia na jedenie/pitie.
    • Definujte spracovanie dát misiek a tankov.
    • Upravte časy dávkovania (ako dlho sa výdajy vykonávajú - automatický režim a stlačenie tlačidla).
    • Definujte percentuálny prah pre pretečenie misky (ak je v miske dostatok jedla, prerušte automatické dávkovanie jedla).

Nasaďte tok (vpravo hore).

* Len pri prvom nasadení sa vám v okne ladenia zobrazí upozornenie na chýbajúci súbor „persistance.json“. Nerobte si starosti, pretože v súčasnosti nastavíte časy kŕmenia alebo zmeníte automatický spínač vody, inicializuje tento súbor a už nebudete mať toto upozornenie.

Hlavný panel môžete zobraziť na adrese https:// NODE-RED_PC'S_INTERNAL_IP_ADDRESS: 1880/ui (ak ste pripojení k rovnakej sieti LAN ako server) alebo YOUR_NGROK_ADDRESS/ui (odkiaľkoľvek).

Krok 9: Zbaliť

Zabaliť
Zabaliť

Dúfame, že tento návod bol informatívny a ľahko čitateľný, zrozumiteľný a implementovateľný.

Neváhajte sa nás na čokoľvek opýtať.

Odporúča: