Cuprins:

Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi: 19 pași (cu imagini)
Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi: 19 pași (cu imagini)

Video: Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi: 19 pași (cu imagini)

Video: Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi: 19 pași (cu imagini)
Video: High Density 2022 2024, Noiembrie
Anonim
Image
Image
Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi
Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi
Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi
Sistem de monitorizare pentru animale de companie Arduino și Raspberry Pi

Recent, în vacanță, ne-am dat seama de lipsa de legătură cu animalul nostru de companie Beagle. După unele cercetări, am găsit produse care includeau o cameră statică care permitea monitorizarea și comunicarea cu animalul de companie. Aceste sisteme aveau anumite beneficii, dar nu aveau versatilitate. De exemplu, fiecare cameră a necesitat o unitate pentru a ține evidența animalului dvs. de companie în casă.

Prin urmare, am dezvoltat un robot robust care poate manevra prin casă și poate monitoriza animalele de companie folosind puterea internetului lucrurilor. O aplicație pentru smartphone a fost concepută pentru a interacționa cu animalul dvs. de companie printr-un flux video live. Șasiul robotului este fabricat digital, deoarece mai multe piese au fost create folosind imprimarea 3D și tăierea cu laser. În cele din urmă, am decis să adăugăm o caracteristică bonus care să distribuie delicii pentru a-ți răsplăti animalul de companie.

Urmăriți pentru a vă crea propriul sistem de monitorizare a animalelor de companie și poate chiar personalizați-l în funcție de cerințele dvs. Consultați videoclipul legat mai sus pentru a vedea cum a reacționat animalul nostru de companie și pentru a înțelege mai bine robotul. Votează în „Concursul de robotică” dacă ți-a plăcut proiectul.

Pasul 1: Prezentare generală a designului

Prezentare generală a designului
Prezentare generală a designului
Prezentare generală a designului
Prezentare generală a designului

Pentru a conceptualiza robotul de monitorizare a animalelor de companie, l-am proiectat mai întâi pe fusion 360. Iată câteva dintre caracteristicile sale:

Robotul poate fi controlat printr-o aplicație prin internet. Acest lucru permite utilizatorului să se conecteze la robot de oriunde

O cameră de la bord care transmite în direct un flux video către smartphone poate ajuta utilizatorul să manevreze prin casă și să interacționeze cu animalul de companie

Un castron de tratare suplimentar care vă poate răsplăti animalul de companie de la distanță

Piese fabricate digital care permit personalizarea robotului

Un Raspberry Pi a fost folosit pentru a vă conecta la internet, deoarece are un mod wifi la bord

Un Arduino a fost folosit împreună cu un scut CNC pentru a da comenzi motoarelor pas cu pas

Pasul 2: Materiale necesare

Materiale necesare
Materiale necesare
Materiale necesare
Materiale necesare

Iată lista tuturor componentelor necesare pentru a vă crea propriul robot de monitorizare a animalelor de companie Arduino și Raspberry Pi. Toate piesele ar trebui să fie disponibile în mod obișnuit și ușor de găsit.

ELECTRONICĂ:

  • Arduino Uno x 1
  • Raspberry Pi (intermitent cu cel mai recent raspbian) x 1
  • Scut CNC x 1
  • A4988 Driver motor pas cu pas x 2
  • Picamera x 1
  • Senzor de distanță cu ultrasunete x 1
  • Baterie Lipo de 11,1 v x 1
  • Motor pas cu pas NEMA 17 x 2
  • 5v UBEC x 1

HARDWARE:

  • Roți x 2 (roțile pe care le-am folosit au avut un diametru de 7 cm)
  • Roți cu rotire x 2
  • Piulițe și șuruburi M4 și M3

Costul total al acestui proiect, cu excepția Arduino și Raspberry Pi, este de aproximativ 50 $.

Pasul 3: Piese fabricate digital

Piese fabricate digital
Piese fabricate digital
Piese fabricate digital
Piese fabricate digital

Unele dintre părțile pe care le-am folosit în acest proiect trebuiau să fie personalizate. Acestea au fost modelate mai întâi în Fusion 360 și apoi au fost realizate folosind o imprimantă 3D și un tăietor cu laser. Piesele imprimate 3D nu suportă prea multă sarcină, astfel încât PLA standard cu umplutură de 20% funcționează excelent. Mai jos este o listă cu toate piesele imprimate 3D și tăiate cu laser:

Piese imprimate 3D:

  • Suport pas cu pas x 2
  • Montare sistem Vision x 1
  • Deconectare electronică x 4
  • Distanțier vertical x 4
  • Armătură șasiu x 2
  • Tratează capacul vasului x 1
  • Vas tratat x 1
  • Montare pas cu pas spate x 1
  • Disc de înfășurare x 1

Piese Lasercut:

  • Panoul inferior x 1
  • Panoul superior x 1

Un folder cu fermoar care conține toate fișierele STL și de tăiere cu laser poate fi găsit atașat mai jos.

Pasul 4: Atașarea motorului pas cu pas

Atașarea motorului pas cu pas
Atașarea motorului pas cu pas
Atașarea motorului pas cu pas
Atașarea motorului pas cu pas
Atașarea motorului pas cu pas
Atașarea motorului pas cu pas

Odată ce toate piesele sunt tipărite 3D, începeți asamblarea prin montarea motorului pas cu pas în suportul pas cu pas. Suportul motorului pas cu pas pe care l-am proiectat este destinat modelului NEMA 17 (dacă se utilizează trepte diferite, va fi necesară o montură diferită). Treceți arborele motorului prin orificiu și fixați motorul în poziție cu șuruburile de montare. După finalizare, ambele motoare trebuie ținute în siguranță de suporturi.

Pasul 5: Montarea treptelor pe panoul inferior

Montarea treptelor pe panoul inferior
Montarea treptelor pe panoul inferior
Montarea treptelor pe panoul inferior
Montarea treptelor pe panoul inferior
Montarea treptelor pe panoul inferior
Montarea treptelor pe panoul inferior

Pentru a monta suporturile pe panoul inferior tăiat cu laser, am folosit șuruburi M4. Înainte de a le fixa cu piulițele, adăugați benzi de armare imprimate 3D și apoi fixați piulițele. Fâșiile sunt folosite pentru a distribui sarcina uniform pe panoul acrilic.

În cele din urmă, treceți firele prin sloturile respective prevăzute pe panou. Asigurați-vă că le trageți până la capăt pentru a evita încurcarea în roți.

Pasul 6: Montarea roților

Montarea roților
Montarea roților
Montarea roților
Montarea roților
Montarea roților
Montarea roților

Panoul acrilic are două secțiuni decupate pentru a se potrivi roților. Roțile pe care le-am folosit au avut un diametru de 7 cm și au venit cu șuruburi de fixare care s-au atașat pe arborii pas cu pas de 5 mm. Asigurați-vă că roata este fixată corect și nu alunecă pe arbore.

Pasul 7: Roți din față și din spate

Roți din față și din spate
Roți din față și din spate
Roți din față și din spate
Roți din față și din spate
Roți din față și din spate
Roți din față și din spate
Roți din față și din spate
Roți din față și din spate

Pentru a permite șasiului să se deplaseze fără probleme, am decis să amplasăm roțile rotative în fața și în spatele robotului. Acest lucru nu numai că împiedică răsturnarea robotului, dar permite și șasiului să se rotească liber în orice direcție. Roțile rotative sunt de toate dimensiunile, în special ale noastre au venit cu un singur șurub pivotant pe care l-am montat pe bază și am folosit distanțiere imprimate 3D pentru a regla înălțimea, astfel încât robotul să fie perfect orizontal. Cu aceasta, baza șasiului este completă și are o bună stabilitate.

Pasul 8: Electronică

Electronică
Electronică
Electronică
Electronică
Electronică
Electronică

Odată ce baza șasiului este complet asamblată, este timpul să montați componentele electronice pe panoul acrilic. Am realizat găuri în panoul acrilic care se aliniază cu găurile de montare ale Arduino și Raspberry Pi. Folosind suporturi tipărite 3D am ridicat componentele electronice ușor deasupra panourilor acrilice, astfel încât toate cablurile în exces să poată fi ascunse îngrijit dedesubt. Montați Arduino și Raspberry Pi în locațiile lor corespunzătoare de montare folosind piulițe și șuruburi M3. Odată ce Arduino este fixat, atașați scutul CNC la Arduino și conectați firele pas cu pas în următoarea configurație.

  • Pas cu pas stânga către portul pentru axa X a ecranului CNC
  • Pas dreapta spre portul axei Y al ecranului CNC

Cu motoarele pas cu pas atașate, conectați Arduino la Raspberry Pi utilizând cablul USB al Arduino. În cele din urmă, Raspberry Pi și Arduino vor comunica prin acest cablu.

Notă: partea din față a robotului este partea laterală cu Raspberry Pi

Pasul 9: Sistem de viziune

Sistem de viziune
Sistem de viziune
Sistem de viziune
Sistem de viziune
Sistem de viziune
Sistem de viziune

Principalul aport de mediu pentru robotul nostru de monitorizare a animalelor de companie este viziunea. Am decis să folosim Picamera care este compatibilă cu Raspberry Pi pentru a transmite utilizatorului un flux live prin internet. De asemenea, am folosit un senzor de distanță cu ultrasunete pentru a evita obstacolele atunci când robotul funcționează autonom. Ambii senzori se fixează pe un suport cu ajutorul șuruburilor.

Picamera introduce sloturile în portul său desemnat de pe Raspberry Pi și conectează senzorul cu ultrasunete în modul următor:

  • Senzor cu ultrasunete VCC la șină 5v pe ecran CNC
  • Senzor cu ultrasunete GND la șină GND pe ecranul CNC
  • Senzor cu ultrasunete TRIG la X + pin de oprire final pe ecran CNC
  • Senzorul cu ultrasunete ECHO până la pinul de oprire Y + pin de pe ecranul CNC

Pasul 10: Asamblarea panoului superior

Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior

Pe partea din spate a robotului este montat sistemul de deschidere a capacului pentru vasul pentru tratare. Atașați mini-motorul pas cu pas la componenta suportului din spate și montați atât panoul de vizionare, cât și sistemul de înfășurare cu șuruburi M3. După cum sa menționat, asigurați-vă că montați sistemul de vizualizare în față și sistemul de înfășurare în spate cu cele două găuri furnizate.

Pasul 11: Asamblarea panoului superior

Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior
Ansamblul panoului superior

Am imprimat distanțieri verticali 3D pentru a susține panoul superior la înălțimea potrivită. Începeți prin atașarea celor patru distanțieri la panoul inferior pentru a forma un "X". Apoi așezați panoul superior cu vasul pentru tratare asigurându-vă că găurile lor se aliniază și fixați-l în cele din urmă și la distanțieri.

Pasul 12: Mecanismul de deschidere a capacului

Mecanism de deschidere a capacului
Mecanism de deschidere a capacului
Mecanism de deschidere a capacului
Mecanism de deschidere a capacului
Mecanism de deschidere a capacului
Mecanism de deschidere a capacului

Pentru a controla capacul vasului pentru tratare, am folosit un motor pas cu pas mai mic pentru a înfășura un șir de nailon atașat la capac, trăgându-l. Înainte de a atașa capacul, treceți șirul prin orificiul de 2 mm de pe capac și faceți un nod pe partea interioară. Apoi tăiați celălalt capăt al șnurului și glisați-l prin orificiile prevăzute pe discul de înfășurare. Împingeți discul pe stepper, apoi trageți șirul până când este încordat. După ce ați terminat, tăiați excesul și legați un nod. În cele din urmă, folosind un șurub și o piuliță, atașați capacul la castron și asigurați-vă că pivotează. Acum, pe măsură ce stepperul se rotește, șirul ar trebui să se înfășoare pe disc, iar capacul să se deschidă treptat.

Pasul 13: Configurarea bazei de date Cloud

Configurarea bazei de date Cloud
Configurarea bazei de date Cloud
Configurarea bazei de date Cloud
Configurarea bazei de date Cloud
Configurarea bazei de date Cloud
Configurarea bazei de date Cloud
Configurarea bazei de date Cloud
Configurarea bazei de date Cloud

Primul pas este crearea unei baze de date pentru sistem, astfel încât să puteți comunica cu robotul din aplicația dvs. mobilă de oriunde din lume. Faceți clic pe următorul link (Google firebase), care vă va conduce la site-ul web Firebase (va trebui să vă conectați cu contul dvs. Google). Faceți clic pe butonul „Începeți”, care vă va duce la consola Firebase. Apoi creați un proiect nou făcând clic pe butonul „Adăugare proiect”, completați cerințele (nume, detalii etc.) și finalizați făcând clic pe butonul „Creați proiect”.

Avem nevoie doar de instrumentele de bază de date Firebase, deci selectați „baza de date” din meniul din partea stângă. Apoi faceți clic pe butonul „Creați baza de date”, selectați opțiunea „modul de testare”. Apoi setați baza de date la o „bază de date în timp real” în loc de „cloud firestore” făcând clic pe meniul derulant din partea de sus. Selectați fila „reguli” și schimbați-le pe cele „false” în „adevărat”, apoi faceți clic pe fila „date” și copiați adresa URL a bazei de date, aceasta va fi necesară mai târziu.

Ultimul lucru pe care va trebui să-l faceți este să faceți clic pe pictograma roată de lângă prezentarea generală a proiectului, apoi pe „setările proiectului”, apoi să selectați fila „Conturi de serviciu”, apoi să faceți clic pe „Secretele bazei de date” și să notați securitatea codul bazei de date. Odată finalizat acest pas, ați creat cu succes baza de date cloud care poate fi accesată de pe telefonul smartphone și de pe Raspberry Pi. (Utilizați imaginile atașate mai sus în cazul în care aveți îndoieli sau puneți o întrebare în secțiunea de comentarii)

Pasul 14: Crearea aplicației mobile

Crearea aplicației mobile
Crearea aplicației mobile
Crearea aplicației mobile
Crearea aplicației mobile
Crearea aplicației mobile
Crearea aplicației mobile
Crearea aplicației mobile
Crearea aplicației mobile

Următoarea parte a sistemului IoT este aplicația pentru smartphone. Am decis să folosim MIT App Inventor pentru a crea propria noastră aplicație personalizată. Pentru a utiliza aplicația pe care am creat-o, deschideți mai întâi următorul link (MIT App Inventor), care vă va conduce la pagina lor web. Apoi faceți clic pe „creați aplicații” în partea de sus a ecranului, apoi conectați-vă cu contul dvs. Google.

Descărcați fișierul.aia care este legat mai jos. Deschideți fila „proiecte” și faceți clic pe „Importați proiectul (.aia) de pe computerul meu” apoi selectați fișierul pe care tocmai l-ați descărcat și faceți clic pe „ok”. În fereastra componentelor, derulați până în jos până când vedeți „FirebaseDB1”, faceți clic pe ea și modificați „FirebaseToken”, „FirebaseURL” la valorile pe care le-ați notat în pasul anterior. După finalizarea acestor pași, sunteți gata să descărcați și să instalați aplicația. Puteți descărca aplicația direct pe telefon făcând clic pe fila „Construiți” și făcând clic pe „Aplicație (furnizați codul QR pentru.apk)”, apoi scanând codul QR cu telefonul smartphone sau făcând clic pe „Aplicație (salvați.apk pe computerul meu) veți descărca fișierul apk pe computer, pe care îl puteți trece apoi pe telefonul smartphone.

Pasul 15: Programarea Raspberry Pi

Programarea Raspberry Pi
Programarea Raspberry Pi

Raspberry Pi este utilizat din două motive principale.

  1. Transmite un flux video live de la robot la un server web. Acest flux poate fi vizualizat de utilizator utilizând aplicația mobilă.
  2. Citește comenzile actualizate din baza de date firebase și instruiește Arduino să efectueze sarcinile necesare.

Pentru configurarea Raspberry Pi în flux live, un tutorial detaliat există deja și poate fi găsit aici. Instrucțiunile se rezumă la trei comenzi simple. Porniți Raspberry Pi și deschideți terminalul și introduceți următoarele comenzi.

  • git clone
  • cd RPi_Cam_Web_Interface
  • ./install.sh

Odată ce instalarea este finalizată, reporniți Pi și ar trebui să puteți accesa fluxul căutând https:// adresa IP a Pi-ului dvs. în orice browser web.

Odată configurat streamingul live, va trebui să descărcați și să instalați anumite biblioteci pentru a putea utiliza baza de date cloud. Deschideți un terminal pe Pi și introduceți următoarele comenzi:

  • solicitări de instalare sudo pip == 1.1.0
  • sudo pip instalează python-firebase

În cele din urmă, descărcați fișierul python atașat mai jos și salvați-l pe Raspberry Pi. Pe a patra linie a codului schimbați portul COM la portul la care este conectat Arduino. Apoi, schimbați adresa URL de pe linia 8 la adresa URL firebase pe care ați păstrat o notă mai devreme. În cele din urmă, rulați programul prin terminal. Acest program preia comenzile din baza de date cloud și le transmite către Arduino prin conexiunea serială.

Pasul 16: Programarea Arduino

Programarea Arduino
Programarea Arduino
Programarea Arduino
Programarea Arduino

Arduino este folosit pentru a interpreta comenzile din Pi și instruiește actuatorii robotului să îndeplinească sarcinile necesare. Descărcați codul Arduino atașat mai jos și încărcați-l pe Arduino. Odată ce Arduino este programat, conectați-l la unul dintre porturile USB ale Pi folosind cablul USB dedicat.

Pasul 17: Alimentarea sistemului

Alimentarea sistemului
Alimentarea sistemului

Robotul va fi oprit de la o baterie lipo cu 3 celule. Terminalele bateriei trebuie împărțite în două, unde unul merge direct la scutul CNC pentru a alimenta motoarele, în timp ce celălalt se conectează la 5V UBEC, care a creat o linie de alimentare constantă de 5v care va fi utilizată pentru a alimenta Raspberry Pi prin pinii GPIO. 5v de la UBEC este conectat la pinul de 5v al Raspberry Pi, iar GND de la UBEC este conectat la pinul GND de pe Pi.

Pasul 18: Utilizarea aplicației

Folosind aplicația
Folosind aplicația
Folosind aplicația
Folosind aplicația
Folosind aplicația
Folosind aplicația

Interfața aplicației vă permite să controlați robotul de monitorizare, precum și să transmiteți un flux live de pe camera de bord. Pentru a vă conecta la robotul dvs., asigurați-vă că aveți o conexiune la internet stabilă, apoi tastați pur și simplu adresa IP a Raspberry Pi în caseta de text furnizată și faceți clic pe butonul de actualizare. După ce ați terminat, fluxul live va apărea pe ecran și ar trebui să puteți controla diferitele funcții ale robotului.

Pasul 19: Gata de testat

Gata de testat
Gata de testat
Gata de testat
Gata de testat

Acum că robotul dvs. de monitorizare a animalelor de companie este complet asamblat, puteți umple castronul cu niște delicatese pentru câini. Deschide aplicația, conectează camera și distrează-te! În prezent, ne jucam cu rover-ul și cu Beagle-ul nostru și am capturat momente destul de hilar.

Odată ce câinele a depășit frica inițială de acest obiect în mișcare, a fost urmărit botul din jurul casei pentru delicatese. Camera de la bord oferă o bună vizualizare în unghi larg a împrejurimilor, ceea ce o face destul de ușor de manevrat.

Există loc de îmbunătățire pentru a-l face să funcționeze mai bine în lumea reală. Acestea fiind spuse, am creat un sistem robust, pe care se poate construi și extinde. Dacă ți-a plăcut acest proiect, votează pentru noi în „Concursul de robotică”

Happy Making!

Concurs de robotică
Concurs de robotică
Concurs de robotică
Concurs de robotică

Premiul II la Concursul de Robotică

Recomandat: