飞行器控制实验报告剖析.docx

上传人:b****9 文档编号:26106953 上传时间:2023-06-17 格式:DOCX 页数:14 大小:374.87KB
下载 相关 举报
飞行器控制实验报告剖析.docx_第1页
第1页 / 共14页
飞行器控制实验报告剖析.docx_第2页
第2页 / 共14页
飞行器控制实验报告剖析.docx_第3页
第3页 / 共14页
飞行器控制实验报告剖析.docx_第4页
第4页 / 共14页
飞行器控制实验报告剖析.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

飞行器控制实验报告剖析.docx

《飞行器控制实验报告剖析.docx》由会员分享,可在线阅读,更多相关《飞行器控制实验报告剖析.docx(14页珍藏版)》请在冰豆网上搜索。

飞行器控制实验报告剖析.docx

飞行器控制实验报告剖析

HarbinInstituteofTechnology

飞行器制导与控制

实验报告

 

专业:

自动化

班级:

学号:

1120410333

姓名:

设计时间:

2015/12/12

上机实验1:

使用四阶龙格库塔法求解微分方程

(1)

先定义参数

,初值条件可以自己任取。

1.源程序:

function[x,y]=M1(fun,x0,xt,y0,PointNum)

ifnargin<4|PointNum<=0

PointNum=100;

end

ifnargin<3

y0=0;

end

y(1,:

)=y0(:

)';

h=(xt-x0)/(PointNum-1);

x=x0+[0:

(PointNum)]'*h;

fork=1:

(PointNum)

f1=h*feval(fun,x(k),y(k,:

));

f1=f1(:

)';

f2=h*feval(fun,x(k)+h/2,y(k,:

));

f2=f2(:

)';

f3=h*feval(fun,x(k)+h/2,y(k,:

));

f3=f3(:

)';

f4=h*feval(fun,x(k)+h,y(k,:

));

f4=f4(:

)';

y(k+1,:

)=y(k,:

)+(f1+2*(f2+f3)+f4)/6;

end

2、运行文件:

x0=0;

xt=2;

Num=100;

h=(xt-x0)/(Num-1);

x=x0+[0:

Num]*h;

a=1;

yt=1-exp(-a*x);

fun=inline('-y+1','x','y');

y0=0;

PointNum=100;

[xr,yr]=M1(fun,x0,xt,y0,Num);

M1_x=xr'

M1_y=yr'

plot(x,yt,'k',xr,yr,'r-')

legend('jiexi','Runge-Kutta',2)

3、实验结果:

00

0.02020.0202

0.04040.0400

0.06060.0594

0.08080.0784

0.10100.0970

0.12120.1153

0.14140.1331

0.16160.1506

0.18180.1678

0.20200.1846

0.22220.2011

0.24240.2172

0.26260.2330

0.28280.2485

0.30300.2637

0.32320.2786

0.34340.2932

0.36360.3074

0.38380.3214

0.40400.3351

0.42420.3486

0.44440.3617

0.46460.3746

0.48480.3873

0.50510.3996

0.52530.4118

0.54550.4236

0.56570.4353

0.58590.4467

0.60610.4579

0.62630.4688

0.64650.4796

0.66670.4901

0.68690.5004

0.70710.5105

0.72730.5204

0.74750.5300

0.76770.5395

0.78790.5488

0.80810.5580

0.82830.5669

0.84850.5756

0.86870.5842

0.88890.5926

0.90910.6008

0.92930.6089

0.94950.6168

0.96970.6245

0.98990.6321

1.01010.6396

1.03030.6468

1.05050.6540

1.07070.6610

1.09090.6678

1.11110.6745

1.13130.6811

1.15150.6875

1.17170.6939

1.19190.7000

1.21210.7061

1.23230.7120

1.25250.7179

1.27270.7236

1.29290.7291

1.31310.7346

1.33330.7400

1.35350.7452

1.37370.7504

1.39390.7554

1.41410.7604

1.43430.7652

1.45450.7699

1.47470.7746

1.49490.7791

1.51520.7836

1.53540.7880

1.55560.7923

1.57580.7965

1.59600.8006

1.61620.8046

1.63640.8085

1.65660.8124

1.67680.8162

1.69700.8199

1.71720.8236

1.73740.8271

1.75760.8306

1.77780.8340

1.79800.8374

1.81820.8407

1.83840.8439

1.85860.8470

1.87880.8501

1.89900.8532

1.91920.8561

1.93940.8590

1.95960.8619

1.97980.8647

2.00000.8674

2.02020.8701

上机实验2:

假设飞行器恒速率飞行,飞行器的动力学方程可简化为:

(2)

(3)

(4)

飞行器的运动学方程为:

(5)

(6)

(7)

初始条件

自己选取,

为控制加速度,

(8)

选择合适的控制加速度变化规律,画出飞行轨迹。

代码如下:

dt=0.01;%设置微小的时间量

vm=400;%导弹的速度

am=30;

ae=pi/180;%角度转换倍数

x

(1)=0;y

(1)=0;z

(1)=0;%导弹的初始位置

pmr(:

1)=[x

(1);y

(1);z

(1)];%导弹位置信息矩阵

time=0;%初始化角度和时间信息

sm=vm*dt;%导弹微小时间内飞行距离

%ft=0.4*ae;

%st=0.2*ae;

%vm=vm+am*time;

ft=0;

st=0;

for(k=2:

500)

time=time+dt;

vm=vm+am*time;

pmr(:

k)=[pmr(1,k-1)+vm*dt*cos(st)*cos(ft);pmr(2,k-1)+vm*dt*sin(st);

pmr(3,k-1)-vm*dt*cos(st)*sin(ft)];%目标位置信息的计算

st=(980-9.8*cos(st))/vm*dt+st;%侧滑角的变化

ft=(980/(-vm*cos(st)))*dt+ft;

end

plot3(pmr(1,:

),pmr(2,:

),pmr(3,:

));

gridon;

实验图如下:

上机实验3:

从升降舵舵偏角到弹体俯仰角速率和法向加速度的传函分别为:

(9)

(10)

加速度指令指令跟踪控制系统设计为如下图所示:

其中,

分别为陀螺与加速度计的传递函数,

为待设计的控制器,请设计合适的

,使系统能够跟踪输入指令,具有较好的性能。

系统性能指标及系统模型:

实际系统模型如下

系统性能指标

设计内外环控制器,使控制系统达到预定的性能指标,上升时间小于0.2s,剪切频率大于3rad/s,幅值大于10dB,相角裕度大于50°。

参数设计:

内环部分:

其中认为

则内环反馈通道中传递函数为G1,前向通道上传递函数为1,

采用比例控制器,根据计算和试凑可知,有以下结果:

比例

=1.82

则开环Bode图如下:

此时相角裕度90.8°,剪切频率116rad/s。

满足内环设计需求。

外环设计

即设计C(s)的传递函数,根据内环设计完成后的传递函数,采用PID控制进行设计,其中传递函数如下:

开环传递函数波特图如下:

剪切频率大于3rad/s,幅值大于10dB,相角裕度大于50°,满足性能指标需求。

Simulink仿真图如图所示:

仿真结果如下:

由图可知,实验结果基本满足要求参数。

四、实验结果分析:

实验设计采用比例控制器作为内环,通过计算和试凑可知,基本满足参数需求,之后设计外环设计,采用PID控制器作为外环设计出的双环控制系统可以满足系统的性能指标要求,最终俯仰轴稳定控制系统剪切频率大于3rad/s,幅值大于10dB,相角裕度大于50°,上升时间小于0.2s,符合要求。

仿真实验达到设计目标。

 

上机实验4:

导弹的动力学和运动学方程同实验2,如式

(2)(3)(4)(5)(6)(7)所示,目标的动力学方程为:

(11)

(12)

(13)

目标的运动学方程为:

(14)

(15)

(16)

比例导引律:

(17)

(18)

其中,

(19)

(20)

目标相对导弹的运动方程:

(21)

(22)

(23)

其中,

(24)

(25)

(26)

初始条件

自己设定,目标的运动情况自己假定,选择合适的比例导引系数,利用四阶龙格库塔求解出仿真结果,绘出导弹与目标的运动轨迹。

clear all;

close all;

clc 

dt=0.1;

alpha=pi/6;v_t=0.42;s_t=v_t*dt;

v_m=0.60;s_m=v_m*dt;

x

(1)=0;y

(1)=0;z

(1)=0; %导弹初始位置

pmr(:

1)=[x

(1);y

(1);z

(1)];

ptr(:

1)=[25;5;7];

K=3;

q

(1)=0;

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);

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);

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));

if abs(imag(b))>0

b=0.0000001; 

end 

if abs(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));

dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

if abs(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));

 dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

if abs(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));

dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

if abs(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));

dq=a(k)-acos(((c1-s_m)^2+c3^2-(c2-s_t)^2)/(2*(c1-s_m)*c3));

if abs(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));

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));

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));

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); 

if r(k)<0.06; 

break; 

end; 

end 

figure

(1); 

plot3(pmr(1,1:

k),pmr(2,1:

k),pmr(3,1:

k),'k',ptr(1,:

),ptr(2,:

),ptr(3,:

)); 

axis([0 25 0 5 0 25]); 

grid on

当K=3时仿真图像如下图所示:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1