Robot Sanson II

Objetivos y requisitos:

En esta ocasión, no contamos con el aliciente de HispaBot, porque como ya sabréis, a partir de 2004 se acordó celebrarlo cada 2 años, asi que aprovechamos el tirón de un nuevo punto de encuentro, CampusBot 2005 (dentro de CampusParty 2005 claro).

El objetivo de este robot será una vez mas competir en la categoria de sumo, para lo cual requerimos las mismas premisas que con Sansón, pero corrigiendo algunos errores y mejorando algunas caracteristicas, en resumen:

Mecánica:

Para mejorar la fuerza de empuje, hemos empleado motores de destornilladores de bateria, que son potentes, rapidos, incluyen la bateria y su precio es muy reducido en comparación con otros motores comerciales pensados para robotica. Los motores funcionan a 3.6V, y las baterias que traen de serie son NiMH 3.6V 800mAh.

Las ruedas que utilizamos son ruedas de plastico que se pueden encontrar en cualquier ferreteria. Para acoplarlas al eje de los motores tuvimos que agrandar el diametro del eje de las ruedas, encajarlas en el eje y por ultimo realizar un pequeño taladro transversal a la rueda y eje conjuntamente para introducirle un pasador.

Estos 4 motores con las ruedas ya encajadas las acoplamos a una plancha de polietileno, de las que se usan en cocina para cortar alimentos encima para evitar arañar la mesa, (se puede encontrar en cualquier tienda de 20 duros). (A la derecha se pueden ver las baterias ya separadas del motor).

La velocidad del sistema mecánico resultó ser excesivamente elevado; En la primera prueba sobre el tatami, un frenazo en seco al detectar la linea blanca, hizo que la inercia de los 2.9Kg de peso de Sansón II diesen una vuelta de campana frontal acabando fuera del tatami boca arriba. Asi que sin dudarlo, bajamos la tensión de las baterias y también modificamos la estructura para conseguir que el centro de gravedad del robot fuese lo mas bajo posible.

En pruebas de rendimiento medimos el consumo de los motores, que resultó ser demasiado elevado (10 Amperios) para una etapa de potencia sencilla. Debido a la falta de tiempo para construir una etapa de potencia con transistores MOSFET, decidimos diseñar una etapa sencilla con relés, activados previamente con integrados ULN2003. Este modulo puede controlar un solo motor en 2 direcciones usando 3 cables, (2 lineas + masa).

modulo_reles_sch_pcb.pdf (79.8 Kb)

Sensores:

Para detectar el color del tatami y evitar la linea blanca, usamos 4 sensores CNY70 dispuestos en las esquinas. Están conectados a las entradas analogicas del microcontrolador para poder calibrar el umbral de los colores blanco/negro mediante software.
Tuvimos que añadirles un refuerzo de silicona alrededor (como de puede apreciar en la foto) para protegerlos de los golpes, ya que perdimos algunos durante las pruebas. El problema era que éstos sobresalian del chasis en vez de empotrarlos en el mismo.

Para detectar al presencia del contrincante, utilizamos un sensor medidor de distancia de la casa SHARP, (SHARP GP2D12).

Para complementar el sistema de sensores, decidimos apostar de nuevo por el contacto fisico. Unos microinterruptores situados debajo de unas planchas de plastico protectoras, se encargaban de informar al microcontrolador si el robot habia impactado y en qué dirección estaba sucediendo.

Control:

El "cerebro" es un PIC 16F876, montado sobre una placa diseñada exclusivamente para este robot.

Está alimentada a partir de una bateria de plomo de 12V 1.3 Amperios, y la tensión se ha adaptado con un estabilizador de tensión 7805 y unos condensadores de desacoplo para evitar problemas de ruido en la lógica. En este diseño, el ruido no es un problema, ya que los relés solo consumen alrededor de 100 mA. Esta placa de control es un diseño genérico, para conectarle sensores y actuadores. A su vez también tiene la posibilidad de añadirle mas módulos en paralelo para convertirla en una potente placa de adquisición de datos.

sanson2_sch_pcb.pdf * (85.7 Kb)

Los modulos* disponibles son:

* NOTA: No se añade esquemas de los módulos asi como no se aconseja el uso de esta placa por ser demasiado genérico, lo que hace demasiado compleja y engorrosa la tarea de interconectar los modulos, ademas de ser propensa a ruidos. En su lugar es mejor usar esta información como referencia.

El comportamiento del robot lo programamos en lenguaje C.

sanson2.c (6.54 Kb)

Conclusiones:

Las premisas fueron superadas con creces:

Aún asi, el comportamiento resultó ser algo mas inestable que el su antecesor, al tener interferencias en el sensor infrarrojo de distancia. Este sensor funcionaba perfectamente en los bancos de pruebas, dandonos la distancia a la que estaba situado un obstaculo, pero en el lugar donde se desarrollaba la prueba, el sensor leia valores muy variados, demostrandonos que el comportamiento era inestable, asi que en la programación relegamos los datos de ese sensor a un plano de menor prioridad.

Las baterias también dieron algún que otro susto, ya que se agotaban en seguida, pero aguantaron hasta el final aprovechando para darle unos minutos de carga en los descansos entre combates.

Para el diseño del próximo robot, será prioritario:

Contacto:

Daniel Berdugo González
dberdugo1@yahoo.es