Autor Tema: Duda, microsoft robotics studio.  (Leído 4798 veces)

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

Desconectado FlyingVector

  • PIC10
  • *
  • Mensajes: 46
Duda, microsoft robotics studio.
« en: 16 de Febrero de 2009, 16:42:13 »

Hola,

     Tengo una duda... me descargue la version de microsoft robotics studio de la pagina official, perro todavia no se como es que funciona, alguien me podria orientar un poco o recomendar algun manual de este programa...

básicamente mi intención primordial, por lo que quise probar el programa, es por la capacidad de simular, en mi caso un robot de varias patas con servos en ellas, mi proposito es simular el robot con las ecuaciones que obtuve de la cinemática inversa...   

Gracias.

Desconectado cerebro

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 735
Re: Duda, microsoft robotics studio.
« Respuesta #1 en: 16 de Febrero de 2009, 22:45:29 »
 y por que no te probas el MARILOU  robotic studio :mrgreen:
 pegale una ojeada http://www.todopic.com.ar/foros/index.php?topic=19805.msg193520#msg193520
 saludos
LAS MALVINAS SON ARGENTINAS!

Desconectado FlyingVector

  • PIC10
  • *
  • Mensajes: 46
Re: Duda, microsoft robotics studio.
« Respuesta #2 en: 17 de Febrero de 2009, 00:48:01 »

puedo meter ecuaciones?? de manera que los servos respondan a los valores obtenidos por cada iteracion de las ecuaciones. 

Desconectado cerebro

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 735
Re: Duda, microsoft robotics studio.
« Respuesta #3 en: 17 de Febrero de 2009, 01:14:32 »

puedo meter ecuaciones?? de manera que los servos respondan a los valores obtenidos por cada iteracion de las ecuaciones. 

muy tranquilamente  :mrgreen:. yo incluso he utilizado unas toolbox de robotica de MatLab  :o. Si te animas a marilou yo te doy una mano en lo que pueda....

 :shock: hiciste el modelo cinematico inverso de un hexapodo, quisiera poder ver esas ecuaciones deben ser larguitas... yo una vez hice uno de uno bien simple y me costo bastante y las formulas eran bien grosas  :).
 Saludos.
LAS MALVINAS SON ARGENTINAS!

Desconectado FlyingVector

  • PIC10
  • *
  • Mensajes: 46
Re: Duda, microsoft robotics studio.
« Respuesta #4 en: 17 de Febrero de 2009, 02:04:04 »
asi es estoy trabajando en eso....

Las ecuaciones las obtuve a travez de métodos geometricos, habia trabajado con la matriz jacobiana, pero me resulta un poco mas engorroso pasar el metodo al micro, por eso preferí realizar la cinemática por metodos geométricos. Me encontré un ejemplo en un libro y era de un manipulador que tenia similitudes con la pata y de ahi me base un poco. Los resultados ya los simule en MatLab, y ahora estoy buscando un simulador en el que pueda ver como se vera el proyecto... en lo que espero a que lleguen mis muestras de los dsPIC's que pedí a microchip.

en cuanto a las ecuaciones... esta es la función que use para resolver la cinemática inversa en una pata.

esta en Visual Basic es un pedazo de un programa en el que estuve trabajando:
Código: [Seleccionar]

'---------------------------------------------------------------------------------------------
'Por Hector H. Torres O. 2009
'Funcion para resolver la cinematica inversa de una pata del hexapodo
'---------------------------------------------------------------------------------------------
'Ac = Angulo de la pata
'---------------------------------------------------------------------------------------------
Private Sub IKleg(ByVal X As Double, ByVal Y As Double, ByVal Z As Double, ByVal AC As Double)
        Dim qc As Double ' Angle of coxa
        Dim qt As Double ' Angle of tibia
        Dim qf As Double ' Angle of femur
        Dim qf1, qf2 As Double
        Dim xx As Double
        Dim XYcox As Double


        qc = Atan2(Z, X) - ((AC * PI) / 180)
        xx = Sqrt((X * X) + (Z * Z))

        XYcox = Sqrt(((xx - LCoxa) * (xx - LCoxa)) + (Y * Y))
        qt = Acos(((LFemur * LFemur) + (LTibia * LTibia) - (XYcox * XYcox)) / ((2 * LFemur) * LTibia))

        qf1 = Atan2((xx - LCoxa), Y)
        qf2 = Acos(((LFemur * LFemur) - (LTibia * LTibia) + (XYcox * XYcox)) / ((2 * LFemur) * XYcox))
        qf = qf1 + qf2

        Acoxa = qc                  'Angulo de la coxa
        Afemur = (-qf) + 1.57  'Angulo del femur
        Atibia = -1.57 + (qt)     'Angulo de la Tibia


    End Sub

por lo pronto instalare el Marilou y me pondre a moverle para ver que tanto puedo hacer con el  :)

« Última modificación: 17 de Febrero de 2009, 02:08:25 por FlyingVector »

Desconectado cerebro

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 735
Re: Duda, microsoft robotics studio.
« Respuesta #5 en: 17 de Febrero de 2009, 14:43:06 »
 :) mucho nas sencillo de lo que pensaba, en nuestro caso eran bastantes mas largas... hay dos formas de jugar con marilou una es que permite cargar un ejecutable generado en otro compilador y la otra es por medio de una libreria (creo que las ultimas versiones ya traen un wizard para MatLab). Te paso una libreria que tiene las funciones de mover los servos por si queres ir jugando  :mrgreen:


Código: [Seleccionar]

% Matlab primero debe cargar las librerias donde estan programadas las
% funciones

loadlibrary('marilou.dll','libreriah.h');   % Carga de la libreria


%--------------------------------------------------------------------------
 nombre{1}='Rob1/teta1/a1/servo';       
 nombre{2}='Rob1/teta2/a1/servo';
 nombre{3}='Rob1/teta3/a1/servo';       
 %nombre = char('Rob1/teta1/a1/servo','Rob1/teta2/a1/servo','Rob1/teta3/a1/servo');
 Nombres=cellstr(nombre);
 
 
 [aux numero_de_motores]=size(Nombres);
                                       
%---------------------------------------------------------------------------                                         


tiempo=10;                              %permite modificar los tiempos utilizados por los motores
calllib('marilou','coneccion');

for n=0:90
   
 angulos= [90 0 0];                               %no interesa si el vector es fila o columna
 
 calllib('marilou','mover_motores',numero_de_motores,angulos,Nombres,tiempo);

end

calllib('marilou','desconectar');

unloadlibrary('marilou');

En ese caso simplemente mueve un manipulador RRR.
Saludos
LAS MALVINAS SON ARGENTINAS!