fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

Robot Hexapodo

355 Respuestas
33 Usuarios
0 Reactions
187.5 K Visitas
danluc
Respuestas: 63
Topic starter
(@danluc)
Trusted Member
Registrado: hace 16 años

Bueno soy nuevo en el foro me llamo Daniel y este en mi nuevo proyecto, se trata de un Hexápodo cortado a láser ya tengo las piezas cortadas, y casi todos los accesorios (tornillos, tirantes, tuercas, pasadores de nylon, tapones para las patas, etc.) llevo tiempo queriendo hacer uno pero la verdad eso de ponerte a cortar pvc es un co..., ahora tengo la posibilidad de cortarlo a láser y de aluminio de 3mm la verdad es que el corte por láser es increíble. Bueno hay os lo dejo a ve que os parece.

Responder
354 respuestas
dragonet80
Respuestas: 1328
(@dragonet80)
Ardero
Registrado: hace 17 años

Bueno, este 2009 va a tocar competición de hexápodos en la Campus !!!

Responder
ubanov
Respuestas: 195
(@ubanov)
Estimable Member
Registrado: hace 16 años

[...] voy a hacer una electrónica modular (un 12f683 encargado de cada pata y un bus en anillo I2C con un DSPic de master, y además evito tirar tanto cable al situar cada circuito de 12f683 en la pata). [...]

Una paja mental que se me acaba de ocurrir...

Los servos que he desmontado lo que tienen es un sistema de control relativamente sencillo: un potenciometro que indica la posición en la que está el servo... no podría tener sentido el añadir en la lógica de cada pata que tu propones la gestión real del motor... (necesitarías gestionar potencia y leer por puerto analógico la posición del motor).

El fin de hacer esto sería el tener un sistema de comunicación bidireccional.

De esta forma se le podría indicar en qué angulo quieres colocar el motor, después podrías leer la posición real de cada servor o incluso dar la posibilidad de colocar la pata muerta, que luego la coloques a mano y puedas leer la posición (lo cual simplificaría el programar nuevos movimientos)...

No se si me he explicado bien.

Conocéis algo así o le veis sentido?

Responder
_jm_
Respuestas: 961
 JM
(@_jm_)
Prominent Member
Registrado: hace 20 años

Si se podría hacer, pero si quieres que el servo vaya a determinada posición el ya lleva su realimentación interna, por lo que sería dos veces hacer la misma cosa, es decirle donde queremos que esté y el está ahí, lo único que sirve es para detectar que el servo no ha llegado.

Sería fácil de hacer, no sé como será la realimentación del servo, si es un valor analógico sólo es leerlo con un adc, pero tb puede ser más complicado. Este motor tb lleva un potenciometro para su realimentación, y la señal de realimentación a la electrónica que controla el servo no es una señal analógica, son las 3, 4 y 5 imagen de osciloscopio (imagenes pequeñas) http://www.jmnlab.com/miniz/miniz.html .

Esta semana espero que me lleguen los primeros servos para realizar las primeras pruebas, si encuentras una razón interesante o utilidad que pueda tener en el hexápodo leer la posición del servo a través del microcontrolador como la de simplificar programar nuevos movimientos pues es ponerse.

Mi idea inical es usar un microcontrolador pequeño de 8 patas, dos de alimentación, 3 para los servos, 2 para un bus i2c y una para de señal de sincronización.

Por el bus i2c estarían conectados todos los microcontroladores, extremidades y microcontrolador principal. El micro principal diría la acción que se quiere realizar, por ejemplo avanzar a x velocidad, y cada microcontrolador de cada pata tendría almacenado los movimientos que tiene que hacer para realizar esa tarea.

La señal de sincronización se encargaría de que todas las patas se moviesen a la vez, coordinar el movimiento, su periódo sería el tiempo de movimiento mayor del conjunto, es decir en el primer pulso de la señal de sincronización (señal de reloj) esta para se mueve hasta aquí, el el segundo hasta aquí, ... en el séptimo hasta aquí.. y así se repetiría el ciclo.

De esta forma se pueden tener un monton de movimientos almacenados en la memoria de programa de cada pic, en la flash, cada micro sólo tendría que recibir la orden por i2c y manejar sus 3 servos al ritmo de una señal de reloj que coordine todas las patas, y el micro principal tendría el resto de tiempo libre para realizar otras tareas, sólo tiene que decir quiero avanzar, retroceder, avanzar en diagonal etc... Y poder dedicarse a tareas más complejas.

Un pic 12f683 ocupa muy poco, sería un pequeño pcb encima de cada pata, reduciría el cableado de los servos, y habría que mandar dos cables de i2c de uno a otro, dos de aliemntación para los servos desde el centro, y dos de alimentación para la lógica de uno a otro.

La otra opción puede ser un micro que controle los 20 servos, pero usando más micros pequeños seguro que se puede usar más memoria de programa para almacenar los movimientos, es más fácil programar estos, ejecutarlos y coordinarlos, y el precio y consumo del micro es despreciable.

No sé, esa es mi paja mental... ya la ire haciendo poco a poco, ya que nunca he montado un robot de estos y hablo desde la ignorancia. Si alguien se anima cualquier idea viene bien.

Responder
gizer20
Respuestas: 1570
(@gizer20)
Noble Member
Registrado: hace 19 años

Respondiendo al post de ubanov te dejo este link que puede que te sirva y explica como utilizar un servo como un sensor es decir colocas el servo en una posicion lo lees y se queda grabado en la memoria para luego reproducirlo

http://www.cibomahto.com/2008/02/thing- ... ut-device/

Responder
danluc
Respuestas: 63
Topic starter
(@danluc)
Trusted Member
Registrado: hace 16 años

Una sugerencia rapida echar un vistzo a esto
www.openservo.com
Un saludo

Responder
Página 18 / 71
Compartir: