martes, 9 de octubre de 2012

Robot de sumo Boogerbot - julio-setiembre 2012

Esta es una reseña del nuevo diseño de boogerbot, trataré de sintetizar los aciertos y errores de diseño, así como las características que me hubieran gustado agregar y que no pude implementar a tiempo para la competencia, increíblemente por mas que empecé a trabajar 2 meses antes... me faltó tiempo.

Ruedas:


En el diseño original de boogerbot había utilizado orugas. Las orugas poseen ventajas y desventajas con relación a las ruedas, la principal ventaja de un buen par de orugas es la traxión, un par de orugas que cubra la mayor longitud posible a ambos lados del robot ofrece mucha superficie de contacto con el ring, lo que incrementa enormemente la traxión con relación a las ruedas, si adicionalmente se ensanchan las orugas, se tienen muchas posibilidades de empujar cualquier cosa fuera del ring.

La velocidad con se mueva el robot sobre el ring dependerá en gran medida de la velocidad de los motores utilizados, con relación a la fueza que pueda ejercer, se deben considerar un par de factores adicionales, el material utilizado para el contacto con el ring (sean ruedas u orugas), y la superficie de contacto. Mientras mas superficie mayor traxión.

Tristemente las leyes físicas se aplican a cabalidad en un ring, por lo que... si se tiene velocidad, se pierde fuerza, y se se gana fuerza, se pierde velocidad, encontrar la combinación perfecta entre ambas cosas puede resultar engañoso y difícil y la única manera de logralo es la experimentación.

Porque utilizar ruedas en lugar de orugas?, la respuesta es muy sencilla: simplicidad. Un buen par de orugas es bastante difícil de confeccionar, requieren de mucho tiempo, cada eslabón debe ser igual al anterior, se deben realiar muescas para los dientes de los engranes de los rodamientos, etc...

Es posible comprar tanto orugas como ruedas comerciales, que pueden darnos resultados superiores o inferiores a los esperados, pero... no sería tan divertido como fabricarlas nosotros mismos. :)

Con la ayuda de un amigo y su torno, moldé las ruedas de boogerbot (gracias Luis), originalmente la idea era utilizarlas como rodamientos para las orugas, luego... cambié de idea por lo dicho antes... muy complejo.



Las "llantas" fueron cubiertas con goma eva y esta pegada con cemento de contacto (cola de zapatero), propicié 3 capas sobre las llantas lo que me dió un diámetro promedio de 5cm. Sobre la goma, con ayuda de cinta doble faz agregué mi arma secreta... mbuajajaja... cinta aisladora autovulcanizable. Jugando con mis destornilladores descubrí que se adieren muy bien a todo tipo de superficies, pero no todo es color de rosas, cuesta bastante que quede perfectamente distribuida sobre las ruedas, pero, después de deshechar unos centímetros (medio metro mas o menos) me quedaron bastante bien.

 Mejoras a realizar a las ruedas:
 - Ruedas mas centradas, la primera, que la hizo Luis quedó fantástica, las 3 siguientes (las hice yo) tienen diámetros distintos y peor aún, el eje muy descentrado.
 - Ruedas mas anchas, huecas, de manera que los motores vayan dentro, para lograr mayor superficie de contacto (es necesario modificar la estructura base del robot para esto).
 - Pienso mantener el uso de la cinta autovulcanizable para las cubiertas, pero tengo que mejorar el proceso de aplicación para conseguir una mayor homogeneidad y adherencia.

Estructura:

El chasis de boogerbot está compuesto por 4 cortes de angulo de aluminio de 1.5mm de grosor, dos de ellos de 15cm de longitud y dos de 13cm de longitud, unidos entre sí por tornillos de 3mm.

En cada extremo de los segmentos de 15cm taladré 3 agujeros, uno de 8mm por donde pasa el eje de cada motor y 2 de 3mm para los tornillos que los sujetan.


Las partes traseras de los motores se encuentran enfrentadas, en medio de los 4 motores ubiqué la batería.


Superponiendo una buena cantidad de capas de pvc fabriqué unos calces para fijar un marco tabién de pvc, y por éste con tornillos la cuña ubicada al frente, una tapa atrás para proteger las ruedas y el puente h y un corte de chapa de aproximadamente 1cm de ancho para sujetar la batería.


Tanto la cuña como la tapa trasera las confeccioné con chapas galvanizadas de 0,75 mm de grosor.
 Mejoras a realizar:
 - La cuña debe estar sujeta por un material rígido (metal), el plastico pvc es flexible, aún cuando se hayan apilado varios. Al empujar, el soporte se arqueaba, las ruedas frontales se levantaban y giraban libremente, por lo que se perdía mucha fuerza.

Motores:

Boogerbot en su primera versión se encontraba propulsado por servos standard con dos orugas, en esta, utilizé 4 motores de 200rmp a 12v, 25mm de diámetro por 60mm de largo.

En uno de los combates el consumo de corriente fue un tanto elevado y el puente h levantó un poco de temperatura, en promedio los motores consumen .2 amperes c/u.



 Mejoras:
 - Cambiar los motores de 200 rpm por 300 rpm, se perderá fuerza pero la velocidad extra puede ofrecer ventajas programando estrategias de combate, se gana rapidez en el ataque y posibilidad de escaparse de ciertas situaciones y con ello voltear el resultado.

Puente H:

Armado con un L298 y una pequeña placa se constituye la etapa de potencia de motores de boogerbot, suficiente para manejar el consumo de los 4 motores, si se desea trabajar mas holgadamente con el consumo de motores, se puede utilizar un integrado para controlar 2 motores.

También existen otros modelos de puente h con mucha mas capacidad de corriente.
En el PCB que utilicé las lineas para medir la corriente consumida no las implementé, no obstante, una pequeña modificación en la derivacion a gnd de los pines 1 y 15 sería suficiente para implementar el control de la corriente.


Sensores de Borde:

Los sensores que utilicé los armé con sensores CNY70, el circuito es expuesto en este mismo blog en el siguiente link http://blasmercado.blogspot.com/2012/05/microbot-con-dos-autitos-de-juguete.html

En cada extremo del ubiqué 1 sensor, así tenía en el frente un sensor izquierdo y un sensor derecho y de la misma manera atrás.


Con un poco de PVC fabriqué unos sportecitos para atornillar los sensores y éstos los fijé al chasis con silicona de calor.

En uno de los combates boogerbot fue expulsado del ring, dando como resultado la ruptura del soporte del sensor al caer del ring.

Mejora:
 - Eliminar el soporte de PVC y hacer que el chasis alberge al sensor para protegerlo de los golpes en las salidas del ring.

Sensor de oponente:


Placas antes de montar componentes.


Para detectar al oponente ensamblé sensores infrarrojos utilizando el decodificador de tonos LM567.




En un principio, la idea fue de incluir cuatro sensores para detectar al oponente sobre el ring, los sensores serían: Frente, Atrás, Derecha, Izquierda.



Cada sensor posee un rango de deteción de aproximadamente 20cm, un poquito mas, un poquito menos dependiendo de la superficie y tipo de pintura del oponente, un oponente con pintura negra mate, es detectado desde aproximadamente 15cm, un papel blanco se detecta a 25-28cm.

Circuito Terminado
 

La luz directa del sol ejerce una interferencia terrible sobre el sensor, dejándolo prácticamente inútil con un rango de detección de solo 3-5cm.



Terminé de ensamblar tres de los cuatro que necesitaba, pero finalmente por motivos de tiempo solo implementé 1 sensor en el frente para detectar al oponente.

Circuito adherido a pala.







Hice dos agujeros en la cuña, y una especie de cajita de PVC para alojar y fijar el sensor al metal.
Todos los componentes son del tipo smd exceptuando el emisor y receptor infrarrojo.






Mejora:
 - Ampliar el rango de detección.











Placa de control (Mainboard):




La placa de control se divide en dos partes.

1- Una breakout board fabricada para el microcontrolador PIC18F13K22.

2- La placa de control (Mainboard) en sí.






1- Breakout board PIC18F13K22.


La idea de realizar un breakout con un pic surgió de la intencion de remover y programar el microcontrolador con facilidad tanto para este proyecto como para otros que pudieran surgir.

El cerebro de boogerbot fue el PIC18F13K22, una compañera me dijo:Que "raro" es el pic que usaste, bueno la explicación es simple, comprando compoententes de newark, busqué pic18, ordené de menor a mayor por el campo precio y elegí el que estaba mas arriba, sip... ese es el secreto de la seleción del pic.

Este pic posee 8K de memoria de programa, 256B RAM, 256B EEPROM de datos, 20 pines, hasta 18 puertos I/O, ADC 12-ch 4 timers, mas que suficiente para un sumo básico, insuficiente para todas las características que deseaba implementar.

2- La placa de control (Mainboard) en sí.


La placa se concibió pensando en un diseño simple, que fuera fácil de producir en un PCB o en una placa universar y que quedara lo mas ordenado posible en cuanto a la distribución de pines del micro y que proporcionara además de los puertos de datos pines para la alimentacion de sensores. También debía aceptar a la breakout board que diseñé con anterioridad.




El diseño presenta tres secciones de conectores, una seccion para 4 sensores de lineas, otra para 4 sensores de oponentes, y otra para 4 señales para controlar motores, como mencioné antes, cada sección posee pines para alimentación, por lo que con tres cables los sensores pueden conectarse al mainboard como módulos.



La distribución de pines de cada línea de comunicacion es: Señal, +5v, GND.

En un principio la misma placa serviría para panel de control, finalmente opté por prolongar el panel con cables.


El panel consta de 2 switches para seleccion de programa, 2 leds para indicar el programa seleccionado, un pulsador para inicio de combate y un zumbador (quedó en la mainboard).

 

 

 

Algunas Fotos








2 comentarios:

  1. Hola! muy buen post. Me gustaría algo mas detallado. No se si me puedas ayudar un poco más. Soy de Mex, DF. Gracias

    ResponderEliminar