本例比较了两体开普勒、简化一般摄动-4(SGP4)和简化深空摄动-4(SDP4)轨道传播子预测的轨道。轨道传播器是一种解算器,用于计算运动主要受天体重力影响的对象的位置和速度。两体开普勒轨道传播器基于相对两体模型,该模型假设地球存在球形重力场,忽略了第三体效应和其他环境扰动,因此精度最低。SGP4轨道传播器考虑了由地球几何结构和大气阻力引起的长期和周期性轨道扰动,适用于轨道周期小于225分钟的近地卫星。SDP4轨道传播器基于SGP4,通过计算太阳和月球重力,适用于轨道周期大于或等于225分钟的卫星。的默认动态观察传播器satelliteScenario
轨道周期小于225分钟的卫星为SGP4,否则为SDP4。
使用satelliteScenario
函数。设置开始时间为11-May-2020 12:35:38 PM UTC,停止时间为13-May-2020 12:35:38 PM UTCdatetime
作用将采样时间设置为60秒。
开始时间= datetime(35 2020、5、11、12日,38);stopTime = startTime + days(2);sampleTime = 60;sc = satelliteScenario(开始时间、stopTime sampleTime)
sc=SatelliteScenanio,属性:StartTime:11-May-2020 12:35:38停止时间:13-May-2020 12:35:38采样时间:60个观众:[0×0 matlabshared.SatelliteScenanio.Viewer]卫星:[]地面站:[]自动显示:1
从两行元素(TLE)文件向卫星场景添加三个卫星偏心卫星
通过使用人造卫星
函数。TLE是一种数据格式,用于编码在特定时间定义的绕地物体的轨道元素。给第一颗卫星分配一个双体开普勒轨道传播器,给第二颗卫星分配SGP4,给第三颗卫星分配SDP4。
小档案=“eccentricOrbitSatellite.tle”;satTwoBodyKeplerian=卫星(sc,tleFile,...“名称”,“satTwoBodyKeplerian”,...“轨道传播器”,“two-body-keplerian”)
satTwoBodyKeplerian=具有以下属性的卫星:名称:“satTwoBodyKeplerian”ID:1圆锥传感器:[]万向节:[]发射器:[]接收器:[]访问:[]地面轨道:[1×1 matlabshared.satellitescenario.GroundTrack]轨道:[1×1 matlabshared.satellitescenario.Orbit]轨道传播器:“两体开普勒”标记颜色:[1 0]MarkerSize:10 ShowLabel:1 LabelFontColor:[1 0 0]LabelFontSize:15
tleFile satSGP4 =卫星(sc,...“名称”,“satSGP4”,...“轨道传播器”,“sgp4”)
satSGP4 =卫星属性:名称:"satSGP4" ID: 2 ConicalSensors: [] Gimbals: [] transmitter: [] Receivers: [] access: [] GroundTrack: [1×1 matlabshared.卫星场景。轨道:[1×1 matlabshared.satellitescenario.]轨道传播器:"sgp4" markcolor: [1 0 0] marksize: 10 ShowLabel: 1 LabelFontColor: [1 0 0] LabelFontSize: 15
satSDP4=卫星(sc、TLE文件、,...“名称”,“satSDP4”,...“轨道传播器”,“sdp4”)
satSDP4=具有属性的卫星:名称:“satSDP4”ID:3个圆锥传感器:[]万向节:[]发射器:[]接收器:[]访问:[]地面轨道:[1×1 matlabshared.satellitescenario.GroundTrack]轨道:[1×1 matlabshared.satellitescenario.Orbit]轨道传播器:“sdp4”标记颜色:[10]标记化:10显示标签:1 LabelFontColor:[1 0]LabelFontSize:15
启动卫星场景查看器,并使用卫星观测仪
作用设置的可视化satTwoBodyKeplerian
红色,satSGP4
绿色,satSDP4
洋红色。
v=卫星导航查看器(sc);satSGP4.MarkerColor=[0 1 0];satSGP4.Orbit.LineColor=[0 1 0];satSGP4.LabelFontColor=[0 1 0];satSDP4.MarkerColor=[1 0 1];satSDP4.Orbit.LineColor=[1 0 1];satSDP4.LabelFontColor=[1 0 1];
把照相机的焦距调到satTwoBodyKeplerian
通过使用camtarget
函数。
camtarget (v, satTwoBodyKeplerian);
左键单击卫星场景查看器窗口内的任何位置,并在按住鼠标的同时移动鼠标来平移摄像机。使用滚轮调整缩放级别,将所有三个卫星带入视野。
通过使用玩
在卫星场景中的功能玩
函数从指定的位置模拟卫星场景开始时间
到结束时刻
使用指定的步长取样时间
,并在卫星场景查看器上播放结果。
播放(sc)
使用位于卫星场景查看器窗口底部的播放控件来控制播放速度和方向。再次聚焦相机satTwoBodyKeplerian
通过使用camtarget
功能,并通过调整缩放级别将所有三个卫星带入视野。
camtarget (v, satTwoBodyKeplerian);
这三颗卫星的位置会随着时间的推移而发生变化。
使用州
函数。
[positionTwoBodyKeplerian,VelocityWobodyKeplerian,time]=状态(satTwoBodyKeplerian);[positionSGP4,velocitySGP4]=状态(satSGP4);[positionSDP4,velocitySDP4]=状态(satSDP4);
计算相对位置的大小satSGP4
和satSDP4
关于satTwoBodyKeplerian
通过使用vecnorm
函数。
sgp4RelativePosition = vecnorm(positionSGP4 - positionTwoBodyKeplerian,2,1);sdp4RelativePosition = vecnorm(positionSDP4 - positionTwoBodyKeplerian,2,1);
画出相对位置的大小,单位为千米satSGP4
和satSDP4
关于satTwoBodyKeplerian
通过使用情节
函数。
SGP4相对位置km=SGP4相对位置/1000;SDP4相对位置km=SDP4相对位置/1000;绘图(时间,SGP4相对位置km,时间,SDP4相对位置km)xlabel(“时间”)伊拉贝尔(“相对位置(公里)”)传奇(“SGP4”,“SDP4”)
初始相对位置satSGP4
是非零的,并且是satSDP4
是零,因为satTwoBodyKeplerian
和satSDP4
使用SDP4轨道传播器从TLE文件计算,而satSGP4
采用SGP4轨道传播器进行计算。随着时间的推移,位置satSDP4
偏离satTwoBodyKeplerian
因为前者的后续位置是用SDP4轨道传播子计算的,而后者的后续位置是用双体开普勒轨道传播子计算的。SDP4轨道传播器提供了更高的精度,因为与双体开普勒轨道传播器不同,它考虑了地球的扁率、大气阻力以及来自太阳和月球的引力。
计算物体相对速度的大小satSGP4
和satSDP4
关于satTwoBodyKeplerian
通过使用vecnorm
函数。
sgp4RelativeVelocity = vecnorm(velocityysgp4 - velocitytwobodykepler,2,1);sdp4RelativeVelocity = vecnorm(velocitySDP4 - velocitytwobodykepler,2,1);
画出相对速度的大小,单位是米/秒satSGP4
和satSDP4
关于satTwoBodyKeplerian
通过使用情节
函数。
绘图(时间,SGP4相对水平,时间,SDP4相对水平)xlabel(“时间”)伊拉贝尔(“速度偏差(m/s)”)传奇(“SGP4”,“SDP4”)
的初始相对速度satSDP4
因为就像初始位置一样,物体的初始速度satTwoBodyKeplerian
和satSDP4
利用SDP4轨道传播器计算TLE文件。随着时间的推移,速度satSDP4
偏离satTwoBodyKeplerian
因为在其他时间,速度satTwoBodyKeplerian
使用两体开普勒轨道传播器计算,与用于计算速度的SDP4轨道传播器相比,其精度较低satSDP4
.尖峰对应于近点(距地球质心最近的轨道点),在近点处速度误差的大小是显著的。
图中的偏差是三个轨道传播器精度不同的结果。两体开普勒轨道传播器的精度最低,因为它假设地球重力场是球形的,并且忽略了所有其他轨道扰动源。SGP4轨道传播器的精度更高,因为它考虑了s表示地球扁率和大气阻力。SDP4轨道传播器在这三种仪器中最为精确,因为它还计算了太阳和月球重力,在本例中更为明显,因为轨道周期大于225分钟,从而使卫星离地球更远。