

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Berikan data ephemeris elevasi azimuth
<a name="providing-azimuth-elevation-ephemeris-data"></a>

**penting**  
 Fitur azimuth elevation ephemeris saat ini dalam status Pratinjau dan memerlukan orientasi eksplisit.   
 Fungsionalitas ephemeris elevasi Azimuth berada di bawah kontrol akses yang ketat untuk sejumlah kasus penggunaan khusus yang telah ditentukan sebelumnya. Akses secara signifikan lebih ketat daripada kemampuan ephemeris standar yang disediakan pelanggan. Untuk informasi lebih lanjut tentang kasus penggunaan yang disetujui dan proses permintaan akses, silakan buka AWS Dukungan tiket melalui [AWS Support Center Console](https://console.aws.amazon.com/support). Tim kami akan memandu Anda melalui proses persetujuan untuk kasus penggunaan khusus. 

## Ikhtisar
<a name="w2aac28c17c15b5"></a>

 Ephemeris elevasi Azimuth menyediakan cara untuk secara langsung menentukan arah penunjuk antena tanpa memberikan informasi orbital satelit. Alih-alih mengunggah data ephemeris yang menggambarkan orbit satelit, Anda memberikan azimuth dan sudut elevasi yang diberi tag waktu yang memberi tahu antena dengan tepat ke mana harus menunjuk ke seluruh kontak. 

 AWS Ground Station memperlakukan ephemerides sebagai Data Penggunaan [Individual](https://aws.amazon.com/service-terms). Jika Anda menggunakan fitur opsional ini, AWS akan menggunakan data ephemeris Anda untuk memberikan dukungan pemecahan masalah. 

 Pendekatan ini sangat berguna untuk skenario berikut: 
+ *Dukungan operasi awal:* Selama Peluncuran dan Fase Orbit Awal (LEOP) ketika data orbital yang tepat tidak tersedia, atau parameter orbital berubah dengan cepat.
+ *Pola penunjuk khusus:* Menerapkan urutan penunjuk khusus untuk pengujian antena atau operasi non-standar.

**catatan**  
 Saat menggunakan azimuth elevation ephemeris, ARN satelit dapat dihilangkan dari permintaan reservasi kontak. Jika ARN satelit tidak dihilangkan, itu masih akan dimasukkan sebagai bagian dari data kontak, tetapi ephemeris elevasi azimuth akan digunakan untuk penunjuk antena daripada melakukan resolusi prioritas ephemeris. Ephemeris elevasi azimuth dikaitkan dengan stasiun bumi tertentu dan mendefinisikan arah penunjuk antena untuk lokasi itu. 

## Format data ephemeris elevasi Azimuth
<a name="w2aac28c17c15b7"></a>

 Data ephemeris elevasi Azimuth terdiri dari azimuth dan nilai elevasi yang ditandai dengan waktu yang diatur ke dalam segmen. Setiap segmen berisi serangkaian sudut azimuth dan elevasi yang mencakup rentang waktu tertentu. 

 Komponen kunci dari data ephemeris elevasi azimuth adalah: 
+ *Ground Station: Stasiun* bumi khusus tempat ephemeris elevasi azimuth ini akan digunakan.
+ *Satuan Sudut:* Satuan pengukuran untuk sudut (`DEGREE_ANGLE`atau`RADIAN`).
+ *Segmen:* Satu atau lebih koleksi sudut azimuth dan elevasi yang dibatasi waktu.
+ *Sudut dengan tag waktu: Nilai* azimuth dan elevasi individu dengan stempel waktu terkait.

 Setiap segmen membutuhkan: 
+ Epoch referensi (waktu dasar untuk segmen)
+ Rentang waktu yang valid (waktu mulai dan berakhir untuk segmen)
+ Setidaknya 5 pasangan yang diberi tag waktu azimuth/elevation 

 Kendala elevasi Azimuth: 
+ Azimuth dalam derajat: -180° hingga 360°
+ Azimuth dalam radian: -π ke 2π
+ Ketinggian dalam derajat: -90° hingga 90°
+ Ketinggian dalam radian: -π/2 ke π/2
+ Nilai waktu harus dalam urutan menaik dalam setiap segmen
+ Segmen tidak boleh tumpang tindih dalam waktu

 Untuk informasi selengkapnya, lihat dokumentasi [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html)API dan tipe [TimeAzEl](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_TimeAzEl.html)data. 

## Membuat ephemeris elevasi azimuth
<a name="w2aac28c17c15b9"></a>

 Ephemeris elevasi Azimuth dibuat menggunakan aksi [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html)API yang sama, tetapi dengan tipe ephemeris. `azEl` Perbedaan utama dari TLE dan OEM ephemeris adalah: 
+ Anda harus menentukan `groundStation` parameter
+ `satelliteId`Parameter harus dihilangkan dari permintaan
+ Pengaturan prioritas tidak berlaku (setiap ephemeris elevasi azimuth khusus untuk stasiun bumi)
+ Setiap segmen harus berisi setidaknya 5 azimuth/elevation poin untuk mendukung interpolasi Lagrange orde ke-4
+ Batas dan persyaratan tambahan dirinci dalam dokumentasi [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html)API

 Penting untuk dicatat bahwa mengunggah ephemeris menyetel ephemeris `VALIDATING` dan memulai alur kerja asinkron yang akan memvalidasi dan menghasilkan kontak potensial dari ephemeris Anda. Ephemeris hanya akan digunakan untuk kontak setelah melewati alur kerja ini dan statusnya menjadi. `ENABLED` Anda harus melakukan polling [DescribeEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeEphemeris.html)untuk 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](troubleshooting-invalid-ephemerides.md) 

## Contoh: Buat ephemeris elevasi azimuth melalui API
<a name="w2aac28c17c15c11"></a>

 Contoh berikut menunjukkan cara membuat ephemeris elevasi azimuth menggunakan SDK for AWS Python (Boto3): 

```
import boto3

# Create AWS Ground Station client
ground_station_client = boto3.client("groundstation")

# Create azimuth elevation ephemeris
azimuth_elevation_ephemeris = ground_station_client.create_ephemeris(
    name="Azimuth Elevation for Ohio Ground Station",
    ephemeris={
        "azEl": {
            "groundStation": "Ohio 1",
            "data": {
                "azElData": {
                    "angleUnit": "DEGREE_ANGLE",
                    "azElSegmentList": [
                        {
                            "referenceEpoch": "2024-03-15T10:00:00Z",
                            "validTimeRange": {
                                "startTime": "2024-03-15T10:00:00Z",
                                "endTime": "2024-03-15T10:15:00Z",
                            },
                            "azElList": [
                                {"dt": 0.0, "az": 45.0, "el": 10.0},
                                {"dt": 180.0, "az": 50.0, "el": 15.0},
                                {"dt": 360.0, "az": 55.0, "el": 20.0},
                                {"dt": 540.0, "az": 60.0, "el": 25.0},
                                {"dt": 720.0, "az": 65.0, "el": 30.0},
                                {"dt": 900.0, "az": 70.0, "el": 35.0},
                            ],
                        }
                    ],
                }
            },
        }
    },
)

print(f"Created ephemeris with ID: {azimuth_elevation_ephemeris['ephemerisId']}")
```

 Dalam contoh ini: 
+ Data elevasi azimuth dikaitkan dengan stasiun bumi “Ohio 1"
+ Sudut ditentukan dalam derajat
+ Segmen ini mencakup periode 15 menit
+ `dt`Nilainya adalah detik atom yang diimbangi dari zaman referensi
+ Enam azimuth/elevation pasang disediakan (minimal 5)

## Contoh: Unggah data elevasi azimuth dari S3
<a name="w2aac28c17c15c13"></a>

 Untuk kumpulan data yang lebih besar, Anda dapat mengunggah data elevasi azimuth dari bucket S3: 

```
import boto3
import json

# Create AWS clients
s3_client = boto3.client("s3")
ground_station_client = boto3.client("groundstation")

# Define S3 bucket and key
bucket_name = "azimuth-elevation-bucket"
object_key = "singapore-azimuth-elevation.json"

# Create sample azimuth elevation data
azimuth_elevation_data = {
    "angleUnit": "DEGREE_ANGLE",
    "azElSegmentList": [
        {
            "referenceEpoch": "2024-03-15T10:00:00Z",
            "validTimeRange": {
                "startTime": "2024-03-15T10:00:00Z",
                "endTime": "2024-03-15T10:15:00Z",
            },
            "azElList": [
                {"dt": 0.0, "az": 45.0, "el": 10.0},
                {"dt": 180.0, "az": 50.0, "el": 15.0},
                {"dt": 360.0, "az": 55.0, "el": 20.0},
                {"dt": 540.0, "az": 60.0, "el": 25.0},
                {"dt": 720.0, "az": 65.0, "el": 30.0},
                {"dt": 900.0, "az": 70.0, "el": 35.0},
            ],
        },
        {
            "referenceEpoch": "2024-03-15T10:15:00Z",
            "validTimeRange": {
                "startTime": "2024-03-15T10:15:00Z",
                "endTime": "2024-03-15T10:30:00Z",
            },
            "azElList": [
                {"dt": 0.0, "az": 70.0, "el": 35.0},
                {"dt": 180.0, "az": 75.0, "el": 40.0},
                {"dt": 360.0, "az": 80.0, "el": 45.0},
                {"dt": 540.0, "az": 85.0, "el": 50.0},
                {"dt": 720.0, "az": 90.0, "el": 55.0},
                {"dt": 900.0, "az": 95.0, "el": 50.0},
            ],
        },
    ],
}

# Upload sample data to S3
print(f"Uploading azimuth elevation data to s3://{bucket_name}/{object_key}")

s3_client.put_object(
    Bucket=bucket_name,
    Key=object_key,
    Body=json.dumps(azimuth_elevation_data, indent=2),
    ContentType="application/json",
)
print("Sample data uploaded successfully to S3")

# Create azimuth elevation ephemeris from S3
print("Creating azimuth elevation ephemeris from S3...")

s3_azimuth_elevation_ephemeris = ground_station_client.create_ephemeris(
    name="Large Azimuth Elevation Dataset",
    ephemeris={
        "azEl": {
            "groundStation": "Singapore 1",
            "data": {"s3Object": {"bucket": bucket_name, "key": object_key}},
        }
    },
)

print(f"Created ephemeris with ID: {s3_azimuth_elevation_ephemeris['ephemerisId']}")
```

 Objek S3 harus berisi struktur JSON dengan data elevasi azimuth dalam format yang sama seperti yang ditunjukkan pada contoh upload langsung. 

## Memesan kontak dengan ephemeris elevasi azimuth
<a name="w2aac28c17c15c15"></a>

 Saat menggunakan ephemeris elevasi azimuth untuk memesan kontak, prosesnya berbeda dari ephemeris TLE dan OEM: 

1. Buat ephemeris elevasi azimuth menggunakan [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html)

1. Tunggu ephemeris mencapai status `ENABLED`

1. Pesan kontak menggunakan [ReserveContact](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ReserveContact.html)dengan penggantian pelacakan

 Contoh pemesanan kontak dengan ephemeris elevasi azimuth: 

```
import boto3
from datetime import datetime
import time

# Create AWS Ground Station client
ground_station_client = boto3.client("groundstation")

# First, create an azimuth elevation ephemeris
print("Creating azimuth elevation ephemeris...")

create_ephemeris_response = ground_station_client.create_ephemeris(
    name="Azimuth Elevation for Contact Reservation",
    ephemeris={
        "azEl": {
            "groundStation": "Ohio 1",
            "data": {
                "azElData": {
                    "angleUnit": "DEGREE_ANGLE",
                    "azElSegmentList": [
                        {
                            "referenceEpoch": "2024-03-15T10:00:00Z",
                            "validTimeRange": {
                                "startTime": "2024-03-15T10:00:00Z",
                                "endTime": "2024-03-15T10:15:00Z",
                            },
                            "azElList": [
                                {"dt": 0.0, "az": 45.0, "el": 10.0},
                                {"dt": 180.0, "az": 50.0, "el": 15.0},
                                {"dt": 360.0, "az": 55.0, "el": 20.0},
                                {"dt": 540.0, "az": 60.0, "el": 25.0},
                                {"dt": 720.0, "az": 65.0, "el": 30.0},
                                {"dt": 900.0, "az": 70.0, "el": 35.0},
                            ],
                        }
                    ],
                }
            },
        }
    },
)

ephemeris_id = create_ephemeris_response["ephemerisId"]
print(f"Created ephemeris with ID: {ephemeris_id}")

# Wait for ephemeris to become ENABLED
print("Waiting for ephemeris to become ENABLED...")

while True:
    status = ground_station_client.describe_ephemeris(ephemerisId=ephemeris_id)[
        "status"
    ]
    if status == "ENABLED":
        print("Ephemeris is ENABLED")
        break
    elif status in ["INVALID", "ERROR"]:
        raise RuntimeError(f"Ephemeris failed: {status}")
    time.sleep(5)

# Reserve contact with azimuth elevation ephemeris
print("Reserving contact...")

contact = ground_station_client.reserve_contact(
    # Note: satelliteArn is omitted when using azimuth elevation ephemeris
    missionProfileArn="arn:aws:groundstation:us-east-2:111122223333:mission-profile/example-mission-profile",
    groundStation="Ohio 1",
    startTime=datetime(2024, 3, 15, 10, 0, 0),
    endTime=datetime(2024, 3, 15, 10, 15, 0),
    trackingOverrides={"programTrackSettings": {"azEl": {"ephemerisId": ephemeris_id}}},
)

print(f"Reserved contact with ID: {contact['contactId']}")
```

**catatan**  
 `satelliteArn`Parameter dapat dihilangkan saat memesan kontak dengan ephemeris elevasi azimuth. Antena akan mengikuti azimuth dan sudut elevasi yang ditentukan selama kontak. 

## Daftar kontak yang tersedia
<a name="w2aac28c17c15c17"></a>

 Saat menggunakan ephemeris elevasi azimuth, API memerlukan parameter khusus: [ListContacts](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_ListContacts.html) 
+ `satelliteArn`Parameter dapat dihilangkan dari permintaan
+ Anda harus memberikan `ephemeris` parameter dengan ID ephemeris elevasi azimuth untuk menentukan ephemeris mana yang akan digunakan
+ Jendela kontak yang tersedia ditampilkan ketika sudut azimuth dan elevasi yang disediakan berada di atas [topeng situs stasiun bumi](https://docs.aws.amazon.com/ground-station/latest/ug/locations.site-masks.html) yang diminta
+ Anda harus tetap menyediakan `groundStation` dan `missionProfileArn`

 Contoh membuat ephemeris elevasi azimuth dan mencantumkan kontak yang tersedia dengannya: 

```
import boto3
from datetime import datetime, timezone
import time

# Create AWS Ground Station client
ground_station_client = boto3.client("groundstation")

# Step 1: Create azimuth elevation ephemeris
print("Creating azimuth elevation ephemeris...")
ephemeris_response = ground_station_client.create_ephemeris(
    name="Stockholm AzEl Ephemeris",
    ephemeris={
        "azEl": {
            "groundStation": "Stockholm 1",
            "data": {
                "azElData": {
                    "angleUnit": "DEGREE_ANGLE",
                    "azElSegmentList": [
                        {
                            "referenceEpoch": "2024-04-01T12:00:00Z",
                            "validTimeRange": {
                                "startTime": "2024-04-01T12:00:00Z",
                                "endTime": "2024-04-01T12:30:00Z",
                            },
                            "azElList": [
                                {"dt": 0.0, "az": 30.0, "el": 15.0},
                                {"dt": 360.0, "az": 45.0, "el": 30.0},
                                {"dt": 720.0, "az": 60.0, "el": 45.0},
                                {"dt": 1080.0, "az": 75.0, "el": 35.0},
                                {"dt": 1440.0, "az": 90.0, "el": 20.0},
                                {"dt": 1800.0, "az": 105.0, "el": 10.0},
                            ],
                        }
                    ],
                }
            },
        }
    },
)

ephemeris_id = ephemeris_response["ephemerisId"]
print(f"Created ephemeris: {ephemeris_id}")

# Step 2: Wait for ephemeris to become ENABLED
print("Waiting for ephemeris to become ENABLED...")
while True:
    describe_response = ground_station_client.describe_ephemeris(
        ephemerisId=ephemeris_id
    )
    status = describe_response["status"]

    if status == "ENABLED":
        print("Ephemeris is ENABLED")
        break
    elif status in ["INVALID", "ERROR"]:
        # Check for validation errors
        if "invalidReason" in describe_response:
            print(f"Ephemeris validation failed: {describe_response['invalidReason']}")
        raise RuntimeError(f"Ephemeris failed with status: {status}")

    print(f"Current status: {status}, waiting...")
    time.sleep(5)

# Step 3: List available contacts using the azimuth elevation ephemeris
print("Listing available contacts with azimuth elevation ephemeris...")

# Convert epoch timestamps to datetime objects
start_time = datetime.fromtimestamp(1760710513, tz=timezone.utc)
end_time = datetime.fromtimestamp(1760883313, tz=timezone.utc)

contacts_response = ground_station_client.list_contacts(
    startTime=start_time,
    endTime=end_time,
    groundStation="Stockholm 1",
    statusList=["AVAILABLE"],
    ephemeris={"azEl": {"id": ephemeris_id}},
    # satelliteArn is optional
    satelliteArn="arn:aws:groundstation::111122223333:satellite/a88611b0-f755-404e-b60d-57d8aEXAMPLE",
    missionProfileArn="arn:aws:groundstation:eu-north-1:111122223333:mission-profile/966b72f6-6d82-4e7e-b072-f8240EXAMPLE",
)

# Process the results
if contacts_response["contactList"]:
    print(f"Found {len(contacts_response['contactList'])} available contacts:")
    for contact in contacts_response["contactList"]:
        print(f"  - Contact from {contact['startTime']} to {contact['endTime']}")
        print(
            f"    Max elevation: {contact.get('maximumElevation', {}).get('value', 'N/A')}°"
        )
else:
    print("No available contacts found for the specified azimuth elevation ephemeris")
```

**catatan**  
 `ephemeris`Parameter dengan ID elevasi azimuth harus disediakan saat mencantumkan kontak untuk menentukan ephemeris elevasi azimuth mana yang harus digunakan untuk menentukan jendela kontak. Jika disertakan, itu akan dikaitkan dengan data kontak, tetapi ephemeris elevasi azimuth akan digunakan untuk penunjuk antena daripada melakukan resolusi prioritas ephemeris. `satelliteArn` 