Robot mini sumo

Hola amigos!

En el día de hoy estoy encarando un proyecto nuevo. Un robot mini sumo!.

La anécdota es que tengo un amigo que es profesor de la escuela técnica de Trelew (Provinicia de Chubut - República Argentina). El, con sus alumnos, hicieron algunos robotitos de estos y se me ocurrió hacer uno similar con el único propósito de desafiarlos.

Las condiciones son las siguientes:
El robot tiene que caber dentro de una caja de 10 x 10cms sin importar su altura. No puede pesar más de medio kilogramo y hay ciertas condiciones de juego que no tienen nada que ver con la parte técnica.

El combate ya está programado para la próxima primavera de este lado del mundo (ni loco viajo al sur en invierno).

Así que paso a relatarles mi idea sin tener en cuenta, aún, el sketch.

En principio pensé en usar una Nano por tamaño y peso, pero al comenzar a pensar en las estrategias de defensa y ataque, pensé que ese sketch debería ser grande y tal vez no quepa en la Nano. Por eso voy a usar una Leonardo (o una Micro que tengo suelta por acá y que nunca usé, sólo la he probado).

En principio voy a usar sensores de aproximación de ultrasonido

pero considero que la respuesta de los sensores infrarrojos sería más rápida. Como no tengo diodos IR comenzaré a hacer pruebas con lo que tengo, los SR04.

Las ruedas deben de ser medianamente grandes y adherirse bien a la superficie del Tatami. Luego de ver algunos videos, considero que es mejor tener dos ruedas que cuatro. Y tener una tercera rueda loca (o libre).

En cuanto a los motores, tienen que tener más fuerza que velocidad. En principio pensé en usar un servo metálico hackeado para que que no tenga topes sino que giren libremente (eso es lo que usan los chicos de Trelew).

Bueno, hasta ahora es lo que se me ocurre, en cuanto tengan ideas para ayudarme los leeré con gusto.

Les pego un video de unas peleas para que se den cuenta de lo que estoy encarando.

Bueno como hemos hablado en privado con Hector, este será un excelente proyecto, y como pocos, llegará a su fin.

Lo primero que me gustaría debatir es si un Nano o Leonardo (como quiere Hector) son capaces de soportar el código que aún no esta ni siquiera en una sola línea aunque tenemos algunas ayudas de Instructables y otros sitios como para marcar un punto de partida.
Esos códigos no lucen que comprometan a un NANO pero son BOBOS, no tienen estrategias, y es un tema que no hemos considerado aún.
Que posibilidades existe de dotar a este robot de alguna IA o AI como gusten, básica. Que cumpla algunas reglas de ataque defensa y que permitan hacerlo en un contexto de memoria limitado?

El resto en hardware, motores, ruedas, sensores de detección de linea, sensores Ultrasonicos, servos para elementos de distracción será definido paso a paso.

surbyte:
Bueno como hemos hablado en privado con Hector, este será un excelente proyecto, y como pocos, llegará a su fin.

Lo primero que me gustaría debatir es si un Nano o Leonardo (como quiere Hector) son capaces de soportar el código que aún no esta ni siquiera en una sola línea aunque tenemos algunas ayudas de Instructables y otros sitios como para marcar un punto de partida.
...

Lindo conocer opiniones de otros, por eso creé este hilo para que se sientan libres de opinar.

Quiero aclarar que mi idea original fué usar una Nano, pero que me pareció que no cabría semejante código como yo creo que debe de ser la estrategia de combate y manejando 8 sensores al mismo tiempo, por eso, luego pensé en una Leonardo. Y por qué Leonardo y no otra?

La respuesta es simple, porque es lo que tengo en casa, creo que tengo como 3 y una Micro. De Nano tengo dos, también.

Y ya no se cuantas Uno tengo por acá, una está fuera de combate, pero el chip 328P no es, así que tengo dos chips de esos guardados. Lo que me hace pensar en que si funciona una nano, puede funcionar un chip 328P haciéndole una placa especialmente para la ocasión.

También tengo un par de Mega2560 pero esas son descartadas por el tamaño de la placa que excede las medidas.

Hector_A:
También tengo un par de Mega2560 pero esas son descartadas por el tamaño de la placa que excede las medidas.

excede depende como la pongas... si la pones en vertical?

Tiene razón Go_zalo, no hay limite vertical.
Publica las normas Hector asi se comprende mejor que se puede y que no se puede hacer.

[Reglamento](http://"http://www.grsbahiablanca.com.ar/Reglamento Sumo - LNR - 2015.pdf")

Las dimensiones de los Robots deberán ser tales que quepan dentro de un cuadrado de E cm. de lado sin límite en altura

Jeje, Gonzalo, luego de escribir mi comentario acerca de la Mega, cuando di al botón de POST, ahí pensé que podría ir parada o inclinada.

Y desgraciadamente, la página de la Universidad Tecnológica Nacional (de Argentina) Seccional Bahía Blanca, no está en el aire, por suerte yo ya había capturado en mi pc el PDF del reglamento, aunque sirve perfectamente para los MiniSumo, está escrito para los SUMO que, justamente, difieren en tamaño, tanto de los robotitos como del tatami.

Adjunto el PDF

Reglamento Sumo - LNR - 2015.pdf (715 KB)

Bueno debatiendo con Serafín al respecto (Noter) coincidimos en un posible doble CPU.
Un Arduino para sensores y acciones tipo acto reflejo y otro para actuar como si pudiera manejar las estrategias o una IA (inteligencia Artificial) limitada.
Es posible? Si.
Por ahora no tenemos mucha idea porque estamos investigando.
Veremos que opina Hector.

En cuanto a la doble CPU te comento lo que tengo acá:

2 - Nano
1 - Micro (con 32U4)
3 - Leonardo ( 1 es marca FREADUINO)
2 - UNO
2 - MEGA 2560 (1 es marca DEEENO y 1 es FREADUINO)

En cuanto a los sensores tengo 8 de los HC-SR4 (no pretendo usarlos porque se me ocurre que su velocidad de respuesta es inferior a la de los IR) con intenciones de comprar 10 de estos:

Sensor Optico Infrarrojo Reflectivo Tcrt5000l

Prepararé una imagen y luego la subo!

De estos pienso usar 3 apuntando hacia adelante, 1 hacia la derecha, 1 hacia la izquierda y 1 hacia atrás, aún estoy buscando los dos o tres que apunten hacia el piso para detectar el cambio de color del tatami y que frene sobre la zona blanca. Y creo que los encontré:

Sensor Optico Reflectivo Infrarrojo Cny70

Introducción a la robótica móvil

Pregunto, el robot es autónomo no? Debe decidir por si solo o puede ser radio controlado? No me lei todo el documento.

No debe tener contacto con el exterior y si, tiene que ser autónomo, si o si.

He leído un reglamento que dice que se le puede agregar un interruptor mediante control remoto como de los televisores (así dice ese reglamento, o sea, IR) pero sólo lo leí en un sólo reglamento, creo que de México y con el único propósito de apagar el robot cuando acabe la pelea.

Bueno tiré al aire una pregunta pero los programadores de este foro no han respondido.
Es posible usar AI en el Arduino?
Ahora yo en mi investigación he llegado a pensar y Hector esta de acuerdo, el uso de un Rapberry Pi Zero como cerebro.
Lo que aumenta la capacidad para una posible ai artificial intelligence.
Veo muchas cosas pero no se si son posibles.

También he descubierto algo que me parece fabuloso y no conocía. El uso de Arduino corriendo firmdata que lo pone como esclavo via USB del Raspi para que haga todo el trabajo de sensores y control de motores. Algo para lo que fue diseñeado aunque Raspi no tendría problemas. Pero son alternativas.

Espero que Serafina (Noter) o Guillermo (gepd) u otro Licenciado en Sistemas Informáticos nos digan como ven esta tarea sea en plataforma Arduino Mega/Due o en Raspi.

Referencias utiles:
En este post que iré modificando voy a poner toda la información relativa a cuestiones como referencias de otros Sumo Robots o temas de estrategia/programación.

Autonomous Sumo Combat Robot with Pneumatic Flipper Interesante y muy completa descripción con planos y código.

Ya tengo las ruedas y los CNY70.

Por desgracia acá tenemos muy pocos componentes, sobretodo en IR.

Las ruedas son enormes, me asusta el ancho de las mismas, eso me quita espacio para poner un par de lindos motores, pero todo se puede. Ya me veo usando estas ruedas para otro proyecto o un juguete. :confused:

Este tipo de motores tiene mucha fuerza pero muy poca velocidad, aunque no pueda acelerar como me gustaría, sería de mucha ayuda, la fuerza, para los casos en que quedan enganchados.

La fuerza esta perfecta si tenemos buena Adherencia!!! SI no de nada sirve, patinará como nada.

Yes Sir!

Adherencia vamos a tener, como se que tengo no toqué ese tema. :wink:

Pero tu aclaración me parece perfecta para quienes pretendan aprender de este hilo.

Hector_A:
En cuanto a los sensores tengo 8 de los HC-SR4 (no pretendo usarlos porque se me ocurre que su velocidad de respuesta es inferior a la de los IR) con intenciones de comprar 10 de estos:

Sensor Optico Infrarrojo Reflectivo Tcrt5000l

Estos no sirven su alcance de detección es apenas de unos pocos milímetros, según el vendedor.

Así que hasta ahora, tenemos dos caminos:

1.- Hacer un sensor con Diodo transmisor apareado a otro receptor, pero si no tienen mucha potencia, no detectaría más allá de los 20cms, lo que no alcanza para la otra punta del Tatami.

2.- Usar los famosos y nunca bien ponderados HC SR-04 de ultrasonidos pero limitados en alcance, para que detecten, por ejemplo, alrededor de los 50cm.

Saludos!

2.- Usar los famosos y nunca bien ponderados HC SR-04 de ultrasonidos pero limitados en alcance, para que detecten, por ejemplo, alrededor de los 50cm.

Como los limitas?

Acortando el tiempo de espera de la respuesta que está dado en microsegundos.

Si no se recibe respuesta en X cantidad de microsegundos es porque está más lejos de lo esperado.

:wink:

O sea con PULSEIN y un timeout mas corto!