飞行器系统仿真Word下载.docx

上传人:b****4 文档编号:6443189 上传时间:2023-05-06 格式:DOCX 页数:55 大小:1,001.23KB
下载 相关 举报
飞行器系统仿真Word下载.docx_第1页
第1页 / 共55页
飞行器系统仿真Word下载.docx_第2页
第2页 / 共55页
飞行器系统仿真Word下载.docx_第3页
第3页 / 共55页
飞行器系统仿真Word下载.docx_第4页
第4页 / 共55页
飞行器系统仿真Word下载.docx_第5页
第5页 / 共55页
飞行器系统仿真Word下载.docx_第6页
第6页 / 共55页
飞行器系统仿真Word下载.docx_第7页
第7页 / 共55页
飞行器系统仿真Word下载.docx_第8页
第8页 / 共55页
飞行器系统仿真Word下载.docx_第9页
第9页 / 共55页
飞行器系统仿真Word下载.docx_第10页
第10页 / 共55页
飞行器系统仿真Word下载.docx_第11页
第11页 / 共55页
飞行器系统仿真Word下载.docx_第12页
第12页 / 共55页
飞行器系统仿真Word下载.docx_第13页
第13页 / 共55页
飞行器系统仿真Word下载.docx_第14页
第14页 / 共55页
飞行器系统仿真Word下载.docx_第15页
第15页 / 共55页
飞行器系统仿真Word下载.docx_第16页
第16页 / 共55页
飞行器系统仿真Word下载.docx_第17页
第17页 / 共55页
飞行器系统仿真Word下载.docx_第18页
第18页 / 共55页
飞行器系统仿真Word下载.docx_第19页
第19页 / 共55页
飞行器系统仿真Word下载.docx_第20页
第20页 / 共55页
亲,该文档总共55页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

飞行器系统仿真Word下载.docx

《飞行器系统仿真Word下载.docx》由会员分享,可在线阅读,更多相关《飞行器系统仿真Word下载.docx(55页珍藏版)》请在冰点文库上搜索。

飞行器系统仿真Word下载.docx

(4)命令输入

clear;

clc

[tx]=sim('

CAD1'

);

hSimulink=figure();

subplot(3,1,1);

plot(t,x(:

1));

grid;

ylabel('

r'

subplot(3,1,2);

2));

q'

subplot(3,1,3);

3));

sigma'

);

CAD1_S'

hSFun=figure();

'

);

ylabel(subplot(3,1,2);

ylabel(

模型仿真结果:

S函数仿真结果:

题目2:

给出动态方程

x(1x2)xtx1;

X(O)1,X(O)0

(1)用MATLA语言编写S—函数;

(2)用命令行gear/adams法对

(1)进行仿真,显示曲线x(t=0:

100);

(3)建立方框图,用RK45仿真50秒,显示曲线

(1)用MATLAB语言编写S—函数

(2)直接调用ode数值积分函数进行仿真,系统微分方程:

functiondx=CAD01_02odefun(t,x)

dx

(1)=x

(2);

dx

(2)=1-(1-x

(1)*x

(1))*x

(2)-t*x

(1);

dx=dx'

;

调用ode解算器入口:

clc;

[tx]=ode15s(@CAD01_02odefun,0:

100,[10]);

hGear=figure();

set(hGear,'

NumberTitle'

'

off'

'

Name'

IntegratedbytheGear

algorithm'

Units'

Normalized'

Position'

[]);

subplot(2,1,1);

plot(t,x(:

x'

subplot(2,1,2);

dx/dt'

[tx]=ode113(@CAD01_02odefun,0:

hAdams=figure();

set(hAdams,'

IntegratedbytheAdamsalgorithm'

Units'

卩osition'

[]);

subplot(2,1,2);

ode15s(Gear)仿真结果:

ode113(Adams)仿真结果:

(3)建立方框图,用RK45仿真50秒,显示曲线方框图模型:

(4)

问题3:

质量一弹簧系统,质量M恢复系数K阻力系数C,主

动力P,动力学方程为Mx(Cx2Mg)sign(x)KxPM=1kg,

K=4kg/s2,C=100kg/m,g=s2,=;

(1)在原点处用linmod线性化,求线性系统的A,B,C,D;

(2)对线性模型,判断能控性;

(3)对线性模型,求阶跃、脉冲响应曲线;

(4)对原模型进行仿真,P=sin(t)(使用Simulink);

(5)对原模型进行仿真,P=sin(t)(使用ode23)

(1)①线性化时需在模型中制定输入端、输出端(状态),如下图,状态

选为位置和速度

②linmod函数应用于该系统会出现奇异,故选用改进的linmod2函数:

clc;

[A,B,C,D]=linmod2('

CAD3'

ssO=ss(A,B,C,D);

Co=ctrb(ssO);

[rowcol]=size(A);

isControllable=~(rank(Co,eps)-row);

hStep=figure。

Response'

unit'

,‘normalized'

step(ss0);

grid;

hImpulse=figure();

set(hImpulse,

'

Impulse

,‘normalized'

[,,,]);

impulse(ss0);

命令窗口输出结果:

A=

+008*

OH

」0

0」

DH

Thesysfemisconf「o=ed

(3)孚®

>

Mi

mHJ'

FIMWH-

w爭>

M-

SSI«

S.

(5)对原模型进行仿真,P=sin(t)(使用Simulink)

仿真结果:

1

I

11

111J

ii

H

8

i

4

IM

(6)对原模型进行仿真,P=sin(t)(使用ode23)系统微分方程:

functiondx=CAD3odefun(t,x)

M=1;

K=4;

C=100;

g=;

miu=;

dx

(2)=(sin(t)-K*x

(1)-sign(x

(2))*(C*x

(2)*x

(2)+miu*M*g))/M;

仿真入口程:

options=odeset(

RelTol'

1e-3,'

AbsTol'

[1e-55e-5]);

[tx]=ode23(@CAD3odefun,0:

:

10,[00],options);

yu

case3,

functionsys=mdlOutputs(t,x,u,ul,ur,yl,yr)if(u>

=ur+yr)

y=yr;

elseif(u<

=ul+yl)

y=yl;

elseif(u>

ul+yl)&

&

(u<

ul)

y=u-ul;

ur+yr)&

(u>

ur)

y=u-ur;

else

y=0;

sys=y;

参数传递及初始化

FunctionBio-kFaraTnerters-S-fun-tion

■r

问题5:

已知系统A=[01;

-1-2],B=[10;

01],C=[10;

01],D=

[00;

00],求系统的状态空间方程(linmod),并分析系统的稳定性,

练习仿真参数设置

答:

对模型进行线性化并分析稳定性

[ABCD]=linmod('

CAD5'

hpz=figure();

set(hpz,'

Pole-zeromapofthelinmodsystem'

pzmap(ssO);

sgrid;

P=lyap(A,eye(row));

fori=1:

row

subdet(i)=det(P(1:

i,1:

i));

subdet

系统零极点图:

曲**IMf

IQ

-ta-i■i.

*GD

x0'

[],[],ix,[],[],dx'

存在正实部的极点,系统不稳定。

问题6:

系统的动力学方程为dx/dt=Ax+Bu,y=Cx+Du,A=[0

100;

0010;

0001;

-1-2-3-4],B=[12;

34;

23;

45],C=[1122;

2354];

D=[10;

01],求:

(1)系统动态平衡点

(2)x(0)=[1111]'

ix=[1234]'

dx=[0101]'

的系=[1234]

统动态平衡点

系统框图模型

GZ>

In*

State-Space

系统的平衡点分析

程序

[x,u,y,dx,options]=trim('

CAD6'

options(10)

x0=[1111];

ix=[1234];

dx=[0101];

idx=[1234];

CAD01_06'

idx);

运行结果

x=[0;

0;

0];

u=[0;

y=[0;

ans=9

x=[;

];

u=[;

y=[;

ans=41

问题7:

自学文件C与M-s函数模板和示例文件

Simulink中的示例文件实现了将输入信号放大为2倍输出的功能,自

学时对示例程序进行改进,使之可以指定信号放大的倍数。

语言S函数源代码

#defineS_FUNCTION_NAMECAD02_07sfun

/***Modified:

changethefunctionname*/

#defineS_FUNCTION_LEVEL2

#include"

"

staticvoidmdlInitializeSizes(SimStruct*S)

{

ssSetNumSFcnParams(S,1);

/***Revised:

setthenumberofinputparametersto1*/

if(ssGetNumSFcnParams(S)!

=ssGetSFcnParamsCount(S)){

return;

}

if(!

ssSetNumInputPorts(S,1))return;

ssSetInputPortWidth(S,0,DYNAMICALLY_SIZED);

ssSetInputPortDirectFeedThrough(S,0,1);

ssSetNumOutputPorts(S,1))return;

ssSetOutputPortWidth(S,0,DYNAMICALLY_SIZED);

ssSetNumSampleTimes(S,1);

ssSetOptions(S,SS_OPTION_EXCEPTION_FREE_CODE);

staticvoidmdlInitializeSampleTimes(SimStruct*S)

ssSetSampleTime(S,0,INHERITED_SAMPLE_TIME);

ssSetOffsetTime(S,0,;

staticvoidmdlOutputs(SimStruct*S,int_Ttid)

int_Ti;

InputRealPtrsTypeuPtrs=ssGetlnputPortRealSignalPtrs(S,O);

real_T*y=ssGetOutputPortRealSignal(S,0);

int_Twidth=ssGetOutputPortWidth(S,0);

constmxArray*pmxRatio=ssGetSFcnParam(S,0);

getthepointertotheparameterinthetypeofmxArray*/

constreal_T*pRatio=mxGetPr(pmxRatio);

getthepointertotheparameterinthetypeofreal_T*/

for(i=0;

i<

width;

i++){

*y++=(*pRatio)*(*uPtrs[i]);

themagnifyingratioisacquiredfromtheinputparameter*/

staticvoidmdlTerminate(SimStruct*S){}

#ifdefMATLAB_MEX_FILE

#include"

#else

#endif

封装及用户界面:

问题8自学文件Stateflow示例文件

function[varargout]=stateflow(varargin)

%STATEFLOWOpensSIMULINKandcallssfnewwhen即propriate.

%Copyright1995-2002TheMathWorks,Inc.%$Revision:

$$Date:

2004/04/1501:

01:

52$ifnargout>

[varargout{:

}]=sf(varargin{:

});

sf(varargin{:

Stateflow是有限状态机(finitestatemachine)的图形工具,它可以用

于解决复杂的逻辑问题,用户可以通过图形化工具实现在不同状态之间的转换。

Stateflow可以直接嵌入到Simulink仿真模型中,并且在仿真的初始化阶段,SIMULINK会把Stateflow绘制的逻辑图形通过编译程序转换成C语言,使二者有机地结合在一起。

Stateflow可以在SIMULINKExtra模块库中找到。

Stateflow的仿真原理是有限状态机(finitestatemachine)理论,有限

状态机是指系统含有可数的状态,在相应的状态事件发生时,系统会从当前状态转移到与之对应的状态。

在有限状态机中实现状态的转移是有一定条件的,同时

相互转换的状态都会有状态转移事件,这样就构成了状态转移图。

在SIMULINK

的仿真窗口中,允许用户建立有限个状态以及状态转移的条件与事件,从而绘制

出有限状态机系统,这样就可以实现对系统的仿真。

Stateflow的仿真框图一般

都会嵌入到Simulink仿真模型中,同时实现状态转移的条件或是事件即可以取自Stateflow仿真框图,也可以来自Simulink仿真模型。

第二部分综合(60)

rcptgttor|TvoBody

ititlSitttTool.I

Start

Stoj

Stej

Orbit

CouldEpoch

CoordTyp@:

|J2000

ApogaoR^dius

|PerigceRalius

Inclion

Coord

ArgunentofPerigee

Proj

RAaN

09

lay201311:

45:

03

Kacilitydfiatkou-To-Satellite-Satellitel:

AccessSiMunaryKeporthatkou-To-Satellitel

Jun

2003

12:

42:

43.49

L

58:

32.39

948.902

2

l?

30.51

Juri

23:

44.10

373.584

3

03:

00:

51.11

Z

JUli

11:

21.17

630.058

04:

13.27

39.14

R05.875

5

06:

29:

56.83

14.50

977.667

6

08:

14:

57.61

Juii

33:

41.10

1123.494

7

Jim

10:

34.61

20:

16.6S

1182.039

47:

30.10

12;

00;

Q0.00

T-19.903

GlobalStatistics

■inDiirntion

17:

.Tun

373.584

l^iDuration

34.61

16.65

1182.039

leanDuration

84&

940

TotalDiiration

6791.523

AccessStartTine(UTCC)

StopTi®

n(UTCG)

Duration(sec)

C?

■阳如13ll:

43:

6fr

UatelliteSatellite丄fseiiiiurSeiwurlTu>

fatilUy匕卷百匕旧占SimaryRci?

mtt

]ii£

ur1-Tu~lafii1甘

Access

StflTiTine(irrcc)

Stop,Ti*c(UTCG)

Ehirntifin(sec)

2Jun200503:

07:

(12,M

2Juri刻吧O3:

U*:

1LXO

69,nr

2Jun200306:

39j09.18

22.57

253.3S3

2Jun200508:

33.27

2Jun200300:

30:

30.17

416.905

fl

2Jun20t)S10:

44.40

2JunZOOS10:

16:

3K.4»

$54一001

GlobalStatiKtics

linDmmtInn

2Jun2Q0S03:

tt7r02.hi

2Jim2nt)303tOS:

ll.SO

sa.1ST

lasDuration

2Juii200108;

23/J3+2T

2Juri0S:

70;

X.lT

41S.VQ5

leanDurjitiun

273.36Z

T-nfolDrnrntino

1093.447

J2

U9I»

y^013lb:

(JO:

!

0SctiiiurlTuFdullLty1milla:

AjccgsuSumiaryRrpurt

ScaiBOTl-Talomila

GlobalStutieticE

Ifty20131S:

DL:

35

radii1j<

Hialiiiiu-Tu_S>

ile]Iile-SaldIilei;

huceuvWui・aryRupurt

hatlcauTnSntrllilcl

linDurationlaiDirrnticmleanI)ur4lionTntaiDuration

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

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

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2