资源简介
适用于弹箭飞行控制原理、导弹飞行力学等多门课程 课程设计的需求 在MATLAB平台进行弹道仿真。 适用于弹箭飞行控制原理、导弹飞行力学等多门课程 课程设计的需求 在MATLAB平台进行弹道仿真。
代码片段和文件信息
close all;clear;clc
tspan=(0:0.01:55) ; %t区间、步长
[ty]=ode45(@fun05tspan[260 0 0 7100 225 0 500]); %45龙格算法积分参数
%选取特征点,求动力学系数和传递函数
i=find(t==6) %t在矩阵中位置 0 6 20 34.55 V最大
ma0=[0.60.80.91.01.2];
Cx00=[-0.2000-0.2210-0.2315-0.2420-0.2500];
Cxa20=[-0.0005-0.0005-0.0005-0.0005-0.0005];
Cya0=[0.25050.2530.2540.2550.256];
Cydetaz0=[0.040.0470.0430.0450.045];
mza0=[-0.0290-0.0298-0.0300-0.0302-0.0302];
mzdetaz0=[-0.0220-0.0240-0.0232-0.0230-0.0234];
mzwz0=[-0.002-0.0015-0.0015-0.0012-0.0016];
%空军标准气象条件
cc=20.046*(288.34-5.86*10^(-3)*y(i4))^0.5; %声速
ma=y(i1)/cc; %马赫数
g=9.806*(1.0-2*y(i4)/6371000); %重力加速度
pp=1.225*(1.0-2.0323*10^(-5)*y(i4))^4.83; %密度
q= 0.5*pp*y(i1)*y(i1); %动压
%三次样条插值求各系数
Cx0=interp1(ma0Cx00ma‘spline‘);
Cxalpha2=interp1(ma0Cxa20ma‘spline‘);
Cyalpha=interp1(ma0Cya0ma‘spline‘);
Cydetaz=interp1(ma0Cydetaz0ma‘spline‘);
Czbeita=-Cyalpha;
mza=interp1(ma0mza0ma‘spline‘);
mzdetaz=interp1(ma0mzdetaz0ma‘spline‘);
mzwz=interp1(ma0mzwz0ma‘spline‘);
L=2.358; %弹长
Jz=60.85; %转动惯量
S=0.456; %弹翼特征面积
P=3000; %推力为3000
Xt=12000;Yt=0;Zt=0; %目标位置
K=4;
cita=y(i2);
v=y(i1);
h=y(i4);
if i alpha=5*sin(0.2*pi*t+pi)-y(i2)*57.3 ; %攻角
elseif i alpha=(y(i5)*g)/(P/57.3+(Cyalpha)*q*S); %攻角
else %末端攻击段
r=((y(i4)-Yt)^2+(y(i3)-Xt)^2);
dq=y(i1)*((y(i3)-Xt)*sin(y(i2))-(y(i4)-Yt)*cos(y(i2)))/r; %dq/dt y
alpha=(y(i5)*y(i1)*K*dq+y(i5)*g*cos(y(i2)))/(P/57.3+(Cyalpha)*q*S);
end
m=y(i5);
detaz=-mza/mzdetaz*alpha;
%计算各参数的偏导数
Xv=pp*v*S*(Cx0+Cxalpha2*alpha*alpha);
Xa=2*Cxalpha2*alpha*q*S;
Mzwz=mzwz*q*S*L*L/v;
Mza=mza*q*S*L;
Mzdetaz=mzdetaz*q*S*L;
Yv=v*pp*S*(Cyalpha*alpha+Cydetaz*detaz);
Ya=Cyalpha*q*S;
Ydetaz=Cydetaz*q*S;
%特征点各动力系数,忽略下洗延迟
A11=-Xv/m;A12=0;A13=-g*cos(cita);A14=-(Xa+P*alpha)/m;A15=0;A16=1/m;
A21=0;A22=Mzwz/Jz;A23=0;A24=Mza/Jz;A25=Mzdetaz/Jz;
A31=Yv/m/v;A32=0;A33=g*sin(cita)/v;A34=(Ya+P)/m/v;A35=Ydetaz/m/v;A36=1/m/v;
%动力系数
a1=-A22
a2=-A24
a3=-A25
a4=A34
a5=A35
%计算弹体传递系数
Km=(-A25*A34+A35*A24)/(A22*A34+A24) %Km
Tm=1/sqrt(-A24-A22*A34) %Tm
Em=(-A22+A34)/sqrt(-A24-A22*A34)/2 %ξm
T1=A25/(A25*A34-A35*A24) %T1
Wdz_jieta=tf(Km*[T1 1][Tm^2 2*Tm*Em 1 0]); %俯仰角对舵偏的传递函数
Kwz=-0.35;Kp=8;Ki=4; %设计的参数
%Kwz=-0.08;Kp=20;Ki=4;
G=tf(1[0.01 1]); %舵机一阶惯性环节
G_Kwz=tf(Kwz*Km*[T1 1][Tm^2 2*Tm*Em 1])
figure(‘numbertitle‘‘off‘‘name‘‘内环伯德图‘)
margin(series(G_KwzG));grid on; %内环伯德图
figure(‘numbertitle‘‘off‘‘name‘‘内环闭环传递函数阶跃响应‘)
step(feedbac
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3679 2016-06-21 21:29 913108320128张昊\Bode01.m
文件 1378 2016-06-21 20:37 913108320128张昊\dandao01.m
文件 3558 2016-06-21 20:21 913108320128张昊\fun05.m
I.A.SH. 311296 2016-06-21 21:30 913108320128张昊\Thumbs.db
文件 391401 2016-06-21 22:08 913108320128张昊\【91310820128张昊】弹箭飞行控制原理.docx
目录 0 2016-06-21 22:12 913108320128张昊
文件 676232 2016-06-21 22:12 913108320128张昊\【91310820128张昊】弹箭飞行控制原理.pdf
----------- --------- ---------- ----- ----
1387544 7
- 上一篇:matlab的pde工具箱使用方法
- 下一篇:缆车过缆线轨迹求解
相关资源
- matlab的pde工具箱使用方法
- 心音信号处理分析(附matlab代码)
- MATLAB实现弹道仿真
- MIMO雷达DOA估计中的克拉美罗界计算
- Matlab图像分割边缘提取算法
- Boost电路的MATLAB仿真
- 基于气动力的导弹姿态控制(附MATL
- 有源电力滤波器的Matlab仿真_高勇
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
评论
共有 条评论