卫星过顶计算matlab,一种圆轨道低轨卫星过顶剩余可见时长预测方法

一种圆轨道低轨卫星过顶剩余可见时长预测方法

【技术领域】

[0001] 本发明涉及卫星通信领域,特别是涉及一种圆轨道低轨卫星过顶剩余可见时长预 测方法。

【背景技术】

[0002] 圆轨道低轨卫星是指运行轨道是以地心为圆心的圆形轨道,并且轨道高度在500 千米到2000千米之间的卫星。这种圆轨道低轨卫星具有传播时延小、对终端设备天线尺寸 和功率消耗要求低等优势,并且卫星发射成本较低,但卫星高度越低,其覆盖范围就越小, 通过地面卫星终端用户上空的时间,即过顶时间就越短,因此往往需要多颗低轨卫星组网 来满足用户通信需求。

[0003] 当圆轨道低轨卫星用于通信时,主要存在两方面的不足:一是过顶时间有限,而用 户的通信时长有可能大于单颗卫星的过顶时间;二是用户在切换时刻可以在多颗卫星之间 进行选择。这两方面的不足导致用户通信过程中需要在多颗低轨卫星之间进行切换,以保 证通信的连续性。因此,地面终端用户切换卫星的方法非常重要,如果用户随机选择卫星提 供通信服务,有可能选择到当前具有最短可见时长的卫星或者较短可见时长的卫星,进而 增加卫星切换的次数,增大了用户的掉话率,而中断当前通话相比阻塞新的通话会给用户 带来更加糟糕的用户体验,从降低用户掉话率的角度来看,理想的卫星选择方式是用户在 切换时刻能够从所有可见卫星中选择提供最长服务时长的卫星。因此,从用户观测的角度, 有必要对卫星相对于用户的剩余可见时长做出精确预测,为用户在切换时刻选择卫星提供 技术支撑。

[0004] 现有技术中,预测过顶卫星剩余可见时长的方法主要是通过下载卫星的星历 信息,计算卫星相对于用户的剩余可见时长,但该方法需要用户不断更新卫星的星历信 息。另外,Irfan Ali 等人在《Predicting the Visibility of LEO Satellites》(IEEE Transactions on Aerospace and Electronic Systems, vol. 35, no. 4, 1999)中提出了一种 预测过顶卫星剩余可见时长的方法,但该方法需要输入卫星轨道半径、轨道倾角及卫星从 南半球到北半球运行过程中同赤道平面的交点所处的经度及对应时刻,该方法计算复杂性 较高,实时性不强,难以满足对卫星快速选择的需求。

【发明内容】

[0005] 本发明主要解决的技术问题是提供一种圆轨道低轨卫星过顶剩余可见时长预测 方法,解决现有技术中过度依赖卫星星历、计算复杂度高、实时性不强等问题。

[0006] 为解决上述技术问题,本发明采用的一个技术方案是:提供一种圆轨道低轨卫星 过顶剩余可见时长预测方法,包括如下步骤:第一步,用户接收卫星导航信号;第二步,计 算卫星的仰角;第三步,计算卫星的迹角;第四步,计算卫星相对用户的过顶剩余可见时 长。

[0007] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,该用户接收 卫星导航信号包括:(1)计算卫星空间位置,由地面控制中心通过轨道预报方法,定期计算 该卫星未来一段时间内的空间位置信息及其对应的时刻信息,并在该卫星经过该地面控制 中心上空时,更新该卫星的空间位置信息;(2)卫星校准时钟,该卫星利用自身GPS装置进 行时钟校准,并根据校准的时钟信息以及存储的该卫星的空间位置信息,实时调整确定该 卫星当前覆盖范围内的星下点经炜度信息;(3)卫星发出导航信号,该卫星定期发出导航 信号,该导航信号包括该卫星在其所覆盖范围内的星下点经炜度信息及其对应的时刻信 息;(4)用户接收导航信号,判断该卫星是接近用户还是远离用户,该用户接收该卫星发送 的连续两次该导航信号,根据该导航信号中的星下点经炜度信息相对于用户位置的远近变 化判断该卫星接近还是远离该用户。

[0008] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,该轨道预报 方法为SGP4方法;该定期计算该卫星未来一段时间内的空间位置信息及其对应的时刻信 息的频度是每间隔1秒钟计算1次;该卫星定期发出导航信号的频度是每间隔1秒钟发送 1次。

[0009] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,该计算卫星 的迹角的方法包括:(1)确定该用户位置信息,得到该用户自身的经度λ τ、炜度ητ和高程 κ眉息;⑵时钟校准,根据所接收导航信号中的时刻信息,将用户时钟同步校准与卫星时 钟一致;(3)实时计算迹角,该用户通过接收的该导航信号,计算该用户相对该卫星的迹角 Ym,计算方法如下:

[0012] 其中,石和^是该导航信号中包含的该卫星覆盖范围内的星下点的经度和炜度 向量,Ω也为向量。

[0013] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,通过该用户 内置的GPS设备测量得到该用户自身的经度λ τ、炜度qT和高程κ ^言息。

[0014] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,该计算卫星 的仰角的方法包括:(1)地心地固坐标系转换,将当前该卫星和用户的经炜度和高程坐标 统一转换为地心地固坐标系中卫星地固坐标和用户地固坐标;(2)本地坐标系转换,将该 卫星地固坐标和该用户地固坐标转换为本地坐标系中的卫星本地坐标和用户原点坐标; (3)实时计算仰角,利用该卫星本地坐标和该用户原点坐标,在该本地坐标系中计算该用户 相对该卫星的仰角Θ。

[0015] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,该卫星 的空间位置信息为(A s,ns,KS),其中As表示该卫星的经度,n s表示该卫星的炜度, Ks表示该卫星的高程,该用户位置信息为(λ τ,ητ,κτ),其中λτ表示该用户的经度, !!?!?表不该用户的炜度,K ^表不该用户的尚程,该卫星地固坐标为(Xs, Ys, Zs),该用户 地固坐标为(Xu,Yu,Zu),该地心地固坐标系转换方法是:地球是一个椭球体,长轴 a =

6. 3781370e+03km,半轴 b = 6. 356752314245179e+03km,偏心率 定义中间值 J

则该卫星的地固坐标(XS,YS,Z S)和该 用户的地固坐标(XdYdZu)分别为:

[0017] 该本地坐标系转换方法是:该卫星在该以用户为原点坐标的该本地坐标系中的卫 星本地坐标(Χ?,Υ?,Ζ?)是:

[0019] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,该卫星的 空间位置是:经度25. 257000°、炜度-84. 298000°、高程783. 871776 (km),该用户的空 间位置是:经度28.917655°、炜度-99.345589°、高程0.0(km),经过该地心地固坐标 系转换,该卫星在该地心地固坐标系中的卫星地固坐标是(X s:6. 439025706247130e+05, Ys:-6. 448794085263775e+06, Zs: 3. 039310992962332e+06),该用户在该地心地固坐标 系中的用户地固坐标是(Xu = -I 073090474340906e+05, Yu = -S. 513096509229902e+06, Zu:3.065915618754285e+06),单位为米;经过该本地坐标系转换,该用户位置为该本 地坐标系的原点,该卫星在该本地坐标系中的位置是x s: I. 682569089856995e+06, ys:-3. 479338007695247e+05,zs:5. 748030724080029e+05,单位为米;经过该实时计算仰角 Θ,得到 Θ = 18.497377364764110°。

[0020] 在本发明圆轨道低轨卫星过顶剩余可见时长预测方法另一实施例中,该计算卫星 相对用户的过顶剩余可见时长的方法包括:(1)计算卫星已过顶时长,计算从该用户相对 该卫星的最小可见仰角Θ。出现的时刻到当前仰角为Θ (tj = Θ时所经过的时长%,计算

MATLAB中编写和模拟低轨卫星的通信或轨道计算代码通常涉及以下几个步骤: 1. **导入必要的库**: 首先,需要安装和加载` Aerospace Toolbox `,它包含了处理航天任务所需的各种函数。 ```matlab % 安装如果尚未安装 if ~isToolboxInstalled('Aerospace') installToolbox('aerospace'); end % 加载工具箱 aero = aerospace; ``` 2. **设定卫星模型**: 使用` Satellite `类创建一个低轨卫星模型,并设置初始条件如轨道高度、倾角、升交点等。 ```matlab satellite = aero.Satellite; satellite.orbitProperties.Radius = 600e3; % 卫星离地距离(米) satellite.orbitProperties.Eccentricity = 0; % 轨道近似为 ``` 3. **轨道计算**: 利用` propagate `函数模拟卫星的运动,可以定期更新位置和速度。 ```matlab tspan = [0 86400*7]; % 观察一周的时间范围(秒) [t, state] = propagate(satellite, tspan); ``` 4. **通信模型**: 如果涉及到通信,可能会使用` Communication link `功能,比如` SatelliteLink `,来模拟信号传播延迟和路径衰减。 ```matlab link = aero.SatelliteLink; link.DopplerCorrection = 'On'; % 开启多普勒效应补偿 receivedData = communicate(link, state); ``` 5. **数据可视化**: 可以使用` plot `或` plot3 `函数展示卫星轨迹,以及通信链路的效果。 ```matlab plot3(state(:,1), state(:,2), state(:,3), '.-'); % 绘制卫星轨道 hold on; plot3(receivedData.Position(:,1), receivedData.Position(:,2), receivedData.Position(:,3), 'r+', 'MarkerSize', 8); % 画出接收站位置 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值