Así que esencialmente quiero trazar el cambio en la trayectoria mientras realizo una maniobra usando las ecuaciones de clohessy wiltshire para perseguir un objetivo. Tengo un ciclo for para 10,000 y me gustaría calcular cada valor de r(t) mientras ejecuto el ciclo y luego lo trazo. Alguien sabe como se haría esto? Puedo publicar el código si quieres.
truco rápido:
close all
n=0.00113;
phi_rr = @(t) [4-3*cos(n*t) 0 0; 6*(sin(n*t)-n*t) 1 0; 0 0 cos(n*t)];
phi_rv = @(t) [1/n*sin(n*t) 2/n*(1-cos(n*t)) 0; 2/n*(cos(n*t)-1) 1/n*(4*sin(n*t)-3*n*t) 0; 0 0 1/n*sin(n*t)];
r_0 = [100;0;0];
v_0 = [-1;-.115;0];
T=0:10:2000;
% plot red circle at origin
plot3(0,0,0,'ro')
hold on
% start loop
for t=T
% display 50% progres
if t==T(floor(end/2))
disp('50 % done');
end
r=phi_rr(t)*r_0 + phi_rv(t)*v_0;
plot3(r(1),r(2),r(3),'k.');
end
rotate3d
xlabel('x'), ylabel('y'), zlabel('z')
axis equal
grid on
hold off
De acuerdo con wikipedia y this , el eje x apunta radialmente desde el centro de gravedad al objetivo, el eje y apunta a la dirección de movimiento del objetivo y el eje z es perpendicular al anterior (sistema diestro). Entonces, con los valores iniciales proporcionados como ejemplo anterior, la trayectoria se ve así:
La vista es relativa al objetivo (círculo rojo), es decir, cómo el objetivo ve moverse al perseguidor.
Eso significa que el perseguidor comienza a 100 metros radialmente hacia afuera de la posición del objetivo y con una velocidad de -1 m/s radialmente hacia adentro y -11,5 cm/s tangencialmente hacia atrás en relación con el objetivo.
El perseguidor golpea el objetivo con una velocidad distinta de cero. Entonces, para hacerlo más realista, tendría que hacer una simulación de varios pasos con la consiguiente disminución de la velocidad del perseguidor.
harvey rael
Astronauta de todos los días
harvey rael