Sisällysluettelo:

Smart Pet Feeder: 9 vaihetta
Smart Pet Feeder: 9 vaihetta

Video: Smart Pet Feeder: 9 vaihetta

Video: Smart Pet Feeder: 9 vaihetta
Video: Такие секреты уже все забыли, но их стоит знать! Полезные советы на все случаи жизни! 2024, Heinäkuu
Anonim
Image
Image
Älykäs lemmikkieläinten syöttölaite
Älykäs lemmikkieläinten syöttölaite

Onko sinulla lemmikkiä?

  • Ei: adoptoi yksi! (ja palaa tähän ohjeeseen).
  • Kyllä: hyvää työtä!

Eikö olisi hienoa, jos voisit ruokkia ja antaa rakkaasi vettä peruuttamatta suunnitelmia päästäksesi kotiin ajoissa? Sanomme, että älä huoli enää.

Tässä projektissa olemme tehneet kauko -ohjattavia (verkon kautta) ruoka- ja vesiautomaatteja.

Online -kojelaudan kautta voit tarkastella tietoja ja hallita annostelijoita:

  • Tarkastele ruuan ja veden tasoa säiliöissä.
  • Tarkastele ruuan ja veden tasoja kulhoissa.
  • Syökö tai juoko eläin tällä hetkellä?
  • Ajoita ruokinta (laite ei annosta ruokaa, jos kulhossa on tarpeeksi ruokaa).
  • Annostele vettä automaattisesti, kun kulho tyhjenee.
  • Annostele ruokaa/vettä napin painalluksella.
  • Vastaanota push -ilmoituksia puhelimeesi (sähke -sovelluksella).

Keitä me olemme?

Luonut Tom Kaufman ja Katya Fichman, tietojenkäsittelytieteen opiskelijat IDC Herzliyassa.

Tämä projekti tehtiin IOT -kurssille.

Tarvikkeet

Elektroniikka

  • 2 X ESP8266 (Wemos d1 mini).
  • Hyppyjohdot.
  • 2 X Leipälauta.
  • 4 X Ultraäänianturi.
  • 2 X Lataa solu.
  • 2 X Kuormituskennovahvistin (HX711).
  • Servo (180 °).
  • Servo (jatkuva kierto).
  • 2 X 6V virtalähde.

Osat

  • Maissihiutaleet (Amazon -linkki).
  • 3D -painettu ruoka -annostelusuppilo (https://www.thingiverse.com/thing:3998805).
  • 3D -painettu ruoka -annostelijan servokiinnike (https://www.thingiverse.com/thing:3269637).
  • 3D -painettu ruoka -annostelija (suunniteltu tähän projektiin:
  • 3D -painettu punnituskennon pohja ja levy (suunniteltu tätä projektia varten:
  • Vesiautomaatti (Amazon -linkki johonkin vastaavaan).
  • Johto (liittääksesi veden annostelijan nupin servoon).
  • 3 X Ultraäänianturin jalusta.

Vaihe 1: Miten se toimii?

Kuinka se toimii?
Kuinka se toimii?

ESP8266-levyt lähettävät anturien lukemat Node-RED: lle Mosquiton (MQTT-välittäjä) kautta.

Node-RED käsittelee tiedot ja tekee tarvittavat toimenpiteet (lähettää myös annostelukomennot ESP8266-levyille Mosquiton kautta) ja näyttää tiedot kojelaudassa.

Kaikki laskelmat suoritetaan solmupunaisella, joten olisi helppo toistaa tämä projekti ja muuttaa tietojen käsittelyä asetustesi ja mieltymystesi mukaan saamatta käsiäsi koodaukseen.

Vaihe 2: Ohjelmistot

Ohjelmistot
Ohjelmistot

Arduino IDE

Lataa ja asenna (linkki:

Mosquitto

Lataa ja asenna (linkki:

Node.js

Lataa ja asenna (linkki:

Solmu-PUNAINEN

Noudata ohjeita:

ngrok

Lataa:

Sähke

Asenna sovellus älypuhelimeesi.

Vaihe 3: Piirin asettelu

Piirin asettelu
Piirin asettelu

* Molemmissa laitteissa on identtiset piirit

Vesiautomaatti

  • Ultraäänianturi (vesisäiliölle)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • LÄHETIN - D0
  • Ultraäänianturi (lemmikin etäisyydelle kulhosta)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • LÄHETIN - D7
  • Lataa solu

    • VIHREÄ - A+ (HX711)
    • VALKOINEN - A- (HX711)
    • MUSTA - E- (HX711)
    • PUNAINEN - E+ (HX711)
  • HX711 (kuormituskennovahvistin)

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

    • GND - G
    • VCC - 5V

Ruoka -annostelija

  • Ultraäänianturi (ruoka -astiaan)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • LÄHETIN - D0
  • Ultraäänianturi (lemmikin etäisyydelle kulhosta)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • LÄHETIN - D7
  • Lataa solu

    • VIHREÄ - A+ (HX711)
    • VALKOINEN - A- (HX711)
    • MUSTA - E- (HX711)
    • PUNAINEN - E+ (HX711)
  • HX711 (kuormituskennovahvistin)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • Servo (jatkuva kierto)

    • GND - G
    • VCC - 5V
    • OHJAUS - D8

Vaihe 4: Käsityö

Alus
Alus
Alus
Alus
Alus
Alus

Vesiautomaatti

  1. Liimaa servo annostelijan alaosan yläosaan (kuten kuvassa).
  2. Poraa pieni reikä vesisäiliön nuppiin.
  3. Liitä servopää nuppiin langalla (varmista, että servopää on asennossa 0 ja että lanka on tiukka).
  4. Liimaa yksi ultraäänianturi säiliön sisäpuolelle lähellä sen yläosaa (anturi alaspäin).
  5. Liimaa yksi ultraäänianturi vesisäätimen alapuolelle ulospäin (varmista, että se on riittävän korkea, jotta vesikulho ei vaikuta lukemiin).

Ruoka -annostelija

  1. Ruuvaa servo pidikkeeseen (3D -painettu osa).
  2. Liimaa suppilo (3D -painettu osa) säiliön pidikkeeseen (3D -painettu osa).
  3. Liitä säiliön pidike annostelijan telineeseen (3D -painettu osa) ja aseta säiliö paikalleen.
  4. Aseta kehruulaite (3D -tulostettu) paikalleen ja annostelijan pyörivän kumiosan läpi.
  5. Kierrä servopidikkeen osa annostelijan telineeseen.
  6. Liimaa yksi ultraäänianturi säiliön kannen sisäpuolelle (anturi alaspäin).
  7. Liimaa yksi ultraäänianturi säiliön pidikkeen puolelle, joka osoittaa kohti lemmikkisi ruokaa.

Lataa solut

Liimaa jokainen punnituskenno 3D -tulostettuun alustaan ja levyyn (punnituskennon nuoli alaspäin)

Vaihe 5: Mosquitto

Mosquitto
Mosquitto

Avaa Mosquitto (Windows -käyttäjät: siirry Mosquitto -kansioon, avaa cmd ja kirjoita: "mosquitto -v").

* Saat tietokoneen sisäisen IP -osoitteen suorittamalla cmd ja kirjoittamalla "ipconfig".

Vaihe 6: Arduino IDE

Arduino IDE
Arduino IDE
Arduino IDE
Arduino IDE

Avaa Arduino IDE ja seuraa tämän oppaan osaa "Asenna ESP8266-lisäosa Arduino IDE: hen":

Mene Työkalut-> Hallitus ja valitse "LOLIN (WEMOS) D1 R2 & mini".

Siirry Luonnos-> Sisällytä kirjasto-> Lisää. ZIP-kirjasto… ja lisää kolme kirjastoa "Libraries.rar" -tiedostoon.

Avaa "HX711Calibration" -luonnos, lataa se molemmille ESP8266 -laitteille, suorita se ja noudata ohjeita (koodin alussa ja sarjamonitorissa) kalibroidaksesi punnituskennot (varmista, että sarjamonitorin siirtonopeus on asetettu 115200 baudia).

* Kirjoita ylös kalibrointikerroin ja nollapisteen siirtymä (myöhempää käyttöä varten).

Avaa "FoodDispenser" ja "WaterDispenser" luonnokset IDE: n kautta ja muuta seuraavat muuttujat asetuksillasi (tiedostossa "Settings.h"):

  • WIFI_SSID
  • WIFI_SALASANA
  • MQTT_SERVER
  • LOAD_CELL_CALIBRATION_FACTOR
  • LOAD_CELL_ZERO_OFFSET

* Kirjoita MQTT_SERVER -palveluun sisäinen IP -osoite "Mosquitto" -vaiheesta.

Lataa luonnokset kahteen ESP8266 -laitteeseesi (yksi koodi kullekin levylle).

* Huomaa, että olemme käyttäneet AsyncMqttClient -kirjastoa, ei yleisempiä pubsubclient -kirjastoja, koska esp8266 kaatuu yhdistettynä HX711 -kirjastoon.

* Jos päätät tehdä muutoksia koodiin, varmista, ettet käytä "viive" - ja "tuotto" -toimintoja takaisinsoittotoimintojen sisällä, koska se aiheuttaa kaatumisia.

Vaihe 7: Ngrok

Ngrok
Ngrok
Ngrok
Ngrok

Pura ladattu tiedosto ("Ohjelmistot" -vaiheen linkistä).

Avaa "ngrok.exe" ja suorita komento "ngrok http 1880".

* Voit valita lähimmän alueen (au, eu, ap, us, jp, in, sa). Oletusasetus on me.

Esimerkiksi komennon suorittaminen: "ngrok http --region = eu 1880" (aseta alue Eurooppaan).

Näet nyt verkko -osoitteesi ulkoiseen käyttöön (tästä käytetään nimeä YOUR_NGROK_ADDRESS).

Vaihe 8: Solmu-PUNAINEN

Solmu-PUNAINEN
Solmu-PUNAINEN
Solmu-PUNAINEN
Solmu-PUNAINEN
Solmu-PUNAINEN
Solmu-PUNAINEN

Avaa Node-RED (Windows-käyttäjät: avaa cmd ja kirjoita "node-red") ja siirry osoitteeseen https:// localhost: 1880 (jos se ei toimi, etsi osoite cmd-ikkunasta, jossa se on kirjoitettu "Palvelin nyt käynnissä ").

Avaa valikko (oikeassa yläkulmassa) ja paina "Hallitse palettia".

Siirry "Asenna" -välilehteen, etsi ja asenna nämä moduulit:

  • node-red-contrib-persist.
  • node-red-contrib-cron-plus.
  • node-red-contrib-ui-led.
  • node-red-dashboard.
  • node-red-contrib-telegrambot.

Siirry valikkoon-> Tuo ja lähetä virtaustiedosto (purkaa liitteenä oleva RAR-tiedosto ja lähetä json-tiedosto).

Katso oheisista kuvista selitykset virtauksesta.

Sinun on muokattava näitä solmuja asetuksillasi:

  • Päivitä "Sähkeen lähettäjä" -solmun profiili botin käyttäjänimellä ja tunnuksella (käytä tätä opasta:
  • Vaihda työnkulun alareunassa "Ngrok Address" - ja "Telegram Chat Id" -solmujen hyötykuormat (saat chat -tunnuksesi yllä olevan linkin Telegram -oppaan avulla).
  • Vuon alaosassa on asetussolmuja - muokkaa niitä tarpeidesi mukaan:

    • Aktivoi lemmikki syö/juo -varoitukset.
    • Määritä etäisyys syöminen/juominen -hälytyksen aktivoimiseksi.
    • Määritä kulhojen ja säiliöiden tietojen käsittely.
    • Muuta annosteluaikoja (kuinka kauan annokset tapahtuvat - automaattinen tila ja painikkeen painallus).
    • Määritä ruokakupin ylivuotokynnysprosentti (keskeytä automaattinen ruoka -annostus, jos kulhossa on tarpeeksi ruokaa).

Ota virtaus käyttöön (oikeassa yläkulmassa).

* Vain ensimmäisellä käyttöönotolla näet virheenkorjausikkunassa varoituksen puuttuvasta persistance.json -tiedostosta. Älä huolehdi siitä, koska tällä hetkellä asetat syöttöajat tai vaihdat automaattisen vesikytkimen, se alustaa tämän tiedoston eikä sinulla enää ole tätä varoitusta.

Voit tarkastella koontinäyttöäsi osoitteessa https:// NODE-RED_PC'S_INTERNAL_IP_ADDRESS: 1880/ui (jos olet yhteydessä samaan lähiverkkoon kuin palvelin) tai YOUR_NGROK_ADDRESS/ui (kaikkialta).

Vaihe 9: Kokoa

Paketoida
Paketoida

Toivomme, että tämä opetusohjelma oli informatiivinen ja helppo lukea, ymmärtää ja toteuttaa.

Voit vapaasti kysyä meiltä mitä tahansa.

Suositeltava: