Problemes de Transformacions 3D: Rotacions, Reflexions i Robòtica

Clasificado en Física

Escrito el en catalán con un tamaño de 3,45 KB

Càlcul d'Angles d'Euler per a Rotacions 3D

Volem calcular els angles d'Euler per a una rotació amb eix u = (4, 2, 1), orientat pel mateix vector, i un angle de 0.9817 radians.

u=[4;2;1];
angle=0.9817;
Mef=cos(angle)*eye(3)+(1-cos(angle))/dot(u,u)*u*u'+sin(angle)/norm(u)*[0,-u(3,1),u(2,1);u(3,1),0,-u(1,1);-u(2,1),u(1,1),0];
beta=asin(Mef(3,1));
alfa=acos(Mef(1,1)/cos(beta));

Determinació de l'Angle de Rotació 3D

Una rotació té un eix definit per la recta que passa per Pr = (2, 10, 4) i té vector director vr = (4, 1, 6). Aquesta rotació transforma el punt P = (-10, -9, 1) al punt Q = (5.9968, -7.4394, -9.9246). Identifiqueu l'angle de rotació, orientant l'eix amb el vector director proporcionat.

Pr=[2;10;4];
vr=[4;1;6];
P=[-10;-9;1];
Q=[5.9968;-7.4394;-9.9246];
R=Pr+dot(P-Pr,vr)/dot(vr,vr)*vr;
cosangle=dot(P-R,Q-R)/(norm(P-R)*norm(Q-R));
vor=cross(P-R,Q-R);
or=sign(dot(vor,vr));
angleor=or*acos(cosangle)

Matriu de Reflexió en R³ Respecte d'un Pla

Determineu la matriu en base canònica de la reflexió a R³ respecte del pla definit pels vectors v1 = (-7, 10, -7) i v2 = (3, 9, 9).

v1=[-7;10;-7];
v2=[3;9;9];
n=cross(v1,v2);
Mef=eye(3)-2/dot(n,n)*n*n';

Transformació de Rectes per Rotació en R³

Calculeu la imatge de la recta definida per P = (2, 8, 8) i vector director v = (2, 4, 1) després d'una rotació d'angle π/3 al voltant de la recta d'intersecció dels plans:

  • x + 7y + 9z = 8
  • 8x + 2y - 2z = 9

L'eix de rotació s'orienta segons el producte vectorial dels vectors normals dels dos plans.

P=[2;8;8];
v=[2;4;1];
v1=[1;7;9];
v2=[8;2;-2];
u=cross(v1,v2);
angle=pi/3;
Mef=cos(angle)*eye(3)+(1-cos(angle))/dot(u,u)*u*u'+sin(angle)/norm(u)*[0,-u(3,1),u(2,1);u(3,1),0,-u(1,1);-u(2,1),u(1,1),0];
A=[v1';v2'];
B=[8;9];
pfix=A\B;
vF=pfix-Mef*pfix;
nouP=Mef*P+vF;
nouv=Mef*v

Cinemàtica Directa de Robot amb Múltiples Articulacions

En una competició de la First Lego League, els participants van haver de resoldre el següent problema de robòtica:

Un robot amb tres articulacions (a1, a2, a3) i una eina final (m) té les següents posicions inicials:

  • a1 = (0, 0, 0)
  • a2 = (2, 0, 0)
  • a3 = (2, 0, 0)
  • m = (1, 0, 0)

Els eixos de rotació per a cada articulació són, respectivament:

  • u1 = (1, 0, 0)
  • u2 = (0, 1, 0)
  • u3 = (1, 0, 0)

Calculeu la posició final de l'eina (m) si cada articulació gira en l'ordre següent: articulació 3 (ang3 = 50º), articulació 2 (ang2 = 42º), i articulació 1 (ang1 = 49º).

a1=[0;0;0];
a2=[2;0;0];
a3=[2;0;0];
m=[1;0;0];
u1=[1;0;0];
u2=[0;1;0];
u3=[1;0;0];
ang3=degtorad(50);
ang2=degtorad(42);
ang1=degtorad(49);
Meg3=cos(ang3)*eye(3)+(1-cos(ang3))/dot(u3,u3)*u3*u3'+sin(ang3)/norm(u3)*[0,-u3(3,1),u3(2,1);u3(3,1),0,-u3(1,1);-u3(2,1),u3(1,1),0];
vg3=a3-Meg3*a3;
mgirat=Meg3*m+vg3;
Meg2=cos(ang2)*eye(3)+(1-cos(ang2))/dot(u2,u2)*u2*u2'+sin(ang2)/norm(u2)*[0,-u2(3,1),u2(2,1);u2(3,1),0,-u2(1,1);-u2(2,1),u2(1,1),0];
vg2=a2-Meg2*a2;
mgirat=Meg2*mgirat+vg2;
Meg1=cos(ang1)*eye(3)+(1-cos(ang1))/dot(u1,u1)*u1*u1'+sin(ang1)/norm(u1)*[0,-u1(3,1),u1(2,1);u1(3,1),0,-u1(1,1);-u1(2,1),u1(1,1),0];
vg1=a1-Meg1*a1;
Posiciofinal=Meg1*mgirat+vg1;

Entradas relacionadas: