本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
提供自定义星历数据
重要
星历表目前处API于 “预览” 状态
只有在需要时才提供API对星历的访问权限。<如果您需要能够上传自定义星历数据,则应联系 aws-groundstation@amazon.com。>
AWS Ground Station 将星历视为个性化
概述
Ephemeris API 允许将自定义星历上传到卫星上以供卫星使用。 AWS Ground Station 这些星历表覆盖了 Space-Track 中的默认星历表(参见:)。
上传自定义星历表可以提高跟踪质量,在没有 Spac
注意
OEM星历格式
AWS Ground Station 根据CCSDS标准
部分 | 字段 | CCSDS必需的 | AWS Ground Station 必需的 | 注意 |
---|---|---|---|---|
标题 | CCSDS_OEM_VERS | 是 | 是 | 所需值:2.0 |
COMMENT | 否 | 否 | ||
CLASSIFICATION | 否 | 否 | ||
CREATION_DATE | 是 | 是 | ||
ORIGINATOR | 是 | 是 | ||
MESSAGE_ID | 否 | 否 | ||
元数据 | META_START | 是 | 是 | |
COMMENT | 否 | 否 | ||
OBJECT_NAME | 是 | 是 | ||
OBJECT_ID | 是 | 是 | ||
CENTER_NAME | 是 | 是 | 必填值:地球 | |
REF_FRAME | 是 | 是 | 可接受的值:EME2000, ITRF2 000 | |
REF_FRAME_EPOCH | 否 | 不支持* | 不需要,因为接受的 REF _ FRAMEs 有一个隐含的时代 | |
TIME_SYSTEM | 是 | 是 | 必填值:UTC | |
START_TIME | 是 | 是 | ||
USEABLE_START_TIME | 否 | 否 | ||
USEABLE_STOP_TIME | 否 | 否 | ||
STOP_TIME | 是 | 是 | ||
INTERPOLATION | 否 | 是 | 必需,因此 AWS Ground Station 可以为触点生成精确的指向角度。 | |
INTERPOLATION_DEGREES | 否 | 是 | 必需,因此 AWS Ground Station 可以为触点生成精确的指向角度。 | |
META_STOP | 是 | 是 | ||
数据 | X | 是 | 是 | 代表于 km |
Y | 是 | 是 | 代表于 km |
|
Z | 是 | 是 | 代表于 km |
|
X_ DOT | 是 | 是 | 代表于 km/s |
|
Y_ DOT | 是 | 是 | 代表于 km/s |
|
Z_ DOT | 是 | 是 | 代表于 km/s |
|
X_ DDOT | 否 | 否 | 代表于 km/s^2 |
|
Y_ DDOT | 否 | 否 | 代表于 km/s^2 |
|
Z_ DDOT | 否 | 否 | 代表于 km/s^2 |
|
协方差矩阵 | COVARIANCE_START | 否 | 否 | |
EPOCH | 否 | 否 | ||
COV_REF_FRAME | 否 | 否 | ||
COVARIANCE_STOP | 否 | 否 |
* 如果提供的行中包含任何不支持的行OEM,OEM则验证失败。 AWS Ground Station
与CCSDS标准的重要偏差 AWS Ground Station 是:
-
CCSDSOEM_ _ 必须VERS是
2.0
。 -
REF_ 必须FRAME为
EME2000
或ITRF2000
。 -
REFEPOCH不支持 FRAME _ _ AWS Ground Station。
-
CENTER_ 必须NAME是
Earth
。 -
TIME_ 必须SYSTEM是
UTC
。 -
INTERPOLATION和 INTERPOLATION _ DEGREES 均为必填项 AWS Ground Station CPE。
格式OEM的示例星历 KVN
以下是 -1 公共广播公司卫星KVN格式的OEM星历的截断示例。JPSS
CCSDS_OEM_VERS = 2.0 COMMENT Orbit data are consistent with planetary ephemeris DE-430 CREATION_DATE = 2024-07-22T05:20:59 ORIGINATOR = Raytheon-JPSS/CGS META_START OBJECT_NAME = J1 OBJECT_ID = 2017-073A CENTER_NAME = Earth REF_FRAME = EME2000 TIME_SYSTEM = UTC START_TIME = 2024-07-22T00:00:00.000000 STOP_TIME = 2024-07-22T00:06:00.000000 INTERPOLATION = Lagrange INTERPOLATION_DEGREE = 5 META_STOP 2024-07-22T00:00:00.000000 5.905147360000000e+02 -1.860082793999999e+03 -6.944807075000000e+03 -5.784245796000000e+00 4.347501391999999e+00 -1.657256863000000e+00 2024-07-22T00:01:00.000000 2.425572045154201e+02 -1.595860765983339e+03 -7.030938457373539e+03 -5.810660250794190e+00 4.457103652219009e+00 -1.212889340333023e+00 2024-07-22T00:02:00.000000 -1.063224256538050e+02 -1.325569732497146e+03 -7.090262617183503e+03 -5.814973972202444e+00 4.549739160042560e+00 -7.639633689161465e-01 2024-07-22T00:03:00.000000 -4.547973959231161e+02 -1.050238305712201e+03 -7.122556683227951e+03 -5.797176562437553e+00 4.625064829516728e+00 -3.121687831090774e-01 2024-07-22T00:04:00.000000 -8.015427368657785e+02 -7.709137891269565e+02 -7.127699477194810e+03 -5.757338007808417e+00 4.682800822515077e+00 1.407953645161997e-01 2024-07-22T00:05:00.000000 -1.145240083085062e+03 -4.886583601179489e+02 -7.105671911254255e+03 -5.695608435738609e+00 4.722731329786999e+00 5.932259682105052e-01 2024-07-22T00:06:00.000000 -1.484582479061495e+03 -2.045451985605701e+02 -7.056557069672793e+03 -5.612218005854990e+00 4.744705579872771e+00 1.043421397392599e+00
创建自定义星历表
可以使用中的CreateEphemeris操作创建自定义星历。 AWS Ground Station API此操作将使用请求正文或指定 S3 存储桶中的数据上传星历。
请务必注意,上传星历会将星历设置为 VALIDATING
并启动异步工作流程,该工作流程将验证您的星历并生成可能联络。只有当星历通过此工作流程并成为 ENABLED
后,才会将其用于联络。您应该轮DescribeEphemeris询星历状态或使用 CloudWatch 事件来跟踪星历的状态变化。
要对无效的星历进行故障排除,请参阅:对无效的星历进行故障排除
示例:通过以下方式创建双行元素 (TLE) 集星历 API
AWS SDKs,和CLI可用于 AWS Ground Station 通过调用上传两行元素 (TLE) 设置星历表。CreateEphemeris此星历将用于代替卫星的默认星历数据(参见默认星历数据)。此示例说明如何使用AWS SDK适用于 Python 的 (Boto3) 来执行此操作。
TLE集合是一种JSON格式化的对象,它将一个或多个串在TLEs一起以构造连续的轨迹。TLE集合TLEs中的必须形成一个连续的集合,我们可以用它来构造轨迹(即TLE集合中没有时间间TLEs隔)。示例TLE集如下所示:
# example_tle_set.json [ { "tleLine1": "1 25994U 99068A 20318.54719794 .00000075 00000-0 26688-4 0 9997", "tleLine2": "2 25994 98.2007 30.6589 0001234 89.2782 18.9934 14.57114995111906", "validTimeRange": { "startTime": 12345, "endTime": 12346 } }, { "tleLine1": "1 25994U 99068A 20318.54719794 .00000075 00000-0 26688-4 0 9997", "tleLine2": "2 25994 98.2007 30.6589 0001234 89.2782 18.9934 14.57114995111906", "validTimeRange": { "startTime": 12346, "endTime": 12347 } } ]
注意
TLE集合TLEs中的时间范围必须完全匹配才能成为有效的连续轨迹。
可以通过 AWS Ground Station boto3 客户端上传一TLE套套装,如下所示:
tle_ephemeris_id = ground_station_boto3_client.create_ephemeris( name="Example Ephemeris", satelliteId="2e925701-9485-4644-b031-EXAMPLE01", enabled=True, expirationTime=datetime.now(timezone.utc) + timedelta(days=3), priority=2, ephemeris = { "tle": { "tleData": [ { "tleLine1": "1 25994U 99068A 20318.54719794 .00000075 00000-0 26688-4 0 9997", "tleLine2": "2 25994 98.2007 30.6589 0001234 89.2782 18.9934 14.57114995111906", "validTimeRange": { "startTime": datetime.now(timezone.utc), "endTime": datetime.now(timezone.utc) + timedelta(days=7) } } ] } })
此调用将返回 ephemerisId 一个可用于在将来引用星历的。例如,我们可以使用上面调用 ephemerisId 中提供的内容来轮询星历的状态:
client.describe_ephemeris(ephemerisId=tle_ephemeris_id['ephemerisId'])
下面提供了该DescribeEphemeris操作的响应示例
{ "creationTime": 1620254718.765, "enabled": true, "name": "Example Ephemeris", "ephemerisId": "fde41049-14f7-413e-bd7b-EXAMPLE01", "priority": 2, "status": "VALIDATING", "suppliedData": { "tle": { "ephemerisData": "[{\"tleLine1\": \"1 25994U 99068A 20318.54719794 .00000075 00000-0 26688-4 0 9997\",\"tleLine2": \"2 25994 98.2007 30.6589 0001234 89.2782 18.9934 14.57114995111906\",\"validTimeRange\": {\"startTime\": 1620254712000,\"endTime\": 1620859512000}}]" } } }
建议轮询DescribeEphemeris路径或使用 CloudWatch 事件来跟踪上传的星历表的状态,因为它必须经过异步验证工作流程,然后才能设置为并可用于安排ENABLED
和执行联系人。
请注意,在上面的示例中,该TLE集合TLEs25994
中的所有 NORAD ID必须与您的卫星在Space-T rac
示例:从 S3 存储桶上传星历数据
也可以通过指向 S3 存储桶和对象密钥直接从 S3 存储桶上传星历文件。 AWS Ground Station 将代表您取回对象。有关静态数据加密的信息,请参阅:G AWSround Stat AWS Ground Station ion 的静态数据加密
以下是从 S3 存储桶OEM上传星历文件的示例
s3_oem_ephemeris_id = ground_station_client.create_ephemeris( name="2022-10-26 S3 OEM Upload", satelliteId="fde41049-14f7-413e-bd7b-EXAMPLE01", enabled=True, expirationTime=datetime.now(timezone.utc) + timedelta(days=5), priority=2, ephemeris = { "oem": { "s3Object": { "bucket": "ephemeris-bucket-for-testing", "key": "test_data.oem", } } })
以下是为上一个示例代码块中上传的星OEM历表调用DescribeEphemeris操作返回的数据示例。
{ "creationTime": 1620254718.765, "enabled": true, "name": "Example Ephemeris", "ephemerisId": "fde41049-14f7-413e-bd7b-EXAMPLE02", "priority": 2, "status": "VALIDATING", "suppliedData": { "oem": { "sourceS3Object": { "bucket": "ephemeris-bucket-for-testing", "key": "test_data.oem" } } } }
示例:使用客户提供的星历表 AWS Ground Station
有关使用客户提供的星历表的更多详细说明,请参阅将客户提供的星历表与(及其 AWS Ground Station关联的存储库 aws-samples/)一起 AWS Ground Station使用