

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Fornisci dati sulle effemeridi TLE
<a name="providing-tle-ephemeris-data"></a>

**Importante**  
 L'API delle effemeridi è attualmente in uno stato di anteprima 

 L'accesso all'API Ephemeris viene fornito solo in base alle necessità. Se hai bisogno della possibilità di caricare dati sulle effemeridi personalizzati, apri un ticket tramite. Supporto AWS [AWS Support Center Console](https://console.aws.amazon.com/support) Il nostro team collaborerà con voi per abilitare questa funzionalità in base alle vostre esigenze specifiche. 

## Panoramica di
<a name="w2aac28c17c11b7"></a>

 I set di elementi a due linee (TLE) sono un formato standardizzato per descrivere le orbite dei satelliti. L'API Ephemeris consente di caricare effemeridi TLE per utilizzarle con un satellite. AWS Ground Station [Queste effemeridi sostituiscono le effemeridi predefinite di Space-Track (vedi:).](https://www.space-track.org/) [Dati predefiniti sulle effemeridi](default-ephemeris-data.md) 

 AWS Ground Station tratta le [effemeridi come dati](https://aws.amazon.com/service-terms) di utilizzo personalizzati. Se utilizzi questa funzionalità opzionale, AWS utilizzerà i tuoi dati sulle effemeridi per fornire supporto per la risoluzione dei problemi. 

 Il caricamento di effemeridi TLE personalizzate può migliorare la qualità del tracciamento, gestire le operazioni iniziali laddove non sono disponibili effemeridi [Space-Track](https://www.space-track.org/) e tenere conto delle manovre. AWS Ground Station

**Nota**  
 Quando si forniscono effemeridi personalizzate prima che venga assegnato un numero di catalogo satellitare al satellite, è possibile utilizzarlo `00000` per il campo del numero di catalogo satellitare del TLE e `000` per la parte relativa al numero di lancio del campo di designazione internazionale del TLE (ad esempio `24000A` per un veicolo lanciato nel 2024).   
 [Per ulteriori informazioni sul formato di, vedere Set di TLEs elementi a due righe.](https://en.wikipedia.org/wiki/Two-line_element_set) 

## Creazione di effemeridi TLE
<a name="w2aac28c17c11b9"></a>

 È possibile creare un'effemeride TLE utilizzando l'azione nell'API. [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html) AWS Ground Station Questa azione caricherà un'effemeride utilizzando i dati nel corpo della richiesta o da un bucket S3 specificato. 

 È importante notare che il caricamento di un'effemeride imposta le effemeridi e avvia un flusso di lavoro asincrono che convaliderà `VALIDATING` e genererà potenziali contatti a partire dalle effemeridi. Solo dopo che un'effemeride avrà superato questo flusso di lavoro e sarà diventata tale, verrà utilizzata per i contatti. `ENABLED` È necessario eseguire un sondaggio [DescribeEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeEphemeris.html)per verificare lo stato delle effemeridi o utilizzare CloudWatch gli eventi per tenere traccia delle modifiche allo stato delle effemeridi. 

 Per risolvere un problema di effemeridi non valido, consulta: [Risoluzione dei problemi relativi alle effemeridi non valide](troubleshooting-invalid-ephemerides.md) 

## Esempio: crea un set di effemeridi a due righe (TLE) tramite API
<a name="w2aac28c17c11c11"></a>

 È possibile utilizzare la AWS SDKs CLI e per caricare un set di effemeridi a due elementi di riga (TLE) tramite la chiamata. AWS Ground Station [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html) Queste effemeridi verranno utilizzate al posto dei dati sulle effemeridi predefiniti per un satellite (vedi). [Dati predefiniti sulle effemeridi](default-ephemeris-data.md) Questo esempio mostra come eseguire questa operazione utilizzando l'[AWS SDK for Python (](https://docs.aws.amazon.com/pythonsdk)Boto3). 

 Un set TLE è un oggetto in formato JSON che mette insieme uno o più TLEs oggetti per costruire una traiettoria continua. Il TLEs set TLE deve formare un insieme continuo che possiamo usare per costruire una traiettoria (cioè nessun intervallo di tempo tra un set TLE e l'altro). TLEs Di seguito è riportato un esempio di set TLE: 

```
[
    {
        "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
        }
    }
]
```

**Nota**  
 Gli intervalli di tempo di un set TLE devono corrispondere esattamente per essere una traiettoria valida e continua. TLEs 

 Un set TLE può essere caricato tramite il client AWS Ground Station boto3 nel modo seguente: 

```
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']}")
```

 Questa chiamata restituirà un ephemerisID che può essere utilizzato per fare riferimento alle effemeridi in futuro. Ad esempio, possiamo utilizzare l'ephemerisID fornito dalla chiamata precedente per verificare lo stato delle effemeridi: 

```
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']}")
```

 Di seguito viene fornito un esempio di risposta derivante dall'azione [DescribeEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeEphemeris.html) 

```
{
  "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}}]"
    }
  }
}
```

 Si consiglia di eseguire il polling del [DescribeEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeEphemeris.html)percorso o utilizzare CloudWatch gli eventi per tenere traccia dello stato delle effemeridi caricate, poiché deve passare attraverso un flusso di lavoro di convalida asincrono prima che venga impostato e diventi utilizzabile per la pianificazione `ENABLED` e l'esecuzione dei contatti. 

 [Notate che l'ID NORAD in tutto il set TLE, TLEs negli esempi precedenti, deve corrispondere all'ID NORAD assegnato al vostro satellite `25994` nel database Space-Track.](https://www.space-track.org/) 

## Esempio: caricamento di dati sulle effemeridi TLE da un bucket S3
<a name="w2aac28c17c11c13"></a>

 È anche possibile caricare un file di effemeridi TLE direttamente da un bucket S3 puntando al bucket e alla chiave dell'oggetto. AWS Ground Station recupererà l'oggetto per tuo conto. Le informazioni sulla crittografia dei dati archiviati AWS Ground Station sono dettagliate in:[Crittografia dei dati a riposo per AWS Ground Station](security.encryption-at-rest.md). 

 Di seguito è riportato un esempio di caricamento di un file di effemeridi TLE da un 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']}")
```