Você está na página 1de 32

MANUAL DE CONTRUCCIN DEL ROBOT DE

AIR HOCKEY (AHRobot)


Blogdelproyecto:
Repositoriocdigoypiezas:
Otroslugaresdeinters:
Licencia:
Autor:JoseJulio
Colaboradores:
(*)Sicolaborasenelproyecto,aadetunombrealalista
Lista de materiales (BOM):
La lista de materiales y el manual de construccin lo dividiremos entre la mesa de hockey y el robot de
hockey.
MESA AIR HOCKEY
Tornillosroscamadera
502.5x16mm
503x30mm
203x20mm
Tornillosroscamtrica
16M3x6mm
8M3x12mm
24ArandelasM3(washers)
8TuercasM3
2M3x20mm
8M4x12mm
8TuercasM4
Tablones
2100x60cmx2.5mm(chapatraseradearmarioMDF)(acabadoenblancoenunlado)
Listonesmadera(*)
244x18mmx1metro
344x18mmx56.4cm
212x18x90cm(puedensertambinde12x12)
412x18x12cm
412x18x6cm
(*)Puedensermedidassimilaresysepuedeadaptartodoelproyectofcilmente...
Pistolacolacaliente
GomaEVA
Taladroybrocas1mmy1.5mm
Sierradecalar(osierrademarqueteria)paraabrirlosagujerosdelosventiladores
2ventiladoresPC90mmMnimo12V0.5A(sepuedenusartambiende120mm)
(Importanteconsumomnimo0.5A,preferiblemente0.6o0.8A).Sepuedenaprovecharventiladoresde
fuentesdealimentacinviejasdePC.
Cableyconectoresparalosventiladores
ROBOT AIR HOCKEY
Equipamientotpicodeimpresora3DRepRap:
ArduinoMega2560
RAMPS1.4
3DriversA4988condisipadores(oDRV8825)
Ventilador12v(recomendable56cm)pararefrigeracindelaelectrnica
3MotoresNEMA1748Ncm(70ozinch)
Cableparalosmotoresyconectores
3metroscorreaGT2(ocorreaT5)
2varillasAceroInox8mm46cm(1metrodevarilladeaceroycortar)
2tuboscarbono8x1mm65cm(Tubocarbono8x1mmcometasycortar)
(sepuedesustituirportubodealuminio8x1mm)
1tubocarbono8x1mm80cm(Tubocarbono8x1mmcometas)
(sepuedesustituirportubodealuminio8x1mm)
3rodamientostipo608
3(o4)rodamientoslinealesLM8UU
Juegodebridaspequeas
Juegodepiezas3DimpresasenPLA(repositorio)
PS3EYECamara
PColaptop(recomendableProcesadori3osuperior)
(EnunfuturoelPCylacamaraPS3sesustituirnporunacmaraCMUCAM5)
Alimentacin12Vexterna(mnimo5A)

Instrucciones de montaje:
ParteI:ConstruccindelamesadeAirHockey
Montar el bastidor con los listones de madera tal y como se muestra en la imagen. Usar los tornillos
3x30mm para unir los listones, en los extremos un tornillo en el centro y dos tornillos en el refuerzo central.
Siempre es preferible marcar con un lpiz, despus taladrar con broca 1.5mm para marcar (y evitar que se
rompa la madera) y despus poner el tornillo. Usar una de las tablas de 100x60cm como base para
asegurarnos que lo montamos correctamente alineado. Las cabezas de los tornillos no deben sobresalir de
lamadera,debemosatornillarloshastaquequedentotalmenteembutidosenlamadera.
Atornillar la tabla de 100x60cm al bastidor con tornillos de 2.5x16. Empezar colocando tornillos en los
laterales a 3cm del borde y despus cada 20cm aproximadamente repartidos por la mesa (Medir y hacer
marcasprimero,despustaladrarconbroca1.5mmparamarcarydespusponereltornillo)
Una vez que tenemos el bastidor y la chapa externa podemos empezar a abrir los agujeros de la tabla.
Para ello preparar primero la guia. La guia va a ser un listn de 60x18x5mm que marcaremos con los
agujeros. Primero vamos a marcar la posicin de los agujeros. Dejamos un espacio de 3.75 cm en los
bordes y despus realizamos marcas cada 2.5cm. En total debemos tener 22 marcas. Ahora realizamos
losagujerosconlabrocade1mmconeltaladrobienniveladoenvertical.
Una vez que tenemos la guia, vamos a marcar en los laterales de la tabla donde vamos a realizar los
agujeros. Importante, comenzamos desde el centro de la tabla (medir) y hacemos la primera marca a
12.5mm a cada lado. La idea es que en el centro NO vamos a realizar agujeros porque tenemos el larguero
central, as que dejaremos el hueco. A partir de ah marcar en la tabla cada 25mm hasta llegar a cada
extremos donde dejaremos un hueco de 6cm aprox. Debemos tener un total de 36 marcas en la tabla (18 a
cadaladodelcentro)
Una vez hechas las marcas a cada lado de la tabla, colocamos la guia, la fijamos con cinta adhesiva a
cada lado y presionando un poco la guia contra la tabla con la mano comenzamos los agujeros con la
broca de 1mm (22 en cada fila). Rodamos la guia, ponemos la cinta adhesiva y continuamos haciendo
agujeros... Parece un trabajo enorme pero media mesa se puede hacer en menos de 20 minutos, asi que
nimo!!
Consejo:Trabajarcmodo,preparartodoparaestarenunaposturaelevadaycmoda.
Una vez terminados los agujeros de la mesa, vamos a recubrir todos los listones de la parte posterior de la
mesa con goma EVA (tpica de manualidades), incluido el listn del centro, para que al montar la tabla de
abajo no se escape el aire y quede perfectamente sellado. La goma EVA la recortamos al ancho de los
listonesylapegamosconcianocrilato(lagotitaoequivalente)
Dejaremosyapreparadaslasconexionesparalosventiladores,parteposteriordelamesaylistncentral.
(verfotodelsiguientepasoparaaclarar)
De la mesa saldrn tres cables (negro, rojo y blanco, en la foto). El negro ser comn a los dos
ventiladores, el rojo ser el positivo de uno de los ventiladores (+12V) y el blanco ser el positivo del otro
ventilador (+12V). Realizar las conexiones y dejarlo preparado para despus simplemente conectar los
ventiladores.(Algunosventiladorescon3o4cablesel+12veselcableamarillo).Probarloprimero.
Sellamoslatablaporlaparteinteriorconlacolacalienteparaquenoseescapeelaireporningnlado.
En la otra tabla de 100x60cm, vamos a preparar los agujeros para los ventiladores. Marcar una raya en el
centro de la tabla. Marcar los ventiladores en el centro de la tabla y a 19 cm del centro de la tabla y
centradoslateralmente.
Agujerear con una broca los huecos para los tornillos del ventilador (M4) y abrir un agujero tambin para
poder introducir la hoja de la sierra de la caladora. Con la sierra de calar (o sierra de marquetera) abrir el
agujerocentraldecadaventilador.
Marcar y recortar en goma EVA (tpica de manualidades) la forma del ventilador con un margen de 2cm en
elexterior.Estoservirparasellarelventiladorenelmontaje.
Atornillar los ventiladores (Tornillos M4x12 y tuercas) asegurndose que la goma EVA sella correctamente
yquenoroceconlosventiladores
Cerrar la tapa posterior con los ventiladores con tornillos 2.5x16mm apretando la goma EVA (no
demasiado, simplemente que selle bien). Como siempre, marcamos, agujereamos con broca 1.5mm y
despusponemoslostornillos.Lostornilloscada15cmaprox.
NOTA:Recomendableponerunarejillaalosventiladoresparaevitarquelosniospuedanmeterlosdedos!
Ahora es momento de preparar los laterales del hockey. Para ello tomamos los listones de 12x18 y
recortamoslassiguientesmedidas:
2listonesde90cmparaloslaterales
4listonesde12cmparalosfondos,alladodelasporteras
4listonesde6cmparalasesquinas
Ahora vamos a preparar goma EVA para cubrir los listones con 2 capas. Primero recortamos las tiras de
goma EVA usando el propio listn para cortar la goma EVA con un cutter en el lateral de los 18mm.
Pegamos la primera capa con cianocrilato (la gotita o equivalente) y despus la segunda capa encima de la
anterior. Hacen falta 2 capas para un buen rebote. Los listones de ??cm son para las porterias y si
quieremospodemosredondearunladodellistnparacubrirloconlagomaEVAtalycomoseveenlafoto.
Una vez que tenemos recubiertos los listones con las 2 capas de goma EVA procedemos a atornillarlos
en la parte superior de la mesa. Como siempre medir primero, marcar, abrir agujero con la broca de 1.5mm
y despus atornillar usando los tornillos de 3x30. Comenzaremos por los dos laterales de 90cm que irn
centrados,despuslosdelfondoyporltimolasesquinas.Verimgenes
Pues ya tenemos la mesa lista!!! Conectamos una fuente de 12V a la entrada (respetar la polaridad +) a
losventiladores.EnlasfuentesdePClos12Vconloscablesamarillos.
Ahorafaltaraimprimirlosmandos(pusher)yeldisco(puck).
El disco (puck) se tiene que imprimir con la opcin de material de soporte porque dentro es hueco (tiene
una cavidad para que flote con el aire). Una vez impreso, eliminamos el material de soporte (da igual que
quede algn resto) y finalmente en la parte superior recortamos un crculo de goma EVA (yo he cogido color
verde) a medida y lo pegamos. La parte inferior del disco siempre ser la que se imprimi pegada al cristal
porqueastendrunasuperficiemslisa.
Es conveniente colocar un la parte inferior de los mandos un poco de fieltro adhesivo para no rayar la
mesa.
Encender los ventiladores (alimentacin de 12V), probar que el disco flota bien y momento de jugar un
buenrato!!!!
Realmente el proyecto podra acabar aqu pero si despus de jugar un buen rato sigues animado, pues
entoncesvamosacomenzarlaconstruccindelRobotdeAirHockey

PARTE II : Construccin del Robot de Air Hockey


Definicindeejesymotores:
Montaje:
MontarelArduinoMegaconelshieldRAMPS1.4
IMPORTANTE: Vamos a modificar la RAMPS para utilizar los drivers con de Microstepping. Para ello
debemos eliminar el JUMPER que aparece en la foto. Hay placas de RAMPS que no tienen jumper as que
lo que debemos hacer es cortar esa pista con un cutter (y con cuidado) entre esos dos puntos. Con un
tester podemos comprobar que no existe continuidad y por tanto que la pista la hemos cortado
correctamente.DebemoshacerestoparalosdriversdeX,YyZ(lostresdelcentrodelaplaca)
Colocamos los drivers con sus disipadores en las salidas X,Y y Z. La salida X ir al eje X, la salida Y ir al
ejeY(motorizquierdo,vistoelhockeydesdeatrs)ylasalidaZalmotorejeYderecho.
Preparacin de los motores. Debemos preparar una parte plana en el eje de salida de los motores, El
mejormtodoescolocarloenunbancodemesayrealizarlaparteplanaconunalima.
Preparar los cables y los conectores de los motores. El motor X debe tener una longitud de cable de :
80cm, El eje Yizquierdo debe tener una longitud de 30 cm y el eje Yderecho debe tener una longitud de 58
cm. Para alargar los cables de los motores debemos soldarle un nuevo cable con los conectores
adecuados. Lo ms cmodo es comprar los cables que ya vienen con los conectores (set de cables de las
impresoras3D)ysino,soldarlelosconectores.
Preparar la alimentacin de 12V en el conector de la RAMPS. La fuente puede ser una fuente de PC
(modificada igual que en las impresoras 3D reprap) o una fuente de 12V mnimo 5A. RESPETAR LA
POLARIDAD: Negro negativo, ROJO positivo!!. Tambin podemos alimentar con una bateria de 12V o una
bateradelitio3So4Scomomucho.
Conectar el cable USB al ordenador. (debera instalarse el driver adecuado si no est ya). Cargar el
arduino IDE (versin 1.0.5 mnimo). Elegir en el men Herramientas>Tarjeta Arduino Mega 2560. y en
Herraminetas>PuertoSerial,elpuertoseriequenoshayaasignadoparaelarduino(ejemplo:COM19).
Cargar el sketch: AHR_Motor_Test.ino que est en la carpeta Utils/AHR_Motor_Test del proyecto AHR.
(descargado del .ZIP del proyecto en GITHUB). Cargarlo en el arduino (botn Cargar). Al cargar deberian
parpadearalgunaslucesdelRAMPS.
Desconectar el cable USB del arduino, conectar los 3 motores. (Cable azul del motor hacia la izquierda).
Conectar la alimentacin de 12V (conector del RAMPS) y comprobar que a los pocos segundos, los
motores comienzan a girar lentamente. El motor X deberia girar en el sentido de las agujas del reloj, el
motor Y (Yizquierdo) deberia girar en el sentido contrario de las agujas del reloj y el motor Z (Yderecho)
deberagirarenelsentidodelasagujasdelreloj.Sialgunodelosmotoresnogiraenelsentidoadecuado,
habraquemodificarelcdigoycomentar/descomentarlaslneasparainvertirlossentidosdelosmotores:
#defineINVERT_X_AXIS1//EjemploejeX
desenchufar la alimentacin volver a cargar el programa y volver a alimentar la RAMPS con los 12V y probar
denuevo.Mastardeseharnmstestparaverificaresto.
Las modificaciones de configuracin que se hagan en la aplicacin de test debern trasladarse al cdigo
finalquesecargueenelrobot.
Ajuste de la potencia de los drivers: Cada driver de cada motor tiene un pequeo potencimetro para
ajustar la potencia (intensidad). Llegados a este punto, si tocas el eje de cada motor, deberias notar que
hace bastante fuerza, es decir, que no eres capaz de detenerlo con la mano. Si no es as deberas subir un
poco la potencia de ese motor girando ligeramente el potencimetro del driver en el sentido de las agujas
delreloj.Mstardeseharunmejorajustedelapotencia.
IMPORTANTE: Toda esta parte de Arduino Mega+RAMPS + Motores + Drivers + ajuste de los drivers +
alimentacin 12V es lo mismo que en las impresoras 3D. Si tienes problemas hay muchos tutoriales e
informacinaesterespectoenlared.
Imprimir las piezas del robot. Yo lo he impreso todo en PLA, pero supongo que ir bien en ABS tambin.
Para la impresin de las poleas GT2 hay que tener la impresora muy bien calibrada e imprimir
suficientemente lento. Si no te es posible imprimir bien las poleas GT2 hay dos opciones: Comprar poleas
GT2 de 40 dientes o pasarte a correas T5 e imprimir las poleas para T5 que es mucho ms sencillo para las
impresoras.EnelrepositoriodepiezasexisteundirectorioespecialparalaspiezasconcorreaT5.
La mayora de las veces hay que repasar un poco las piezas impresas, sobre todo los agujeros de los
tornillos y las varillas o tubos. Lo mejor es usar una lima redonda y en el caso de los tubos de 8mm, una
varilla roscada de 8mm sirve perfectamente como lima para repasar bien el agujero y conseguir un buen
ajuste.
EjeY
Una vez impresas las piezas, comenzamos por el eje Y. El eje Y tiene dos partes, la derecha y la
izquierda. Ambas son totalmente simtricas y usan las mismas piezas. Comenzamos montando el soporte
paraelmotordelejeY.
Ahora podemos atornillar el motor con los tornillos M3x6 y usando una o dos arandelas. Ya podemos
poner tambien la polea GT2 de 42 dientes de ese motor. La polea debemos montarla con las 2 tuercas M3
embutidas en sus agujeros correspondientes y sus tornillos M3x12. Uno de los tornillos debe coincidir con
laparteplanadelejedelmotorparaasegurarquelapoleanoseresbaleeneleje.
Ahora lo anclamos a la mesa. Los tornillos deben quedar a 8 mm del borde, de forma que el motor quede
separado aproximadamente 2 mm del borde de la mesa. Usar 2 tornillos 3x30 para anclar a la mesa. Como
siempre abrir primero el agujero con una broca de 1.5mm ayuda bastante para que no se rompa la madera.
Lapiezadesoportedelmotordebequedarbiencentradaenellistndemadera.
El agujero para la pieza del otro extremo del eje Y estar a 46.6 cm del borde de la mesa y centrado en
altura. La idea es que la varilla del eje Y debe estar perfectamente centrada y alineada con el listn lateral
delamesa.
Preparamos la pieza del carro del eje y poniendo un rodamiento de bolas LM8UU en el centro (la pieza
est preparada para montar uno o dos rodamientos pero con uno es suficiente). El rodamiento lo
cogeremos con 2 bridas. Yo personalmente he montado un rodamiento en el lado del eje Yizquierdo (que
eselquetieneelmotordelejeX)ydosrodamientosenelladoYderecho.
Cogeremos una de las varillas de acero de 46cm, introducimos el carro del eje Y, la insertamos en el
extremo del motor y le colocamos en el otro extremo la pieza del final del eje Y. Atornillamos la pieza del
finaldelejeYycomprobamosqueelcarroruedecorrectamenteyconpocorozamiento.
Momento de colocar la otra polea (lisa) del extremo del eje Y que va montada con un rodamiento 608 y un
pequeo tubo de aluminio de 24mm Si quedara holgura entre el rodamiento y la polea podemos pegarlo
para que el rodamiento y la polea sean totalmente solidarios. Una vez montada la polea en el extremo de la
pieza (simplemente va apoyada, la correa har que no se pueda caer). Ahora montamos la correa GT2 (o
T5), la pasamos por las dos poleas (la del motor y la del extremo y la enganchamos en la pieza del carro
en la ranura correspondiente. La correa debe quedar suficientemente tensa. Comprobamos que el carro se
mueveyarrastracorrectamentelacorreayelmotorgiraperolacorreanopatinasobrelapoleadelmotor.
Si la correa patina (resbala) sobre la polea del motor puede ser que tengamos poca tensin en la correa o
que la polea no se ha impreso correctamente y resbala en la correa. Si es esto ltimo deberamos
plantearnos o imprimir la pieza con mayor calidad o pasarnos a correa T5 y poleas T5 que son ms fciles
deimprimir(ocomprarunaspoleasGT2metlicasde40dientes).
ColocarlaotrapartedelYdeigualforma.
EjeX
Comenzamos en el eje X. Imprimir las piezas del carro del eje X, atornillar la parte de arriba y la de abajo.
Atornillar tambin el soporte para la correa. Los rodamientos pueden ser impresos en PLA (funcionan muy
bien con los tubos de carbono) o LM8UU. Si los rodamientos han sido impresos en PLA asegurarse que las
tolerancias son correctas y que deslizan bien en el tubo de carbono, si no es as, ajustar un poco las
tolerancias y volver a imprimirlos (o repasarlos con una lima). Coger los rodamientos con bridas al carro y
comprobarconlostubosdecarbonoquedeslizabien.
Colocar los dos tubos de carbono (o aluminio) de 65cm, pasarlos por los rodamientos del carro X y
engancharlos en los agujeros de los carros del eje Y en ambos lados. Colocar las tapas de los tubos en los
carros del eje Y para evitar que los tubos se salgan por detrs (tornillos M3). Si los tornillos quedan sueltos
enlosagujeros,usarunosmslargosyponerlestuercaporelotrolado.
Comprobar que el carro X se mueve libremente en todo su recorrido con poco rozamiento y muy
importante, que queda en todo momento a una altura de unos 2mm sobre la mesa en todo el recorrido del
robot. Es muy importante que no roce con la mesa en ningn punto, siempre debe quedar un poco elevado
(entre1y2mm).
Opcionalmente (recomendable) se le puede poner a la parte frontal del carro X (donde va a golpear con el
disco)unastirasdegomaEVA(2capas)alguntipodegomaparaquerebotemejoreldisco.
Montar el soporte para el motor X en el carro Yizquierdo con dos tornillos M3x20 con tuercas. Colocar el
motorXconlostornillosM3x6yarandelas.
Montar la polea GT2 de 42 dientes en el eje del motor X, igual que hicimos con los otros motores, uno de
los tornillos debe coincidir con la parte plana del eje del motor para que quede bien sujeta. En el otro
extremoponerunapoleasindientesconunrodamiento608yuntubodealuminiode30mmsujetoalcarro.
Montar la correa del eje X, anclarla en el soporte del carro X y comprobar que queda suficientemente
tensa. Probar a mover el carro arrastrando la correa y debera girar el motor X sin problemas y sin
resbalarselacorrea.
Imagendelosdosejesyamontados:
Colocar la electrnica (Arduino Mega+RAMPS) con dos tornillos 3x30 directamente en la madera posterior
(verfoto).
Montarelventiladorderefrigeracindelaelectrnica
Momento de comenzar con las conexiones. Conectaremos cada motor con su driver igual que hiciramos
enlasprimeraspruebas.EjeXalX,MotorYizquierdoalEjeYyelmotorYderechoalEjeZdelaRAMPS.
El ventilador para refrigerar la alimentacin va conectado a la salida de 12V de la RAMPS (ver foto) y
colocarrespetandolapolaridad(negromscercadelborde)
Los ventiladores de la mesa van conectados a las salidas de los FETS de la RAMPS tal y como se
muestraenlafoto.
Montaje de la cmara PS3 Eye. Necesitaremos imprimir las 2 piezas para el montaje y un tubo de
carbono (o aluminio) de 8mm de 80cm de largo. La pieza de anclaje a la mesa lleva 3 tornillos de 3x20. La
otra pieza simplemente se encaja en la base de la cmara. La cmara debe quedar totalmente paralela y
alineadaalamesayapuntandoalcentrodelamisma.

Pruebas:
Comenzaremos con la prueba de los motores, sentidos de rotacin y calibracin geomtrica.
Para ello cargaremos en el Arduino la el cdigo llamado AHR_Motor_Test.ino que esta en la carpeta
Utils/AHR_Motor_Test
Antes de conectar la alimentacin (12V) al robot, colocamos el robot (a mano) aproximadamente en la
mitaddesulugardetrabajo(amitadderecorridodeambosejes).
Conectamos la alimentacin y el robot, tras varios segundos, comenzar un movimiento suave en el eje X
hacia el sentido de las X positivas, es decir, hacia la derecha. El movimiento deber ser de de 5cm
exactos.
En caso de que el robot se mueva en sentido contrario (hacia la izquierda) desconectamos la alimentacin,
modificamosenelarduinolalnea
//#defineINVERT_X_AXIS1
ylequitamoselcomentarioparainvertirelejeX:
#defineINVERT_X_AXIS1
Comprobar con una regla si efectivamente el robot se ha movido 5cm. (si las poleas y correas usadas son
lasdelproyectodeberadeserasi).Sinofueraashabraquemodificarenlalinea:
#defineX_AXIS_STEPS_PER_UNIT19
SiseusanpoleasGT2de40dientesocorreasypoleasT5de16dientesdebercambiarseel19por20.
Si el robot se moviera aproximadamente la mitad (2.5cm) puede ser que no hayamos colocado
correctamentedelmicrosteppingdelosdriversa1/8.RepasarlainstalacindelaRAMPS!!
AlospocossegundoselrobotcomienzaunmovimientoenelsentidodelasYpositivos(haciaadelante).
EncasodequealgunodelosmotoresdelejeYnosemuevaenelsentidocorrectodeberemosdecambiar:
SielmotorquenosemuevecorrectamenteeselmotorYizquierdoentonces:
#defineINVERT_Y_AXIS1
SielmotorquenosemueveenelsentidocorrectoeselmotorYderechoentonces:
#defineINVERT_Z_AXIS1
ElmovimientoenelejeYsertambinde5cm,comprobarqueescorrectoysinomodificarlasunidades:
#defineY_AXIS_STEPS_PER_UNIT19
Estas modificaciones en este cdigo de prueba despus deberemos traspasarlas tambin al cdigo final
quecarguemosenelrobot(AHRobotenelficheroConfigurations.h)
En este test los motores se movern muy despacio, si an as alguno de los motores perdiera pasos (no es
capaz de moverse y hace un ruido extrao) habr que aumentar la potencia en el driver de ese motor
(girandoligeramenteelpotencimetrodeldriverenelsentidodelasagujasdelreloj).
Ahoradebemoshacerunapruebadepotenciadelosmotores,velocidadyaceleracin.
Para ello cargaremos en el Arduino la el cdigo llamado AHR_Motor_Test_X.ino que esta en la carpeta
Utils/AHR_Motor_Test_X
Colocaremoselrobotenmitaddesuespaciodetrabajo.
Encender la alimentacin y el robot a los pocos segundos se mover en el eje X, primero ms lento y
despusmuyrpido.
Si el robot pierde pasos (se nota el ruido y la perdida de posicin) desconectar rpidamente. Para corregirlo
empezaremos por aumentar (muy paulatinamente) la potencia del driver del motor X. (No pasarse porque se
sobrecalentarademasiado).
Sianasnoconseguimosquenopierdapasostendremosquebajarlaacelaracindelrobotenlalines:
#defineMAX_ACCEL_X280
bajarporejemplode20en20eirprobando
Habria que verificar tambin (quitando la correa del motor) que el robot es realmente capaz de moverse
libremente y con muy poca friccin a lo largo de todo el eje, por ejemplo, que no toque nunca con la mesa,
quegenerararozamiento.
Ahora pasariamos a hacer lo mismo con el eje Y cargando el cdigo: AHR_Motor_Test_Y.ino que esta en
lacarpetaUtils/AHR_Motor_Test_Y
SituarelrobotenlaposicinmsatrsdelejeY(quelleguealostopes)yconectarlaalimentacin.
Elrobotiniciarunpequeomoviemientohaciaadelanteydespuscomenzareltest.
Igual que antes, si el robot pierde pasos en alguno de los dos motores del eje Y, desconectar rpidamente
yaumentarligeramentelapotenciadelosdriversodisminuirelvalordeaceleracin:
#defineMAX_ACCEL_Y140
Igualmenterevisarquetodoelrobotsepuedamoversinfricciones.
Calibracindelacmarayloscolores
LoprimeroserinstalarlosdriversdelacmaraPS3eye.Eldriverlopodemosconseguiraqui:
http://codelaboratories.com/products/eye/driver/
LascomprobacionesdelacmaralasharemostodasconelArduinodesconectado.
El sistema de visin deber reconocer claramente dos colores diferentes, uno para el disco (por ejemplo
verde) y otro para el robot (por ejemplo naranja). Usar preferiblemente colores muy saturados (muy vivos) ya
quesonmsfcilesdereconocer.UsamosgomaEVAporqueesmuymate,evitarcoloresbrillantes.
Cargar la aplicacin CHECK_HSV.exe. Aparecer una pantalla con unos controles para definir los rangos
de H (color), S (saturacin) y V (valor). Deberemos ajustar correctamente los valores para detectar
correctamenteeldisco(puck)ytambinelvalorquedecidamosponeralrobot.
ValoresdereferenciaparagomaEVAverde:
ValoresdereferenciaparagomaEVAnaranja:
Debemos comprobar que el color se reconoce correctamente, que no tenemos mucho ruido externo y que
aunque variemos ligeramente las condiciones de iluminacin, por ejemplo, si ponemos el disco debajo de la
sombra de la propia cmara, se sigue reconociendo el color. Si no es as, jugar con los controles hasta
conseguirlosvaloresadecuados.
Anotarlosvalores.
Comprobacinfinaldelacmara
ConlosvalorespreviamentecapturadosvamosamodificarelficheroAHR.bateditndolo:
AHR.exeCOM19709460150101465201102009020060
El primer valor COM 19 es el puerto serie donde est el Arduino (el mismo que usamos para cargar el
codigo). Los siguientes 6 primeros valores corresponden a los rangos para detectar el disco y los otros 6 a
los rangos para detectar el robot. (los que hemos seleccionado en el paso anterior). El ltimo valor 60 son
losFramesporsegundodelsistemadevisin
EjecutarelAHR.batydeberapareceralgoas:
Lacmaradebeestarbiencentradayelcampodevisinnodebeestarinclinado.
Elrobotdebeaparecerenelladoderechodelaimagen.
Si colocamos el disco exactamente en el centro de la mesa, deberemos comprobar que el robot marca la
posicincorrecta:300mmenXy500mmenY:
Sinoesas,moverlacmarahastaobteneralgoparecidoaloquesemuestraenlaimagen.
Moviendo el disco por la mesa debemos comprobar que las coordenadas que nos muestra en pantalla son
correctas (1 cm de error). Si no fuera as revisar si la cmara esta bien alineada, si el tubo que sujeta la
cmaratienelasdimensionescorrectas
Esposibletocarestacalibracinenelarduino(ficheroConfiguration.h):
#defineCAM_PIX_TO_MM1.4paraqueelarduinolointerpretecorrectamente...
Ajugar!!!!
Cargamosenelarduinoelcdigodelrobot:AHRobot.inodelacarpetaAHRobot
Recordar que si hemos modificado algn parmetro en el fichero Configuration.h durante las calibraciones
del robot, comprobar que esas modificaciones estn correctamente en el fichero Configuration.h de este
proyecto.
Antes de comenzar el juego debemos colocar el robot manualmente en la posicin ms retrasada del eje Y
(tocando los topes de atrs) y en el centro del eje X (podemos tener una marca en la mesa). Esta ser
siempre la posicin de arranque cuando reseteemos o arranquemos el arduino!! El robot necesita saber que
estenestaposicinalinicioparaquetodofuncionebien.
Conectar la alimentacin de 12V a la RAMPS, Esperar un par de segundos y el robot se mover a la
posicin de defensa. Arrancar en el ordenador la aplicacin AHR.bat, esperar a que se vea la imagen y a
comenzarajugar!!!

Você também pode gostar