# Consejos para hacer un robot de sumo



## mrblackjack (Jul 13, 2010)

Hola buenos días,
este es mi primer mensaje y ya estoy preguntando  pero lo juro que llevo buscando esto 2-3 días y nada.

estoy realizando un proyecto del instituto y me he propuesto realizar un robot de sumo (minisumo). El robot estará gobernado por un PIC 16F877A y tendrá 2 sensores para la línia (CNY70) y otros dos sensores de infrarojos para detectar oponentes (2 sharp gp2d-12). Para mover-lo creo que lo más adecuado son servomotores, y por eso les pondré dos HS-311 O futaba 3003.

Llevo ya varios dias buscando información y más o menos tengo la info necesaria para empezar a diseñarlo.
Ahora me toca hacer el circuito. Es aquí donde tengo varias dudas.

1) En proteus y en Orcad, porqué el PIC16F877A no tiene VSS/VO? O es que dando voltaje al MCLR ya va? Y el contacto a tierra (gnd) ??

ejemplo



2) Luego, estan los servomotores.
¿Cómo puedo conectarlos al PIC y hacerlos funcionar como un motor dc?  No creo que sea tán fácil como ponerlos al pin directamente no?
Es que llevo buscando muuucho tiempo y solo información para servos no truncados y el mió si que está truncado, para girar 360º.

3) Y una última pregunta. El oscilador. He de ponerle uno de cristal de cuarzo a 4mhz o programando no se qué se puedo usar el interno? 

Bueno eso eso todo jeje
Estaría muy agradecido si me ayudaráis, de verdad.
Gracias por adelantado y buenas noches


----------



## lubeck (Jul 13, 2010)

> 2) Luego, estan los servomotores.
> ¿Cómo puedo conectarlos al PIC y hacerlos funcionar como un motor dc? No creo que sea tán fácil como ponerlos al pin directamente no?
> Es que llevo buscando muuucho tiempo y solo información para servos no truncados y el mió si que está truncado, para girar 360º.



si se pueden destruncar... por ahi hay un metodo pero te recomiendo mejor los motores a pasos o motores con encoder integrado....


----------



## mrblackjack (Jul 14, 2010)

lubeck dijo:


> si se pueden destruncar... por ahi hay un metodo pero te recomiendo mejor los motores a pasos o motores con encoder integrado....



No, no lo que quiero es usarlos para que funcionen a 360  como un motor normal.

Gracias por la respuesta.


----------



## lubeck (Jul 14, 2010)

Te puede interesar...


> http://electronicausac.foroactivo.c...servo-motor-hs-311-para-girar-en-360-t122.htm


----------



## mrblackjack (Jul 14, 2010)

lubeck dijo:


> Te puede interesar...



No esa parte ya lo tenia, ahora busco como conectarlo al pic. Si se pone directamente el terminal de control al pin con PWN y los otros a la masa y al voltaje, o si necesito hacer puentes o drivers... etc

Saludos.


----------



## lubeck (Jul 14, 2010)

Tienes el proteus????
en sus ejemplos viene como se conecta un servo....


----------



## mrblackjack (Jul 15, 2010)

si lo tengo y buscando en design samples no encuentro nada con servos, solo lcd, calculadoras,etc
podrias poner una imagen donde lo indique?


----------



## lubeck (Jul 15, 2010)

a ver si te sirve este...
sino me avisas...
https://www.forosdeelectronica.com/f24/solo-ejemplos-picbasicpro-proteus-39938/#post331477


----------



## mrblackjack (Jul 25, 2010)

ok me sirve. Veo que solamente se pone y listo, sin resistencias ni puentes h.
Muy útil, gracias!!


----------



## jim_17 (Jul 25, 2010)

Depende del trucaje que le hayas realizado al servomotor, le has quitado toda la electronica al servo o has conservado parte de ella ? Si le has quitado toda la electronica tienes que controlar el motor mediante un transistor, si no le has quitado la electronica puedes conectar el rojo en el positivo el negro a massa i el blanco/amarillo directamente en el pic.


----------



## lubeck (Jul 25, 2010)

> Si le has quitado toda la electronica tienes que controlar el motor mediante un transistor, si no le has quitado la electronica puedes conectar el rojo en el positivo el negro a massa i el blanco/amarillo directamente en el pic.



Cierto... en el esquema estoy considerando que dejas la circuiteria... y asi funciona con pulsos(PWM) si se la quitaste lo mas seguro es que si necesites un puente H o el transistor que te menciona jim...

Saludos...


----------



## HADES (Jul 25, 2010)

mrblackjack dijo:


> 2)....... Luego, estan los servomotores.
> ¿Cómo puedo conectarlos al PIC y hacerlos funcionar como un motor dc?  No creo que sea tán fácil como ponerlos al pin directamente no?
> Es que llevo buscando muuucho tiempo y solo información para servos no truncados y el mió si que está truncado, para girar 360º.



Compañero porque no le echa una leida a este link que habla del truncado con servos son de los amigos del foro de uControl, calculo te puede ayudar en lo que buscas sino avisame!
http://www.ucontrol.com.ar/wiki/index.php?title=Como_trucar_un_servo

saludos!

HADES


----------



## willynovi (Jul 29, 2010)

creo que lo que deberias hacer es retirarle por completo la electronica al servo y alimentarlo solo como un motor y una caja reductora, una ves que le hayas retirado el tope del engranaje de salida.

El control de un motor DC que gire en ambos sentidos lo puedes hacer con un puente H, y en la red encontraras varios ejemplos de circuitos funcionales. Dependiendo de la corriente que consumas puedes hacerlo con transistores darlington o con mosfet.
Si el giro es en un solo sentido, que no creo que sea este el caso puedes usar un puente simple y no el full.
Tambien puedes usar un integrado, el L293 o el L298, dependiendo de la corriente tambien, el L298 hasta 2 amperes puedes manejar dos motores con un solo integrado.

Saludos,


----------



## mrblackjack (Sep 20, 2010)

mi intención es hacerlo servir para la locomoción, por lo que tiene que poder ir para atrás y para adelante


como he visto en el link que me mandásteis, quitandole el tope al eje y cambiando el potenciómetro por una resistencia variable ya está trucado. así daria 360º y tendria el circuito interno de control.
ahora, también se le puede quitar todo  para que quedara como un simple motor dc..
que diferencia hay?? que recomendáis?? es mas facil dejar el circuito de control y usar PWM, o no?


2)
luego está la alimentación.
aquí está parte del datasheet:
_Current Drain (4.8V): 7.4mA/idle, 160mA no load operating
Current Drain (6.0V): 7.7mA/idle, 180mA no load operating
_
por lo que veo, como mucho gasta 180mA (360ma ambos).
según tengo entendido, el pic16f84a (el que voy a usar) solo da como máximo en cada pata 25ma (0.025a), entonces debo usar un L293 no?? hay otras opciones???

Sintetizando, si dejo el circuito y uso el l293 para ambos motores, iria todo perfectamente?
vosotros como lo hariáis?

Bueno muchas gracias por las anteriores respuestas,poco a poco voy entendiendo un poquito más.

PD:segun veo los ejemplos de nuestro amigo lubeck, los servos van directos al pic y funcionan. deduzco que eso es porque al funcionar libres, sin peso, lo que gastan son unos 7.4 mA no?? pero al usar dos y encima de encima con 2kg encima esto se dispara y el pic no da suficiente corriente, verdad?


----------



## mrblackjack (Sep 23, 2010)

alguien que me pueda ayudar?


----------



## willynovi (Sep 25, 2010)

hola che, estuve un poco alejado pero aqui va una respuesta, jejejej

Yo usaria el motor solo, o sea quitando toda la placa de control del servo, pero es porque ya se como usarlo así.

Creo que si dejas la placa de control puedes manejar el giro segun el ancho del pulso, y tambien con eso la velocidad, pero no estoy seguro de lo que te digo, tendrias que investigar un poco.

En todo caso si quieres hacer un control de velocidad, creo que cualquiera de las dos opciones es igual de dificil o facil.

Por lo de manejar el servo directo del PIC pues no te lo recomiendo, colocale el L293 o con algunos transistores puedes hacer un pequeño puente H.


----------



## DJ DRACO (Sep 25, 2010)

cosas a saber en cuanto a los robots sumo:

por lo general y depende del reglamento son robots que miden 20x20cm y pesan como maximo 3Kg.
No es conveniente utilizar servomotores, porque pueden tener el torque, pero no una velocidad útil para la pelea.
Te puedo asegurar que el 100% de los robot's sumo que he visto y construido llevan motores DC comunes de unos 12V 12W.
En realidad no tiene un control tipo PWM ni nada por el estilo.
Simplemente tiene 4 sensores para el piso (para no salirse del ring) y 4 sensores ópticos o infrarrojos para "ver" al oponente.
Puedes usar 2 o 4 motores.
Vas a necesitar 1 puente H para cada motor. Lo puedes hacer con Transistores Mosfet o con el L298.
El pic solo toma valores digitales en las entradas (los 8 sensores) y envia 4 bits hacia los 2 puente H...el L298 ya tiene 2 puente H en el mismo encapsulado.

saludos.


----------



## Apuleyo (Sep 25, 2010)

Yo diría que le agregues una bomba de pulso electromagnético, cosa de que afecte toda la electrónica de tu sumo rival y de lo que se encuentre en un radio de 10 km. Eso sí, también se haría pendorcha la electrónica de tu robot, así ahí ya no te puedo ayudar jaja


----------



## shadow_x (Sep 25, 2010)

1) En proteus y en Orcad, porqué el PIC16F877A no tiene VSS/VO? O es que dando voltaje al MCLR ya va? Y el contacto a tierra (gnd) ??

Muchos elementos tienes los piens para voltaje y tierra ocultos; esto es porque, siendo cinceros, son elementos que a fuerza necesitan estos pines conectados. al ahcer tu circuito tienes que pones de que conector viene el voltajes marcando Vss y el GND

2) Luego, estan los servomotores.
¿Cómo puedo conectarlos al PIC y hacerlos funcionar como un motor dc?  No creo que sea tán fácil como ponerlos al pin directamente no?
Es que llevo buscando muuucho tiempo y solo información para servos no truncados y el mió si que está truncado, para girar 360º.

solo truncando los servos obtienes el giro continuo; si quieres poder y giro usa motoreductores.

3) Y una última pregunta. El oscilador. He de ponerle uno de cristal de cuarzo a 4mhz o programando no se qué se puedo usar el interno? 

se puede usar el interno para ahorrar pines; se recomienda el externo para precicion y para cuando usas pics que no tiene oscilador interno; puedes usar un cristal de hasta 2oMhz


----------



## DJ DRACO (Sep 26, 2010)

algunas consideraciones a la hora de hacer electrónica...

1) si no saben nada ni se gasten
2) los servomotores son motores DC con un enconder resistivo incorporado y tambien tiene reduccion por engranes.
3) los servomotores ademas tienen un tercer pin que es el de control, donde se inyecta la señal PWM para controlarlos...esa señal no es de gran voltaje ni corriente, por ende y en la mayor parte de los circuitos que he visto va directo al pin de PIC.
4) para controlar PIC's y sobretodo los de media gama como el que quieres utilizar, necesitas saber programar, y saber programar muy bien...te recomiendo que arranques con el PIC16F84 como todo mundo.

y podria seguir pero es domingo y da fiaca.

saludos.


----------



## mrblackjack (Sep 28, 2010)

ok ok voy entiendiendo.
Aclaro que es para un robot de minisumo, es decir de 10x10 y 500g como mucho, por tanto no requiere mucha fuerza.

Algo que aún no me queda claro es sobre como alimentar y controlar los servos.
Que hago
+ le quito todo el circuito de control y le dejo un motor dc normal, y este lo controlo y alimento con un l293b
+ mantengo el circuito de control y lo manejo por pwm?? la alimentación seria independiente a la del pic, es decir, le reservaria a los motores una bateria independiente para ellos, conectado el polo positivo y negativo al de los motores. Esta opción es posible, o la tierra (gnd) ha de ser común???


según esas opciones, que me recomendáis???? 
cual es más facil para programar o para montar??
gracias compañeros por vuestra ayuda!!
------------------ 
el que me recomendó el pic16f84, decirle que también lo tengo, así que si no me faltan patas lo usaré, haber que tal


----------



## Jessy (Oct 1, 2010)

Pues yo he participado en luchas sumo y tambien he visto como mejorarlos. Lo mejor que puedes hacer es no usar servomotores eso es mejor cuando necesitas mas "precisión" en una lucha de sumo necesitas potencia. Y como recomendacion utiliza para detectar un sensor ultrasonico.


----------



## mrblackjack (Oct 18, 2010)

a ver si alguien me puede aclarar una duda.
para controlar los servos que ahora son simples motores DC cómo lo hago? he visto el driver l293d que viene con diodos y creo que es lo mejor, no? 
porque me interesa controlar dos motores en una sola dirección pero que no siempre estarán activados a la vez 

y en tema de programación, como hago para controlar este driver??? se supone que debo enviar 5V o 0V en diferentes pines, enable, vs,etc, pero de forma constante o tengo que usar el PWM???? Es que me preocupa porquemi PIC no tiene PWM (PIC16F84A).

Un saludo!

Esto va para adelante! Prometo publicar todo mi trabajo cuanto termine todo y así ayudar a los novatillos jeje


----------



## Jessy (Oct 18, 2010)

Con el L293D no tienes que enviar pulsos que seria el PWM seria en forma constante con el pic enviando 10 para que vaya adelante y 01 hacia atras (igual puede ser 01 adelante 10 atras). Por lo tanto no tienes necesidad de usar el PWM, el PWM es para variar la velocidad del motor o controlar posicion o.o


----------

