Ir para conteúdo
Fórum Script Brasil
  • 0

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


myagyh

Pergunta

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 para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...