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;