You are on page 1of 16

Aprendiendo Fcil

Electronica
l
q

INICIO
PIC
DESCARGAS
DISEO DE ROBOTS
ELECTRONICA BASICA

Robot Velocista de Competencia Parte I : MATERIALES


23:45 21 comments

En esta serie de post voy a presentar la elaboracin y programacin de un


robot velocista para competiciones.
Esta basado en un "Arduino" , "Sensores QTR 8RC Pololu", "Driver drv8833
Pololu" y "Micromotores Pololu 10:1".
A continuacin les presento los materiales completos:

MATERIALES:
-> QTR 8RC (matriz de 8 sensores de la casa Pololu)

Bsicamente estos sensores se utilizan en pines digitales, tambin se pueden


utilizar en pines analgicos pero previamente configurados como digitales.
Es por ello que estos sensores son muy versatiles y ademas tienen una
mayor distancia en sensado a comparacin de los analgicos).
La forma de funcionamiento de estos sensores se fundamenta en base del
principio de carga y descarga del condensadores que esta en serie con los
foto-transistores, cuando esta sobre una superficie blanca el capacitor tendera
a no retener carga por lo tanto la salida sera de 0 volts, pero por el contrario,
si se encuentra en una superficie oscura (cuerpo oscuro absorbe luz), el foto
transistor no saturara, de esta forma el capacitor retendra carga, produciendo
un voltaje positivo. Previamente se tiene que configurar los pines respectivos
del microcontrolador como salida mandando un pulso de unos cuantos microsegundos, y luego despus de mandar el pulso configurarlo como entrada

haciendo una lectura digital, esto se debe hacer continuamente en un bucle


para obtener datos de sensado.
Es as como se puede saber si se esta en una sobre una superficie blanca o
negra. Estos sensores ya cuentan con una librera en arduino que hace todo
este procedimiento de forma automtica, solo tendremos que declarar los pines
que utilizaremos y haremos los llamados a las respectivas funciones de
calibrados, funciones de lectura de sensores y lecturas de posicin que es lo
que nos interesa para el algoritmode de control de robot velocista.
.
-> ARDUINO (nano, mini pro, micro, uno, mega, lo que sea :3)

Bueno en teora se podria utilizar cualquier arduino, pero lo recomendable para


un robot velocista de competencias (que por lo general son muy livianos) es
utilizar un arduino nano o mini pro. En mi caso utilice el arduino nano ya que
me permitia cargar el programa directamente desde el usb, pero en el caso
del mini pro se necesita un convertido usb serial aparte para cargar el
programa, pero la ventaja del mini pro es que es mucho mas pequeo y liviano
que el arduino nano.
Una recomendacin que les podra dar es que pueden utilizar los pines
ademas los analgicos (A0, A1, A2, A3, A4, A5) del arduino para las lecturas

de los sensores, ya que estos no cuentan con mdulos extras como el que
traen los pines digitales como , pwm, interrupcin, de comunicacin serial , spi,
etc.
Nota:
En el caso del pines analgico A6 y A7 del arduino nano o minipro, no es
posible configurarse como pines digitale, pues segn el datasheet estos pines
solo son bypasses analgico, por lo que solo es posible utilizarse para lecturas
analgicas.

-> Micro Metal Gearmotor (motores con reductora de la casa Pololu)

Este es elemento principal y critico que determinara las caractersticas de


nuestro robot velocista, ya que de el depender el desempeo del robot, se
debe considerar que tipo de reduccin, consumo y torque que posee. por lo
general se utilizan los " High Power" o "HP" con reducciones de 10:1 y 30:1.
La reduccin se refiere a cuantas vueltas dar el motor para que los
engranajes produzcan una vuelta a la salida del eje. se le suelen llamar a los

engranajes como reductoras, pues ovbiamente reducen la velocidad a la


salida del motor. La ventaja que conlleva tener una reductora es que al
reducir las revoluciones del motor, se convertir en una mayor torque, o lo
vulgarmente decimos "fuerza".Es decir, un motor de reduccin 10:1 utilizar
engranajes que reducen 10 vueltas del motor en un 1 produciendo un torque
relativamente mayor, por ejemplo:
Un motor de reduccin 10:1 tendr mucha mas velocidad que un motor 30:1,
pero poseer menor torque que el motor 30:1.
He aqu el dilema , Que tipo de motor utilizar?. Pues si tienes un robot que te
va a salir un poco pesado, es decir que este por 200 a 400 gramos, que es
mucho para un robot velocista de competencia, pues puedes utilizar los
motores 30:1. Pero en cambio si tienes un robot liviano de unos 100 gramos,
pues puedes utilizar uno de reduccin 10:1.
Lo anterior fue una parte de lo que debemos tener en cuenta para el motor del
robot, Ahora esta el consumo de los motores. Pololu, empresa de venta de
articulos para robotica, posee 3 tipos de motores, estan los de consumo: High
Power o HP, Medium Power MP y los Low Power LP.
Los HP tienen consumos de corriente de 120mA libre a 1600 mA en paro
obteniendo mayores revoluciones por minuto 10:1 -> 3000 rpm, 30:1 -> 1000
rpm.
Los MP tienen consumos de 40mA libre a 700mA en paro obteniendo
revoluciones relativamente altas 10:1 -> 2200 rpm, 30:1 -> 730 rpm
Los LP tienen consumos de 40mA libre a 360mA en paro obteniendo
revoluciones bajas pero a menor consumo 10:1 -> 1300 rpm, 30:1 -> 440
rpm

En el caso de mi robot , utilizo motores 10:1 MP 2200 rpm , elegi estos tienen
revoluciones altas y el consumo del motor no es tan alto por lo que no tengo
problemas con el agotamiento de bateras.
-> Driver de motor
Hasta la fecha no existe un microcontrolador que sea capas de entregar mas
de 100mA, por lo que el driver de motor seguir siendo una opcin obligatoria.
Los driver que se pueden utilizar son los siguientes:
TB6612FNG. Este driver posee 2 canales (para dos motores) es capaz de
entregar 1 amperio continuo de corriente y 3 A pico por canal. soporta hasta los
13 Voltios y va bien con los motores HP.

DRV8833. Este driver es de 2 canales y entrega una corriente de 1.2 A


continuos y 2 A pico por cada canal soporta hasta 10.8 Voltios y es el que yo
utilizo :3, este driver es simple de utilizar, cuenta con los pines necesarios para
el control de cada motor, a un pin lo puedes usar para dar para el sentido de
giro al motor y al otro para el pwm, cumple su proposito muy bien, lo utilizo
para motores MP.

La recomendacin que puedo dar aqu es que para tener un mejor control de
los motores, es mejor utilizar una configuracin inversa de pwm para el control
del motor ....... investiguen :D

-> Solarbotics RW2 (llantitas)

Estas llantas son lo mejorcito que tiene pololu, no es lo ideal pero se pueden
conseguir otras opciones, esto ya depende de cada uno, as que para empezar
estas llantitas van bien, pero repito no son lo ideal.
Estas llantitas se acoplan bien a los micro motores de pololu asi que no hay
mucho problema hasta aqui.
Llantas de caucho silicon. Existe tambien esta mejor opcion en cuanto a
llantas, tienen un mejor agarre que las anteriores y el rendimiento en velocidad
del robot se ve incrementado en un 40 % , se suelen hacer a medida e
inclusive se pueden mandar a hacer al color que uno guste. los aros son

hechos de nylon, por lo que el peso es muy liviano y cae ideal para los robots
velocistas

Nota: este tipo de llantitas yo las fabrico, si deseas adquirirlas puedes


enviarme un mensaje a mi correo : marko.antonio.1.16.92@gmail.com ,
siempre estoy pendiente del correo por lo que te respondere
instantaneamente. Se hacen envios nacionales e internacionales.

->Baterias

Las baterias de lipo son siempre la mejor opcin, lo recomendable es que sean
de 7.4 voltios, ya que nuestros micromotores funcionan a ese voltaje. Un

aspecto importante tambin es la capacidad A/h (amperios hora que es capas


de entregar la bateria antes de agotarce), Yo me tome la molestia de medir la
corriente que consume en funcionamiento el circuito de control del robot
(arduino, sensores, leds, etc) y estos consumen alrededor de 100 mA- 150 mA
y los motores con carga consumes 200 mA- 400 mA ( es decir si promediamos
el consumo del robot en funcionamiento normal, este estara cosumiendo algo
mas de 400 mA, por lo que lo ideal seria contar con una bateria que suministre
almenos una hora de funcionamiento. Este seria el caso de una bateria de
500mAh. Como nuestro robot consume alrededor de 400 mAh, esta batera
nos brindara un poco mas de una hora de funcionamiento antes de que este
completamente descargada.
Pero por supuesto siempre esta la opcin de comprar una batera que tenga
mayor capacidad como los de 1000mA y los de 1500mAh, pero sabemos que a
mayor capacidad, mayor tamao y peso, produciendo un mayor consumo de
los motores, por lo tanto siempre hay q buscar un equilibrio.
-> BALL CASTER 3/8 (Pololu)

La ball caster son tambin parte fundamental de el robot, es el tercer punto de


apoyo del robot por lo tanto no debe ocacionar mucho rozamiento en la

superficie, hay quienes utilizan 1 ball caster y otros que utilizan hasta 2 esto ya
depende del criterio de cada uno, es recomendable siempre utilizar materiales
livianos, por lo que las ball caster de plstico son una buena opcion.

->BRAKETS (Pololu)

Sirven para unir los motores con el chasis del robot, estos brackets son
estandarizados para los motores pololu.
->CAPACITORES (filtro)
En esta parte quiero hacer nfasis. Todo lo que nos ensearon acerca de
circuitos elctricos (ley de ohm, kirchof, mallas, fuentes, nodos, etc)

se debera

cumplir en "teora". Pero en realidad no siempre es as T.T . Intervienen otros


factores como los fsicos, qumicos, y hasta emocionales . Los materiales que
compramos como resistencias, bateras, capacitares, estao para soldar, rpm
del motor, leds , etc, tienen valores aproximados. o mejor dicho, nos venden
valores con porcentajes de error. En el caso de una resistencia, si pedimos que
nos den una resistencia de 1000 ohm, puede que nos den una de valor de 996
ohm o 1007 ohm.

A lo que voy es que hay factores que van a afectar al desempeo del robot,
Algunos le dicen "ley de Murphy": - Todo lo que pueda salir mal, ocurrir.
Uno de estos factores es el ruido elctrico. Este es el principal factor que afecta
a la mayora de artefactos electrnicos en especial a los microcontroladores, y
arduino no se salva de esto. El ruido electrico es generalmente inducido por
los motores, haciendo que haya un mal funcionamiento del microntrolador
( reinicios, hace cosas extraas, apagado intempestivo, y en el peor de los
casos quemado del chip).

Una las soluciones mas baratas que hay es simplemente poner un capacitores
de "tantalio" de codigo 104 (0,1uF) y 103 (0.01 uF) en paralelo con la
alimentacin, El capacitor de tantalio tiene propiedades fisicas-electricas que
hacen que sea capas de absorber (filtrar) el ruido elctrico , cuestan un poco

mas que los capacitares cermicos, pero cranme, vale la pena. Lo


recomendable es poner en la alimentacion del motor y en la alimentacion de 5v
lo mas cerca del arduino.
Otro factor que influye en el mal funcionamiento es lo que se llama voltajes
pico. Si se lo que estas pensando, los motores. Pues si, los motores producen
los voltajes pico o cadas bruscas de tensin. Ya comente anteriormente que
los motores tienen un consumo mnimo y mximo de corriente, estos cambios
de consumo de corriente hacen que el voltaje flucte. solo hace falta que
nuestro voltaje caiga de 5 v hasta los 3 v en unos cuantos micro segundos para
que nuestro arduino se reinicie o hagas cosas extraas.
La solucion? pues otra ves un capacitor, pero esta ves de uno electroltico de
una capacidad mayor, un valor empirico que funcione bien es uno de 470 uf a
1000 uf, a mayor capacidad, mayor energa almacenara el capacitor Y de que
nos sirve esto?. Pues si se produce una bajada brusca de tensin, el capacitor
actuara como un fuente de energia adicional, proporcionando energa al
circuito de manera temporal mientra se produce la cada de tensin por ese
pequeo instante, manteniendo as constante la alimentacion del circuito, en
poco palabras va funcionar como un amortiguador ( como el de los autos). lo
ideal es poner en paralelo al la alimentacion del driver y otro en paralelo ala
alimentacion del de 5 volts del arduino.
-> PCB-CHASIS:
Para disminuir el peso, la misma placa del robot es el chasis. Sobre el los
demas comoponentes electronicos se sueldan, es importante que la placa este
hecha de un buen material que garantice que no se vaya a quebrar o doblar
con facilidad. Usar el PCB como chasis trae muchas ventajas como el saber
que componentes estan fucnionando correctamente, tambien de poder verificar
si esta funcionando correctamente la electronica del robot y porsupeusto esta
que en caso de que se haya malogrado un componente, este se puede
reemplazar rpidamente simplemente desoldando y sustituyendo por otro con

suma facilidad. Es importante tambien que la placa se doble, cosa que asi se
reduce el tamao del circuito considerablemente

pcb-chasis roboot velocista

->LEDS :
->PULSADORES
->RESISTENCIAS
->SWITCH
->POTENCIOMETRO

Adicionales que podran agregarse al robot:


-> ENCODERS
Magnetic Encoder Pair Kit for Micro Metal Gearmotors, 12 CPR, 2.7-18v

Una buena opcin es la utilizacin de encoders, ya que se tendra un mayor


control del robot, veramos a que velocidad vamos, si estamos en una curva o
linea recta, y asi tener una mayor ventaja y sacar el jugo alas partes rectas y
curvas, para utilizar estos encoders se debe tener micromotores con con un
shaft mas largo ( pololu tiene algunos motores con shaft alargado y son algo
mas caros que los normales).
Si quieres utilizar encoder, se debe realizar un programa adicional para
capturar los pulsos que da el encoder y convertiralo en una medida que sea
cuantificable como velocidad angular, velocidad media. desplazamiento total
(odometria).
En esta serie de post no se realizara un acapite sobre como utilzar los encoder
para robots velocistas, pues la intencin es hacerlo lo mas entendible y
didactico posible, en lo que respecta a la programacin, es un poco mas
complejo hacerlo fucionar en el algoritmo PID basico , pero vale!, el cielo es el
y si quieres utilizarlo pues no te limites y usalos.

"Si te sirvi de algo la informacion de la


pagina, podras invitarme
un
caf
y
ayudarme a seguir manteniendo en pie este
sitio.
Solo
cuesta
$1
USD
y
me ayudaras enormemente
a
seguir
publicando
estos
contenidos".

Siguiente post >>> Utilizando libreria qtr sensors

You might also like