Autor Tema: Robot Hexapodo  (Leído 70502 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3227
Re: Robot Hexapodo
« Respuesta #30 en: 09 de Septiembre de 2012, 19:15:11 »
Hola compañeros

Yo tambien llevo idea de hacerlo con un uC y control por emisora,
lo malo es el 18f2550 que tiene pocas patas, llevo pensado hacerle un modulo
que cuelgue de un bus por ejemplo ... i2c, y programado con ccs.

Un saludo.


Brinca al 18F4550

Desconectado Algec

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 974
Re: Robot Hexapodo
« Respuesta #31 en: 12 de Septiembre de 2012, 06:53:05 »
Mas dudas. Besenham o bezier,. A ver, el calculo de trayectorias se hace con besenham o bezier?, besenham parece que es trayectoria recta y bezier curvas.
Es asi? En ambos casos las rutinas devuelven sucesion de puntos de la s trayectorias que con la cimnematica inversa se pasan a angulo.
Tanto en uno como en otro, ¿donde hay librerias en 3D?, solo encuentro ejemplos en 2D, de x1 y 1 a x2 Y2.
¿O es que el eje  Z se ajusta como un valor fijo en cada trayectoria? ¿El calculo no lo incluye?
Pero si se quiere que los desplazamientos de cada pata sean en 3 D necesitarimos un algortimo que incluya esos 3d. igual que para la cinematica inversa.
¿Teneis librerias en C en algun compilador que pueda estudiarme?
Me da igual CCS o lo que sea, si es CCS mejor que mejor, si no se adapta.
Gracias

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Robot Hexapodo
« Respuesta #32 en: 12 de Septiembre de 2012, 09:32:22 »
Algec, las curvas que yo voy a utilizar, son las Bezier. Con respecto a las dimensiones, pensa que podes formar una curva 3D a partir de dos curvas 2D, asi que es mas o menos lo mismo. O sea, si miras la pata desde el costado, vas a ver que describe una curva, parecida a una U invertida, y si la miras desde el frente vas a ver que describe una curva similar, dependiendo del movimiento que este haciendo el robot en ese instante (podria estar caminando de frente, de costado, o un poco de ambos). Es una simple composicion de movimientos.
Si queres ver algo de codigo fuente, echale una mirada a este proyecto: http://www.pablogindel.com/trabajos/samsa-ii-2010/
En este link tenes el codigo fuente en C++.

Saludos!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado Algec

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 974
Re: Robot Hexapodo
« Respuesta #33 en: 12 de Septiembre de 2012, 14:39:36 »
Bien asi si lo comprendo, baje el codigo que me dices, lo estuvemirando hace unos dias, asicomohice algunas rutinas de cogigo de bezier. El codigo del samsaII es muy completo pero entender un codigo completo por muy bien organizado que este es complejo.  De hecho no veo clara la estructura, es un buen lio de ficheros y no conozco bien el compilador que el utiliza.
De todas formas si tienes un diagrama de bloques me gustaria ver como pretendes organizar el codigo, yo es lo primero que voy a hacer antes de nada,.
Las rutinas de cinematica inversa y de bezier ya las tengo medio preparadas en base.
Una  cuestion mas. necsitas un pic para 18PWM, supongo que el que elejiste es capaz, o seran pwm por software a base de interrupciones?

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Robot Hexapodo
« Respuesta #34 en: 12 de Septiembre de 2012, 18:57:52 »
De todas formas si tienes un diagrama de bloques me gustaria ver como pretendes organizar el codigo, yo es lo primero que voy a hacer antes de nada,.
Las rutinas de cinematica inversa y de bezier ya las tengo medio preparadas en base.
Una  cuestion mas. necsitas un pic para 18PWM, supongo que el que elejiste es capaz, o seran pwm por software a base de interrupciones?

No suelo hacer diagramas en bloques ni de ningun tipo para mis programas, ya que todos tienen mas o menos la misma estructura y trato de hacerlo lo mas intuitivo posible. Como mencione, voy a hacerlo por capas. Si veo que se vuelve muy complejo, probablemente lo documente.
El PWM lo voy a generar por software, ya que no tengo conocimiento de ningun pic que tenga 18 canales PWM. En principio voy a usar un pic18f2550, para poder comandar los servos por USB.
Saludos!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Robot Hexapodo
« Respuesta #35 en: 18 de Septiembre de 2012, 16:31:07 »
Hola!! Alguien sabe cuánto puede llegar a consumir un microservo en un régimen relativamente normal? Necesito saberlo para diseñar la fuente.
No encontré ninguno de los reguladores que Akenafab mencionó más arriba. Pero pude conseguir este:
MC34063A
Wide Input Voltage Range: 3 V to 40 V
High Output Switch Current: Up to 1.5 A
Adjustable Output Voltage

Creen que con 1.5A me alcance para los 18 servos?
Saludos y gracias!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Robot Hexapodo
« Respuesta #36 en: 18 de Septiembre de 2012, 16:35:40 »
El primer comentario del servo dice:

Citar
I checked the current draws on 5v: idle, about 10ma, freely moving full swing or with a little resistance, about 100-200ma, and stalled, 600ma.

No contesto mensajes privados, las consultas en el foro

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Robot Hexapodo
« Respuesta #37 en: 18 de Septiembre de 2012, 17:51:10 »
Gracias Suky! No lo había visto.
200mA x 18 servos = 3.6A
Es mucho más de lo que pensaba. Tal vez pueda ponerle un transistor externo para llegar a los 3A, total es raro que se muevan los 18 servos simultáneamente.

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein


Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: Robot Hexapodo
« Respuesta #39 en: 23 de Noviembre de 2012, 17:19:38 »
Gracias Suky! No lo había visto.
200mA x 18 servos = 3.6A
Es mucho más de lo que pensaba. Tal vez pueda ponerle un transistor externo para llegar a los 3A, total es raro que se muevan los 18 servos simultáneamente.
Ahí esta la clave, el consumo lo puedes limitar con la cantidad de servos que mueves en simultaneo.
Lo que no se cual es el consumo cuando están poco cargados. Será cuestión de ensayarlos.
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Robot Hexapodo
« Respuesta #40 en: 23 de Noviembre de 2012, 22:53:25 »
Muchas gracias por el consejo Willi, pero pienso utilizar un regulador switching ya que pueden manejar mas corriente y no disipan tanto calor.
Hoy mismo pedí unas muestras a TI del LM2596, el cual ya probé en otro proyecto y funciona de maravilla ;) Soporta 3A continuos y picos de 4.5A

Por cierto, les comento que decidí utilizar todos componentes SMD, ya que me vengo amigando con esta tecnología, y me permite achicar bastante los circuitos. Cuando tenga el diseño definitivo del circuito y el PCB lo comparto con ustedes ;)
Saludos!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: Robot Hexapodo
« Respuesta #41 en: 24 de Noviembre de 2012, 21:22:33 »
Hola Gera, tanto entusiasmo que le pones me han dado ganas de hacer algo parecido  :-/

Supongo que como vas por el lado del montaje superficial ya te has inclinado por el 18f4550  ;-)
No tanto por el tema de memoria para programa, sino por las I/O que al momento de mas adelante agregar sensores quizas el 18f2550 te resulte escaso.

Yo con montaje superficial no me animo todavía, ademas que no tengo equipo  :oops:

Estuve pensando en eso de la cinemática inversa y se me ocurrió algo para prescindir un poco, aunque no se que es lo mejor.

Pensaba en algo así como definir algunos movimientos pre establecido para cada pata, que en realidad es el mismo para cualquier pata.
Para esto se necesitaria armar una pata pero en ves de poner los servos habría que poner potenciometros y grabar los movimientos en una etapa previa, algo así como una etapa de aprendizaje.

Otro detalle que me surgió de ver el video del PhantomX es el tipo de servos a utilizar, mas que nada por el rango de giro, los que pusiste en el primer mensaje creo son de 60 grados y los veo un poco limitado.
Aunque no se si quieres darle la misma versatilidad que el PhantomX.

Operating speed: 0.10sec/60 degree

Eso es lo que esta especificado, pero no se si 60 grados es el rango o solo se refiere a la velocidad.
No estoy muy canchero con los servos pero poner el tiempo que tarda en hacer 60° parece que es lo habitual.
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.

Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: Robot Hexapodo
« Respuesta #42 en: 24 de Noviembre de 2012, 21:52:34 »
y con el tema del control de los servos como la llevas?

copio algunos links para referencia y tenerlos a mano para ir leyendolos

Programa para controlar X servos con 1 interrupción (PIC18 y PIC16)
Algoritmo para controlar hasta 8 servos con una sola interrupción (en C)
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Robot Hexapodo
« Respuesta #43 en: 25 de Noviembre de 2012, 14:48:26 »
Hola Gera, tanto entusiasmo que le pones me han dado ganas de hacer algo parecido  :-/

Supongo que como vas por el lado del montaje superficial ya te has inclinado por el 18f4550  ;-)
No tanto por el tema de memoria para programa, sino por las I/O que al momento de mas adelante agregar sensores quizas el 18f2550 te resulte escaso.
[\quote]
Exacto! Es el pic que estaba pensando utilizar. El formato TQFP es muy pequeño y te permite ahorrar mucho espacio en la placa. Asique me viene de 10!

Citar
Estuve pensando en eso de la cinemática inversa y se me ocurrió algo para prescindir un poco, aunque no se que es lo mejor.

Pensaba en algo así como definir algunos movimientos pre establecido para cada pata, que en realidad es el mismo para cualquier pata.
Para esto se necesitaria armar una pata pero en ves de poner los servos habría que poner potenciometros y grabar los movimientos en una etapa previa, algo así como una etapa de aprendizaje.
[\quote]
Yo tambien pensaba en un principio utilizar movimientos predefinidos. Pero eso limitaria mucho las capacidades del robot, ya que solo podria realizar esos movimientos y nada mas. Si quisieras que haga movimientos nuevos, tendrias que programarlos. En cambio, con la cinematica inversa, tenes control total de la posicion de cada pata, pudiendo crear movimientos muy complejos sin la necesidad de mucha programacion.
Ademas podes hacer que el robot "adapte" sus movimientos. Por ejemplo, hay unos que tienen sensores de presion en las patas para detectar el contacto con el suelo. Esto les permite caminar por superficies irregulares.


Citar
Otro detalle que me surgió de ver el video del PhantomX es el tipo de servos a utilizar, mas que nada por el rango de giro, los que pusiste en el primer mensaje creo son de 60 grados y los veo un poco limitado.
Aunque no se si quieres darle la misma versatilidad que el PhantomX.

Operating speed: 0.10sec/60 degree

Eso es lo que esta especificado, pero no se si 60 grados es el rango o solo se refiere a la velocidad.
No estoy muy canchero con los servos pero poner el tiempo que tarda en hacer 60° parece que es lo habitual.

Esa es la velocidad del servo. Te dice que recorre 60º en 0.1 segundos. Sin embargo no requiero gran amplitud de movimiento, ya que pienso hacer un robot relativamente simple. Digamos que es un prototipo para ir familiarizandome con estos bichitos. Si todo sale bien, podria hacer una version mas robusta del robot ;)

Agradezco mucho tu interes en el proyecto! Por el momento estoy un poco demorado porq cuento con poco tiempo, pero voy a ir compartiendo todos mis avances!

Saludos!!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado pajaro

  • PIC24H
  • ******
  • Mensajes: 1121
Re: Robot Hexapodo
« Respuesta #44 en: 06 de Diciembre de 2012, 20:31:30 »
Hola Gera
¿que tal compañero?
¿como te fue con el robot araña?
quien domina a quien?...
el Gera al robot o el robot a Gera?..jejeje
como te va con el pequeño invento

me acuerdo muy amenudo de este hilo, es mi espinita
nos podias deleitar con algun video

un saludo


 

anything