编者按:此文件被选为MATLAB Central本周精选
在这个演示中,以纬度和经度为输入的有序城市列表,模拟器计算两个连续城市之间的最短路径,然后在跟踪轨迹的同时在3D地球上模拟飞机运动。请注意,这是一个在MATLAB中进行数据分析并在Simulink中“回放”数据的示例。金宝app
此外,附加到飞机上的是一个东北向下(NED)框架,这使人们更好地理解飞机坐标系。
主要设计考虑事项:
1.用于制作球形地球纹理的地球图像来自美国宇航局2002年的蓝色大理石图像
请注意,在这个球形地球上校准纬度和经度需要使用纵横比为2:1的墨卡托投影。
2.连接任何两个城市的大圆是使用映射工具箱的track2函数计算的:
//www.tatmou.com/help/toolbox/map/ref/track2.html
所选采样点的数量按比例相应缩放,以保证飞机运动的均匀性。
3.纬度和经度的集合被输入到LLA到ECEF块中,以计算附在NED框架下的飞机的平移坐标:
//www.tatmou.com/help/toolbox/aeroblks/llatoecefposition.html
4.为了计算NED框架的方向,在将其映射到VRML旋转坐标之前,使用了方向余弦矩阵到四元数块:
//www.tatmou.com/help/toolbox/aeroblks/directioncosinematrixtoquaternions.html
四元数的使用避免了本演示中遇到的问题:
//www.tatmou.com/matlabcentral/fileexchange/26123
5.来自Simulink 3D动画的VR Tracer金宝app块在3D世界中追踪轨迹。它被放置在一个启用的子系统中,以减少轨迹点的数量,从而为可视化节省内存(绘制的每个点都是一个3D对象)
发人深思的问题:
1.观察如何在NED框架下计算飞机的方向。这个精度如何取决于最大允许的采样点数量,即t_scaling ?
2.在经过两极的航线上,飞机的方向有多精确?
引用作为
金宝appSimulink Dude(2022)。国际飞行路线规划模拟器使用航空航天Blockset(//www.tatmou.com/matlabcentral/fileexchange/31142-international-flight-route-planning-simulator-using-aerospace-blockset), MATLAB中央文件交换。检索.