Taula de continguts:

Alimentador intel·ligent per a mascotes: 9 passos
Alimentador intel·ligent per a mascotes: 9 passos

Vídeo: Alimentador intel·ligent per a mascotes: 9 passos

Vídeo: Alimentador intel·ligent per a mascotes: 9 passos
Vídeo: Автоматическая кормушка для кошек и собак. Автокормушка Automatic Pet Feeder 4PLDH5001 с таймером. 2024, Juliol
Anonim
Image
Image
Alimentador intel·ligent per a mascotes
Alimentador intel·ligent per a mascotes

Tens una mascota?

  • No: adopteu-ne un! (i torneu a aquest instructiu).
  • Sí: bona feina!

No seria fantàstic que poguéssiu alimentar i donar aigua al vostre ésser estimat sense cancel·lar els plans per arribar a casa a temps? Diem que no us preocupeu més.

En aquest projecte hem creat un dispensador d’aliments i aigua controlat a distància (mitjançant xarxa).

A través del tauler de control en línia podeu veure dades i controlar els distribuïdors:

  • Veure els aliments i els nivells d’aigua als tancs.
  • Veure els aliments i els nivells d’aigua als bols.
  • L’animal menja o beu en aquest moment?
  • Programa les alimentacions (el dispositiu no dispensarà menjar si hi ha prou menjar al bol).
  • Distribuïu automàticament aigua quan el bol es buidi.
  • Distribuïu menjar / aigua amb només prémer un botó.
  • Rebeu notificacions automàtiques al vostre telèfon (mitjançant l’aplicació Telegram).

Qui sóm?

Creat per Tom Kaufman i Katya Fichman, estudiants d’informàtica a IDC Herzliya.

Aquest projecte es va fer per a un curs IOT.

Subministraments

Electrònica

  • 2 X ESP8266 (Wemos d1 mini).
  • Filferros de pont.
  • 2 X Tauler de pa.
  • Sensor d'ultrasons 4 X.
  • 2 X cel·la de càrrega.
  • 2 X amplificador de cèl·lules de càrrega (HX711).
  • Servo (180 °).
  • Servo (rotació contínua).
  • Alimentació 2 X 6V.

Parts

  • Dispensador de flocs de blat de moro (enllaç Amazon).
  • Embut de distribució d’aliments impresos en 3D (https://www.thingiverse.com/thing:3998805).
  • Servei adjunt del dispensador d'aliments impresos en 3D (https://www.thingiverse.com/thing:3269637).
  • Suport de dispensador d’aliments impresos en 3D (dissenyat per a aquest projecte:
  • Base i placa de cèl·lules de càrrega impreses en 3D (dissenyades per a aquest projecte:
  • Dispensador d'aigua (enllaç d'Amazon a alguna cosa similar).
  • Filferro (per connectar el pom del dispensador d’aigua al servo).
  • 3 X suport del sensor d'ultrasons.

Pas 1: Com funciona?

Com funciona?
Com funciona?

Les plaques ESP8266 envien les lectures dels sensors a Node-RED mitjançant Mosquitto (broker MQTT).

Node-RED processa les dades, realitzant accions en conseqüència (també envia ordres de distribució a les plaques ESP8266 mitjançant Mosquitto) i mostra informació al tauler.

Tots els càlculs es realitzen en Node-RED, de manera que seria fàcil replicar aquest projecte i canviar el processament de les dades segons la vostra configuració i preferències sense embrutar-vos les mans amb la codificació.

Pas 2: programes

Programaris
Programaris

IDE Arduino

Descarregueu i instal·leu (enllaç:

Mosquit

Descarregar i instal·lar (enllaç:

Node.js

Baixeu-lo i instal·leu-lo (enllaç:

Node-VERMELL

Seguiu les instruccions:

ngrok

Descàrrega:

Telegrama

Instal·leu l'aplicació al telèfon intel·ligent.

Pas 3: Disseny del circuit

Disseny del circuit
Disseny del circuit

* Tots dos dispositius tenen circuits idèntics

Dispensador d'aigua

  • Sensor d'ultrasons (per al dipòsit d'aigua)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • TRIGGER - D0
  • Sensor d'ultrasons (per a la distància de la mascota del bol)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • TRIGGER - D7
  • Cel·la de càrrega
    • VERD: A + (HX711)
    • BLANC - A- (HX711)
    • NEGRE - E- (HX711)
    • VERMELL - E + (HX711)
  • HX711 (amplificador de cèl·lules de càrrega)

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

    • GND - G
    • VCC - 5V

Dispensador d'aliments

  • Sensor d'ultrasons (per al dipòsit d'aliments)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • TRIGGER - D0
  • Sensor d'ultrasons (per a la distància de la mascota del bol)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • TRIGGER - D7
  • Cel·la de càrrega
    • VERD: A + (HX711)
    • BLANC - A- (HX711)
    • NEGRE - E- (HX711)
    • VERMELL - E + (HX711)
  • HX711 (amplificador de cèl·lules de càrrega)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • Servo (rotació contínua)

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

Pas 4: artesania

Artesania
Artesania
Artesania
Artesania
Artesania
Artesania

Dispensador d'aigua

  1. Enganxeu el servo a la part superior de la part inferior del dispensador (com es mostra a la foto).
  2. Practicar un petit forat al pom del dispensador d’aigua.
  3. Connecteu el cap de servo al comandament amb un cable (assegureu-vos que el cap de servo estigui a la posició 0 i assegureu-vos que el cable estigui ajustat).
  4. Enganxeu un sensor d'ultrasons al costat interior del tanc, a prop de la part superior (sensor cap avall).
  5. Enganxeu un sensor d'ultrasons per sota del pom d'aigua cap a l'exterior (assegureu-vos que sigui prou alt perquè el bol d'aigua no afecti les seves lectures).

Distribuïdor d'aliments

  1. Cargoleu el servo al seu suport (part impresa en 3D).
  2. Enganxeu l'embut (part impresa en 3D) al suport del dipòsit (part impresa en 3D).
  3. Connecteu el suport del dipòsit al suport del dispensador (part impresa en 3D) i col·loqueu el dipòsit al seu lloc.
  4. Introduïu la part giratòria (impresa en 3D) al seu lloc i a través de la part de goma giratòria del dispensador.
  5. Cargoleu la peça del suport del servo al suport del dispensador.
  6. Enganxeu un sensor d'ultrasons a la cara interna de la tapa del tanc (sensor cap avall).
  7. Enganxeu un sensor d'ultrasons al costat del suport del tanc cap al lloc on menjarà la vostra mascota.

Cèl·lules de càrrega

Enganxeu cada cel·la de càrrega a la base i la placa impresa en 3D (la fletxa de la cel·la de càrrega cap avall)

Pas 5: Mosquit

Mosquit
Mosquit

Obriu Mosquitto (usuaris de Windows: aneu a la carpeta Mosquitto, obriu cmd i introduïu: "mosquitto -v").

* Per obtenir l'adreça IP interna de l'ordinador, executeu cmd i introduïu "ipconfig".

Pas 6: IDE Arduino

IDE Arduino
IDE Arduino
IDE Arduino
IDE Arduino

Obriu l'IDE d'Arduino i seguiu la part "Instal·la el complement ESP8266 a l'IDE d'Arduino" d'aquesta guia:

Aneu a Eines-> Tauler i trieu "LOLIN (WEMOS) D1 R2 & mini".

Aneu a Sketch-> Include Library-> Add. ZIP Library … i afegiu les 3 biblioteques al fitxer "Libraries.rar".

Obriu l'esbós "HX711Calibration", pengeu-lo a ESP8266, executeu-lo i seguiu les instruccions (al començament del codi i al monitor sèrie) per calibrar les cel·les de càrrega (assegureu-vos que la velocitat en bauds del monitor sèrie estigui configurada a 115200 bauds).

* Anoteu el factor de calibratge i el desplaçament zero (per a un ús posterior).

Obriu els esbossos de "FoodDispenser" i "WaterDispenser" a través de l'IDE i canvieu les variables següents amb la vostra configuració (al fitxer "Settings.h"):

  • WIFI_SSID
  • WIFI_PASSWORD
  • MQTT_SERVER
  • LOAD_CELL_CALIBRATION_FACTOR
  • LOAD_CELL_ZERO_OFFSET

* A MQTT_SERVER introduïu l'adreça IP interna des del pas "Mosquitto".

Pengeu els esbossos al vostre ESP8266 (un codi a cada tauler).

* Tingueu en compte que hem utilitzat la biblioteca "AsyncMqttClient" i no la biblioteca "pubsubclient" més comuna des que l'esp8266 es bloqueja quan es combina amb la biblioteca "HX711".

* Si decidiu fer canvis al codi, assegureu-vos de no utilitzar les funcions "endarrerir" i "cedir" dins de les funcions de devolució de trucada, ja que provocaran bloquejos.

Pas 7: Ngrok

Ngrok
Ngrok
Ngrok
Ngrok

Descomprimiu el fitxer descarregat (des de l'enllaç del pas "Programes").

Obriu "ngrok.exe" i executeu l'ordre "ngrok http 1880".

* Podeu seleccionar la regió més propera (au, eu, ap, us, jp, in, sa). El valor per defecte som nosaltres.

Per exemple, executant l'ordre: "ngrok http --region = eu 1880" (configureu la regió a Europa).

Ara veureu la vostra adreça web per a ús extern (ens referirem a aquesta adreça com YOUR_NGROK_ADDRESS).

Pas 8: Node-VERMELL

Node-VERMELL
Node-VERMELL
Node-VERMELL
Node-VERMELL
Node-VERMELL
Node-VERMELL

Obriu Node-RED (usuaris de Windows: obriu cmd i introduïu "node-red") i aneu a https:// localhost: 1880 (si no funciona, cerqueu l'adreça a la finestra de cmd on està escrit "Servidor ara corrent a ").

Obriu el menú (a l'extrem superior dret) i premeu "Gestiona la paleta".

Aneu a la pestanya "Instal·la", cerqueu i instal·leu aquests mòduls:

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

Aneu al menú-> Importa i pengeu el fitxer de flux (extraieu el fitxer RAR adjunt i pengeu el fitxer json).

Consulteu les imatges adjuntes per obtenir explicacions sobre el flux.

Haureu de modificar aquests nodes amb la vostra configuració:

  • Actualitzeu el perfil del node "Telegram remitent" amb el nom d'usuari i el testimoni del vostre bot (utilitzeu aquesta guia:
  • A la part inferior del flux, canvieu les càrregues útils dels nodes "Adreça Ngrok" i "Telegram Chat Id" (obteniu el vostre identificador de xat mitjançant la guia Telegram de l'enllaç superior).
  • A la part inferior del flux hi ha nodes de configuració: modifiqueu-los segons les vostres necessitats:

    • Activar les alertes de menjar / beure de mascotes.
    • Definiu quina és la distància per activar l'alerta de menjar / beure.
    • Definiu processament de dades de bols i dipòsits.
    • Modifiqueu els temps de dispensació (durant quant de temps es produeixen les dispensacions: mode automàtic i premeu el botó).
    • Definiu el percentatge de llindar de desbordament del bol d'aliments (avortar la distribució automàtica d'aliments si hi ha prou menjar al bol).

Desplegueu el flux (a la part superior dreta).

* Només al primer desplegament, veureu un advertiment a la finestra de depuració sobre el fitxer "persistance.json" que falta. No us preocupeu, ja que en aquest moment definireu els horaris d’alimentació o canvieu l’interruptor automàtic d’aigua, inicialitzarà aquest fitxer i ja no tindreu aquest advertiment.

Podeu veure el tauler a https:// NODE-RED_PC'S_INTERNAL_IP_ADDRESS: 1880 / ui (si esteu connectat a la mateixa LAN que el servidor) o a YOUR_NGROK_ADDRESS / ui (des de qualsevol lloc).

Pas 9: conclou

Embolicar
Embolicar

Esperem que aquest tutorial sigui informatiu i fàcil de llegir, entendre i implementar.

No dubteu a preguntar-nos qualsevol cosa.

Recomanat: