You are on page 1of 16

http://webdelcire.com/wordpress/archives/350 Robot Zero. Velocista para principiantes.

December 2nd, 2010 41 Comments

Si has visto algún concurso de robótica y quieres participar, o estás interesado en construir un robot seguidor de línea quizás este proyecto pueda ayudarte. Construcción detallada de un robot velocista básico, fácil de hacer y de bajo coste, para iniciarse en esta prueba. Aunque ya está todo dicho en el proyecto Robot Zero, vuelvo a hacer un pequeño resumen aquí con la versión final. Uno de los proyectos que tenemos en común varias personas en el C.I.r.E. es el desarrollo de robots velocistas, por lo que llevamos ya meses hablando sobre el tema y discutiendo ideas. Intentando sintetizar parte de las ideas subo aquí mi versión final con la que cierro el proyecto de robot velocista de iniciación, a no ser que me haya equivocado en algún pin del pcb o similar dejo aquí el mundo de los velocistas. No soy experto en el tema y sólo he ido a un par de concursos, a falta de información disponible espero que a alguien que quiera ir a un concurso y sepa aún menos que yo del tema le pueda ayudar. Eso sí no garantizo el funcionamiento de nada, sólo pongo lo que a mi me ha funcionado, por lo que si alguien lo monta que lo haga según su criterio. Una opción es comprar el velocista entero directamente, en internet se pueden encontrar algunos robots velocistas para comprar. No lo recomiendo ya que pierde toda la gracia el asunto, nos dan todo hecho y la mayor parte del programa, por lo que lo único que hay que hacer es darle al botón. Y supongo que en los concursos no admitirán su participación, ya que el mérito del que lo lleva es mínimo y por tanto poco digno de ser premiado. Lo primero a la hora de montar un robot es elegir los componentes y es donde toda persona que quiere hacer su primer robot encuentra la primera dificultad, qué motor elegir, qué

Los componentes se encuentran en dos tiendas y los gastos de envio de cada una están entre $10 y $15 por correo normal y suelen tardar 7-12 días.90 (opción A). Rueda loca $2.sensores. mientras que con la opción A podremos alacanzar los 4 m/s. etc. Ruedas $6. he realizado pedidos muchas veces y siempre llegan y no suelen caer en aduanas. lo que sería un resultado satisfactorio para muchos principiantes. Motor HP $31.com/eu econtramos todos los componentes.robotshop. Mi elección de componentes es la siguiente:           Placa de control más programador $31. o usar un pcb/placa de topos que poner en una base que fabriquemos.99. para mi gusto son los mejores motores que podemos comprar por ese precio. En total por unos $122. Cargador $16. no vamos a ganar pero lo mismo podemos pasar la primera clasificatoria.95.95.95. Batería $11. Lo mejor que he encontrado son los componentes de Pololu.95. El problema de la opción A es que son motores que consumen mucha intensidad y existe la posibilidad de quemar el DC-DC. Soporte motores $4. Pongamos el proyecto completo sobre unos €100-110 al cambio en material. si tu objetivo es intentar ir lo más rápido posible recomiendo la opción A. Aún así si queremos comprarlo todo en un sólo pedido en http://www. por lo que la mayoría de las veces sale mejor comprar directamente en $$. Con la rueda seleccionada y la opción B se pueden alcanzar velocidades sobre 2 m/s. Motor $31.66 tenemos todos los componentes necesarios para el velocista.90 (opción B).99. DC-DC $11. a lo que habría que sumarle unos $10-15 aproximadamente en componentes para unirlo todo. es muy poco probable quemarlo.95. Podemos elegir dos motores para el proyecto.98. si tu objetivo es hacer un primer robot y te conformas con que funciones recomiendo la opción B.. pero la posibilidad está ahí. por un precio muy razonable encontramos todos los componentes necesarios para construir un robot que no lo haga mal en los concursos. Para unir todos los componentes tenemos dos opciones: usar un pcb que a la vez sirva de base del robot para conectarlo todo. Pongo foto de las dos opciones: . Placa de sensores $14. aunque sale más caro ya que como toda tienda te hacen el cambio $1 = €1.

Si montamos todo el robot en un pcb pues no podremos cambiar sus dimensiones. el ahorro de peso es mínimo ya que la base en plástico pesa más o menos igual que el pcb.La mejor opción de ambas para nuestros objetivos es la de construir un base sobre la que poner el pcb. lo que nos permitirá probar y experimentar con diferentes configuraciones y adaptarnos a los circuitos que nos den en los concursos. Por ejemplo en un circuito con curvas con un radio grande y rectas largas nos puede interesar llevar una base más larga y ancha. Además las dimensiones del robot dependen de las inercias y la fuerza de rozamiento del robot que nos adhiere al suelo. por lo que muchas veces la única forma de encontrar las dimensiones óptimas es probando distitnas bases. los robots que venden hechos vienen montados en un pcb ya que es más fácil integrar todo y supongo que más barato de fabricar. mientras que si nos dan un circuito con muchas curvas pequeñas y poca recta puede ser mejor opción una base pequeña. . Por lo que para un primer robot con el que aprender y experimentar la mejor es tener bases intercambiables. ya que nos va a permitir tener un robot versátil al que le podemos poner distintas bases con diferente longitud y anchura. La idea final es tener algo como ésto. un robot que montar sobre distintas bases.

Base 2. Adjunto un par de plantillas de bases de ejemplo (las dimensiones de los robots en los concursos máximas son de 30 cm de largo y 20 cm de ancho) y una foto del proceso para realizar la base. pero son las que he probado. el PVC expandido de 3 mm se puede cortar y trabajar a mano. Base 1. .Por lo que lo primero podría ser empezar a construir la base. Las dimensiones de la base para mi gusto no son las ideales. pasando luego a recortarla y hacer el resto de taladros. con un punzón marcamos los agujeros de los motores ( han de ir en la plantilla ya que deben quedar bien alineados) y con una cuchilla cortamos y marcamos en el PVC la plantilla. para ello nos hacemos una plantilla a mano o con el pc que pegamos sobre un trozo de PVC expandido o forex de 3mm.

Además esta placa nos servirá para pegar con cinta de doble cara la batería elegida. La placa de la electrónica se puede ver aquí (click para mayor detalle): . de tal forma que quede por debajo del robot.La otra parte que necesitamos para unir los componentes es realizar un pcb o utilizar una placa de topos como explicó Guillermo en la entrada anterior. lo que proporciona un centro de gravedad lo más bajo posible.

. Un pulsador para dar la salida. etc. para conectar un módulo de comunicaciones si queremos mandar datos del robot al PC.Las características con los componentes montados serían las siguientes:         8 entradas digitales de senores ó 6 analógicas en los sensores centrales (no he querido desoldar el potenciometro del ADC para poner los 8). calibrar unos sensores RC. Duración de la batería: 28 minutos (ciclo de trabajo 160/255. o arriesgar más si hemos perdido la primera ronda. Vmed = 215 cm/s en circuito de prueba). Un dc-dc que nos proporciona una tensión de referencia fija para la velocidad de los motores. Dos diodos leds. Pin para encender y apagar los sensores y así ajustar el nivel de luz que emiten. fundamental para cambiar la velocidad contra un oponente. por lo que facilita el algoritmo de control. Dos interruptores para seleccionar distintas estrategias en el concurso.. Un conector con salida de 5V y pines TX y RX de la USART del microcontrolador.

Para conectar la placa de control y el dc-dc ponemos una tira de pines hembra. botones y demás también lo podemos comprar en Pololu (cuanto mayor el pedido mayor la posibilidad de aduana).5 V y si usamos los de baja podemos ponerlo a 9V para sacar más par y velocidad de ellos.e. Aunque es el condensador del montaje típico de cualquier regulador disipativo está proporcionando el pico de intensidad necesaria a los motores cuando su f. tira de pines que se ven en la imagen. Si usamos los motores de alta intensidad lo pondremos sobre 5.5-6.m. . donde los insertaremos.36A como máximo a 6V. ya que los motores HP pueden tener picos de hasta 1. Poniendo este condensador (una vez visto se podría poner más cerca del dc-dc o duplicar) no deberiamos tener problemas de quemar el dc-dc para una buena velocidad del robot. El esquema para unir toda la parte de la electrónica (click en la imagen para más detalle). Los conectores de la batería.Si usamos los motores de alta intensidad el DC-DC lo podemos quemar si no ponemos el condensador electrolítico que está a la altura del regulador. de esta forma podemos sacar la placa para utilizarla en otros proyectos y el dc-dc para ajustar la tensión de salida a distintos valores según los motores a utilizar. si todos los pines están bien asignados (no me haya confundido en alguno ya que no lo he repasado) así se quedaría. Hice la prueba de quitar el condensador para ver si el dc-dc cortaba ante una intensidad mayor de la que puede dar (no sé que integrado lleva) y se acaba quemando. aunque en cualquier tienda física de electrónica se pueden encontrar los componentes a un precio razonable.6 A por motor y el DC-DC sólo admite 2 A de entrada. Lo llevo con un valor de 22 uF y es suficiente para que los motores vayan a velocidad altas. o si lo ponemos de un valor pequeño.c. Con los motores de baja intensidad no hay problema ya que sólo consumen 0. es baja.

C1 y C2 son los condensadores electrolíticos de 22 microFaradios. R1 R2 y R4 470 Ohmios. si sacamos del dc-dc 9V podríamos poner un 7805. es decir cualquier ldo. R3 R5 y R6 15K. Los componentes montados en el pcb y el fotolito. . Los componentes SMD 1206. L4941BV. un regulador disipativo de 5V mirando su caída. pero sacando sólo 6V pues mejor poner uno con un caída de tensión menor como un LF50ABP. R10 R7 y R8 330 Ohmios.

.

Montamos el pcb y lo ponemos en la base del robot. para conectar los motores se pueden poner un par de conectores o soldar los cables directamente. . Lo siguiente es pegar la batería con cinta de doble cara al pcb y hacer un agujero para pasar el cable.

.

Colocamos la rueda loca. ya que los llevamos muy pegados al suelo y vienen pensados para una mayor distancia. Respecto a la placa de sensores que compramos hay que cambiar o quitar unas resistencias. y hacemos el cables para unir los sensores con la placa de electrónica. Por último colocamos la placa de sensores haciendo los correspondientes agujeros para pasar los tornillos. . podemos usar unos tornillos para fijarla o pegarla directamente aunque ésto signifique tener que usar una por base.

o la pista no es totalmente lisa podemos encontrar problemas. pero bueno esto se ve bien cuando desarrollemos la parte de la telemtría en el C.E. depende. Por lo que todo montado queda una cosa así: . Otra cosa que hemos podido comprobar es que estos sensores son terribles para hacer lecturas en analógico. podemos quitar una o quitar las dos y soldar una donde aparece en la iamgen de mayor valor.r.En la imagen superior se puede ver como se ha soldado una resistencia de 100 Ohmios (101) y desoldado dos resistencias. ya que su orientación (inclinación) afecta enormemente a la lectura. esas dos resistencias en paralelo vienen para limitar la corriente de los diodos..I. por lo que si el robot vibra u oscila. ya que algunas placas de Pololu nos la dan con resistencias de 43 Ohmios y otras con resistencias de 66 Ohmios en los diodos. que supongo que será lo siguiente. Aunque no he probado muchos valores una resistencia de unos 82 ohmios podría funcionar bien.

.

.

. medir la distancia de la línea al centro de los sensores. adjunto un programa sencillo para estos robots que sigue la línea sin oscilar a una velocidad constante. es el primero que hicé y ha ido pasando de robot a robot porque parecía que funcionaba. medir la velocidad con la que se aleja o se acerca la línea al centro de los sensores. multiplicar estas medias por unas constantes que utilizamos para ajustar la respuesta del robot. sumarlas y convertir la cantidad obtenida en una diferencia de velocidad entre los motores. Al programa no se le ha dedicado tiempo. lo que provoca el giro. La idea es muy sencilla. por lo que puede tener fallos por algún lado.Esta sería la parte de la base y ahora falta la parte de la programación.