Taula de continguts:

Sistema de control de mascotes alimentat per Arduino i Raspberry Pi: 19 passos (amb imatges)
Sistema de control de mascotes alimentat per Arduino i Raspberry Pi: 19 passos (amb imatges)

Vídeo: Sistema de control de mascotes alimentat per Arduino i Raspberry Pi: 19 passos (amb imatges)

Vídeo: Sistema de control de mascotes alimentat per Arduino i Raspberry Pi: 19 passos (amb imatges)
Vídeo: ✅ Automatizar las perforaciones para su PCB #9b 2024, De novembre
Anonim
Image
Image
Sistema de control de mascotes alimentat per Arduino i Raspberry Pi
Sistema de control de mascotes alimentat per Arduino i Raspberry Pi
Sistema de control de mascotes alimentat per Arduino i Raspberry Pi
Sistema de control de mascotes alimentat per Arduino i Raspberry Pi

Recentment, de vacances, ens vam adonar de la manca de connexió amb la nostra mascota Beagle. Després d'algunes investigacions, vam trobar productes que presentaven una càmera estàtica que permetia controlar i comunicar-se amb la seva mascota. Aquests sistemes tenien certs beneficis però no tenien versatilitat. Per exemple, cada habitació requeria una unitat per fer un seguiment de la vostra mascota a tota la casa.

Per tant, hem desenvolupat un robot robust que pot maniobrar per la casa i pot controlar la mascota utilitzant el poder de l’Internet de les coses. Una aplicació per a telèfons intel·ligents s'ha dissenyat per interactuar amb la vostra mascota mitjançant un canal de vídeo en directe. El xassís del robot es fabrica digitalment ja que es van crear diverses parts mitjançant la impressió 3D i el tall per làser. Finalment, vam decidir afegir una característica addicional que dispensés llaminadures per premiar la vostra mascota.

Seguiu per crear el vostre propi sistema de control de mascotes i, fins i tot, personalitzar-lo segons les vostres necessitats. Mireu el vídeo enllaçat anteriorment per veure com va reaccionar la nostra mascota i per entendre millor el robot. Voteu el vot al "Concurs de robòtica" si us ha agradat el projecte.

Pas 1: Visió general del disseny

Visió general del disseny
Visió general del disseny
Visió general del disseny
Visió general del disseny

Per conceptualitzar el robot de control de mascotes, primer el vam dissenyar a fusion 360. Aquí teniu algunes de les seves característiques:

El robot es pot controlar a través d’una aplicació a través d’Internet. Això permet a l'usuari connectar-se al robot des de qualsevol lloc

Una càmera integrada que transmet en directe un vídeo al telèfon intel·ligent pot ajudar l'usuari a maniobrar per la casa i interactuar amb la mascota

Un bol complementari que pot premiar la vostra mascota de forma remota

Peces fabricades digitalment que permeten personalitzar el seu robot

Es va utilitzar un Raspberry Pi per connectar-se a Internet, ja que disposa d’un mode wifi integrat

Es va utilitzar un Arduino juntament amb un blindatge CNC per donar ordres als motors pas a pas

Pas 2: materials necessaris

Materials necessaris
Materials necessaris
Materials necessaris
Materials necessaris

Aquí teniu la llista de tots els components necessaris per fabricar el vostre propi robot de control de mascotes alimentat per Arduino i Raspberry Pi. Totes les peces haurien d’estar disponibles i fàcils de trobar.

ELECTRONNICA:

  • Arduino Uno x 1
  • Raspberry Pi (amb l'últim raspbian) x 1
  • Escut CNC x 1
  • Controlador de motor pas a pas A4988 x 2
  • Picamera x 1
  • Sensor de distància ultrasònic x 1
  • Bateria Lipo de 11,1 v x 1
  • Motor pas a pas NEMA 17 x 2
  • 5v UBEC x 1

HARDWARE:

  • Rodes x 2 (les rodes que vam fer servir tenien un diàmetre de 7 cm)
  • Rodes de rodes x 2
  • Femelles i cargols M4 i M3

El cost total d’aquest projecte, excloent l’Arduino i el Raspberry Pi, ronda els 50 $.

Pas 3: peces fabricades digitalment

Peces fabricades digitalment
Peces fabricades digitalment
Peces fabricades digitalment
Peces fabricades digitalment

Algunes de les parts que vam utilitzar en aquest projecte havien de ser personalitzades. Aquests es van modelar primer a Fusion 360 i després es van fer amb una impressora 3D i un tallador làser. Les peces impreses en 3D no suporten gaire càrrega, de manera que el PLA estàndard amb un 20% d’ompliment funciona molt bé. A continuació es mostra una llista de totes les peces impreses en 3D i tallades amb làser:

Parts impreses en 3D:

  • Porta passos x 2
  • Muntatge del sistema de visió x 1
  • Distància electrònica x 4
  • Separador vertical x 4
  • Reforç del xassís x 2
  • Tractar la tapa del bol x 1
  • Recipient x 1
  • Muntatge pas a pas posterior x 1
  • Disc sinuós x 1

Parts de Lasercut:

  • Tauler inferior x 1
  • Tauler superior x 1

A continuació es troba una carpeta comprimida que conté tots els fitxers STL i de tall per làser.

Pas 4: fixació del motor pas a pas

Col·locació del motor pas a pas
Col·locació del motor pas a pas
Col·locació del motor pas a pas
Col·locació del motor pas a pas
Col·locació del motor pas a pas
Col·locació del motor pas a pas

Un cop totes les parts estiguin impreses en 3D, comenceu el muntatge muntant el motor pas a pas al suport del pas a pas. El suport del motor pas a pas que hem dissenyat està pensat per al model NEMA 17 (si es fan servir passos diferents, caldrà un muntatge diferent). Passeu l’eix del motor pel forat i fixeu-lo al lloc amb els cargols de muntatge. Un cop fets, els dos motors s’han de subjectar de manera segura als suports.

Pas 5: muntatge dels passos al tauler inferior

Muntatge dels Steppers al tauler inferior
Muntatge dels Steppers al tauler inferior
Muntatge dels Steppers al tauler inferior
Muntatge dels Steppers al tauler inferior
Muntatge dels Steppers al tauler inferior
Muntatge dels Steppers al tauler inferior

Per muntar els suports al tauler inferior tallat amb làser hem utilitzat cargols M4. Abans de fixar-les amb les femelles, afegiu les tires de reforç del xassís imprès en 3D i, a continuació, subjecteu les femelles. Les tires s’utilitzen per distribuir la càrrega uniformement sobre el panell acrílic.

Finalment, passeu els cables per les respectives ranures que es proporcionen al tauler. Assegureu-vos de tirar-los completament per evitar que s’enredin a les rodes.

Pas 6: muntatge de les rodes

Muntatge de les rodes
Muntatge de les rodes
Muntatge de les rodes
Muntatge de les rodes
Muntatge de les rodes
Muntatge de les rodes

El panell acrílic té dues seccions retallades per adaptar-se a les rodes. Les rodes que fèiem servir tenien un diàmetre de 7 cm i venien amb cargols fixats que es fixaven als eixos escalonats de 5 mm. Assegureu-vos que la roda està ben fixada i no rellisca sobre l’eix.

Pas 7: Rodes de rodes davanteres i posteriors

Rodes de rodes davanteres i posteriors
Rodes de rodes davanteres i posteriors
Rodes de rodes davanteres i posteriors
Rodes de rodes davanteres i posteriors
Rodes de rodes davanteres i posteriors
Rodes de rodes davanteres i posteriors
Rodes de rodes davanteres i posteriors
Rodes de rodes davanteres i posteriors

Per permetre que el xassís es mogui sense problemes, vam decidir col·locar rodes de rodes davanteres i posteriors del robot. Això no només impedeix que el robot bolqui, sinó que també permet que el xassís giri lliurement en qualsevol direcció. Les rodes de rodes tenen totes les mides, en concret les nostres venien amb un únic cargol pivotant que vam muntar a la base i vam utilitzar separadors impresos en 3D per ajustar l’alçada de manera que el robot quedés perfectament horitzontal. Amb això, la base del xassís és completa i té una bona estabilitat.

Pas 8: electrònica

Electrònica
Electrònica
Electrònica
Electrònica
Electrònica
Electrònica

Un cop la base del xassís estigui completament muntada, és hora de muntar l'electrònica al tauler acrílic. Hem fet forats al panell acrílic que s’alineen amb els forats de muntatge de l’Arduino i el Raspberry Pi. Mitjançant els separadors impresos en 3D hem elevat l’electrònica lleugerament per sobre dels panells acrílics de manera que tot l’excés de cablejat es pot amagar perfectament per sota. Munteu l’Arduino i el Raspberry Pi a les seves ubicacions de muntatge corresponents mitjançant cargols i femelles M3. Un cop Arduino fixat, connecteu el blindatge CNC a l'Arduino i connecteu els cables pas a pas en la configuració següent.

  • Pas esquerre cap al port de l’eix X del blindatge CNC
  • Pas dret al port de l'eix Y del blindatge CNC

Amb els motors pas a pas connectats, connecteu l'Arduino al Raspberry Pi mitjançant el cable USB d'Arduino. Finalment, el Raspberry Pi i l’Arduino es comunicaran a través d’aquest cable.

Nota: La part frontal del robot és el lateral del Raspberry Pi

Pas 9: sistema de visió

Sistema de Visió
Sistema de Visió
Sistema de Visió
Sistema de Visió
Sistema de Visió
Sistema de Visió

L’entrada principal del medi ambient per al nostre robot de control de mascotes és la visió. Vam decidir utilitzar la Picamera, que és compatible amb el Raspberry Pi per alimentar una transmissió en directe a l'usuari a través d'Internet. També hem utilitzat un sensor de distància per ultrasons per evitar obstacles quan el robot funciona de forma autònoma. Tots dos sensors es fixen en un suport amb l'ajut de cargols.

La Picamera es connecta al port designat del Raspberry Pi i connecta el sensor d’ultrasons de la manera següent:

  • Sensor d'ultrasons VCC a carril de 5v en blindatge CNC
  • Sensor d'ultrasons GND a GND rail sobre blindatge CNC
  • Sensor d'ultrasons TRIG a X + pin d'aturada final en blindatge CNC
  • Sensor d'ultrasons ECHO a Y + pin d'aturada final en blindatge CNC

Pas 10: Muntatge del tauler superior

Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior

A la part posterior del robot hi ha muntat el sistema d’obertura de la tapa per al recipient. Connecteu el mini motor pas a pas al component del suport posterior i munteu tant el sistema de visió com el sistema de bobinatge amb perns M3 al tauler superior. Com s'ha esmentat, assegureu-vos de muntar el sistema de visió per davant i el sistema de bobinatge a la part posterior amb els dos forats proporcionats.

Pas 11: Muntatge del tauler superior

Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior
Muntatge del panell superior

Vam imprimir espaiadors verticals en 3D per recolzar el tauler superior a l’alçada adequada. Comenceu fixant els quatre separadors al tauler inferior per formar una "X". A continuació, col·loqueu el tauler superior amb el recipient per tractar assegurant-vos que els seus forats s’alineïn i, finalment, fixeu-lo també als separadors.

Pas 12: Mecanisme d'obertura de la tapa

Mecanisme d'obertura de tapa
Mecanisme d'obertura de tapa
Mecanisme d'obertura de tapa
Mecanisme d'obertura de tapa
Mecanisme d'obertura de tapa
Mecanisme d'obertura de tapa

Per controlar la tapa del bol, vam utilitzar un motor pas a pas més petit per enrotllar una corda de niló adherida a la tapa, obrint-la. Abans de fixar la tapa, passeu la corda pel forat de 2 mm de la tapa i feu un nus a la part interior. A continuació, talleu l’altre extrem de la corda i feu-la lliscar pels forats previstos al disc de bobinatge. Premeu el disc al pas a pas i estireu la corda fins que estigui estesa. Un cop fet, retalla l'excés i fes un nus. Finalment, utilitzant un cargol i una femella, fixeu la tapa al bol i assegureu-vos que giri. Ara, a mesura que gira el pas a pas, la corda s’ha de enrotllar al disc i la tapa s’ha d’obrir gradualment.

Pas 13: Configuració de la base de dades del núvol

Configuració de la base de dades del núvol
Configuració de la base de dades del núvol
Configuració de la base de dades del núvol
Configuració de la base de dades del núvol
Configuració de la base de dades del núvol
Configuració de la base de dades del núvol
Configuració de la base de dades del núvol
Configuració de la base de dades del núvol

El primer pas és crear una base de dades per al sistema perquè pugueu comunicar-vos amb el robot des de la vostra aplicació mòbil des de qualsevol part del món. Feu clic al següent enllaç (Google firebase), que us portarà al lloc web de Firebase (haureu d’iniciar sessió amb el vostre compte de Google). Feu clic al botó "Comença" que us portarà a la consola de Firebase. A continuació, creeu un projecte nou fent clic al botó "Afegeix projecte", empleneu els requisits (nom, detalls, etc.) i completeu fent clic al botó "Crea projecte".

Només necessitem les eines de base de dades de Firebase, així que seleccioneu "base de dades" al menú de la part esquerra. A continuació, feu clic al botó "Crea una base de dades" i seleccioneu l'opció "mode de prova". A continuació, configureu la base de dades en una "base de dades en temps real" en lloc de "cloud firestore" fent clic al menú desplegable de la part superior. Seleccioneu la pestanya "regles" i canvieu les dues "falsa" a "veritable", finalment feu clic a la pestanya "dades" i copieu l'URL de la base de dades; això serà necessari més endavant.

L'últim que haureu de fer és fer clic a la icona d'engranatge que hi ha al costat de la visió general del projecte, després a "Configuració del projecte", després seleccionar la pestanya "Comptes de servei", finalment fer clic a "Secrets de la base de dades" i anotar la seguretat codi de la vostra base de dades. Amb aquest pas complet, heu creat amb èxit la vostra base de dades al núvol a la qual es pot accedir des del telèfon intel·ligent i des del Raspberry Pi. (Utilitzeu les imatges adjuntes anteriorment en cas de dubtes o simplement deixeu una pregunta a la secció de comentaris)

Pas 14: creació de l'aplicació mòbil

Creació de l'aplicació mòbil
Creació de l'aplicació mòbil
Creació de l'aplicació mòbil
Creació de l'aplicació mòbil
Creació de l'aplicació mòbil
Creació de l'aplicació mòbil
Creació de l'aplicació mòbil
Creació de l'aplicació mòbil

La següent part del sistema IoT és l’aplicació per a telèfons intel·ligents. Vam decidir utilitzar MIT App Inventor per crear la nostra pròpia aplicació personalitzada. Per utilitzar l’aplicació que vam crear primer obriu el següent enllaç (MIT App Inventor), que us dirigirà a la seva pàgina web. A continuació, feu clic a "crear aplicacions" cap a la part superior de la pantalla i, a continuació, inicieu sessió amb el vostre compte de Google.

Baixeu-vos el fitxer.aia que hi ha enllaçat a continuació. Obriu la pestanya "Projectes" i feu clic a "Importa projecte (.aia) des del meu ordinador", seleccioneu el fitxer que acabeu de descarregar i feu clic a "D'acord". A la finestra de components, desplaceu-vos fins a veure "FirebaseDB1", feu-hi clic i modifiqueu el "FirebaseToken", "FirebaseURL" als valors dels quals havíeu anotat al pas anterior. Un cop finalitzats aquests passos, ja podeu descarregar i instal·lar l'aplicació. Podeu baixar l'aplicació directament al telèfon fent clic a la pestanya "Construeix" i fent clic a "Aplicació (proporcioneu el codi QR per.apk)" i, a continuació, escaneu el codi QR amb el vostre telèfon intel·ligent o feu clic a "Aplicació (deseu.apk al meu ordinador)) "descarregareu el fitxer apk al vostre ordinador, que després es pot canviar al vostre telèfon intel·ligent.

Pas 15: programació del Raspberry Pi

Programació del Raspberry Pi
Programació del Raspberry Pi

El Raspberry Pi s’utilitza per dues raons principals.

  1. Transmet un flux de vídeo en directe des del robot a un servidor web. L'usuari pot veure aquest flux mitjançant l'aplicació mòbil.
  2. Llegeix les ordres actualitzades de la base de dades de firebase i indica a Arduino que realitzi les tasques necessàries.

Per configurar Raspberry Pi perquè es reprodueixi en directe, ja existeix un tutorial detallat que es pot trobar aquí. Les instruccions es resumeixen en tres ordres simples. Enceneu el Raspberry Pi i obriu el terminal i introduïu les ordres següents.

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

Un cop finalitzada la instal·lació, reinicieu el Pi i hauríeu de poder accedir al flux cercant https:// l'adreça IP del vostre Pi a qualsevol navegador web.

Amb la transmissió en directe configurada, haureu de descarregar i instal·lar determinades biblioteques per poder utilitzar la base de dades al núvol. Obriu un terminal al vostre Pi i introduïu les ordres següents:

  • sol·licituds d'instal·lació de sudo pip == 1.1.0
  • sudo pip instal·la python-firebase

Finalment, descarregueu el fitxer python adjunt a continuació i deseu-lo al vostre Raspberry Pi. A la quarta línia del codi, canvieu el port COM al port al qual està connectat Arduino. A continuació, canvieu l'URL de la línia 8 per l'URL de firebase que havíeu conservat anteriorment. Finalment, executeu el programa a través del terminal. Aquest programa recupera les ordres de la base de dades del núvol i les transmet a l'Arduino mitjançant la connexió en sèrie.

Pas 16: Programació de l'Arduino

Programació de l'Arduino
Programació de l'Arduino
Programació de l'Arduino
Programació de l'Arduino

L'Arduino s'utilitza per interpretar les ordres del Pi i indica als actuadors del robot que realitzin les tasques necessàries. Baixeu-vos el codi Arduino adjunt a continuació i pengeu-lo a l'Arduino. Un cop programat l'Arduino, connecteu-lo a un dels ports USB del Pi mitjançant el cable USB dedicat.

Pas 17: alimentació del sistema

Alimentació del sistema
Alimentació del sistema

El robot s’apagarà d’una bateria lipo de 3 cel·les. Els terminals de la bateria s’han de dividir en dos, on un es dirigeix directament a l’escut CNC per alimentar els motors, mentre que l’altre es connecta a l’UBEC de 5v, que va crear una línia d’alimentació estable de 5v que s’utilitzarà per alimentar el Raspberry Pi els pins GPIO. El 5v de la UBEC està connectat al pin de 5v del Raspberry Pi i el GND de la UBEC està connectat al pin GND del Pi.

Pas 18: utilitzar l'aplicació

Ús de l’aplicació
Ús de l’aplicació
Ús de l’aplicació
Ús de l’aplicació
Ús de l’aplicació
Ús de l’aplicació

La interfície de l'aplicació permet controlar el robot de monitorització, així com transmetre una transmissió en directe des de la càmera integrada. Per connectar-vos al robot, assegureu-vos que teniu una connexió a Internet estable i, simplement, escriviu l'adreça IP del Raspberry Pi al quadre de text proporcionat i feu clic al botó d'actualització. Un cop fet, el feed en directe apareixerà a la pantalla i hauríeu de poder controlar les diverses funcions del robot.

Pas 19: llest per provar

A punt per provar
A punt per provar
A punt per provar
A punt per provar

Ara que el robot de control de mascotes està completament muntat, podeu omplir el bol amb algunes delícies per a gossos. Obriu l'aplicació, connecteu la càmera i divertiu-vos! Actualment hem estat jugant amb el rover i el nostre Beagle i hem capturat moments força divertits.

Una vegada que el gos va superar la por inicial d’aquest objecte en moviment, perseguia el bot de la casa per a llaminadures. La càmera integrada proporciona una bona visió gran angular de l’entorn que facilita la maniobra.

Hi ha marge per millorar perquè funcioni millor al món real. Dit això, hem creat un sistema robust, al qual es pot construir i ampliar. Si us ha agradat aquest projecte, voteu-nos al "Concurs de robòtica"

Feliç fer!

Concurs de robòtica
Concurs de robòtica
Concurs de robòtica
Concurs de robòtica

Accèssit al concurs de robòtica

Recomanat: