比例導引法Matlab仿真_第1頁
比例導引法Matlab仿真_第2頁
比例導引法Matlab仿真_第3頁
比例導引法Matlab仿真_第4頁
比例導引法Matlab仿真_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

%三維制導模型,比例導引法求解%源代碼作者不詳,注釋人:lylogn%Modifiedbylylogn,2012年4月17日clearall;closeall;clc

dt=0.1;%仿真時間步長alpha=pi/6;v_t=0.42;s_t=v_t*dt;%目標以0.42的速度沿alpha的角方向勻速飛行,s_t為目標在單位仿真步長前進的距離v_m=0.60;s_m=v_m*dt;%s_m為導彈在單位仿真步長沿目前速度方向前進的距離x(1)=0;y(1)=1.0;z(1)=0;

pmr(:,1)=[x(1);y(1);z(1)];

%導彈初始位置,在坐標原點ptr(:,1)=[25;5;7];

%目標初始位置K=3;

%比例導引系數(shù)q(1)=0;

%初始的視線角,設定參考線為t和m初始位置的連線o(1)=0;

%初始導彈速度向量方向角a(1)=0;

%初始導彈相對目標的運動速度向量的方向角for(k=2:600)

ptr(:,k)=[ptr(1,1)-v_t*cos(alpha)*dt*k;ptr(2,1);ptr(3,1)+v_t*sin(alpha)*k*dt];

%目標運行軌跡方程,勻速直線運動r(k-1)=sqrt((ptr(1,k-1)-pmr(1,k-1))^2+(ptr(2,k-1)-pmr(2,k-1))^2+(ptr(3,k-1)-pmr(3,k-1))^2);%k-1時刻導彈與目標在三維空間中的歐氏距離c=sqrt((ptr(1,k)-pmr(1,k-1))^2+(ptr(2,k)-pmr(2,k-1))^2+(ptr(3,k)-pmr(3,k-1))^2);

%目標k時刻位置與導彈k-1時刻位置間的距離b=acos((r(k-1)^2+s_t^2-c^2)/(2*r(k-1)*s_t));

%%%此處參見公式一%%%dq=acos((r(k-1)^2-s_t^2+c^2)/(2*r(k-1)*c));%k-1時刻到k時刻的視線角變化量(假設導彈不動,目標移動)%%%此處參見圖一%%%ifabs(imag(b))>0

%如果acos的值出現(xiàn)虛數(shù),則說明該角度一定很小,對其進行近似操作b=0.0000001;

end

ifabs(imag(dq))>0

%同上dq=0.0000001;

end

q(k)=q(k-1)+dq;

%更新視線角o(k)=o(k-1)+K*dq;

%更新導彈速度向量方向角a(k)=o(k)-q(k);

%更新導彈相對目標的運動速度向量的方向角c1=r(k-1)*sin(b)/sin(a(k)+b);

%計算k-1時刻角b所對邊的長度%%%此處參見公式二%%%c2=r(k-1)*sin(a(k))/sin(a(k)+b);

%計算k-1時刻角a(k)所對邊的長度c3=sqrt((c1-s_m)^2+(c2-s_t)^2+2*(c1-s_m)*(c2-s_t)*cos(a(k)+b));

%計算k時刻導彈m與目標t之間的距離(在導彈不動,目標移動的假設條件下),為假值dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

%k-1時刻到k時刻的視線角變化量(假設導彈移動,目標也移動),以下代碼重復以上過程,為假值%%%此處參見圖二%%%ifabs(imag(dq))>0

dq=0.0000001;

end

q(k)=q(k-1)+dq;

o(k)=o(k-1)+K*dq;

a(k)=o(k)-q(k);

c1=r(k-1)*sin(b)/sin(a(k)+b);

c2=r(k-1)*sin(a(k))/sin(a(k)+b);

c3=sqrt((c1-s_m)^2+(c2-s_t)^2+2*(c1-s_m)*(c2-s_t)*cos(a(k)+b));

%計算k時刻導彈m與目標t之間的距離(在導彈移動,目標也移動的假設條件下),逼近真值,以下計算使之更加精確dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

%k-1時刻到k時刻的視線角變化量(假設導彈移動,目標也移動),以下代碼重復以上過程,為真值ifabs(imag(dq))>0

dq=0.0000001;

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%?dedbylylogn2012.04.17,Tomake'dq'getclosertoitstruevalueq(k)=q(k-1)+dq;

o(k)=o(k-1)+K*dq;

a(k)=o(k)-q(k);

c1=r(k-1)*sin(b)/sin(a(k)+b);

c2=r(k-1)*sin(a(k))/sin(a(k)+b);

c3=sqrt((c1-s_m)^2+(c2-s_t)^2+2*(c1-s_m)*(c2-s_t)*cos(a(k)+b));

%計算k時刻導彈m與目標t之間的距離(在導彈移動,目標也移動的假設條件下),逼近真值,以下計算使之更加精確dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

%k-1時刻到k時刻的視線角變化量(假設導彈移動,目標也移動),以下代碼重復以上過程,為真值ifabs(imag(dq))>0

dq=0.0000001;

end

q(k)=q(k-1)+dq;

o(k)=o(k-1)+K*dq;

a(k)=o(k)-q(k);

c1=r(k-1)*sin(b)/sin(a(k)+b);

c2=r(k-1)*sin(a(k))/sin(a(k)+b);

c3=sqrt((c1-s_m)^2+(c2-s_t)^2+2*(c1-s_m)*(c2-s_t)*cos(a(k)+b));

%計算k時刻導彈m與目標t之間的距離(在導彈移動,目標也移動的假設條件下),逼近真值,以下計算使之更加精確dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

%k-1時刻到k時刻的視線角變化量(假設導彈移動,目標也移動),以下代碼重復以上過程,為真值ifabs(imag(dq))>0

dq=0.0000001;

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%q(k)=q(k-1)+dq;

o(k)=o(k-1)+K*dq;

a(k)=o(k)-q(k);

c1=r(k-1)*sin(b)/sin(a(k)+b);

c2=r(k-1)*sin(a(k))/sin(a(k)+b);

c3=sqrt((c1-s_m)^2+(c2-s_t)^2+2*(c1-s_m)*(c2-s_t)*cos(a(k)+b));

%計算k時刻導彈m與目標t之間的距離,終于近似為真值了x1(k)=ptr(1,k-1)+c2/s_t*(ptr(1,k)-ptr(1,k-1));

y1(k)=ptr(2,k-1)+c2/s_t*(ptr(2,k)-ptr(2,k-1));

z1(k)=ptr(3,k-1)+c2/s_t*(ptr(3,k)-ptr(3,k-1));

%計算出角b所對邊與目標運動軌跡的交點:(x1,y1,z1)%%%參見公式三%%%x(k)=pmr(1,k-1)+s_m/c1*(x1(k)-pmr(1,k-1));

y(k)=pmr(2,k-1)+s_m/c1*(y1(k)-pmr(2,k-1));

z(k)=pmr(3,k-1)+s_m/c1*(z1(k)-pmr(3,k-1));

%計算出導彈k時刻所運動到的位置:(x,y,z)%%%參見公式三%%%pmr(:,k)=[x(k);y(k);z(k)];

r(k)=sqrt((ptr(1,k)-pmr(1,k))^2+(ptr(2,k)-pmr(2,k))^2+(ptr(3,k)-pmr(3,k))^2);

ifr(k)<0.06;

break;

end;

end

sprintf('遭遇時間:%3.1f',0.1*k);

figure(1);

plot3(pmr(1,1:k),pmr(2,1:k),pmr(3,1:k),'k',ptr(1,:),ptr(2,:),ptr(3,:));

axis([02505025]);

text(x(180),y(180),z(180),'\rightarrow比例導引律制導下的導彈運動軌跡');

text(ptr(1,280),ptr(2,280),ptr(3,280),'\rightarrow

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論