Construye tu Robot Minisumo

Para todos aquellos aficionados a las luchas de Robots Sumo, aquí dejo uno de tantos esquemas que se pudieran utilizar para hacer un montaje se un robot clase mini sumo del tipo básico; recordemos que sus dimensiones no deben exceder de 10 centímetros por lado y un peso total de 500 gramos.

El presente mini sumo básico, consta de dos motorreductores de 1.4 kg, ruedas de 6 cms de diámetro, y tiene una altura de 86 milímetros.

Para el momento de las fotos y pruebas aún no se le han colocado lastres para hacerlos llegar a su máximo peso (estarán en "engorda", ya que les faltan 230 gramos aún).

La electrónica esta formada por dos simples LM358 en modo comparador para los sensores CNY70 montados al frente y debajo del robot con la finalidad de no salir del tatami, así como del sensor Sharp GPD que detecta la presencia del oponente.

Estos datos son comunicados a un PIC 16F628A y este controla un integrado L293D que se encarga de los motores.

Como pueden ver es muy básico y sencillo de construír, sin embargo puede bien ser utilizado en competencias si le dan su toque personal con algunos micromotores de alto par y alta velocidad, como los pololu, pueden tambien adicionar otro sensor Sharp, o más CNY.

En fin, siéntanse libres de utilizar el esquema y adicionarle, quietarle o adapatarle lo que mejor parezca cubrir sus necesidades.

Anexo tambien el archivo .hex por si algún entusiasta decide montarlo rápidamente y quiere verlo funcionar; aclaro que el programa anexo es básico, solo para no salir del tatami y detectar al oponente, ya cada quien adoptará su propia estrategia.

Es tan pequeño el circuito que muy bien puede montarse en un protoboard chico y tenerlo funcionando en un par de horas.

para la carcasa de ocupó plastico de 3mm y lámina galvanizada calibre 32.

Dejo el video con las primeras pruebas:


Espero que les agrade y séa de ayuda para alguien,

saludos cordiales.
 

Adjuntos

  • ESQUEMA_MINISUMO.jpg
    ESQUEMA_MINISUMO.jpg
    37.6 KB · Visitas: 910
  • TATAMI_MINISUMO.jpg
    TATAMI_MINISUMO.jpg
    40.1 KB · Visitas: 599
  • DSC02087.JPG
    DSC02087.JPG
    197.3 KB · Visitas: 538
  • DSC02088.JPG
    DSC02088.JPG
    210.3 KB · Visitas: 443
  • DSC02089.JPG
    DSC02089.JPG
    204.8 KB · Visitas: 410
  • DSC02090.JPG
    DSC02090.JPG
    196.9 KB · Visitas: 370
  • DSC02091.JPG
    DSC02091.JPG
    191 KB · Visitas: 361
  • DSC02093.JPG
    DSC02093.JPG
    203.9 KB · Visitas: 332
  • DSC02094.JPG
    DSC02094.JPG
    187.5 KB · Visitas: 314
  • DSC02101.JPG
    DSC02101.JPG
    200 KB · Visitas: 293
  • DSC02102.JPG
    DSC02102.JPG
    202 KB · Visitas: 269
  • DSC02103.JPG
    DSC02103.JPG
    201.7 KB · Visitas: 255
  • DSC02104.JPG
    DSC02104.JPG
    193.6 KB · Visitas: 268
  • DSC02105.JPG
    DSC02105.JPG
    199.4 KB · Visitas: 260
  • DSC02106.JPG
    DSC02106.JPG
    205.7 KB · Visitas: 219
  • DSC02107.JPG
    DSC02107.JPG
    198.7 KB · Visitas: 223
  • DSC02108.JPG
    DSC02108.JPG
    202.4 KB · Visitas: 220
  • DSC02110.JPG
    DSC02110.JPG
    197.8 KB · Visitas: 220
  • DSC02111.JPG
    DSC02111.JPG
    202 KB · Visitas: 285
Bueno el aporte (y), en la universidad donde trabajo unos alumnos andan con ideas de hacerse uno de estos :D, está en proceso la idea, ya que por estos lares no es muy común ver este tipo de engendros :(, estamos cerca a ver si algún logramos hacer unas "luchitas" :D.

Saludos.
 
elprofetellez dijo:
Anexo tambien el archivo .hex por si algún entusiasta decide montarlo rápidamente y quiere verlo funcionar; aclaro que el programa anexo es básico, solo para no salir del tatami y detectar al oponente, ya cada quien adoptará su propia estrategia.
no encontré el .hex ,si pudieras subirlo comprimido en zip,por favor.
esta bueno el mini-sumo ¡¡¡
 
Última edición:
Es cierto, les pido me disculpen, es que entre tanto archivo que subí no me di cuenta que el .hex no lo admite directo, sino comprimido.

Pero ahora sí, aqui se los dejo y en verdad espero que se diviertan con los sumo, sobre todo los que tienen la suerte de vivir en la misma ciudad.

Ojalá y pudieran subir fotos de sus sumo.

Saludos!
 

Adjuntos

  • MINI_SUMO.rar
    878 bytes · Visitas: 1,765
discúlpame la duda amigo los censores infrarrojos que tiene el robot como los estas ubicando según el diagrama veo dos y dime que códigos son ya que no parece ser los cny 70 alguno de los censor se dirige al piso para cuando se sale uno del cuadrilátero ---- discúlpame mi duda te prometo armarlo mínimo unas 5 el primero para armarlo seré yo el profesor --- te estaré yo muy agradecido --- y porsupuesto te subo en los creditos sobro todo te aseguro un espacion en nuestro grupo de faceboock llamado = ROBOTECH7
 
Hola ivan. Si son sensores CNY70, los dos van al frente del robot, detras de la "pala", uno a la izquierda y otro a la derecha, ambos mirando al piso a unos 5 mm de alto.

El sensor marcado como Sharp GPY es el que va mirando al frente para detectar al rival.

Saludos!
 
gracias esta semana te traere resultados ire a comprar los componentes espero encontral los GPY antes solo los e visto en la cabeza de los Lego Mindstorms de unos 400 dolares americanos
 
Iván, los GPY son sensores infrarrojos, y no son caros, quizas 20 a 30 Dlls.; los que comentas son sensores ultrasónicos, que es el que utiliza por ejemplo el NXT Mindstorms en su cabeza.
Saludos!
 
untitled-65-703369.jpg


Aquí adjunto una imágenes mi amigo, lo arme en el protoboard y he demorado mucho pues no conseguía el sensor GPY SHARP

Funcionan los sensores , le adicione unos leds para ver que estén sensando

¿ Tendras la tarjeta de circuito impreso :D ?

Desde ya te agradezco
 
Última edición por un moderador:
disculpa!! yo lo eh construido en el proto!! solo que cuando le doy voltaje, el led se queda encendido y nada funciona!! solo hasta despues de varios intentos de encender y apagar todo, es como comienza a funcionar!! a que se debera esto??
 
disculpa!! yo lo eh construido en el proto!! solo que cuando le doy voltaje, el led se queda encendido y nada funciona!! solo hasta despues de varios intentos de encender y apagar todo, es como comienza a funcionar!! a que se debera esto??

Intenta quitando el LED, creo que tambien tuve esos problemas pero no recuerdo bien como lo solucioné, yo ya lo arme hasta en placa. Si tienes una duda pregúntale y te ayudaré en lo que pueda. Dime mas detalles de lo que haces o no . (giran moteres, sirven los sensores... Etc.)
 
Intenta quitando el LED, creo que tambien tuve esos problemas pero no recuerdo bien como lo solucioné, yo ya lo arme hasta en placa. Si tienes una duda pregúntale y te ayudaré en lo que pueda. Dime mas detalles de lo que haces o no . (giran moteres, sirven los sensores... Etc.)

despues de encender y apagar varias veces el circuito, los motores comienzan a girar, paso por los sensores cny un fondo blanco y los motores invierten su polaridad, con un fondo negro un motor gira mas rapido que otro, todo funciona como debe funcionar, solo es el problema que menciono del que el led se queda encendido, y nada funciona...
 
despues de encender y apagar varias veces el circuito, los motores comienzan a girar, paso por los sensores cny un fondo blanco y los motores invierten su polaridad, con un fondo negro un motor gira mas rapido que otro, todo funciona como debe funcionar, solo es el problema que menciono del que el led se queda encendido, y nada funciona...

Intenta lo que te dije, quita el led que sale del PIC, yo lo puse directo a la alimentación de 5v. Espero se arregle con eso que te digo.
 
Buenas, primero que nada quiero agradecerte por compartir este circuito con nosotros, parece ser sencillo...
Estoy armando un robot sumo el cual tiene que pesar como máximo 1.5kg y tiene que medir máximo 20x20x20cm, a este le voy a poner 2 motorreductores, los cuales se alimentan con 12v y unos 2ahm... Aquí esta mi problema, que el integrado L293D proporciona unos 600mAhm de salida...
Estaba pensando en implementar una etapa de potencia para estos motores, si me puedes echar una mano pasándome algún circuito para la etapa de potencia estaría realmente agradecido...

Desde ya muchas gracias..
 
puedes reforzar la salida de los L293D con transistores, eso te permite llegar al nivel de corriente que buscas, incluso algo mas dependiendo del transistor, o podrías obviar por completo el uso del L293D y reemplazarlo directamente por transistores que te sirvan para hacer un puente H, para ese nivel de corriente puedes usar TIP41 y TIP42 respectivamente.
 
Ya lo pude solucionar, reemplazare el L293D por un puente H con TIP´s.
Ahora, también quisiera poner 3 sensores Sharp, uno al frente, otro a la derecha y otro a la izquierda... Lo que no se es si se podrá usando el mismo PIC, ya que tendría que tener unas 5 entradas analógicas. Estuve leyendo el datasheet y dice que tiene 16 entradas I/O creo, lo que no entiendo bien es donde conectar los sensores, al igual que la programación, que va a ser algo complicado para alguien como yo que no sabe jeje..
 
Hola, yo quiero hacer un sumo de 1kg, solo que tengo problemas con los sensores de ultrasonidos que detectan a los oponentes.

Encontré un código, lo modifique pero no se donde puedo estar mal, alguien me puede ayudar ?


__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC

INCLUDE <P16F877A.INC>

CBLOCK .50
Distancia ; Se expresará en centímetros.
ENDC

#DEFINE Disparo PORTB,2 ; Disparo para iniciar la medida.
#DEFINE Eco PORTB,3 ; Pulso cuya anchura hay que medir.

MinimaDistancia EQU .3
MaximaDistancia EQU .25
TMR0_Carga60micros EQU -d'27'

; ZONA DE CóDIGOS ********************************************************************

ORG .0
goto Inicio

ORG .4
goto ServicioInterrupcion


Inicio

bsf STATUS,RP0
bcf Disparo
bsf Eco
movlw b'00000000' ; Prescaler de 2 para el TMR0.
movwf OPTION_REG

CLRF TRISD ;D COMO SALIDA
CLRF TRISC

bcf STATUS,RP0
bcf Disparo ; Inicializa línea de disparo en bajo.

Principal
clrf Distancia ; Inicializa el registro.
bsf Disparo ; Comienza el pulso de disparo.
call Retardo_20micros ; Duración del pulso.
bcf Disparo ; Final del pulso de disparo.

Espera_Eco_1

btfss Eco ; Si ECO=0, espera el flanco de subida de la se?al
goto Espera_Eco_1 ; de salida del sensor.
movlw TMR0_Carga60micros ; Ya se ha producido el flanco de subida.
movwf TMR0 ; Carga el Timer 0.
movlw b'10100000' ; Autoriza interrupción del TMR0 (T0IE).
movwf INTCON

Espera_Eco_0

btfsc Eco ; Espera flanco de bajada de la se?al de la salida
goto Espera_Eco_0 ; del SRF04.
clrf INTCON ; Se ha producido el flanco de bajada. Prohíbe interrup.
call Visualiza ; Visualiza la distancia.
call Retardo_2s ; Espera un tiempo hasta la próxima medida.
goto Principal

; Subrutina "Interrupcion" ------------------------------------------------------

ServicioInterrupcion
movlw TMR0_Carga60micros ; Carga el Timer 0.
movwf TMR0
movlw .1 ; Se utiliza instrucción "addwf", en lugar de "incf"
addwf Distancia,F ; para posicionar flag de Carry.
movlw MaximaDistancia ; En caso de desbordamiento carga su máximo valor.
btfsc STATUS,C
movwf Distancia
bcf INTCON,T0IF
retfie

; Subrutina
Visualiza

movlw MinimaDistancia ; Va a comprobar si es menor del mínimo admisible.
subwf Distancia,W ; (W)=(Distancia)-MinimaDistancia
btfss STATUS,C ; ?C=1?, ?(W) positivo?, ?(Distancia)>=MinimaDistancia?
goto DistanciaMenor ; No ha resultado menor, y salta al mensaje de error.
movf Distancia,W ; Va a comprobar si es mayor del máximo admisible.
sublw MaximaDistancia ; (W)=MaximaDistancia-(Distancia)
btfsc STATUS,C ; ?C=0?, ?(W) negativo?, ?MaximaDistancia<(Distancia)?
goto DistanciaFiable ; No, la medida de la distancia entra dentro del rango.


DistanciaMayor
movlw MaximaDistancia ; La distancia es mayor que el máximo.
movwf Distancia
goto VisualizaDistancia

DistanciaMenor
movlw MinimaDistancia ; La distancia es menor del mínimo fiable.
movwf Distancia
goto VisualizaDistancia


DistanciaFiable
BCF PORTC,4
return


VisualizaDistancia
BSF PORTC,4
return

INCLUDE <RETARDOS.INC>
END
 
Última edición por un moderador:
Atrás
Arriba