Taula de continguts:

ARCA (Android control remot adorable): 4 passos (amb imatges)
ARCA (Android control remot adorable): 4 passos (amb imatges)

Vídeo: ARCA (Android control remot adorable): 4 passos (amb imatges)

Vídeo: ARCA (Android control remot adorable): 4 passos (amb imatges)
Vídeo: Беслан. Помни / Beslan. Remember (english & español subs) 2024, Desembre
Anonim
ARCA (adorable Android controlat a distància)
ARCA (adorable Android controlat a distància)
ARCA (adorable Android controlat a distància)
ARCA (adorable Android controlat a distància)
ARCA (adorable Android controlat a distància)
ARCA (adorable Android controlat a distància)

Aquesta instrucció es va crear per complir els requisits del projecte del Makecourse de la Universitat del Sud de Florida (www.makecourse.com).

ARCA és un adorable Android controlat a distància que és increïblement divertit de construir i de jugar. L’objectiu d’aquest projecte era crear quelcom que tothom pugui entendre i relacionar-se creant un robot que sigui alhora adorable i funcional.

El robot funciona mostrant diferents emocions en una matriu LED de 8 per 8, que inclouen alegria, dormir, amor, ràbia, ximple i mirar cap amunt, cap a l'esquerra i cap a la dreta. El robot també funciona com un cotxe RC i pot avançar i girar a l'esquerra o a la dreta. El robot avança activant els dos motors de les rodes, gira a l’esquerra en accionar el motor dret i gira a la dreta en activar el motor esquerre. El disseny és molt simplista, però només funciona i volia centrar-me molt en la programació de l’Arduino, ja que sóc un programador de fons.

Les darreres versions de tots els fitxers utilitzats en aquest tutorial es poden trobar al meu dipòsit Github ARCA.

Pas 1: Llista de peces i impressió 3D

Llista de peces i impressió 3D
Llista de peces i impressió 3D
Llista de peces i impressió 3D
Llista de peces i impressió 3D

Les parts d’aquest projecte es poden imprimir en 3D o comprar en línia. Quan pensava en el muntatge, volia fer que l’eficiència fos clau i també intentar no reinventar (amb tota la literalitat) la roda. La impressora 3D que es va utilitzar per a aquest projecte era un Makerbot Replicator, si voleu assegurar-vos que les vostres impressions 3D siguin coherents amb les meves, feu servir aquesta impressora.

Components estructurals

  • Caixa amb forats als laterals per a les rodes i els braços
  • Tapa de la caixa amb forats per a les rodes posteriors i un forat per al sensor IR
  • Braç esquerre
  • Braç dret
  • Eix per a les dues rodes posteriors
  • dos connectors d'eixos per connectar la tapa a l'eix
  • 4 rodes (motors inclosos en aquest enllaç)
  • Cargols petits (per encaixar en els motors)

Components elèctrics

  • Arduino Uno
  • Tauleta de pa petita (vaig comprar el kit Arduino i el vaig incloure)
  • Dues matrius de punts vermells MAX7219 amb control MCU
  • Receptor d'infrarojos i remot
  • Dos transistors TIP 120
  • Connectar cables (he utilitzat molts cables masculí a femení, així com de masculí a masculí, i recomano obtenir cables llargs en lloc de cables curts)
  • una resistència de 220 ohm
  • Dos motors d'engranatges
  • Paquets d'alimentació USB connectables (els portàtils que s'utilitzen per a telèfons mòbils)

Pas 2: Muntatge

muntatge
muntatge
muntatge
muntatge
muntatge
muntatge

Muntatge estructural

És probable que les parts impreses en 3D necessitin una mica de neteja i us recomano polir-les amb un granet fi i fer servir acetona (eliminador d’esmalt d’ungles) per eliminar qualsevol residu de cola utilitzat en el procés d’impressió 3D. És possible que algunes de les parts no s’adaptin perfectament i que fos necessari que lijés l’eix per estar perfectament rodó i que encaixés correctament pels forats.

Les rodes necessiten un lleuger ajust, calia perforar-les més per adaptar-se a les dimensions de l’eix a la part posterior i els cargols a la part davantera. Utilitzeu una broca de 6 mm per perforar els forats de les rodes per perforar forats més grans de les rodes.

Per a aquest muntatge he utilitzat una gran varietat de coles, però he trobat que el formigó líquid (cola modeladora) era el millor per mantenir-lo malgrat un llarg temps d’assecat, però l’epoxi era el millor per a les coses que necessiteu assecar ràpidament i mantenir-les bé, tot i estar desordenades.

La resta del conjunt és força senzill:

  1. Col·loqueu els suports d’eixos a la part posterior de la tapa de la caixa amb segellat amb epoxi
  2. Passeu l’eix pels portaeixos
  3. Enganxeu les rodes a l’eix amb formigó líquid
  4. Introduïu els braços pels orificis superiors i enganxeu-lo al suport del braç mitjançant epoxi
  5. Enrosqueu la tapa de la caixa a la caixa
  6. Feu servir cinta elèctrica a la part inferior de la caixa on hi ha les rodes

Muntatge elèctric

Les rodes davanteres s’uneixen directament als motors i heu d’utilitzar un cargol petit al motor per fer-lo prou llarg per cabre a través del forat del robot a cada costat. Hi ha d’haver un petit forat a la clavilla giratòria del motor i hi podeu cargolar i enganxar el cap del cargol a la roda després d’empènyer el cargol pel forat de la caixa.

La part posterior de la meva taula de suport tenia un suport adhesiu, però podeu utilitzar cinta elèctrica per adherir-la si la vostra no ho fa. Per motius de seguretat, també es va utilitzar cinta elèctrica per fixar els components elèctrics que no es trobaven a la placa. Els MCU amb pantalles LED es van connectar a la part posterior de les preses dels ulls mitjançant cinta elèctrica i els motors també es van fixar als costats de la caixa propers als forats mitjançant cinta elèctrica. Vaig fer servir cinta elèctrica vermella per fer-la més invisible, per si de cas, i recomano utilitzar una cinta elèctrica amb un color similar a la vostra versió d’ARCA.

La taula de treball i els pins estan configurats com aquesta imatge de Fritzing. Si voleu afegir més a aquest diagrama per personalitzar ARCA, podeu descarregar el fitxer Fritzing al repositori Github i editar-lo al contingut del vostre cor.

Vaig connectar els cables als bucles dels motors d'engranatge doblegant els cables al voltant dels bucles, per mantenir-los units. Probablement seria una millor idea soldar aquestes connexions si teniu accés a soldar, però aquesta és una solució fàcil si no en teniu.

El paquet d'alimentació està connectat al mateix cable que es feia servir per connectar l'Arduino a l'ordinador per descarregar el vostre programa, i això només queda solt al robot perquè es pugui treure i carregar fàcilment.

Pas 3: Programació

Programació
Programació

Aquí teniu el codi que podeu penjar al vostre ARCA perquè funcioni exactament com el meu. També necessiteu les dues biblioteques següents per utilitzar el codi.

Per motius de claredat i personalització, però, us guiaré pel meu codi. No dubteu a saltar-vos aquest pas si no personalitzeu el robot o no teniu previst canviar les emocions.

En primer lloc, incloc dues biblioteques per utilitzar-les al meu codi, que em permeten utilitzar les funcions i objectes d’aquestes biblioteques. Aquí també estic definint els meus pins. Si al pas anterior heu decidit fer que els vostres pins no siguin els que heu configurat, feu els canvis al vostre codi aquí amb els pins adequats.

A continuació, vaig definir les emocions, vaig declarar els objectes necessaris per al sensor IR i les pantalles LED de 8 per 8 i vaig definir algunes variables globals. Les emocions es declaren en una matriu de bytes, on cadascun dels números hexadecimals de la matriu representen les files de la pantalla resultant de 8 per 8. Per crear les vostres emocions personalitzades, us recomano traure l'emoció que volíeu en una quadrícula de 8 per 8 i, a continuació, escriure cada fila número binari de 8 bits on la llum apagada sigui 0 i la llum encesa sigui 1, i després creeu un nombre hexadecimal a partir d'aquest i posar-lo en una matriu de longitud 8. També he definit algunes variables globals per utilitzar al bucle; les variables del mecanisme de parpelleig i els indicadors per emmagatzemar les emocions i configurar-les per començar a ser neutres.

Ara arribem al bucle de configuració, on activo la supervisió en sèrie per provar, i això hauria de ser útil per provar el vostre codi amb diferents comandaments a distància IR. Després, vaig inicialitzar els objectes de l’ull esquerre i dret mitjançant funcions de la biblioteca de control de LED. També he configurat els pins del motor de transmissió per a la sortida i he engegat el receptor IR.

En el bucle, essencialment espera que el senyal IR canviï l’status quo del robot. Per tant, si es rep un senyal IR i coincideix amb un dels codis d’un botó específic, llavors si s’activa la sentència i s’estableixen els valors de l’ull esquerre i de l’ull dret en funció de les emocions. Si es prem un botó de moviment, com ara esquerra, dreta, endavant i OK, els pins s'escriuen digitalment perquè estiguin activats o desactivats en funció del botó premut. Només una nota sobre els codis del receptor IR: hi ha un codi de mostra a la biblioteca remota IR que us proporcionarà els codis hexadecimals del vostre comandament, si no passa res quan premeu els botons, obriu aquest programa per assegurar-vos que els codis siguin correctes. Tot el que heu de fer és canviar el nombre hexadecimal que apareix amb cada botó.

Per últim, teniu la funció que imprimeix les emocions a les pantalles de 8 per 8. Això utilitza les funcions setRow de la biblioteca de control de LED i només passa per les matrius que heu creat i estableix les files en conseqüència. Presenta dos paràmetres: la matriu per a l'ull esquerre i la matriu per a l'ull dret. Això podria ser un punter de bytes o una matriu de bytes mateixa (és a dir, el nom "neutre") que actua com un punter.

Pas 4: consells i trucs addicionals

Trucs i consells addicionals
Trucs i consells addicionals

Sens dubte, vaig aprendre moltes coses durant aquest projecte i volia compartir alguns consells addicionals que s'apliquen tant per a aquest projecte com per a altres projectes que utilitzen un Arduino.

  • Hi ha molts recursos en línia per a Arduino i, al meu entendre, el més útil prové del lloc web d’Arduino a causa dels seus exemples de codi clars i concisos.
  • No reinventeu la roda, hi ha molts kits i peces prefabricades que podeu utilitzar per facilitar el vostre projecte. Sóc un programador i no un enginyer mecànic i em va costar molt intentar esbrinar com anava a fer funcionar aquest robot, però va ser fàcil trobar alguna cosa per comprar en línia i implementar-lo en el meu disseny enfront de reinventar literalment el roda
  • Les biblioteques són el vostre amic tant a Arduino com a tots els llenguatges orientats a objectes i existeixen per una raó. Combineu-ho amb microcontroladors i programar un LED de 8 per 8 és senzill. Abans he programat un d'aquests a mà i només n'hi ha un que fa servir cada pin de l'Arduino i requereix una quantitat de codi. Molt desordenat i poc divertit.
  • Les impressores 3D són genials, però no són perfectes i està bé haver d’esborrar algunes coses. Per aquest motiu, preferiu augmentar la mida de la impressió 3D, ja que en la majoria dels casos podeu esborrar-la una mica per obtenir un ajust perfecte.
  • L’alimentació pot ser un problema, ja que vaig pensar en l’ús d’energia realment a última hora i vaig pensar que una bateria de 5 V seria el truc. Llavors, aparentment a l’atzar, de vegades un motor o una pantalla LED no funcionarien. Una vegada que vaig actualitzar la bateria, ja no hi va haver problemes, tot i ser més voluminós dins del robot.

Recomanat: