Jump to content
Fórum Script Brasil
  • 0

Jogar valores, nas variáveis de uma matriz no Matlab


myagyh
 Share

Question

Boa noite gostaria de saber se tem alguém que pode me ajudar na seguinte questão:

no código abaixo eu obtenho duas matrizes T e T1 as quais possuem as mesmas variáveis theta1, theta2, theta3, theta4 e theta5, preciso fazer uma função que jogue os mesmos valores nessas variáveis nas duas matrizes e que sejam N valores para que eu consiga ver se elas possuem os mesmos resultados ou não.

alguém pode me ajudar com isso?

 

segue abaixo o codigo para obter as matrizes:

 

clear
clc
% Primeiro, a função Link é usada para criar cada elo. 
% Os parâmetros da função Link são exatamente os parâmetros
% de Denavit-Hartemberg do elo em questão, nesta ordem: 
% sigma = tipo de junta (0: rotativa ou 1: prismática)
% "d" em metros (m)
% "a" em metros(m)
% alpha em radianos(rad)

L(1) = Link([0 0 0.0495 -pi/2]);
L(2) = Link([0 0 0.07037 -pi/2]);
L(3) = Link([0 0.28958 0 -pi/2]);
L(4) = Link([0 0 0 -pi/2]);
L(5) = Link([0 0.25881 0 pi]);

% Em seguida, a função SerialLink cria o robô 
% utilizando os elos criados anteriormente. 

robo = SerialLink(L, 'name', 'Arm InMoov')


% A função fkine permite obter a matriz de transformação
% homogênea que relaciona o referencial da base com o do
% efetuador (cinemática direta) para uma dada configuração.

disp('Variáveis de juntas:');
syms theta1
syms theta2
syms theta3
syms theta4
syms theta5
% Verificar se é + ou -
q0 = [theta1 (theta2+pi/2) theta3 (theta4+pi) theta5]

disp('Cinematica Direta:');
T = robo.fkine(q0)
robo.teach


syms theta1
syms theta2
syms theta3
syms theta4
syms theta5


d0= 0.0495
d1= 0.07037
d2= 0.05304
d3= 0.23654
d4= 0.25881

A01 = [cos(theta1) 0 -sin(theta1) d0*cos(theta1); sin(theta1) 0 cos(theta1) d0*sin(theta1); 0 -1 0 0; 0 0 0 1]
A12 = [cos(theta2 - pi/2) 0 -sin(theta2 - pi/2) d1*cos(theta2 - pi/2); sin(theta2 - pi/2) 0 cos(theta2 - pi/2) d1*sin(theta2 - pi/2); 0 -1 0 0; 0 0 0 1]
A23 = [cos(theta3) 0 -sin(theta3) 0; sin(theta3) 0 cos(theta3) 0; 0 -1 0 d2+d3; 0 0 0 1]
A34 = [cos(theta4 - pi) 0 -sin(theta4 - pi) 0; sin(theta4 -  pi) 0 cos(theta4 - pi) 0; 0 -1 0 0; 0 0 0 1]
A45 = [cos(theta5) sin(theta5) 0 0; sin(theta5) -cos(theta5) 0 0; 0 0 -1 d4; 0 0 0 1]


T1 = A01*A12*A23*A34*A45

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.1k
×
×
  • Create New...