主要内容

从轨迹数据创建一个飞行动画

这个例子展示了如何使用FlightGear animation对象创建一个飞行动画的轨迹。

注意:在产品中运行此示例时,必须使用FlaseGear安装自定义示例,并取消注释GeneraterUnscript,系统和播放命令。您还必须将$ MATLAB / TOOLBOX / AERO / ASTDEMOS / HL20文件夹复制到$ FLIGHTGEAR / DATA / ACTOR /文件夹中。

装载记录飞行轨迹数据

本例中的飞行轨迹数据存储在逗号分隔的值格式文件中。使用dlmread.从第1行和第0列开始读取数据,跳过头信息。

tdata = dlmread(“asthl20log.csv”','1 0);

从轨迹数据创建一个时间序列对象

使用MATLAB®.timeseries命令以创建时间序列对象TS,从纬度,经度,高度和欧拉角度数据以及TDATA中的时间阵列。将纬度,经度和欧拉角转换为弧度到弧度的角度使用convang函数。

t = timeseries([conang (tdata(:,[3 2])),'DEG'rad的...TDATA(:,4)调整(TDATA(:,5:7),'DEG'rad的)],TDATA(:,1));

您可以使用其他有效格式从该数据中创建导入的数据,例如'Array6DoF',例如:

ts = [tdata (: 1) convang (tdata(:, 2[3]),‘度’,rad) tdata(:, 4)……convang (tdata(: 5:7),‘度’,rad)];

和'array3dof'。

ts = [tdata (: 1) convang (tdata(:, 3),“度”,rad) tdata(:, 4)……6) convang (tdata(:,“度”,rad)];

使用FlightGearAnimation对象初始化飞行动画

打开飞行甘油animation对象。

h = Aero.FlightGearAnimation;

为时间序列设置FlightGearAnimation对象属性。

H.Timeseriessourcetype =“Timeseries”;h.TimeseriesSource = t;

设置FlightGearAnimation对象的属性

这些属性包括安装文件夹的路径、飞机几何模型和FlightGear飞行模拟器的网络信息。

h.flightgearbasedirectory =“C: \ Program Files \ FlightGear”;h.geometrymodelname =“HL20”;h.DestinationIpAddress =“127.0.0.1”;H.DestinationPort =“5502”

为FlightGear飞行模拟器设置所需的初始条件(位置和方向)。

h.AirportId =“KSFO”;h.RunwayId =“10 l”;h.InitialAltitude = 7224;h.InitialHeading = 113;h.OffsetDistance = 4.72;h.OffsetAzimuth = 0;

为FlightGear飞行模拟器启用“及时”场景安装。在模拟器运行时,需要的场景将被下载。对于Windows®系统,在启用此选项启动FlightGear时可能会遇到错误消息。有关更多信息,请参见安装额外的飞行设备布景

H.InstallScenery = True;

禁用FlightGear着色。

h.DisableShaders = true;

设置动画数据的秒数/ wall-clock时间。

H.timescaling = 5;

使用get(h)检查FlightGearAnimation对象的属性和它们的值。

得到(h)
TimeseriesSource:[1x1的时间序列] TimeseriesSourceType: '时间序列' TimeseriesReadFcn:@TimeseriesRead时标变化:5 FramesPerSecond:12 OutputFileName: 'runfg.bat' FlightGearBaseDirectory: 'C:\ Program Files文件\ FlightGear的' GeometryModelName: 'HL20' DestinationIpAddress:“127.0.0.1'Desiginalt:'5502'机场:'ksfo'runwayid:'10l'initialAlditude:7224 initial头号:113偏移量:4.7200 offstazimuth:0安装:1个DisableShaders:1 Tstart:NaN TFinal:NaN架构:'默认'

创建一个运行脚本来启动FlightGear飞行模拟器

要使用所需的初始条件(位置、日期、时间、天气和操作模式)启动FlightGear,请使用GenerateRunScript命令。默认情况下,GenerateRunScript将RUN脚本保存为名为“runfg.bat”的文本文件。

GenerateRunScript (h)

每次查看数据时都不需要生成此文件。仅在所需的初始条件或飞行术信息发生变化时生成它。

启动Flight gear飞行模拟器

要从MATLAB命令提示符启动FlightGear,输入系统命令执行由。创建的运行脚本GenerateRunScript

系统(“runfg.bat &”);

提示:随着FlightGear窗口在焦点,按V键交替不同的飞机视图:驾驶舱视图,直升机视图,和追逐视图。

播放轨迹数据的飞行动画

一旦FlightGear启动并运行,FlightGearAnimation对象就可以开始与FlightGear通信。要使用FlightGear显示飞行动画,请使用命令。

玩(h)

要显示飞行动画的屏幕截图,请使用matlab图像命令。

图像(imread ([matlabroot filesep fullfile ('工具箱'“航空”“astdemos”'数字'“astfganim01.png”)),'PNG'));轴;套装(GCA,'位置',[0 0 1 1]);设置(GCF,'菜单栏'“没有”);