Taula de continguts:

Robot de múltiples funcions de bricolatge amb Arduino: 13 passos (amb imatges)
Robot de múltiples funcions de bricolatge amb Arduino: 13 passos (amb imatges)

Vídeo: Robot de múltiples funcions de bricolatge amb Arduino: 13 passos (amb imatges)

Vídeo: Robot de múltiples funcions de bricolatge amb Arduino: 13 passos (amb imatges)
Vídeo: Leap Motion SDK 2024, Desembre
Anonim
Robot multifuncional de bricolatge amb Arduino
Robot multifuncional de bricolatge amb Arduino
Robot multifuncional de bricolatge amb Arduino
Robot multifuncional de bricolatge amb Arduino
Robot multifuncional de bricolatge amb Arduino
Robot multifuncional de bricolatge amb Arduino

Aquest robot es va construir principalment per entendre Arduino i combinar diversos projectes d’Arduino per formar un robot Arduino amb diverses funcions. I, a més, qui no vol tenir un robot per a mascotes? Així que el vaig anomenar BLUE ROVIER 316. Podria haver comprat un bonic xassís rastrejat, però fer-lo des de zero us ensenya més i us dóna més orgull després d’haver-lo completat. El robot és capaç d’entendre les ordres de veu, respondre a preguntes senzilles, un cotxe RC i fins i tot evitar obstacles mentre es mou. Es controla principalment mitjançant un telèfon Android que hi està connectat mitjançant Bluetooth. Basat en funcions d’Android com el reconeixement de veu de Google i la detecció d’inclinació, es pot comportar com un robot intel·ligent i bonic. He afegit BLAU al seu nom perquè es basa principalment en Bluetooth. En realitat va ser el meu primer projecte Arduino i volia que fos únic. Si us agrada el projecte, voteu-me al concurs de robòtica.

Pas 1: vídeo de demostració

Image
Image
Història de ROVIER
Història de ROVIER

Podeu veure la demostració del robot en aquest lloc:

Pas 2: història de ROVIER

Història de ROVIER
Història de ROVIER

Podeu passar al següent pas si no voleu passar per la bonica història de BLUE ROVIER 316. Fa un any, vaig rebre un Arduino UNO com a regal del meu pare. Com que va ser el meu primer pas en el camp d’Arduino, volia crear quelcom diferent i únic dels projectes generals d’Arduino. Havia de ser un robot bonic i intel·ligent que pogués entendre les ordres de veu i fer moltes coses més intel·ligents, com ara el control remot, les línies de seguiment, l’evitació d’obstacles, etc. La qüestió era com combinar-los. I després de navegar per la xarxa durant un temps molt agradable, vaig concloure que el Bluetooth seria el mode més barat. Així, es va posar en marxa BLUE ROVIER, però es va produir una situació en què vaig haver d’excloure moltes funcions del robot que esperava que posseís, principalment a causa de la manca de memòria a l’Arduino UNO (fins i tot el menor nombre de pins digitals a l’ONU). No importa, vaig continuar. Em va costar molt de temps crear la versió final del robot. Després de moltes proves i fracassos, finalment es va crear BLUE ROVIER, i ara podem passar a la fabricació del robot.

Pas 3: components i peces

Components i peces
Components i peces
Components i peces
Components i peces
Components i peces
Components i peces

Només necessitareu els components següents: 1. Sistema Android 2. Arduino Uno 3. Mòdul wtv020-sd-16p i altaveu 8ohm4. 2x circuit controlador de motor L293d 5. Motors i rodes 4x bo6. Sensor d'ultrasons HC SR04 7. 9g servo8. 8 piles AA i bateries 9. targeta micro SD de 1 GB 10. petita caixa d’interruptors per al xassís.11. Mòdul Bluetooth HC 05: sé que sembla car. Però no us preocupeu, només costarà unes dues o tres mil rupies. Parlant d’Android, no serà un gran problema posseir-ne un, ja que la majoria en té actualment. Però si teniu versions més recents (superiors a la 5.0) pot augmentar el rendiment. Intenteu comprar motors de rpm moderats (60 a 100). Això ajudaria a mantenir la velocitat del robot sota control, ja que no hi ha cap altre circuit de control de velocitat instal·lat. I amb 8 piles AA n’hi ha prou per alimentar el robot durant una bona estona. I tenint en compte el Bluetooth, HC 05 és adequat per al robot perquè és prou barat i el rendiment també és excel·lent. La targeta micro SD de 1 GB es necessita per emmagatzemar fitxers de veu que es reprodueixen quan es fa alguna pregunta al robot [Es tracta detalladament a la part posterior de la estructura]. Els altres components es tracten detalladament en el seu pas respectiu.

Passem ara a algunes senzilles "teories" que s'utilitzen en aquest robot.

Pas 4: teoria del control de veu

Teoria del control de veu
Teoria del control de veu
Teoria del control de veu
Teoria del control de veu
Teoria del control de veu
Teoria del control de veu
Teoria del control de veu
Teoria del control de veu

El robot pot entendre les ordres de veu mitjançant un telèfon Android. Suposo que tothom està familiaritzat amb Google Voice Recognition, la funció d’Android on diem la paraula i Google l’escriu. La mateixa funció s’utilitza aquí per reconèixer ordres de veu i convertir-les en ordres de text. L'aplicació aquí converteix la veu en text a través de Google i l'envia al robot mitjançant Bluetooth. El robot està programat per seguir aquestes ordres rebudes mitjançant Bluetooth. També és capaç de respondre a un bon nombre de preguntes. Fins i tot podeu afegir algunes ordres més al codi per fer que el robot faci coses més increïbles. Aquí teniu l’aplicació per a Android:

Pas 5: teoria del control de gestos

Teoria del control gestual
Teoria del control gestual
Teoria del control gestual
Teoria del control gestual

El mode de control de gestos o control de moviment també es fa a través d'Android. En aquest mode, el robot es pot controlar com un cotxe RC utilitzant l'Android com a volant. Hi ha un sensor anomenat "acceleròmetre" en tots els androides que s'utilitza en aquest mode. Aquest acceleròmetre pot determinar l’angle en què es titula el telèfon mesurant les forces d’acceleració que actuen a Android. Aquest sensor fa que l’Android giri la pantalla quan inclinem el telèfon. L'aplicació aquí utilitza l'acceleròmetre del telèfon per determinar l'angle d'inclinació del telèfon. A continuació, s’envia un personatge (A, B ….) al robot mitjançant Bluetooth. L’arduino està programat perquè funcioni segons les dades rebudes. Si el telèfon s’inclina cap endavant, s’envia el caràcter A i el robot avança. Quan s'inclina cap enrere, s'envia el caràcter B i el robot es mou cap enrere i així successivament cap a l'esquerra i la dreta. Quan l'Android es col·loca horitzontalment, s'envia el personatge E i el robot deixa de moure's.

Pas 6: teoria del control de Bluetooth

Teoria del control de Bluetooth
Teoria del control de Bluetooth
Teoria del control de Bluetooth
Teoria del control de Bluetooth

En aquest mode, el robot funciona com un cotxe RC general. No hi ha res de nou en aquest mode, és igual que un cotxe de control remot general disponible al mercat, l’única diferència és que estem utilitzant una aplicació d’Android per controlar el robot. Hi ha diferents botons a l’aplicació, cadascun amb caràcters diferents. associat amb ell. Quan es toca qualsevol tecla, s’envia un personatge al robot mitjançant Bluetooth, igual que el mode de control de gestos. A més, s’envien els mateixos caràcters quan es toquen les tecles respectives i el robot segueix els personatges entrants. He utilitzat els botons de 360 i -360 graus de l’aplicació per fer que el robot sembli dret i esquerre. Podeu canviar-lo al codi si voleu fer que el robot faci altres coses.

Pas 7: teoria de l’evitació d’obstacles

Teoria de l’evitació d’obstacles
Teoria de l’evitació d’obstacles
Teoria de l’evitació d’obstacles
Teoria de l’evitació d’obstacles

En aquest mode, el robot funciona com un robot per evitar obstacles, evitant que col·lisioni amb qualsevol objecte. Això es fa amb el sensor HC SR04. Suposo que coneixeu el SONAR (Sound Navigation And Ranging). El sensor HC SR04 emet contínuament ones sonores d'ultrasons. Aquestes ones es recuperen després de copejar una superfície sòlida i tornen al sensor. Es registra el temps que triguen les ones a tornar al sensor. Com que el so viatja a 340 m / s aproximadament i sabem que VELOCITAT × TEMPS = DISTÀNCIA, podem determinar la distància a seguir. Per exemple, si el so triga 2 segons per tornar, podem determinar la distància a través de la fórmula anterior, és a dir, 340 × 2 = 680 m. Així és com el robot pot mesurar la distància que té al davant a través del sensor. Mentre es mou, el robot mesura contínuament la distància que hi ha a través del sensor. Si intueix que l’espai lliure que hi ha al davant és inferior a 30 cm, deixa de moure’s. Després es veu a l'esquerra i a la dreta i compara la distància de cada costat. Si el costat esquerre té una distància més gran, el robot gira a l'esquerra. En cas contrari, si el costat dret és més gran, el robot gira a la dreta. Si els dos costats tenen distàncies iguals, el robot gira enrere. Aquest senzill mecanisme ajuda el robot a evitar els obstacles.

Pas 8: Muntatge del xassís

Muntatge del xassís
Muntatge del xassís
Muntatge del xassís
Muntatge del xassís
Muntatge del xassís
Muntatge del xassís
Muntatge del xassís
Muntatge del xassís

Fent el xassís pel vostre compte, heu de tenir molta cura amb les mesures i els alineaments. Vaig escollir-ho perquè no en vaig trobar cap a la xarxa que em satisfés. Com a xassís s’utilitza una caixa d’interruptors general que s’utilitza per a subministraments d’energia. Suposo que en podeu obtenir fàcilment una botiga d’aparells elèctrics. En primer lloc, fixeu els quatre motors a la part inferior amb una mica de pega o pinces i, a continuació, poseu les rodes. A continuació, heu de fer el cap del robot (el servo i el sensor HC SR04). Per al cap, talleu un petit tros de perfboard i fixeu-lo al servo mitjançant un cargol. A continuació, fixeu el sensor d'ultrasons al perfboard amb una mica de cola. Talleu un petit forat quadrat a la part superior de la caixa i fixeu-hi el servo. A continuació, fixeu el suport de la bateria a la part posterior del robot mitjançant un cargol. Introduïu els circuits i els altres components dins de la caixa i el xassís estarà llest. No oblideu fer alguns forats davant de l’altaveu perquè el so surti i produeixi una millor qualitat.

Pas 9: Preparació del mòdul de veu

Preparació del mòdul de veu
Preparació del mòdul de veu
Preparació del mòdul de veu
Preparació del mòdul de veu
Preparació del mòdul de veu
Preparació del mòdul de veu

El mòdul SD WTV 020 compleix el mode de parla del robot. El mòdul s’utilitza per reproduir fitxers de veu per al robot. Quan es faci alguna pregunta, l’arduino farà que el mòdul reprodueixi el fitxer de veu corresponent a la targeta SD. Al mòdul hi ha quatre línies de dades en sèrie per comunicar-se amb l’arduino, el restabliment, el rellotge, les dades i els pins ocupats. Recordeu que els noms dels fitxers haurien d’estar en decimal (0001, 0002 …). I que els fitxers haurien de ser en format AD4 o WAV. A més, el mòdul només funciona amb una targeta micro SD d'1 GB. Alguns mòduls funcionen fins i tot en targetes de 2 GB i la targeta pot contenir un màxim de 504 fitxers de veu. Així, podeu incloure un bon nombre de fitxers de veu per reproduir-los per a un bon nombre de preguntes. Fins i tot podeu crear els vostres propis fitxers de veu AD4 (Podeu ometre aquesta part si podeu ajustar-los amb els fitxers de veu que s’ofereixen juntament amb aquest intstructable)., heu de tenir dos programes, un programari d'edició de so i un programari anomenat 4D SOMO TOOL que convertiria els fitxers al format AD4. En segon lloc, heu de preparar Robot Voices. Podeu convertir text a veu o fins i tot gravar la vostra pròpia veu i fer que les veus del robot. Tots dos es poden fer amb el programari d’edició de so. Però, sens dubte, els robots no es veuen bé si parlen veus humanes. Per tant, hauria de ser millor convertir el text en veu. Hi ha diversos motors, com Microsoft Anna i Microsoft Sam, que us ajudaran a fer-ho. Després de preparar els fitxers de veu, heu de desar-los en 32000 Hz i en format WAV. Això es deu al fet que el mòdul pot reproduir fitxers de veu fins a 32000 Hz. A continuació, utilitzeu l'eina SOMO 4D per convertir els fitxers al format AD4. Per fer-ho, només cal que obriu l’eina SOMO, seleccioneu els fitxers i feu clic a Codificar AD4 i els vostres fitxers de veu estaran llestos. Podeu consultar la imatge de més amunt com a referència. Si voleu més detalls sobre com fer veus robòtiques, podeu anar aquí:

[Creació de veus robòtiques] Aquests són els fitxers de veu i el programari originals:

Pas 10: establir les connexions

Realització de les connexions
Realització de les connexions
Realització de les connexions
Realització de les connexions
Realització de les connexions
Realització de les connexions

Reduïu tots els pins Vcc dels mòduls respectius i connecteu-los al pin de 5v de l’arduino. Feu el mateix amb els pins gnd. Aquí hi ha les connexions dels diferents mòduls: mòdul HC 05: pin RX a pin arduino excavador 0. pin PIN a arduino pin pin 1. sensor HC SR04: ressò pin a arduino excavador pin 6. Trig pin a arduino excavador pin 7WTV020-SD mòdul: pin1 (restableix pin) a arduino cav pin2.pin4 a speaker + pin5 to speaker -pin7 (clock) to arduino cav pin3.pin8 to gnd.pin10 (data) to arduino cav pin4.pin15 (busy) to arduino cav pin5.pin16 a 3.3v A continuació, connecteu el cable de senyal de servo (groc) i cavar el pin 12. L293d controlador del motor: pin A1 a arduino excavar pin 8.pin A2 a arduino excavar pin 9.pin B1 a arduino excavar pin 10.pin B2 per arduino cavar el pin 11. Recordeu que en aquest robot estem utilitzant dos mòduls L293d. Això es deu al fet que un mòdul té la capacitat d’alimentar fins a dos motors. Per controlar quatre motors, fem servir dos controladors de motor. Recordeu, doncs, de fer connexions duplicades als mòduls del controlador del motor. Per exemple, connecteu el pin Arduino 8 al pin A1 dels dos mòduls del controlador. No oblideu connectar la sortida d’un mòdul a dos motors i l’altre mòdul als altres dos motors. Consulteu el diagrama per obtenir més informació.

Pas 11: el codi Arduino

El codi Arduino
El codi Arduino
El codi Arduino
El codi Arduino

Va ser un moment emocionant per fer el codi. No és en absolut un codi complicat, només utilitza algunes biblioteques per comunicar-se amb l'Android i el mòdul de so. Una gran part del treball es fa a Android i no a Arduino. El codi es basa en la comunicació Bluetooth i les dades entrants del Bluetooth. El codi està fet de tal manera que hem de donar ordres de veu al robot perquè executi els diferents modes i l’Arduino comprova contínuament si hi ha senyals Bluetooth entrants. Per aturar qualsevol mode, només hem de dir "atura". L'únic problema amb el codi és que hem d'apagar manualment el robot quan es troba en el mode d'evitació d'obstacles. No podem utilitzar l'ordre "stop" en aquest mode. Això es deu al fet que activar aquesta funció afecta la velocitat d’escaneig de la distància dels objectes. L'Arduino haurà de llegir simultàniament tant la distància d'un objecte com els senyals Bluetooth entrants. Això interfereix el mode i el robot no es pot protegir completament dels obstacles. És possible que el robot deixi d’aturar-se instantàniament fins i tot si la distància per davant és inferior a 30 cm. Per tant, seria bo no incloure aquesta funció en aquest mode. Només heu de descarregar les biblioteques i el codi i penjar-lo a l’Arduino. Però no oblideu treure els pins TX i RX (0, 1) de l'Arduino abans de carregar-los. Aquests pins s’utilitzen per a la comunicació en sèrie i s’utilitzen durant la càrrega del codi. I en aquest robot, aquests pins s’utilitzen per connectar el mòdul Bluetooth. Recordeu-vos de treure’ls d’una altra manera, ja que pot dificultar el vostre mòdul Bluetooth. Aquí teniu el codi i les biblioteques:

Pas 12: ordenació de problemes i millores

Ordenació de problemes i millores
Ordenació de problemes i millores

Podeu ometre aquest pas perquè només tracta de millores del robot. Al mòdul WTV-020-SD-16p apareixen molts problemes quant a la capacitat de la targeta de memòria. Això es deu al fet que alguns mòduls funcionen en targetes de 2 GB mentre que d'altres no. Per tant, és millor utilitzar una targeta micro SD d’1 GB. No hi hauria molts problemes a l’hora d’utilitzar diferents versions dels components. Es poden esmentar les diferents versions del mòdul wtv 020 sd. Això es deu al fet que només hi ha diferències d’embalatge entre els mòduls, mentre que la majoria d’altres coses internes continuen sent les mateixes. Si connecteu els diferents components com jo, us costaria una mica de corrent, ja que es perdrà una bona quantitat en els cables, amb una alta resistència. Això es deu al fet que el circuit és prou gran. Aquest intstructable no inclou el disseny d’un PCB (perquè no en vaig fer cap), però pot augmentar l’eficiència energètica del robot. Però el BLUE ROVIER 316 encara no s’ha acabat. Vaig pensar en incloure algunes funcions més, com ara seguir línies, resoldre laberints i moltes altres coses. Però va continuar sent un somni a causa de la manca de pins a l'Arduino UNO (BLUE ROVIER realment menja molts pins de l'Arduino). Per tant, penso en millorar totes les funcions d’aquest robot i combinar-les per formar un robot Arduino més sofisticat i útil. Així que estigueu preparats per veure la vista modificada de ROVIER d'aquí a uns mesos !!! Fins i tot desitjo veure altres versions modificades del robot per part d'altres persones que tinguin més creativitat que la meva !!!!

Pas 13: Jugar amb el robot

Jugant amb el robot
Jugant amb el robot

Enceneu el robot i vegeu com us saluda i juga amb vosaltres. Feu qualsevol pregunta (no estúpides!) I observeu-ne la resposta. Podeu dir que seguiu línies o que continueu. Només cal que digueu "atureu" quan vulgueu aturar el robot.

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

Accèssit al concurs de robòtica 2017

Recomanat: