ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Matrices de rotación como funciones en matlab


Enviado por   •  8 de Octubre de 2024  •  Resumen  •  349 Palabras (2 Páginas)  •  26 Visitas

Página 1 de 2

%MATRIZ DE ROTACION EN X

function R=Rx(alpha)

R= [ 1 0 0 ;

0 cos(alpha) - sin(alpha);

0 sin(alpha) cos(alpha)]

end

%MATRIZ DE ROTACION EN Y

function R=Ry(phi)

R = [ cos(phi) 0 sin(phi) ;

0 1 0;

-sin(phi) 0 cos(phi)]

end

%MATRIZ DE ROTACION EN Z

function R=Rz(theta)

R = [ cos(theta) -sin(theta) 0 ;

sin(theta) cos(theta) 0;

0 0 1]

end

%%%EJEMPLOS ROTACIONES BASICAS%%%

clc, clear all, close all

auvw=[-4;7;-2]

buvw=[2;9;1]

%----------------------

Rz(30*pi/180)

axyz=Rz(30*pi/180)*auvw

bxyz=Rz(30*pi/180)*buvw

%%CASO 2----------------

clc, clear all

axyz=[-4;7;-2]

bxyz=[2;9;1]

auvw=Rz(30*pi/180)^-1*axyz

auvw=Rz(30*pi/180)'*axyz

buvw=Rz(30*pi/180)'*bxyz

%COMPOSICION DE ROTACIONES

clc , clear all

syms theta alpha beta

%ROTACIONES RESPECTO AL SITEMA FIJO

R=simplifly(Ry(theta)*Rz(beta)*Rx(alpha))

%ROTACIONES RESPECTO AL SITEMA MOVIL

R=simplifly(Rx(alpha)*Rz(beta)*Ry(theta))

clc, clear all

%................................................................

w = [2;3;1]

P1 = [4;1;6]

wants = [0 -w(3) w(2);

w(3) 0 -w(1);

-w(2) w(1) 0]

Vp = cross(w,P1)

Vp = (wants*P1)

%---------------------------------------------------------

syms theta dtheta

%dRx(theta

dR = [0 0 0;

0 -sin(theta)*dtheta -cos(theta)*dtheta;

0 cos(theta)*dtheta -sin(theta)*dtheta]

wants = simplify(dR*Rx(theta).')

%la respuesta de esto coincide con el w antisimetrico considerando que solo

%hay rotacion en el eje x

%---------------------------------------------------------

clc, clear all

w = [2;-6;7]

t = 1

Modw = sqrt(w(1)^2 + w(2)^2 + w(3)^2)

wants = [0 -w(3) w(2);

w(3) 0 -w(1);

-w(2) w(1) 0]

ExpWt = eye(3) + (wants/Modw)*sin(Modw*t) + (wants^2/Modw^2)*(1-cos(Modw*t))

ExpWt*ExpWt'

%----------------------------

clc, clear all

syms theta

w = [0;0;1]

wants = [0 -w(3) w(2);

w(3) 0 -w(1);

-w(2) w(1) 0]

R = simplify(eye(3)+wants*sin(theta)+wants^2*(1-cos(theta)))

%-------------------------------

clc, clear all

theta = 60*pi/180

w = [1;3;2]

Modw = sqrt(w(1)^2 + w(2)^2 + w(3)^2)

wuni

...

Descargar como (para miembros actualizados) txt (3 Kb) pdf (43 Kb) docx (9 Kb)
Leer 1 página más »
Disponible sólo en Clubensayos.com