Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Berikan data ephemeris TLE
penting
API ephemeris saat ini dalam status Pratinjau
Akses ke API Ephemeris disediakan hanya sesuai kebutuhan. <Jika Anda memerlukan kemampuan untuk mengunggah data ephemeris khusus, Anda harus menghubungi aws-groundstation@amazon.com.>
Gambaran umum
Set elemen dua baris (TLE) adalah format standar untuk menggambarkan orbit satelit. API Ephemeris memungkinkan ephemerides TLE diunggah untuk digunakan dengan satelit. AWS Ground Station Ephemerides ini mengesampingkan ephemerides default dari Space-Track (lihat:).
AWS Ground Station memperlakukan ephemerides sebagai Data Penggunaan Individual
Mengunggah ephemerides TLE khusus dapat meningkatkan kualitas pelacakan, menangani operasi awal di mana tidak ada ephemerides Space-Track
catatan
Saat memberikan ephemeris khusus sebelum nomor katalog satelit ditetapkan untuk satelit Anda, Anda dapat menggunakan 00000 untuk bidang nomor katalog satelit TLE, dan 000 untuk bagian nomor peluncuran bidang penunjuk internasional TLE (misalnya 24000A untuk kendaraan yang diluncurkan pada tahun 2024).
Untuk informasi selengkapnya tentang format TLEs, lihat Kumpulan elemen dua baris
Membuat ephemeris TLE
Ephemeris TLE dapat dibuat menggunakan CreateEphemeristindakan di API. AWS Ground Station Tindakan ini akan mengunggah ephemeris menggunakan data baik di badan permintaan atau dari bucket S3 yang ditentukan.
Penting untuk dicatat bahwa mengunggah ephemeris menyetel ephemeris VALIDATING dan memulai alur kerja asinkron yang akan memvalidasi dan menghasilkan kontak potensial dari ephemeris Anda. Hanya setelah ephemeris melewati alur kerja ini dan menjadi ENABLED akan digunakan untuk kontak. Anda harus melakukan polling DescribeEphemerisuntuk status ephemeris atau menggunakan CloudWatch peristiwa untuk melacak perubahan status ephemeris.
Untuk memecahkan masalah ephemeris yang tidak valid, lihat: Memecahkan masalah ephemerides yang tidak valid
Contoh: Buat elemen dua baris (TLE) set ephemeris melalui API
The AWS SDKs, dan CLI dapat digunakan untuk mengunggah elemen dua baris (TLE) yang disetel ephemeris melalui panggilan. AWS Ground Station CreateEphemeris Ephemeris ini akan digunakan sebagai pengganti data ephemeris default untuk satelit (lihat). Data ephemeris standar Contoh ini menunjukkan bagaimana melakukan ini menggunakan AWS SDK for Python (Boto3).
Set TLE adalah objek berformat JSON yang merangkai satu atau lebih TLEs bersama-sama untuk membangun lintasan kontinu. TLEs Dalam set TLE harus membentuk himpunan kontinu yang dapat kita gunakan untuk membangun lintasan (yaitu tidak ada celah waktu antara TLEs dalam set TLE). Contoh set TLE ditunjukkan di bawah ini:
[ { "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 } } ]
catatan
Rentang waktu TLEs dalam set TLE harus sama persis untuk menjadi lintasan kontinu yang valid.
Satu set TLE dapat diunggah melalui klien AWS Ground Station boto3 sebagai berikut:
import boto3 from datetime import datetime, timedelta, timezone # Create AWS Ground Station client ground_station_client = boto3.client("groundstation") # Create TLE ephemeris tle_ephemeris = ground_station_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), }, } ] } }, ) print(f"Created TLE ephemeris with ID: {tle_ephemeris['ephemerisId']}")
Panggilan ini akan mengembalikan ephemerisid yang dapat digunakan untuk mereferensikan ephemeris di masa depan. Misalnya, kita dapat menggunakan ephemerisid yang disediakan dari panggilan di atas untuk melakukan polling untuk status ephemeris:
import boto3 from datetime import datetime, timedelta, timezone import time # Create AWS Ground Station client ground_station_client = boto3.client("groundstation") # First, create a TLE ephemeris print("Creating TLE ephemeris...") tle_ephemeris = ground_station_client.create_ephemeris( name="Example TLE Ephemeris for Description", 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), }, } ] } }, ) ephemeris_id = tle_ephemeris["ephemerisId"] print(f"Created TLE ephemeris with ID: {ephemeris_id}") # Describe the ephemeris immediately to check initial status print("Describing ephemeris...") response = ground_station_client.describe_ephemeris(ephemerisId=ephemeris_id) print(f"Ephemeris ID: {response['ephemerisId']}") print(f"Name: {response['name']}") print(f"Status: {response['status']}")
Contoh respons dari DescribeEphemeristindakan disediakan di bawah ini
{ "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}}]" } } }
Disarankan untuk melakukan polling DescribeEphemerisrute atau menggunakan CloudWatch peristiwa untuk melacak status ephemeris yang diunggah karena harus melalui alur kerja validasi asinkron sebelum disetel ke dan menjadi dapat digunakan untuk ENABLED menjadwalkan dan mengeksekusi kontak.
Perhatikan bahwa ID NORAD di semua set TLE, TLEs dalam contoh 25994 di atas, harus cocok dengan ID NORAD yang telah ditetapkan satelit Anda dalam database Space-Track
Contoh: Mengunggah data ephemeris TLE dari bucket S3
Dimungkinkan juga untuk mengunggah file ephemeris TLE langsung dari bucket S3 dengan menunjuk ke bucket dan kunci objek. AWS Ground Station akan mengambil objek atas nama Anda. Informasi tentang enkripsi data saat istirahat AWS Ground Station dirinci dalam:Enkripsi data saat istirahat untuk AWS Ground Station.
Di bawah ini adalah contoh mengunggah file ephemeris TLE dari bucket S3
import boto3 from datetime import datetime, timedelta, timezone import json # Create AWS clients s3_client = boto3.client("s3") ground_station_client = boto3.client("groundstation") # Define S3 bucket and key bucket_name = "ephemeris-bucket" object_key = "test_data.tle" # Create sample TLE set data # Note: For actual satellites, use real TLE data from sources like Space-Track tle_set_data = [ { "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=3), }, }, { "tleLine1": "1 25994U 99068A 20321.54719794 .00000075 00000-0 26688-4 0 9998", "tleLine2": "2 25994 98.2007 33.6589 0001234 89.2782 18.9934 14.57114995112342", "validTimeRange": { "startTime": datetime.now(timezone.utc) + timedelta(days=3), "endTime": datetime.now(timezone.utc) + timedelta(days=7), }, }, ] # Convert to JSON string for upload tle_json = json.dumps(tle_set_data, indent=2) # Upload sample TLE data to S3 print(f"Uploading TLE set data to s3://{bucket_name}/{object_key}") s3_client.put_object( Bucket=bucket_name, Key=object_key, Body=tle_json, ContentType="application/json" ) print("TLE set data uploaded successfully to S3") print(f"Uploaded {len(tle_set_data)} TLE entries covering 7 days") # Create TLE ephemeris from S3 print("Creating TLE ephemeris from S3...") s3_tle_ephemeris = ground_station_client.create_ephemeris( name="2022-11-05 S3 TLE Upload", satelliteId="fde41049-14f7-413e-bd7b-EXAMPLE01", enabled=True, expirationTime=datetime.now(timezone.utc) + timedelta(days=5), priority=2, ephemeris={"tle": {"s3Object": {"bucket": bucket_name, "key": object_key}}}, ) print(f"Created TLE ephemeris with ID: {s3_tle_ephemeris['ephemerisId']}")