Indholdsfortegnelse:
- Trin 1: Forstå arkitekturen:
- Trin 2: Liste over dele
- Trin 3: Kabelføring og placering af ting sammen
- Trin 4: Opsætning af Blynk
- Trin 5: Konfigurer madbeholder, vandpumpe og levende kamera
- Trin 6: Sådan bruges kontrolpanelet
- Trin 7: Udfordringer, grænser og fremtidsplaner
Video: IDC2018IOT Connected Pet Food, Water and Monitor System: 7 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Introduktion
Uanset om du er en studerende under pres, en hårdtarbejdende person eller bare er hjemmefra i mere end få timer om dagen. Som omsorgsfulde kæledyrsejere vil vi sikre, at vores elskede forbliver sunde, fodrede og selvfølgelig IKKE ligger på sofaen (din bastard!). Det er på tide at stoppe med at bede om tjenester eller endda betale for sådanne tjenester.
Med dette fede projekt har vi til formål at give dig muligheden for at gøre-det-selv (jeg har hørt, at det er en ting nu). Vi vil bygge en løsning til bedre overvågning af vores kæledyr og endda tage handling, mens vi er på kontoret, skolen eller bare hænger ud med vores venner eller betydelige andre.
Dette system giver dig mulighed for at fodre dit kæledyr eksternt, mens du kontrollerer mængden af mad, du hælder fra beholderen, fylder vandskålen, når den løber tom. Derudover kan vi nu overvåge skålens vandstand i realtid, måle madbeholderens indhold og vigtigst af alt se kæledyret live ved hjælp af et simpelt kameramodul.
Om os
Tomer Maimon, Gilad Ram og Alon Shprung. Tre lidenskabelige datalogistuderende ved IDC Herzeliya. Dette er vores første Instructables -projekt som en del af et IoT -værksted - vi håber, at du vil finde det interessant og sjovt at bygge!
Trin 1: Forstå arkitekturen:
Vi kan opdele dette system i to hoveddele:
-
Indgående datakanaler:
- Vandsensor - prøveudtagning af vandstandene inde i kæledyrsskålen, data overføres fra Node -MCU -enheden til Blynk -serveren og præsenteres til sidst via Pet Dashboard.
- Ekkolodssensor - prøveudtagning af madbeholderens indhold, data overføres fra Arduino -enheden (med Ethernet -skjoldforlængelse) til Blynk -serveren og præsenteres til sidst via Pet Dashboard.
- Pi kameramodul - prøver konstant rammer af kæledyrsområdet, Pi er vært for sin egen server, der leverer live -feed til kæledyrets dashboard.
-
Kommandoforløb:
- Feedknap (dashboard) - opdatering af en virtuel pinværdi gennem Blynk, den relevante funktion udløses på Arduino -tavlen, Servoen bevæger sig derefter for at lade mad passere gennem låget.
- Give vand (instrumentbræt) - opdaterer aktivt en virtuel nålværdi gennem Blynk, den relevante funktion udløses på Node -MCU -kortet, relæet er tændt, vandpumpen begynder at streame vand til kæledyrets skål.
- Pet Live Feed (Dashboard) - integreret i instrumentbrættet og præsentation af levende data via kolbe -serveren, der kører på Pi -enheden.
Trin 2: Liste over dele
For at begynde at arbejde på dette system skal du bruge følgende (eller lignende) dele:
-
Fysisk:
- Madbeholder: Vi brugte et industrielt 45 cm tosidet rør, som vi købte i et hjemmevarehus. Det er vigtigt at have 2 udgange. En til måling af indholdet og anden udgang til åben/luk mekanisme.
- Kanaltape: For at holde tingene sammen;)
- Jumper Wires: Jo flere desto bedre, altid godt at have lidt ekstra, hvis noget går galt.
- Ethernet -kabel: Til tilslutning af vores Arduino (med ethernet -skjold) til internettet.
- Havearbejde: Kan bruges som beholder til vand og vandpumpe.
- Kort vandrør: Tilsluttet pumpen og hælder vand i kæledyrets skål.
-
Sensorer:
- WINGONEER vandstandssensor: Mål vandstanden inde i kæledyrets skål.
- Ekkolodssensor - Mål afstanden af madniveauet fra det øverste låg inde i beholderen.
- TONGLING Relæ: Tillader os at tænde/slukke for vandpumpen, der strømmer vand.
- Pi -kameramodul: Tilsluttet en hindbær Pi -enhed og streamer billeder af kæledyrsområdet.
- Generisk servo: Låser og låser madbeholderen op.
-
Elektroniske enheder / tavler:
- Arduino Uno: Kontrollerer implementeringen af madbeholderenheden.
- Arduino Ethernet Shield: Giver internetforbindelse til vores kort.
- NodeMCU (ESP-8266): Styrer vandenheden, både til måling og hældning af vand. Dette kort har mulighed for at oprette forbindelse via WiFi.
- Raspberry Pi 3 - vært for kameraserveren og leverer live feed til kæledyrets dashboard.
- VicTsing 80 GPH nedsænket vandpumpe: Strømmer vand fra havedunken til skålen sammen med vandrøret.
Trin 3: Kabelføring og placering af ting sammen
Ledninger
Inden vi begynder, anbefales det at placere Arduino / Node-MCU på et brødbræt for at gøre det lettere at sætte alle ledninger sammen og placere det på et hvilket som helst fysisk sted. Derudover anbefales det at bruge lange ledninger for at forhindre fejl i forbindelse med kabelføring. Vi forsynede dig med et ledningsdiagram for Node-MCU (Water Unit) og Arduino (Food Unit).
-
Fødevareenhed (Arduino):
-
Ekkolod sensor:
- GND (sort) = GND
- VCC (rød) = 5V
- Trig (lilla) = 3
- Ekko (blå) = 4
-
Servo:
- GND (sort) = GND
- VCC (rød) = 5V
- Signal (gul) = 9
-
-
Vand enhed (knudepunkt):
-
Vandstandssensor:
- S (blå) = A0
- + (Rød) = 3v3
- - (Sort) = GND
-
Relæ (elektrisk forbundet til vandpumpen):
- IN (gul) = D1
- VCC (rød) = Vin
- GND (sort) = GND
-
-
Kameraenhed (Pi):
-
Kamerasensor:
- Tilslut til Pi's enkelt kameraport (flux -kabel)
- Hvis du søger at lære mere om Pi med kameramodul - Link
-
Montering af dele sammen
I denne del er du velkommen til at tilpasse og ændre dette projekt for at "gøre det til dit". Men vi vil give dig billeder og beskrivelse for at rekonstruere vores version af produktet.
-
Food Unit (Arduino): Beholderen er ret lige fremad, vi vil fokusere på at lave de to låg.
- Øverste låg: Skær 2 huller i låget, så ekkolodssensoren kan passe ind (se vedhæftede billede).
- Nedre låg + Mekanisme: Begynd med at tage en af plastikudstyrene (følger med servosensoren) og konstruer en "Sledge Hammer" -form ved hjælp af gaffatape / træpinde (vi brugte kun tape). Sæt det derefter på servoen. Nu har vi brug for 2 huller på selve låget. Den første skal tillade servoen at passe ind i den mekanisme, vi konstruerede i, placeret på "indersiden" af låget. Skær endnu et hul baseret på siden af "hammerhovedet", du har lavet. På denne måde, når servoen åbner, vil halen på hammeren feje mad mod udgangen og forhindre store stykker i at hænge sammen.
- Vandsenhed (Node-MCU): Tilslut simpelthen vandrøret til vandpumpen, placer det nu i havearbejdsbeholderen (sørg for, at du IKKE placerer den forkerte del med relæet og elektriske ledninger inde i vandet).
- Kameraenhed: Alt du skal gøre er at placere Pi med kameramodulet et sted efter eget valg.
Trin 4: Opsætning af Blynk
Alle fjernmulighederne i dette projekt er baseret på Blynk. Denne service giver os dybest set en gratis webserver og RESTful API til kommunikation med vores Arduino/Node-MCU-enheder over internettet ved hjælp af HTTP-protokol. Blynk giver os mulighed for at definere virtuelle pins, som vil blive brugt som en adresse til udførelse af specifikke funktioner i forbindelse med hældning af vand, fodring og prøveudtagning af de forskellige sensorer (vi gjorde den del for dig, alt hvad du skal gøre er at få dit eget applikationstoken, som forklares derefter).
Sådan får du mit Blynk -godkendelsestoken
- Download Blynk -appen via AppStore / PlayStore til din mobilenhed.
- Tilmeld dig denne service (den er gratis at bruge).
- Start et nyt projekt, sørg for at vælge den korrekte enhed (i vores tilfælde ESP8266).
- Efter oprettelse sendes en e -mail med AUTHENTICATION TOKEN - Gem token til næste trin.
Bemærk: Blynk kan bruges fuldt ud via appen, men vi besluttede at implementere vores eget tilpassede dashboard.
Endelig, for at gå videre til næste trin, skal du downloade og installere Blynk bibliotek - Link (spring til del 3)
Trin 5: Konfigurer madbeholder, vandpumpe og levende kamera
På dette tidspunkt var vi færdige med at samle alle delene sammen og fik vores blynkAuthAppToken (se trin 3).
Vi forsynede dig med al den kode, du har brug for for at køre dette projekt. Alt du skal gøre er at ændre få variabler i koden, hvilket vil gøre det til "dit eget" private system.
Først og fremmest skal du begynde med at downloade Arduino IDE (hvis du ikke har gjort det endnu) - Link
Arduino madbeholder
- Indstil IDE til Arduino -kortet: Værktøjer -> Board -> Arduino/Genuino Uno
-
Sørg for, at du har disse biblioteker installeret: Skitse -> Inkluder bibliotek -> Administrer biblioteker
Relæ (Af Rafael)
-
Åbn PetFeeder.ino skitsefil, konfigurer følgende params (se vedhæftede billede for at få hjælp):
auth = "REPLACE_WITH_YOUR_BLYNK_TOKEN";
- Kompilér og upload skitsen til din Arduino -enhed.
Node-MCU-vandenhed
-
Konfigurer IDE til Node-MCU-kortet:
Se denne instruktions første del for detaljeret forklaring
-
Sørg for, at du har disse biblioteker installeret: Skitse -> Inkluder bibliotek -> Administrer biblioteker
WiFi Manager (Ved tzapu)
-
Åbn PetFeeder.ino skitsefil, konfigurer følgende params (se vedhæftede billede for at få hjælp):
- auth = "REPLACE_WITH_YOUR_BLYNK_TOKEN";
- ssid = "YOUR_WIFI_SSID"; // Grundlæggende er det navnet på dit WiFi -netværk
- pass = "YOUR_WIFI_PASSWORD"; // hvis du ikke har nogen adgangskode, skal du bruge tom streng ""
- Kompilér og upload skitsen til din Node-MCU-enhed.
Pi Live Camera -modul
- Tilslut pi -kameramodul
- Kør "sudo raspi-config" og indstil funktionen "kamera".
-
Test kameraet ved hjælp af kommandoen "raspistill" for at tage et billede
r aspistill -o image.jpg
-
Indstil kolbe webkamera server:
- Installer alle krav ved hjælp af pip install -r requirements.txt
- Brug python til at køre camera_server.py
- Tjek det ud på 127.0.0.1:5000/video_feed
-
Indstil Flask -webserveren til at køre ved opstart:
-
Tilføj følgende linje til /etc/rc.local (før exitlinje):
python /camera_server.py
-
Trin 6: Sådan bruges kontrolpanelet
Opsætning
Denne del er ret simpel, alt du skal gøre er at indsætte "blynk app token" i "index.js" filen som følger:
const blynkToken = "YOUR_BLYNK_APP_TOKEN" // brug det samme token fra tidligere trin.
Anvendelse
- Åbn instrumentbrættet ved at dobbeltklikke på filen "index.html".
- Instrumentbrættet prøver automatisk systemet hvert 10. minut.
- Vand- og madbeholderforanstaltninger kan tages manuelt.
- Knapperne "Giv vand" og "Foder" bruges til aktivt at forsyne dit kæledyr med mad og vand.
- Den nederste del af instrumentbrættet viser live -feedet fra kameramodulet, hvis du nøje fulgte de foregående trininstruktioner.
Bemærk: Hvis du vil tilpasse antallet af gange madbeholderen åbner, når du fodrer, skal du åbne filen "index.js" og ændre "værdien" på den næste linje fra "3" til et hvilket som helst nummer efter eget valg:
hente (baseURL + '/update/V1? value = 3');
Trin 7: Udfordringer, grænser og fremtidsplaner
Udfordringer
De største udfordringer for os i dette projekt var relateret til at designe madbeholderens åbne/lukke mekanisme og skabe en stabil samtidig kode til styring og måling af fødevareenheden. Jeg tror, vi prøvede mindst 4 forskellige versioner, indtil vi var tilfredse. Den største bekymring var mad, der blokerede udgangen. For at forhindre det valgte vi et Sledge-Hammer-design, på denne måde, når vi åbner beholderen, fejer halen af "hammeren" mad mod udgangen. Desuden gjorde brug af et tosidet rør vores liv meget enklere, mens vi byggede madbeholderen. Et sådant objekt er perfekt til at placere udgangsmekanismen på den ene side og en afstandssensor på den anden side til måling af dens indhold.
Grænser
I denne projektfase er der få begrænsninger for systemet:
- Det er ikke fuldt automatiseret, hvilket betyder, at fodring og hældning af vand sker manuelt via overvågningsdashboardet uden nogen smarte planlæggere (som kan tilføjes i fremtiden eller implementeres af dig!).
- Instrumentbrættet kører lokalt fra din egen bærbare computer, for at gøre det mere tilgængeligt kan det hostes på populære platforme som "Heroku".
- Vi brugte et meget enkelt kameramodul, som kan erstattes med et meget mere kompliceret modul for at muliggøre bedre billedkvalitet og mulig tilføjelse af kommunikationskanal med dit kæledyr (ved hjælp af en højttaler).
Fremtidsplaner
Hvis vi havde tid og budget til at fortsætte med at udvikle dette system, havde vi nogle få ideer og mulig tidsplan i tankerne:
- Tilføjelse af automatisk planlægningssystem til fodring af kæledyr - 2 ~ 3 dages arbejde.
- Opbygning af et websted, der gør det muligt for brugere af vores system at oprette tilpasset dashboard, der hostes online og er tilgængeligt fra enhver tilsluttet enhed - 1-2 måneders arbejde.
- Arbejde på en industriel version til dette system, der gør det muligt for flere dyreejere at bedre kontrollere og kommunikere med deres kæledyr online, vi havde stor interesse fra venner, der så resultatet af denne Instructable. Så hvis du har tidspassionen til at tage projektet til det næste niveau - har du fuld støtte!
Vi håber du nød at læse (og forhåbentlig bygge!) Dette projekt:)
Anbefalede:
Automatiseret Pet-Food Bowl Project: 13 trin
Automated Pet-Food Bowl Project: Denne instruktive vil skildre og forklare, hvordan man bygger en automatiseret, programmerbar dyrefoder med vedhæftede madskåle. Jeg har vedhæftet en video her, der viser, hvordan produkterne fungerer, og hvordan det ser ud
Pet Food Dispenser: 3 trin
Pet Food Dispenser: Para los amantes de mascotas, este es un proyecto que les puede ser muy útil! En alimentador automático que kan tillade observationer som el pesaje de la comida, og solo er necesario que oprimas un botón.Un mecanismo sencillo que podrás armar desde tu
Arduino og Raspberry Pi Powered Pet Monitoring System: 19 trin (med billeder)
Arduino og Raspberry Pi Powered Pet Monitoring System: For nylig, mens vi var på ferie, indså vi den manglende forbindelse med vores kæledyr Beagle. Efter nogle undersøgelser fandt vi produkter med et statisk kamera, der tillod en at overvåge og kommunikere med sit kæledyr. Disse systemer havde visse fordele ved
Aquarium Water Cooling System: 6 trin
Aquarium Water Cooling System: I denne instruktive vil jeg vise dig, hvordan du laver kølesystem til dit akvarium selv. Alt du behøver er grundlæggende viden inden for elektronik, programmering og lidt tid. Hvis du har spørgsmål eller problemer, kan du kontakte mig på min mail: i
IoT Pet Monitor !: 6 trin (med billeder)
IoT Pet Monitor !: Hold øje med dine elskede bbies og spil musik eller bed dem om at være stille, mens du er væk! Denne vejledning viser, hvordan du bruger en Raspberry Pi -computer til at overvåge lydstyrken i dit hjem (via skyen) for at se, om og hvornår dit kæledyr er ked af det