Indholdsfortegnelse:

Arduino og Raspberry Pi Powered Pet Monitoring System: 19 trin (med billeder)
Arduino og Raspberry Pi Powered Pet Monitoring System: 19 trin (med billeder)

Video: Arduino og Raspberry Pi Powered Pet Monitoring System: 19 trin (med billeder)

Video: Arduino og Raspberry Pi Powered Pet Monitoring System: 19 trin (med billeder)
Video: My hotel mirror was TWO SIDED 😱 2024, November
Anonim
Image
Image
Arduino og Raspberry Pi Powered Pet Monitoring System
Arduino og Raspberry Pi Powered Pet Monitoring System
Arduino og Raspberry Pi Powered Pet Monitoring System
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, men manglede alsidighed. For eksempel krævede hvert værelse en enhed for at holde styr på dit kæledyr på tværs af huset.

Derfor udviklede vi en robust robot, der kan manøvrere rundt i huset og kan overvåge sit kæledyr ved hjælp af tingenes internet. En smartphone -app blev designet til at interagere med dit kæledyr via et live video -feed. Robotens chassis er digitalt fremstillet, da flere dele blev skabt ved hjælp af 3D -print og laserskæring. Endelig besluttede vi at tilføje en bonusfunktion, der udleverer godbidder for at belønne dit kæledyr.

Følg med for at oprette dit eget kæledyrsovervågningssystem og måske endda tilpasse det til dine krav. Tjek videoen, der er linket ovenfor, for at se, hvordan vores kæledyr reagerede, og for at få en bedre forståelse af robotten. Afgiv en stemme i "Robotics Contest", hvis du kunne lide projektet.

Trin 1: Oversigt over designet

Oversigt over designet
Oversigt over designet
Oversigt over designet
Oversigt over designet

For at konceptualisere kæledyrsovervågningsrobotten designede vi den først på fusion 360. Her er nogle af dens funktioner:

Robotten kan styres via en app via internettet. Dette gør det muligt for brugeren at oprette forbindelse til robotten hvor som helst

Et indbygget kamera, der live streamer et videofeed til smartphonen, kan hjælpe brugeren med at manøvrere rundt i huset og interagere med kæledyret

En ekstra godbidskål, der kan belønne dit kæledyr eksternt

Digitalt fremstillede dele, der gør det muligt for en at tilpasse deres robot

En Raspberry Pi blev brugt til at oprette forbindelse til internettet, da den har en indbygget wifi -tilstand

En Arduino blev brugt sammen med et CNC -skjold til at give kommandoer til steppermotorerne

Trin 2: Nødvendige materialer

Nødvendige materialer
Nødvendige materialer
Nødvendige materialer
Nødvendige materialer

Her er listen over alle de komponenter, der er nødvendige for at lave din helt egen Arduino og Raspberry Pi-drevne robotovervågningsrobot. Alle dele skal være almindeligt tilgængelige og lette at finde.

ELEKTRONIK:

  • Arduino Uno x 1
  • Hindbær Pi (blinket med nyeste raspbian) x 1
  • CNC -skærm x 1
  • A4988 Stepper Motor Driver x 2
  • Picamera x 1
  • Ultralydsafstandssensor x 1
  • 11.1v Lipo batteri x 1
  • NEMA 17 Stepmotor x 2
  • 5v UBEC x 1

HARDWARE:

  • Hjul x 2 (hjulene vi brugte var 7 cm i diameter)
  • Hjul x 2
  • M4 og M3 møtrikker og bolte

De samlede omkostninger ved dette projekt eksklusive Arduino og Raspberry Pi er omkring 50 $.

Trin 3: Digitalt fremstillede dele

Digitalt fremstillede dele
Digitalt fremstillede dele
Digitalt fremstillede dele
Digitalt fremstillede dele

Nogle af de dele, som vi brugte i dette projekt, skulle specialfremstilles. Disse blev først modelleret i Fusion 360 og blev derefter fremstillet ved hjælp af en 3D -printer og en laserskærer. De 3D -printede dele bærer ikke meget belastning, så standard PLA med en 20% udfyldning fungerer godt. Nedenfor er en liste over alle de 3D-printede og laserskårne dele:

3D -trykte dele:

  • Stepper Holder x 2
  • Vision System Mount x 1
  • Elektronik Standoff x 4
  • Lodret afstandsstykke x 4
  • Chassisforstærkning x 2
  • Behandl skålelåg x 1
  • Treat Bowl x 1
  • Bageste trinmontering x 1
  • Winding Disc x 1

Lasercut dele:

  • Bundpanel x 1
  • Toppanel x 1

En zip -mappe, der indeholder alle STL'er og laserskæringsfiler, findes vedhæftet nedenfor.

Trin 4: Montering af trinmotoren

Montering af trinmotor
Montering af trinmotor
Montering af trinmotor
Montering af trinmotor
Montering af trinmotor
Montering af trinmotor

Når alle delene er 3D -printet, skal du begynde samlingen ved at montere trinmotoren i trinholder. Stepper motorholderen, som vi designede, er beregnet til NEMA 17 -modellen (hvis man bruger forskellige steppere, vil det kræve en anden montering). Før motorakslen gennem hullet, og fastgør motoren på plads med monteringsskruerne. Når de er udført, skal begge motorer holdes sikkert på holderne.

Trin 5: Montering af trinene på bundpanelet

Montering af trinene på bundpanelet
Montering af trinene på bundpanelet
Montering af trinene på bundpanelet
Montering af trinene på bundpanelet
Montering af trinene på bundpanelet
Montering af trinene på bundpanelet

For at montere holderne på det laserskårne bundpanel brugte vi M4 bolte. Inden du fastgør dem med møtrikkerne, skal du tilføje de 3D -trykte chassisforstærkningsstrimler og derefter fastgøre møtrikkerne. Strimlerne bruges til at fordele belastningen jævnt på akrylpanelet.

Før endelig ledningerne gennem de respektive slots på panelet. Sørg for at trække dem hele vejen igennem for at undgå, at de bliver viklet ind i hjulene.

Trin 6: Montering af hjulene

Montering af hjulene
Montering af hjulene
Montering af hjulene
Montering af hjulene
Montering af hjulene
Montering af hjulene

Akrylpanelet har to sektioner, der er skåret ud for at passe til hjulene. Hjulene, vi brugte, var 7 cm i diameter og kom med sætskruer, der blev fastgjort til 5 mm stepper aksler. Sørg for, at hjulet er fastgjort korrekt og ikke glider på akslen.

Trin 7: Forhjul og baghjul

Hjul for og bag
Hjul for og bag
Hjul for og bag
Hjul for og bag
Hjul for og bag
Hjul for og bag
Hjul for og bag
Hjul for og bag

For at lade chassiset bevæge sig jævnt, besluttede vi at placere hjul på forsiden og bagsiden af robotten. Dette forhindrer ikke kun robotten i at vælte, men det lader også chassiset dreje frit i enhver retning. Caster hjul findes i alle størrelser, især vores kom med en enkelt drejelig skrue, som vi monterede på basen og brugte 3d -printede afstandsstykker til at justere højden, så robotten var helt vandret. Med dette er chassisets bund komplet og har en god stabilitet.

Trin 8: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Når chassisets bund er færdigmonteret, er det tid til at montere elektronikken på akrylpanelet. Vi har lavet huller i akrylpanelet, der flugter med monteringshullerne på Arduino og Raspberry Pi. Ved hjælp af 3D -printede standoffs hævede vi elektronikken lidt over akrylpanelerne, så alle overskydende ledninger kan gemmes pænt nedenunder. Monter Arduino og Raspberry Pi til deres tilsvarende monteringssteder ved hjælp af M3 møtrikker og bolte. Når Arduino er fastgjort, fastgør du CNC -skjoldet til Arduino, og tilslut trinene i følgende konfiguration.

  • Venstre stepper til CNC-skærm X-akse port
  • Højre stepper til CNC-skærm Y-akse port

Med stepper motorer tilsluttet, tilslut Arduino til Raspberry Pi ved hjælp af Arduino's USB -kabel. Til sidst kommer Raspberry Pi og Arduino til at kommunikere gennem dette kabel.

Bemærk: Robotens forside er siden med Raspberry Pi

Trin 9: Vision System

Vision System
Vision System
Vision System
Vision System
Vision System
Vision System

Det primære miljøinput for vores robot til overvågning af kæledyr er vision. Vi besluttede at bruge Picamera, der er kompatibel med Raspberry Pi, til at fodre en livestream til brugeren via internettet. Vi brugte også en ultralydsafstandssensor til at undgå forhindringer, når robotten fungerer autonomt. Begge sensorer fastgøres til en holder ved hjælp af skruer.

Picamera åbner i den udpegede port på Raspberry Pi og tilslutter ultralydssensoren på følgende måde:

  • Ultralydssensor VCC til 5v skinne på CNC -skjold
  • Ultralydssensor GND til GND -skinne på CNC -skjold
  • Ultralydssensor TRIG til X+ ende stopstift på CNC -skjold
  • Ultralydssensor ECHO til Y+ ende stop pin på CNC skjold

Trin 10: Montering af toppanel

Montering af øverste panel
Montering af øverste panel
Montering af øverste panel
Montering af øverste panel
Montering af øverste panel
Montering af øverste panel

På bagsiden af robotten er monteret lågeåbningssystemet til behandlingsskålen. Sæt mini -steppermotoren på den bageste holderkomponent, og monter både synssystemet og viklingssystemet med M3 -bolte på det øverste panel. Som nævnt skal du sørge for at montere synssystemet foran og viklingssystemet på bagsiden med de to medfølgende huller.

Trin 11: Montering af øverste panel

Montering af øverste panel
Montering af øverste panel
Montering af øverste panel
Montering af øverste panel
Montering af øverste panel
Montering af øverste panel

Vi 3D -printede lodrette afstandsstykker for at understøtte toppanelet i den rigtige højde. Start med at fastgøre de fire afstandsstykker til bundpanelet for at danne et "X". Placer derefter det øverste panel med behandlingsskålen, og sørg for, at deres huller flugter, og fastgør det til sidst også til afstandsstykkerne.

Trin 12: Lågeåbningsmekanisme

Lågeåbningsmekanisme
Lågeåbningsmekanisme
Lågeåbningsmekanisme
Lågeåbningsmekanisme
Lågeåbningsmekanisme
Lågeåbningsmekanisme

For at styre låget på behandlingsskålen brugte vi en mindre trinmotor til at sno en nylonstreng fastgjort til låget og trække den op. Før låget sættes på, før snoren gennem det 2 mm hul på låget og lav en knude på indersiden. Skær derefter den anden ende af snoren og slip den gennem hullerne på viklingsskiven. Skub skiven på stepper, træk derefter i snoren, indtil den er stram. Når du er færdig, skal du klippe det overskydende og binde en knude. Til sidst skal du ved hjælp af en bolt og møtrik fastgøre låget til skålen og sikre, at det drejer rundt. Nu, når stepperen roterer, skal snoren sno sig på skiven, og låget skal gradvist åbne.

Trin 13: Opsætning af clouddatabasen

Opsætning af Cloud Database
Opsætning af Cloud Database
Opsætning af Cloud Database
Opsætning af Cloud Database
Opsætning af Cloud Database
Opsætning af Cloud Database
Opsætning af Cloud Database
Opsætning af Cloud Database

Det første trin er at oprette en database til systemet, så du kan kommunikere med robotten fra din mobilapp overalt i verden. Klik på følgende link (Google firebase), som fører dig til Firebase -webstedet (du skal logge ind med din Google -konto). Klik på knappen "Kom i gang", som fører dig til firebase -konsollen. Opret derefter et nyt projekt ved at klikke på knappen "Tilføj projekt", udfyld kravene (navn, detaljer osv.) Og afslut ved at klikke på knappen "Opret projekt".

Vi kræver bare Firebases databaseværktøjer, så vælg "database" i menuen i venstre side. Klik derefter på knappen "Opret database", vælg indstillingen "testtilstand". Indstil derefter databasen til en "realtime database" i stedet for "cloud firestore" ved at klikke på rullemenuen øverst. Vælg fanen "regler", og rediger de to "falske" til "sande", klik endelig på "data" -fanen og kopier database -URL'en, dette bliver påkrævet senere.

Det sidste du skal gøre er at klikke på tandhjulsikonet ved siden af projektoversigten, derefter på "projektindstillinger", derefter vælge fanen "servicekonti", til sidst klikke på "Databasehemmeligheder" og notere sikkerheden kode til din database. Når dette trin er fuldført, har du med succes oprettet din clouddatabase, som du kan få adgang til fra din smartphone og fra Raspberry Pi. (Brug ovenstående billeder i tilfælde af tvivl, eller bare stil et spørgsmål i kommentarfeltet)

Trin 14: Oprettelse af mobilappen

Oprettelse af mobilappen
Oprettelse af mobilappen
Oprettelse af mobilappen
Oprettelse af mobilappen
Oprettelse af mobilappen
Oprettelse af mobilappen
Oprettelse af mobilappen
Oprettelse af mobilappen

Den næste del af IoT -systemet er smartphone -applikationen. Vi besluttede at bruge MIT App Inventor til at lave vores egen tilpassede app. For at bruge den app, vi har oprettet, skal du først åbne følgende link (MIT App Inventor), som fører dig til deres webside. Klik derefter på "opret apps" øverst på skærmen, og log derefter ind med din Google -konto.

Download.aia -filen, der er linket herunder. Åbn fanen "projekter", og klik på "Importer projekt (.aia) fra min computer" vælg derefter den fil, du lige har downloadet, og klik på "ok". I komponentvinduet skal du rulle helt ned, indtil du ser "FirebaseDB1", klikke på det og ændre "FirebaseToken", "FirebaseURL" til de værdier, som du havde noteret i det foregående trin. Når disse trin er fuldført, er du klar til at downloade og installere appen. Du kan downloade appen direkte på din telefon ved at klikke på fanen "Byg" og klikke på "App (angiv QR -kode til.apk)" og derefter scanne QR -koden med din smartphone eller klikke på "App (gem.apk til min computer) "downloader du apk -filen til din computer, som du derefter kan flytte til din smartphone.

Trin 15: Programmering af Raspberry Pi

Programmering af Raspberry Pi
Programmering af Raspberry Pi

Raspberry Pi bruges af to primære årsager.

  1. Den sender en live videostream fra robotten til en webserver. Denne strøm kan ses af brugeren ved hjælp af mobilappen.
  2. Den læser de opdaterede kommandoer på firebase -databasen og instruerer Arduino om at udføre de nødvendige opgaver.

For at konfigurere Raspberry Pi til live-stream findes der allerede en detaljeret vejledning og kan findes her. Instruktionerne koger ned til tre enkle kommandoer. Tænd Raspberry Pi, og åbn terminalen, og indtast følgende kommandoer.

  • git -klon
  • cd RPi_Cam_Web_Interface
  • ./install.sh

Når installationen er fuldført, genstart Pi'en, og du skal have adgang til strømmen ved at søge https:// din Pi's IP -adresse i enhver webbrowser.

Med live streaming konfigureret skal du downloade og installere visse biblioteker for at kunne bruge clouddatabasen. Åbn en terminal på din Pi, og indtast følgende kommandoer:

  • sudo pip installationsanmodninger == 1.1.0
  • sudo pip installer python-firebase

Endelig skal du downloade python -filen vedhæftet herunder og gemme den på din Raspberry Pi. På den fjerde linje i koden skal du ændre COM -porten til den port, Arduino er forbundet til. Skift derefter webadressen på linje 8 til den webadresse til firebase, du tidligere havde noteret. Kør endelig programmet gennem terminalen. Dette program henter kommandoerne fra clouddatabasen og videresender det til Arduino gennem den serielle forbindelse.

Trin 16: Programmering af Arduino

Programmering af Arduino
Programmering af Arduino
Programmering af Arduino
Programmering af Arduino

Arduino bruges til at fortolke kommandoerne fra Pi og instruerer aktuatorerne på robotten til at udføre de nødvendige opgaver. Download Arduino -koden vedhæftet herunder, og upload den til Arduino. Når Arduino er programmeret, skal du slutte den til en af Pi's USB -porte ved hjælp af det dedikerede USB -kabel.

Trin 17: Tænd for systemet

Strømforsyning til systemet
Strømforsyning til systemet

Robotten slukkes for et 3 -cellet lipo -batteri. Batteripolerne skal deles i to, hvor den ene går direkte til CNC -skjoldet for at drive motorerne, mens den anden får forbindelse til 5v UBEC, som skabte en stabil 5v -strømledning, der vil blive brugt til at drive Raspberry Pi igennem GPIO -benene. 5v fra UBEC er forbundet til 5v pin på Raspberry Pi og GND fra UBEC er forbundet til GND pin på Pi.

Trin 18: Brug af appen

Brug af appen
Brug af appen
Brug af appen
Brug af appen
Brug af appen
Brug af appen

Appens grænseflade giver mulighed for at styre overvågningsrobotten samt streame et live feed fra det indbyggede kamera. For at oprette forbindelse til din robot skal du sørge for at have en stabil internetforbindelse og derefter blot indtaste Raspberry Pi's IP -adresse i den medfølgende tekstboks og klikke på opdateringsknappen. Når det er gjort, vises live -feedet på din skærm, og du bør være i stand til at styre robotens forskellige funktioner.

Trin 19: Klar til test

Klar til test
Klar til test
Klar til test
Klar til test

Nu hvor din robot til overvågning af kæledyr er færdigmonteret, kan du fylde skålen med nogle hundegodter. Åbn appen, tilslut kameraet og hav det sjovt! Vi har i øjeblikket leget rundt med roveren og vores Beagle og har fanget temmelig sjove øjeblikke.

Når hunden overvandt den første frygt for dette objekt i bevægelse, jagede den boten rundt i huset efter godbidder. Det indbyggede kamera giver et godt vidvinkelbillede af omgivelserne, hvilket gør det forholdsvis let at manøvrere.

Der er plads til forbedringer for at få det til at fungere bedre i den virkelige verden. Når det er sagt, har vi skabt et robust system, som man kan bygge videre på og udvide videre til. Hvis du kunne lide dette projekt, så giv en stemme på os i "Robotics Contest"

Happy Making!

Robotik konkurrence
Robotik konkurrence
Robotik konkurrence
Robotik konkurrence

Anden pris i robotkonkurrencen

Anbefalede: