【协议详解】卫星通信5G IoT NTN SIB32-NB 信令详解

一、SIB32信令概述

低轨卫星的移动性会导致地面用户设备覆盖不连续,为了解决这一问题,3GPP引入了SystemInformationBlockType32(SIB32)信令,为非连续覆盖预测提供卫星辅助信息。地面设备可以基于SIB32信令中的信息,预测低轨卫星的覆盖时间,在保障物联网设备的低功耗性能的同时,确保在非连续覆盖环境中的合理规划通信的准确性。

参考【1】:"Recommendation for Space Data System Standards: ORBIT DATA MESSAGES", BLUE BOOK CCSDS 502.0-B-2, The Consultative Committee for Space Data Systems, November 2009.

SIB32消息的ASN.1编码结构如下:

SystemInformationBlockType32

SystemInformationBlockType32-NB

二、SIB31信令详解

SIB32 ASN.1消息包含多个信令(IE)。这些IE根据功能的不同,可以分为以下几类:

**载波频率列表(carrierFreqList)**包含E-UTRA频率列表,详见TS 36.304 。

左仰角、右仰角(elevationAngleLeft, elevationAngleRight) 相对于卫星方向的最左和最右仰角,单位为度。 步长为5度。实际值 = 字段值 * 5。 如果elevationAngleLeft字段不存在,则最左仰角等于elevationAngleRight字段的值。

**覆盖区域信息(footprintInfo)**卫星覆盖区域。 E-UTRAN可以为地球移动小区配置仰角和/或半径。 E-UTRAN可以为准地球固定小区配置参考点和半径。

**纬度(latitude)**参考点的纬度,单位为度。 步长为360 / 262144度。实际值 = 字段值 * (360 / 262144)。

**经度(longitude)**参考点的经度,单位为度。 步长为360 / 262144度。实际值 = 字段值 * (360 / 262144)。

**半径(radius)**参考点与卫星或波束覆盖边缘之间的距离,单位为公里。 步长为10公里。实际值 = 字段值 * 10。

卫星信息列表(satelliteInfoList) 卫星信息列表。如果E-UTRAN包含satelliteInfoList-v1830,则它包含与satelliteInfoList-r17相同数量的条目,并按相同顺序排列。 在本规范版本中,E-UTRAN不包含satelliteInfoList-v1800

服务信息(serviceInfo) 关于卫星何时提供覆盖的信息。 E-UTRAN总是为具有地球移动小区的卫星配置tle-EphemerisParameters,并为准地球固定小区配置t-ServiceStart

**tle-轨道参数(tle-EphemerisParameters)**基于TLE集合格式的卫星轨道参数的平均值,用于估计具有地球移动小区的卫星的覆盖和非覆盖时段,详见TS 36.304 。

**服务开始时间(t-ServiceStart)**关于即将到来的卫星何时开始为准地球固定小区提供服务的时间信息。

三、详细信令分析:轨道参数(tle-EphemerisParameters)解析

TLE-EphemerisParameters根据CCSDS轨道平均元素消息(OMM)格式提供卫星轨道参数(参考【1】)。

在生成SGP4轨道传播器和SGP4参数时,所采用的参考坐标系为NORAD Space Track标准中的TEME(真实赤道,平均分点)坐标系。

TLE-EphemerisParameters的作用

TLE-EphemerisParameters信息元素提供了基于CCSDS OMM格式的卫星轨道参数。这些参数对于预测卫星的轨道位置和时间至关重要。CCSDS OMM格式是一种标准化的轨道参数表示方法,广泛应用于航天领域,用于描述卫星的轨道特性。通过这些参数,可以准确地计算出卫星在不同时间点的位置和速度,从而为卫星的跟踪和控制提供依据。

NORAD Space Track 是由美国太空司令部(USSPACECOM)运营的一个网站,提供空间监视数据,NORAD Space Track 标准 指的是 NORAD Space Track 网站所采用的一系列标准和规范,用于表示和传播卫星轨道数据。这些标准确保了数据的一致性和准确性,便于用户进行卫星轨道预测和分析。

标准的关键组成部分

  1. 两行轨道元素集(TLE)

    • 定义:TLE 是一种常用的卫星轨道元素表示格式。它由两行数据组成,每行 69 个字符,提供关于卫星轨道的基本信息。

    • 参数:TLE 包括轨道倾角、升交点经度、偏心率、近地点幅角、平均近点角、平均轨道运动和参考历元的轨道周期等参数。

    • Alpha-5 格式:为了处理日益增加的卫星数量,引入了 Alpha-5 格式。该格式修改了 TLE 格式,将五位数的对象编号的第一位替换为字母数字字符,允许表示多达 339,999 个对象。

  2. 轨道均根元素消息(OMM)

    • 定义:OMM 是由空间数据系统咨询委员会(CCSDS)开发的一种更灵活、可扩展性更强的卫星轨道元素表示格式。

    • 格式:OMM 数据可以以多种格式提供,包括 XML、KVN(键值表示法)、JSON、CSV 和 HTML。这些格式设计用于处理 9 位目录编号,并提供更详细的轨道信息。

    • CCSDS 标准:OMM 格式遵循 CCSDS 推荐标准 502.0-B-3,确保不同系统之间的兼容性和互操作性。

SGP4轨道模型

SGP4(Simplified General Perturbations model 4)是一种用于预测卫星轨道的数学模型。它考虑了多种摄动因素,如地球非球形引力、大气阻力、太阳和月球的引力等,能够较为准确地预测卫星的轨道位置。SGP4模型在航天领域得到了广泛应用,特别是在低地球轨道(LEO)卫星的轨道预测中。通过SGP4模型,可以基于TLE数据计算出卫星在任意时刻的位置和速度,为卫星的运行和管理提供支持。

TEME坐标系

TEME(True Equator, Mean Equinox)坐标系是一种用于描述卫星轨道的参考坐标系。它以地球的真赤道和平均分点为基准,能够准确地表示卫星在地球坐标系中的位置。TEME坐标系在NORAD Space Track标准中被广泛采用,用于卫星轨道数据的表示和计算。通过TEME坐标系,可以将卫星的轨道参数转换为地球坐标系中的位置和速度,便于卫星的跟踪和控制。

TLE-EphemerisParameters 消息的 ASN.1 编码结构如下:

TLE-轨道参数(TLE-EphemerisParameters)字段:

  • 近地点幅角(argumentPerigee)

    • 近地点幅角,参考【1】 表 4-3:OMM 数据。单位为度。

    • 步长为 360 / 4194303 度。实际值 = 字段值 * (360 / 4194303)。

  • B 的小数部分(bStarDecimal) *

    • B* 的小数部分,参考【1】 表 4-3:OMM 数据。单位为地球半径的倒数。

    • 步长为 0.00001。实际值 = 字段值 * 0.00001。

  • B 的指数部分(bStarExponent) *

    • B* 的指数部分,参考【1】表 4-3:OMM 数据。
  • 偏心率(eccentricity)

    • 偏心率,参考【1】 表 4-3:OMM 数据。

    • 步长为 0.9999999 / 16777215。实际值 = 字段值 * (0.9999999 / 16777215)。

  • 参考历元起始时间的时间偏移(epochStar)

    • 参考历元起始时间的时间偏移(当前周的周一 00:00:00 UTC)。单位为秒。
  • 轨道倾角(inclination)

    • 轨道倾角,参考【1】表 4-3:OMM 数据。单位为度。

    • 步长为 180 / 2097151 度。实际值 = 字段值 * (180 / 2097151)。

  • 平均近点角(meanAnomaly)

    • 参考历元时的平均近点角,参考【1】 表 4-3:OMM 数据。单位为度。

    • 步长为 360 / 4194303 度。实际值 = 字段值 * (360 / 4194303)。

  • 平均轨道运动(meanMotion)

    • 参考历元时的平均轨道运动,参考【1】表 4-3:OMM 数据。单位为每天的轨道数。

    • 步长为 99.99999999 / 17179869183 轨道/天。实际值 = 字段值 * (99.99999999 / 17179869183)。

  • 升交点经度(rightAscension)

    • 升交点经度,参考【1】 表 4-3:OMM 数据。单位为度。

    • 步长为 360 / 4194303 度。实际值 = 字段值 * (360 / 4194303)。

TLE-EphemerisParameters信息元素提供了基于CCSDS OMM格式的卫星轨道参数,这些参数通过SGP4轨道模型进行处理,生成卫星的轨道预测数据。在这一过程中,TEME坐标系作为参考坐标系,确保了轨道参数的准确性和一致性。

四 、SIB32的应用场景

基于SIB32信息预测低轨卫星(LEO)的覆盖时间,需通过以下步骤结合卫星轨道参数、覆盖区域定义及用户位置进行动态计算:

1. 解析SIB32中的关键参数

SIB32提供了卫星的轨道参数和覆盖区域信息,核心字段包括:

  • 轨道参数(TLE-EphemerisParameters):

    • inclination(轨道倾角)、eccentricity(偏心率)、meanMotion(平均运动)等。

    • 这些参数基于NORAD的TLE(两行轨道根数)格式,用于建模卫星轨道。

  • 覆盖区域(footprintInfo):

    • referencePoint(参考点经纬度)、radius(覆盖半径,实际值=字段值×10 km)、elevationAngles(仰角,实际值=字段值×5度)。
  • 卫星列表(satelliteInfoList):

    • 多个卫星的ID及轨道参数。

2. 使用SGP4/SDP4算法计算卫星位置

**输入:**TLE参数(来自SIB32的TLE-EphemerisParameters)。

**工具:**SGP4/SDP4轨道传播算法(国际标准,用于TLE数据解析)。

步骤:

  1. 将SIB32中的参数转换为标准TLE格式。

  2. 使用SGP4模型计算卫星在未来时间点的位置(经度、纬度、高度)。

  3. 预测卫星的过境时间窗口,即卫星进入和离开用户视野的时间。

示例:

若卫星轨道周期为90分钟,用户位置为(纬度φ, 经度λ),通过SGP4可计算卫星在24小时内经过该区域的次数及每次的持续时间。

3. 确定卫星覆盖区域与用户位置的重叠

**输入:**卫星的实时位置(步骤2结果) + SIB32中的footprintInfo。

方法:

  1. 覆盖区域建模:

    • 以referencePoint为中心,radius为半径,在地球表面形成一个圆形覆盖区。

    • 仰角(如elevationAngleRight=10 → 实际50度)限制用户设备的最小仰角要求(避免遮挡)。

  2. 用户位置匹配:

    • 计算用户与卫星覆盖区域的几何关系。若用户位于覆盖圆内,且卫星仰角≥阈值,则视为可覆盖。
  3. 时间窗口计算:

    • 结合卫星移动速度和覆盖区半径,计算用户处于覆盖区内的起止时间。

公式:

覆盖时间窗口 ≈ 卫星过境时间 ± (覆盖半径 / 卫星移动速度)

4. 动态更新与多卫星协同

  • **参数更新:**LEO卫星轨道可能因大气阻力或机动调整而变化,需定期接收最新SIB32信息。

  • **多卫星切换:**若satelliteInfoList包含多颗卫星,需计算每颗卫星的覆盖时间,并选择最佳接入顺序。

  • **用户移动性:**若用户移动(如车载终端),需实时更新用户位置并重新计算覆盖时间。

5. 实际应用示例

**场景:**用户位于北纬30度、东经120度,需接入某LEO卫星提供的高速网络。

步骤:

  1. 解析SIB32,获取卫星TLE参数:倾角=53度,平均运动=15.5圈/天。

  2. 使用SGP4计算卫星未来24小时的位置,发现卫星将在12:00、14:30、17:00三次过境用户区域。

  3. 结合覆盖半径(100 km)和仰角要求(≥30度),确定每次过境的覆盖时间为:

    • 12:00-12:10(10分钟)

    • 14:30-14:35(5分钟)

    • 17:00-17:08(8分钟)

  4. UE根据预测时间提前启动测量,确保无缝切换。

五、总结

通过SIB32提供的轨道参数和覆盖信息,结合SGP4算法和几何建模,可精确预测低轨卫星的覆盖时间窗口。地面设备可以在保障低功耗性能的基础上,确保和低轨卫星的通信在时间和频率上保持准确性。

相关推荐
车载诊断技术2 小时前
车载软件架构 --- 基于AUTOSAR软件架构的ECU开发流程小白篇
网络·unity·架构·汽车·电子电器框架·车载充电器(obc)
marshalVS3 小时前
前端学习-事件解绑,mouseover和mouseenter的区别(二十九)
前端·学习
一只码代码的章鱼3 小时前
计算机网络 笔记 网络层 3
笔记·计算机网络
笑鸿的学习笔记4 小时前
qt-Quick3D笔记之官方例程Runtimeloader Example运行笔记
笔记·qt·3d
爱码小白4 小时前
InnoSetup使用教程笔记
笔记·python
hunandede5 小时前
mysql 学习5 mysql图形化界面DataGrip下载 安装 使用
数据库·学习·mysql
charlie1145141915 小时前
从0开始使用面对对象C语言搭建一个基于OLED的图形显示框架(基础图形库实现)
c语言·驱动开发·笔记·单片机·oled·嵌入式软件
7yewh5 小时前
嵌入式知识点总结 Linux驱动 (七)-Linux驱动常用函数 uboot命令 bootcmd bootargs get_part env_get
linux·arm开发·驱动开发·mcu·物联网·硬件工程
2401_858286115 小时前
L30.【LeetCode笔记】设计链表
开发语言·c++·笔记·算法·leetcode·链表