飞行力学大作业 SY1105401 白斌
case 9,
sys=mdlTerminate(t,x,u); otherwise
DAStudio.error('Simulink:blocks:unhandledFlag', num2str(flag)); end
function [sys,x0,str,ts]=mdlInitializeSizes sizes = simsizes;
sizes.NumContStates = 9; sizes.NumDiscStates = 0; sizes.NumOutputs = 10; sizes.NumInputs = 4; sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1; % at least one sample time is needed
sys = simsizes(sizes);x0 = [78.08215331 0 17.41198822 0 0 0 0 0.21940595 0];
str = [];
ts = [0 0];
function sys=mdlDerivatives(t,x,u) %%%%%%%气动参数
matrix_Alpha = [-10 -5 0 5 10 15 20 25 30 35 40 45]'/180*pi;
matrix_Elevator = [-24 -12 0 12 24]; matrix_Beta1 = [0 5 10 15 20 25 30]/180*pi; matrix_Beta2 = [-30 -20 -10 0 10 20 30]/180*pi; matrix_Cx = [-0.099 -0.048 -0.022 -0.04 -0.083 -0.081 -0.038 -0.02 -0.038 -0.073 -0.081 -0.04 -0.021 -0.039 -0.076 -0.063 -0.021 -0.004 -0.025 -0.072 -0.025 0.016 0.032 0.006 -0.046 0.044 0.083 0.094 0.062 0.012 0.097 0.127 0.128 0.087 0.024 0.113 0.137 0.13 0.085 0.025 0.145 0.162 0.154 0.1 0.043 0.167 0.177 0.161 0.11 0.053 0.174 0.179 0.155 0.104 0.047 0.166 0.167 0.138 0.091 0.04];
matrix_Cz=[0.77 0.241 -0.1 -0.416 -0.731 -1.053 -1.366 -1.646 -1.917 -2.12 -2.248 -2.229]'; matrix_Cm=[0.205 0.081 -0.046 -0.174 -0.259 0.168 0.077 -0.02 -0.145 -0.202 0.186 0.107 -0.009 -0.121 -0.184 0.196 0.11 -0.005 -0.127 -0.193
31
飞行力学大作业 SY1105401 白斌
0.213 0.11 -0.006 -0.129 -0.199 0.251 0.141 0.01 -0.102 -0.15 0.245 0.127 0.006 -0.097 -0.16 0.238 0.119 -0.001 -0.113 -0.167 0.252 0.133 0.014 -0.087 -0.104 0.231 0.108 0 -0.084 -0.076 0.198 0.081 -0.013 -0.069 -0.041 0.192 0.093 0.032 -0.006 -0.005]; matrix_trust_throtte_0=[1060 670 880 1140 1500 1860 635 425 690 1010 1330 1700 60 25 345 755 1130 1525 -1020 -710 -300 350 910 1360 -2700 -1900 -1300 -247 600 1100 -3600 -1400 -595 -342 -200 700 ];
matrix_trust_throtte_77=[12680 9150 6200 3950 2450 12680 9150 6313 4040 2470 1400 12610 9312 6610 4290 2600 1560 12640 9839 7090 4660 2840 1660 12390 10176 7750 5320 3250 1930 11680 9848 8050 6100 3800 2310]; matrix_trust_throtte_100=[20000 15000 10800 7000 4000 21420 15700 11225 7323 4435 2600 22700 16860 12250 8154 5000 2835 24240 18910 13760 9285 5700 3215 26070 21075 15975 11115 6860 3950 28886 23319 18300 13484 8642 5057];
matrix_height=[0 10000 20000 30000 40000 50000]; martix_mach=[0 0.2 0.4 0.6 0.8 1]';
matrix_Cl=[0 -0.001 -0.003 -0.001 0 0.07 0.009 0 -0.004 -0.009 -0.01 -0.01 -0.01 -0.011 0 -0.008 -0.017 -0.02 -0.022 -0.023 -0.023 0 -0.012 -0.024 -0.03 -0.034 -0.034 -0.037 0 -0.016 -0.03 -0.039 -0.047 -0.049 -0.05 0 -0.019 -0.034 -0.044 -0.046 -0.046 -0.047 0 -0.02 -0.04 -0.05 -0.059 -0.068 -0.074 0 -0.02 -0.037 -0.049 -0.061 -0.071 -0.079 0 -0.015 -0.016 -0.023 -0.033 -0.06 -0.091 0 -0.008 -0.002 -0.006 -0.036 -0.058 -0.076 0 -0.013 -0.1 -0.014 -0.035 -0.062 -0.077 0 -0.015 -0.19 -0.027 -0.035 -0.059 -0.076];
matrix_Cn = [0 0.018 0.038 0.056 0.064 0.074 0.079
32
1400 2500 飞行力学大作业 SY1105401 白斌
0 0.019 0.042 0.057 0.077 0.086 0.09 0 0.018 0.042 0.059 0.076 0.093 0.106 0 0.019 0.042 0.058 0.074 0.089 0.106 0 0.019 0.043 0.058 0.073 0.08 0.096 0 0.018 0.039 0.053 0.057 0.062 0.08 0 0.013 0.03 0.032 0.029 0.049 0.068 0 0.007 0.017 0.012 0.007 0.022 0.03 0 0.004 0.004 0.002 0.012 0.028 0.064 0 -0.014 -0.035 -0.046 -0.034 -0.012 0.015 0 -0.017 -0.047 -0.071 -0.065 -0.002 0.011 0 -0.033 -0.057 -0.073 -0.041 -0.013 -0.001]; matrix_Cl_deltaa=[-0.041 -0.041 -0.042 -0.04 -0.043 -0.044 -0.043 -0.052 -0.053 -0.053 -0.052 -0.049 -0.048 -0.049 -0.053 -0.053 -0.052 -0.051 -0.048 -0.048 -0.047 -0.056 -0.053 -0.051 -0.052 -0.049 -0.047 -0.045 -0.05 -0.05 -0.049 -0.048 -0.043 -0.042 -0.042 -0.056 -0.051 -0.049 -0.048 -0.042 -0.041 -0.037 -0.082 -0.066 -0.043 -0.042 -0.042 -0.02 -0.003 -0.059 -0.043 -0.035 -0.037 -0.036 -0.028 -0.013 -0.042 -0.038 -0.026 -0.031 -0.025 -0.013 -0.01 -0.038 -0.027 -0.016 -0.026 -0.021 -0.014 -0.003 -0.027 -0.023 -0.018 -0.017 -0.016 -0.011 -0.007 -0.017 -0.016 -0.014 -0.012 -0.011 -0.01 -0.008];
matrix_Cn_deltaa=[0.001 0.002 -0.006 -0.011 -0.015 -0.024 -0.022 -0.027 -0.014 -0.008 -0.011 -0.015 -0.01 0.002 -0.017 -0.016 -0.006 -0.01 -0.014 -0.004 -0.003 -0.013 -0.016 -0.006 -0.009 -0.012 -0.002 -0.005 -0.012 -0.014 -0.005 -0.008 -0.011 -0.001 -0.003 -0.016 -0.019 -0.008 -0.006 -0.008 0.003 -0.001 0.001 -0.021 -0.005 0 -0.002 0.014 -0.009 0.017 0.002 0.007 0.004 0.002 0.006 -0.009 0.011 0.012 0.004 0.007 0.006 -0.001 -0.001 0.017 0.015 0.007 0.1 0.012 0.004 0.003
0.008 0.015 0.006 0.004 0.011 0.004 -0.002 0.016 0.011 0.006 0.1 0.011 0.006 0.001];
matrix_Cl_deltar=[0.005 0.007 0.013 0.018 0.015 0.021 0.023 0.017 0.016 0.013 0.015 0.014 0.011 0.01 0.014 0.014 0.011 0.015 0.013 0.01 0.011 0.01 0.014 0.012 0.014 0.013 0.011 0.011 -0.005 0.013 0.011 0.014 0.012 0.01 0.011 0.009 0.009 0.009 0.014 0.011 0.009 0.01 0.019 0.012 0.008 0.014 0.011 0.008 0.008
33
飞行力学大作业 SY1105401 白斌
0.005 0.005 0.005 0.015 0.01 0.01 0.01 0 0 -0.002 0.013 0.008 0.006 0.006
-0.005 0.004 0.005 0.011 0.008 0.005 0.014 -0.011 0.009 0.003 0.006 0.007 0 0.02 0.008 0.007 0.005 0.001 0.003 0.001 0]; matrix_Cn_deltar=[-0.018 -0.028 -0.037 -0.048 -0.043 -0.052 -0.062 -0.052 -0.051 -0.041 -0.045 -0.044 -0.034 -0.034 -0.052 -0.043 -0.038 -0.045 -0.041 -0.036 -0.027 -0.052 -0.046 -0.04 -0.045 -0.041 -0.036 -0.028 -0.054 -0.045 -0.04 -0.044 -0.04 -0.035 -0.027 -0.049 -0.049 -0.038 -0.045 -0.038 -0.028 -0.027 -0.059 -0.057 -0.037 -0.047 -0.034 -0.024 -0.023 -0.051 -0.052 -0.03 -0.048 -0.035 -0.023 -0.023 -0.03 -0.03 -0.027 -0.049 -0.035 -0.02 -0.019 -0.037 -0.033 -0.024 -0.045 -0.029 -0.016 -0.009 -0.026 -0.03 -0.019 -0.033 -0.022 -0.01 -0.025 -0.013 -0.008 -0.013 -0.016 -0.009 -0.014 -0.01];
matrix_damp=[-0.267 0.882 -0.108 -8.8 -0.126 -0.36 -7.21 -0.38 0.061
-0.11 0.852 -0.108 -25.8 -0.026 -0.359 -0.54 -0.363 0.052 0.308 0.876 -0.188 -28.9 0.063 -0.443 -5.23 -0.378 0.052 1.34 0.958 0.11 -31.4 0.113 -0.42 -5.26 -0.386 -0.012 2.08 0.962 0.258 -31.2 0.208 -0.383 -6.11 -0.37 -0.013 2.91 0.974 0.226 -30.7 0.23 -0.375 -6.64 -0.453 -0.024 2.76 0.819 -0.344 -27.7 0.319 -0.329 -5.69 -0.55 0.05 2.05 0.483 0.362 -28.2 0.437 -0.294 -6 -0.582 0.15 1.5 0.59 0.611 -29 0.68 -0.23 -6.2 -0.595 0.13 1.49 1.21 0.529 -29.8 0.1 -0.21 -6.4 -0.637 0.158 1.83 -0.493 0.298 -38.3 0.447 -0.12 -6.6 -1.02 0.24 1.21 -1.04 -2.27 -35.3 -0.33 -0.1 -6 -0.804 0.15];
%%%%%%%飞机参数 Vx=x(1); Vy=x(2); Vz=x(3); p=x(4); q=x(5); r=x(6); phi=x(7); theta=x(8); psi=x(9); deltat=u(1);
34
飞行力学大作业 SY1105401 白斌
deltae=u(2); deltaa=u(3); deltar=u(4);
V=sqrt(Vx^2+Vy^2+Vz^2); alpha=atan(Vz/Vx); beta=asin(Vy/V); H=1000;
Mach=V/336.13; density=1.112; m=20500*0.453952; g=9.8; S=27.871; c_=3.45; b=9.144;
Ix=9496*(32.2*0.453952*0.3048^2); Iy=55814*(32.2*0.453952*0.3048^2); Iz=63100*(32.2*0.453952*0.3048^2); Ixz=982*(32.2*0.453952*0.3048^2); hx=160*(32.2*0.453952*0.3048^2); Pv=0.5*density*(V^2);
%%%%%%%非线性方程参数插值计算 if(alpha<=45/180*pi)
if(alpha>=-10/180*pi)
damp=interp1(matrix_Alpha,matrix_damp,alpha,'spline');
elsedamp=2*interp1(matrix_Alpha,matrix_damp,-10/180*pi,'spline')-interp1(matrix_Alpha,matrix_damp,-10/180*pi*2-alpha,'spline'); end else
damp=2*interp1(matrix_Alpha,matrix_damp,45/180*pi,'spline')-interp1(matrix_Alpha,matrix_damp,45/180*pi*2-alpha,'spline'); end
Cx_q=damp(1); Cy_r=damp(2); Cy_p=damp(3); Cz_q=damp(4); Cl_r=damp(5); Cl_p=damp(6); Cm_q=damp(7); Cn_r=damp(8); Cn_p=damp(9); if(Mach<=1)
Trust_throtte_0=interp2(matrix_height,martix_mach,matrix_trust_throtte_0
35