《导弹自寻的制导律设计及仿真.doc》由会员分享,可在线阅读,更多相关《导弹自寻的制导律设计及仿真.doc(8页珍藏版)》请在课桌文档上搜索。
1、制导与控制系统原理一、 实验目的了解导弹制导律的设计、实验,加深对导弹自寻的制导律的理解。二、 实验要求1、 实验准备理论根底:学习过导弹制导与控制系统原理相关课程软件根底:熟悉MATLAB等相关软件2、 实验设计要求熟练应用MATLAB编程语言设计各种形式的制导律,不少于3种三、 实验原理相对运动方程是指描述导弹、目标、制导站之间相对运动关系的方程,建立相对运动方程是导引弹道运动学分析方法的根底。相对运动方程习惯上建立在极坐标系中,其形式最简单。下面分别建立自动瞄准制导的相对运动方程。自动瞄准制导的相对运动方程实际上是描述导弹与目标之间相对运动关系的方程。其中导弹相对目标的距离。导弹命中目标
2、时目标线与基准线之间的夹角,称目标方位角简称目标线角假设从基准线逆时针转到目标线上时,则为正。分别为导弹、目标速度矢量与基准线之间的夹角,称之为导弹弹道角和目标航向角。分别以导弹、目标所在位置为原点,假设由基准线逆时针旋转到各自的速度矢量上时,则为正,当攻击平面为铅垂面时,就是弹道倾角;当攻击平面为水平面时,就是弹道偏角。分别为导弹、目标速度矢量与目标线之间的夹角,相应称之为导弹速度矢量前置角和目标速度矢量前置角简称前置角。分别以导弹、目标为原点,假设从各自的速度矢量逆时针旋转到目标线上时,则为正。考虑到上图所示角度间的几何关系,以及导引关系方程,就可以得到自动瞄准制导的相对运动方程组为上面方
3、程组中,为描述导引方法的导引关系方程或称理想控制关系方程。在自动瞄准制导中常见的导引方法有:追踪法、平行接近法、比例导引法等,相应的导引关系方程为:追踪法:;平行接近法:;比例导引法:。上述方程组中: 或为,方程组中只含有5个未知数:或、,因此方程组是封闭的,可以求得确定解。根据可获得导弹相对目标的运动轨迹,称为导弹的相对弹道即观察者在目标上所观察到的导弹运动轨迹。假设目标相对地面坐标系惯性坐标系的运动轨迹后,则通过换算可获得导弹相对地面坐标系的运动轨迹绝对弹道。四、 实验容设计不同形式的导弹制导律,能根据得到的仿真实验曲线来分析各种制导律的优缺点。为便于讨论,设置模拟情况如下:认为导弹mis
4、sile速度为3M设马赫速为340m/s,目标target速度为1M。二者初始距离r为5000m,目标线与基准线初始夹角90。目标作匀速直线运动,速度与基准线夹角60。即设计参数如下:1、 追踪法制导律所决定的导弹和目标的运动学关系1) 引导运动方程:2) MATLAB仿真程序:%=setting parameters=%m=340; vm=3*m; vt=m;q0=90/180*pi;sigmat=60/180*pi;distance=5000;duration=7;%=calculating variables and coordinates=%fun=(t,y)vt*cos(y(2)-s
5、igmat)-vm; -vt*sin(y(2)-sigmat)/y(1); vm*cos(y(2); vm*sin(y(2); vt*cos(sigmat); vt*sin(sigmat);t,y=ode45(fun,0,duration,distance;q0;0;0;0;distance);N=length(t);yq=zeros(1,N);for k=1:N-1 yq(k)=(y(k+1,2)-y(k,2)/(t(k+1)-t(k);end%=Plot relevant variables and real-time location of objects=%figure(1);plot
6、(t,y(:,1),b,LineWidth,2);*label(time/s);ylabel(r(t)/m);ylim(0,5000);grid on;title(Distance between the missile and the target(Backtracking method);figure(2);plot(t,y(:,2)/pi*180,b,LineWidth,2);*label(time/s);ylabel(q(t)(sigma(t)/o);grid on;title(Angle between the target line(the missile velocity) an
7、d the reference line(Backtracking method);figure(3);plot(y(:,5),y(:,6),r*,y(:,3),y(:,4),b,LineWidth,2);*label(*(reference direction)/m);ylabel(y/m);grid on;title(Real place of target and missile(Backtracking method);figure(4);plot(t,yq/pi*180,b*,LineWidth,2);grid on;*label(time/s);ylabel(the acceler
8、ation rate of q/m/s2);title(Acceleration rate of the angle between the target line and the reference line(Backtracking method); %=Backtracking method=%3) 仿真结果:图1.1 导弹与目标距离变化图图1.2 目标线与基准线夹角变化图图1.3 目标与导弹位置变化图图1.4 目标线与基准线夹角速度变化图可见,追踪法中,导弹与目标的距离成线性变化。仿真时间7秒时,导弹接近目标,二者在坐标约1200,7000处相遇。在追踪过程中,越接近目标,导弹的弹道曲
9、率越大,即法向过载越大。2、 平行接近法所决定的导弹和目标的运动学关系1) 引导运动方程:2) MATLAB仿真程序:%=setting parameters=%m=340; vm=3*m; vt=m;q0=90/180*pi;sigmat=60/180*pi;distance=5000;duration=7;eta=asin(vt*sin(q0-sigmat)/vm);%=calculating variables and coordinates=%fun=(t,y)vt*cos(q0-sigmat)-vm*cos(eta); (vm*sin(eta)-vt*sin(q0-sigmat)/y
10、(1); vm*cos(q0-eta); vm*sin(q0-eta); vt*cos(sigmat); vt*sin(sigmat);t,y=ode45(fun,0,duration,distance;q0;0;0;0;distance);%=Plot relevant variables and real-time location of objects=%figure(1);plot(t,y(:,1),b,LineWidth,2);*label(time/s);ylabel(r(t)/m);ylim(0,5000);grid on;title(Distance between the m
11、issile and the target(Parallel approaching method);figure(2);plot(t,y(:,2)/pi*180,b,LineWidth,2);*label(time/s);ylabel(q(t)/o);grid on;title(Angle between the target line and the reference line(Parallel approaching method);figure(3);plot(t,(y(:,2)-eta)/pi*180,b,LineWidth,2);*label(time/s);ylabel(sig
12、ma(t)/o);grid on;title(Angle between the missile velocity and the reference line(Parallel approaching method);figure(4);plot(y(:,5),y(:,6),r*,y(:,3),y(:,4),b,LineWidth,2);*label(*(reference direction)/m);ylabel(y/m);grid on;title(Real place of target and missile(Parallel approaching method);%=Parall
13、el approaching method=%3) 仿真结果:图2.1 导弹与目标距离变化图图2.2 目标线与基准线夹角变化图图2.3 导弹速度与基准线夹角变化图图2.4 目标与导弹位置变化图可见,平行接近法中,导弹与目标的距离也成线性变化。仿真时间7秒时,导弹接近目标,二者在坐标约1200,7000处相遇。过程中目标线与基准线夹角不变,弹道平直,弹道曲率小于其他两种方法,导弹的需用法向过载较小。3、 比例导引法所决定的导弹和目标的运动学关系1) 引导运动方程:其中,K为比例引导参数,取K=5。2) MATLAB仿真程序:%=setting parameters=%m=340; vm=3*m;
14、 vt=m;q0=90/180*pi;sigmat=60/180*pi;distance=5000;duration=7;K=5;%=calculating variables and coordinates=%fun=(t,y)vt*cos(y(2)-sigmat)-vm*cos(y(2)-y(3); (vm*sin(y(2)-y(3)-vt*sin(y(2)-sigmat)/y(1); K*(vm*sin(y(2)-y(3)-vt*sin(y(2)-sigmat)/y(1); vm*cos(y(3); vm*sin(y(3); vt*cos(sigmat); vt*sin(sigmat);
15、t,y=ode45(fun,0,duration,distance;q0;q0;0;0;0;distance);N=length(t);yq=zeros(1,N);for k=1:N-1 yq(k)=(y(k+1,2)-y(k,2)/(t(k+1)-t(k);end%=Plot relevant variables and real-time location of objects=%figure(1);plot(t,y(:,1),b,LineWidth,2); *label(time/s); ylabel(r(t)/m); ylim(0,5000);grid on;title(Distanc
16、e between the missile and the target(Proportional navigation method);figure(2);plot(t,y(:,2)/pi*180,b,LineWidth,2); *label(time/s); ylabel(q(t)/o);grid on;title(Angle between the target line and the reference line(Proportional navigation method);figure(3);plot(t,y(:,3)/pi*180,b,LineWidth,2); *label(
17、time/s); ylabel(sigma(t)/o);grid on;title(Angle between the missile velocity and the reference line(Proportional navigation method);figure(4);plot(y(:,6),y(:,7),r*,y(:,4),y(:,5),b,LineWidth,2); *label(*(reference direction)/m); ylabel(y/m);grid on;title(Real place of target and missile(Proportional
18、navigation method);figure(5);plot(t,yq/pi*180,b*,LineWidth,2); *label(time/s); ylabel(qprime/m/s2);grid on;title(Acceleration rate of the angle between the target line and the reference line(Proportional navigation method); %=Proportional navigation method=%3) 仿真结果:图3.1 导弹与目标距离变化图图3.2 目标线与基准线夹角变化图图2
19、.3 导弹速度与基准线夹角变化图图2.4 目标与导弹位置变化图图2.5 目标线与基准线夹角速度变化图可见,比例导引法中,导弹与目标的距离也成线性变化。仿真时间7秒时,导弹接近目标,二者在坐标约1200,7000处相遇。过程中目标线与基准线夹角越到后期变化越小,弹道相对平直,弹道曲率后期变化较小,导弹的需用法向过载较小。五、实验结论追踪法要求导弹在接近目标的过程中,导弹的速度矢量始终指向目标,这使得它的末段弹道曲率较大,导弹最后总是绕到目标前方去攻击,不能实现对目标的全方向拦截。平行接近法要求在制导过程中始终保持目标视线在空间给定方向平行移动,这使得平行接近法弹道比拟平直,曲率比拟小,导弹的需用
20、法向过载总是比目标的法向过载小。但是实现引导规律所需的参量不易测量,很难保证制导过程中严格准确的实现导引方程,同时制导系统也比拟复杂。比例引导法要求导弹飞行过程中,保持速度矢量的转动角速度与目标视线的转动角速度成给定的比例关系。这使得捣蛋的理想弹道的曲率较小,尤其到后期的需用过载较小。从响应速度和制导精度上来讲,比例导引法都具有较大的优势。六、总结在本次试验中我遇到了非常多的问题,从一开场如何将引导规律转化成MATLAB中的模型,如何求解这样的微分方程组,如何绘制想要的数据局部;同时对于各种导引方式的理解也不够仔细。在实验中,我从网络上了解了许多函数MATLAB的使用方法,像ode45,zeros等等。相应的也解决了很多问题,最初实验时导弹与目标最终一直不能相遇,在检出了许多遍以后我发现是角度制与弧度制的转换出了问题,MATLAB中都是以弧度制来计算的。类似于这样的问题还有很多,我想这次实验也为以后的学习和工作积累了知识与经历。