Circuits

Com construir un robot - Lliçó 2: Construir un robot Arduino bàsic: 19 passos

đź”´CĂ“MO HACER un ROBOT con INTELIGENCIA ARTIFICIAL CASERO: MATERIAL NECESARIO

đź”´CĂ“MO HACER un ROBOT con INTELIGENCIA ARTIFICIAL CASERO: MATERIAL NECESARIO

Taula de continguts:

Anonim

Després de la primera lliçó (How to Build A Robot - Introduction), ara teniu un coneixement bàsic del que és un robot Arduino, el que necessiteu per construir un robot i també com utilitzar les eines. Ara és hora de començar a fer!

En aquest segon tutorial, se t'ensenyarà a construir un robot Arduino bàsic. Per fer aquest tutorial fàcil de seguir, es fa servir com a exemple un kit de robots Arduino (Pirate: Kit de robot mòbil Arduino 4WD amb Bluetooth 4.0).

Menú de lliçons:

Lliçó 1: Introducció

Lliçó 2: Construir un robatori bàsic d'Arduino

Lliçó 3: Construir un robot de seguiment de línies Arduino

Lliçó 4: Construir un robot Arduino que pugui evitar els obstacles

Lliçó 5: Construir un robot Arduino amb efectes de so i llum

Lliçó 6: Construir un robot Arduino que pugui controlar el medi ambient

Lliçó 7: Construïu un robot Arduino controlat per Bluetooth

Instruccions de muntatge

PAS 1: Muntar el vostre propi motor

Mireu a la vostra bossa de peces vuit cargols llargs. S'utilitzen per fixar i fixar els motors al seu lloc. Col·loqueu els motors en l'alineació correcta i, a continuació, torneu-los a col.locar com es mostra a la imatge següent.

Tingueu en compte que les bosses de les peces també inclouen rentadores i juntes. Les volandes es poden utilitzar per augmentar la fricció, que ajuda a fixar els motors al seu lloc. Les juntes ajuden a evitar que les femelles de cargol es desprenguin i caiguin a causa dels moviments i col·lisions del robot.

Subministraments:

Pas 1:

PAS 2: Soldar els cables

Traieu els cables negre i vermell de la bossa de peces. Connecteu un cable negre i un cable vermell (15 cm de llarg) a cada motor (4 motors en total). A continuació, utilitzeu el dispositiu de separació de filferro per eliminar l’aïllament dels dos extrems dels cables (assegureu-vos de no tirar massa, consulteu les imatges següents). A continuació, soldeu els cables als pins agregats als motors. Repetiu el procés de soldadura dels quatre motors.

NOTA: preste atenció a les ubicacions correctes dels cables negre i negre en la soldadura. Consulteu les fotos següents per obtenir més informació.

Pas 2:

PAS 3: Muntar el controlador Romeo BLE

Mireu a la bossa de peces tres suports de coure. Aquests suports de 1 cm de llarg s'utilitzen per fixar la placa del controlador Romeo. Com es mostra a la imatge següent, hi ha tres forats a la placa del controlador. Col·loqueu els tres suports de coure als forats i, a continuació, fixeu-los amb els cargols adequats.

Pas 3:

PAS 4: Muntar la caixa de bateria

Traieu dos cargols avellanats (els seus caps són plans). A continuació, seguiu els passos que es mostren a la imatge següent i poseu la bateria a la base del cotxe.

Pas 4:

PAS 5: Elaboració de l'interruptor d'alimentació

Les bateries són l’ànima essencial dels robots. Per controlar el consum d’energia, hem d’utilitzar un interruptor d’alimentació: l’interruptor apaga l’energia quan no s’utilitza, preservant així l’electricitat i la durada de la bateria. Consulteu la imatge següent abans de muntar i instal·lar l'interruptor d'alimentació.

Si us plau, preneu atenció a la seqüència de les juntes i els cargols a l’hora d’acoblar el interruptor.

Pas 5:

Després d’assemblar l’interruptor, volem començar a soldar els seus cables. Prengui part de la part restant de filferro anterior. Desfeu el cablejat dels dos extrems dels cables de manera que quedi exposat l'interior del cable (mateix procés que amb els motors abans). Volem soldar l’extrem dels cables als pins de l’interruptor. Quan soldeu, és molt important que notem la posició dels pins de l’interruptor.

Pas 6:

Fem això pas a pas.

a) Connecteu l'interruptor al carregador de bateria. Pareu atenció a la ubicació exacta dels dos articles.

Pas 7:

b) Soldeu els cables vermells que connecten l'interruptor amb el carregador de bateria, tal com es mostra a la imatge següent.

Pas 8:

Aquí hi ha una altra imatge per fer més clara les coses.

c) Finalment, tingueu un cable vermell i un cable negre. Connecteu un extrem d’un cable al pol negatiu del carregador de bateries i un extrem de l’altre cable al pol positiu del carregador de bateria. A continuació, connecteu els altres extrems dels dos cables al controlador Romeo BLE.

Pas 9:

c) Finalment, tingueu un cable vermell i un cable negre. Connecteu un extrem d’un cable al pol negatiu del carregador de bateries i un extrem de l’altre cable al pol positiu del carregador de bateria. A continuació, connecteu els altres extrems dels dos cables al controlador Romeo BLE.

Pas 10:

Mirar aquesta imatge ampliada hauria de donar-vos una millor idea de com cal connectar els cables. Després de soldar, assegureu-vos de comprovar si el vostre cablejat entre la bateria i el controlador Romeo és consistent des del principi fins al final i coincideix amb les imatges anteriors.

PAS 6: Muntar la base del cotxe

Utilitzant vuit cargols M3x6mm, enganxeu les plaques laterals a les plaques de para-xocs davanteres i posteriors, tal com mostra el diagrama següent.

NOTA: en apuntar els cargols durant aquest pas, assegureu-vos que no premeu completament els cargols, de manera que podem deslligar fàcilment la placa superior en passos posteriors si necessitem fer ajustaments.

Pas 11:

A continuació, torneu a connectar la placa base al cos del cotxe, com es mostra a la imatge següent.

Pas 12:

** Això és el que hauria d’agradar la base del cotxe després d’un muntatge: recordeu instal·lar la bateria.

PAS 7: Connecteu els motors amb la placa de microcontroladors

Ara necessitem els motors amb la placa de microcontroladors. Seguiu acuradament el següent diagrama: els cables negre i negre del motor esquerre s'han de soldar a M2; els cables negre i vermell del motor dret s'han de soldar a M1. Pareu especial atenció a la bateria: el cable negre s'ha de soldar a la lectura del port de cable, mentre que el cable vermell s'ha de soldar al port de filferro anomenat VND. Utilitzeu el tornavís per afluixar i prémer els ports de filferro: assegureu-vos que aquests ports estiguin ben fixats un cop s'han introduït els cables.

NOTA: Assegureu-vos que els cables d’un motor (és a dir, el motor esquerre) es solden al port del motor. (és a dir, el port M2 del diagrama següent: no soldeu els cables d'un motor en dos ports independents).

Pas 13:

Després de soldar els cables del motor a la placa del microcontrolador, estarem preparats per connectar la placa superior a la base del cotxe.

Abans d’adjuntar la placa superior, teniu l’opció d’adjuntar una placa de sensors (vegeu el diagrama següent): si encara no teniu intenció d’utilitzar sensors, podeu ometre aquest pas addicional.

Pas 14:

Després d’adjuntar la part superior de la plataforma, la vostra plataforma robòtica s’assemblaria a la imatge de sota.

Pas 15:

PAS 8: Adjunteu un nivell addicional al vostre robot

Trobeu els quatre forats a la placa superior de la base. Carregueu els quatre separadors de coure M3x60mm i, a continuació, connecteu la placa superior addicional com es mostra al diagrama següent: utilitzeu cargols M3x6mm per col·locar la placa en els separadors de coure.

Pas 16:

Barreja algunes rodes a la vostra plataforma robòtica i esteu preparats per deixar-lo batre.

Pas 17:

CODIFICACIÓ

Després d’assemblar-vos, és hora d’enviar el codi al microcontrolador i fer que el vostre robot Arduino es mogui. El robot té tots els components per moure's una vegada muntats. Consulteu els codis de mostra del fitxer Arduino titulat "MotorTest.ino".

Codi de mostra MotorTest :

#incloure

DFMobile Robot (4,5,7,6); // Inicieu el pin del motor

void setup () {

Robot.Direction (LOW, HIGH); // Inicia la direcció positiva

}

bucle buid () {

Robot.Speed ​​(255,255); // Reenvia

retard (1000);

Robot.Speed ​​(-255, -255); //Esquena

retard (2000);

}

Baixeu el codi i, a continuació, pengeu-lo al vostre microcontrolador. Els motors i les rodes han de cobrar vida de pressa. Si no, comproveu si les bateries i l’interruptor d’alimentació estan correctament instal·lats. Un cop funcionats els motors, felicitats! Heu completat un gran pas, ja és hora de posar el cautxú a la carretera.

A continuació, observeu el vostre cotxe del robot i comproveu si es pot moure cap endavant en un segon i retrocedir en un segons. Si és el cas, BUENA SORT. No cal que ajusteu els components. Per a aquells que necessiten ajustaments a la base o als motors del cotxe, trobeu la informació següent sobre com es mou el robot.

Comproveu si la vostra plataforma robòtica segueix el codi que es mostra a dalt: hauria de moure cap endavant durant 1 segon i després invertir durant 1 segon. Si és així, només heu de passar el contingut a continuació i llest

Tanmateix, la majoria de la gent haurà de fer ajustos als seus motors. Abans de fer-ho, revisem breument com funciona la funció motora i el codi del nostre robot.

Com fer que el robot es desplaci cap endavant? Per tal d’entendre aquesta pregunta, examinem primer el moviment endavant del nostre robot.

El diagrama següent mostra aquest moviment cap endavant.

Pas 18:

La fletxa vermella a sobre representa la direcció de les rodes. Com es mostra al mapa anterior, el cotxe només pot avançar si les rodes / motors esquerra i dreta avancen. Com es mostra més amunt, el robot Arduino només avança quan els motors i les rodes esquerra i dreta avancen.

Sinopsi de codi

La primera línia de codi és:

#include // call library

No necessitem pensar massa en aquesta línia. Tot el que estem fent és demanar / utilitzar un conjunt de funcions - la biblioteca DFMobile - que existeix fora del marc bàsic d'Arduino. Per obtenir més informació sobre les biblioteques Arduino, consulteu el lloc web d'Arduino.

La següent línia de codi és:

DFMobile Robot (4,5,7,6); // Inicieu el pin del motor

Aquesta funció es pren de la biblioteca DFMobile (és a dir, no és una funció Arduino universal).El fem servir aquí per inicialitzar els pins del motor (4, 5, 7, 6) al microcontrolador. Sense això, els motors no s’iniciaran.

També utilitzarem aquesta funció més endavant.

Mireu la funció següent:

DFMobile Robot

(EnLeftPin, LeftSpeedPin, EnRightPin, RightSpeedPin);

Aquesta funció s’utilitza per inicialitzar els quatre pins de motor (4, 5, 7, 6) i es divideix en quatre paràmetres separats:

EnLeftPin : Pin que controla la direcció del motor esquerre

LeftSpeedPin : Pin que controla la velocitat del motor esquerre

EnRightPin: Pin que controla la direcció del motor correcta

RightSpeedPin : Pin que controla la velocitat correcta del motor

Tingueu en compte que els motors del robot no funcionaran sense la inclusió d’aquesta funció. A més, aquesta funció s’ha de situar dins del camp setup void () del vostre esbós d’Arduino.

En provar el moviment cap endavant del vostre robot, podríem haver-nos trobat amb un cert problema: el cotxe començarà a desviar-se, canviar de sentit i no seguirà el codi que li hem donat. Això es deu al fet que els cables del motor no estan soldats de manera correcta.

No us preocupeu: podem corregir-ho a través del codi. Mitjançant valors LOW / HIGH, podem ajustar la direcció del torn del cotxe.

Com ajustar la direcció recta per al cotxe robot?

Per ajustar la direcció dels motors i les rodes, necessitem la següent línia de codi:

Robot.Direction (LOW, HIGH);

La funció és la següent:

Robot.Direction (LeftDirection, RightDirection);

Aquesta funció s’utilitza per fer que els motors es desplacin cap a l’avant. La funció es divideix en dos paràmetres: LeftDirection & RightDirection, que s'escriuen al codi Arduino com LOW o HIGH.

Abans, vam examinar breument com fer que el robot Arduino es mogués cap a endavant. Aquí, utilitzarem LOW / HIGH per corregir el moviment cap avall del robot. Per exemple, LeftDirection s’estableix com LOW al codi de mostra. Però les rodes esquerres del cotxe del robot poden girar cap enrere en lloc de girar cap endavant. Ara tot el que heu de fer és canviar la direcció d'esquerra de LOW a HIGH. Els mateixos mètodes s'aplicarien a les rodes correctes.

Per exemple: en aquest codi d'exemple, LeftDirection està configurat com LOW. Suposeu que les vostres rodes esquerres, en lloc de moure cap endavant tal com haurien, es mouen cap enrere. En aquest cas, canvieu la configuració de LeftDirection de LOW a HIGH. Quan el canvieu a HIGH, carregueu el vostre codi una vegada més - haureu de notar que la roda esquerra avança ara cap endavant en lloc de cap enrere. Si aquest ajustament funciona, feu el mateix amb RightDirection (LOW to HIGH o viceversa).

Un cop hàgiu ajustat correctament la direcció del vostre robot Arduino, esteu configurats. Enhorabona: ara podeu utilitzar totes les funcions bàsiques del robot. Abans de finalitzar, val la pena parlar breument de la funció Robot.Speed ​​().

Agafeu un gander a la següent funció:

Robot.Speed ​​(LeftSpeed, RightSpeed);

Aquesta funció amb dos elements (LeftSpeed ​​i RightSpeed) s'utilitza per establir la velocitat del motor. Podeu escriure un número entre -255 i 255. 255 és la figura màxima i el signe menys representa la direcció.

Aquesta funció s’utilitza per configurar la velocitat dels motors. La funció es divideix en dos paràmetres: LeftSpeed ​​& RightSpeed. Aquests paràmetres s'escriuen en codi Arduino com un valor que va des de -255 fins a 255. 255 és la velocitat més ràpida que avança; -255 és la velocitat més ràpida que es mou cap enrere (és a dir, la inversió).

Ja hem configurat la velocitat del robot a la part void setup () del nostre codi. Ara, podem utilitzar la funció speed () per controlar la velocitat del cotxe i, fins i tot, la direcció cap endavant / cap enrere.

Mireu si podeu entendre les dues línies següents:

Robot.Speed ​​(255,255);

Robot.Speed ​​(-255, -255);

La primera línia mostra el cotxe avançant a la màxima velocitat: tota la velocitat cap endavant, si ho voleu (sí, capità). La segona línia mostra el cotxe movent cap enrere (invertint) a tota velocitat.

En aquest sentit, la velocitat () és una funció indispensable. A continuació, revisarem la nostra última secció: els principis darrere de com es mou i gira el robot.

Com es mou i gira el robot

El següent mapa mostra alguns moviments habituals del cotxe del robot. Per exemple, en cas que la velocitat de la direcció esquerra sigui nul·la, el robot giri a l'esquerra si ofereixen unes rodes correctes amb força per avançar.

El diagrama següent mostra diverses maneres en què el robot Arduino es pot moure i girar. Per exemple, si la velocitat de les rodes esquerres es troba a 0, això farà que les rodes correctes avancin, de manera que el robot Arduino giri cap a l'esquerra.

Pas 19:

Alguna cosa a tenir en compte: com podem fer girar el vostre robot en cercles mentre esteu estacionat?

Finalment: si voleu, podeu executar més codis per provar i calibrar el moviment del vostre propi robot. Obriu el fitxer "MotorTest2.ino". Aquest codi hauria d'ajudar-vos a entendre i avaluar millor les capacitats del moviment cap endavant i cap enrere, a més de les voltes dreta i esquerra. Tenint en compte això, poseu aquests pneumàtics a la carretera (o catifa) i deixeu-los estripar.

Enhorabona, ara has construït el teu primer robot! Té funcions bacis que podrien moure cap endavant, cap enrere, girar a l'esquerra i girar a la dreta.

Em sento emocionat? En els següents tutorials, us ensenyarem a construir un robot més avançat que pugui evitar obstacles i la línia de pista, per exemple.