

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Proporcione datos de efemérides de TLE
<a name="providing-tle-ephemeris-data"></a>

**importante**  
 La API de efemérides se encuentra actualmente en estado de previsualización. 

 El acceso a la API de Efemérides solo se proporciona en función de las necesidades. Si necesita poder cargar datos de efemérides personalizados, abra un AWS Support ticket a través del. [AWS Support Center Console](https://console.aws.amazon.com/support) Nuestro equipo trabajará con usted para habilitar esta capacidad para sus requisitos específicos. 

## Descripción general de
<a name="w2aac28c17c11b7"></a>

 Los conjuntos de elementos de dos líneas (TLE) son un formato estandarizado para describir las órbitas de los satélites. La API de efemérides permite cargar las efemérides del TLE para usarlas con un satélite. AWS Ground Station [Estas efemérides anulan las efemérides predeterminadas de Space-Track (consulte:).](https://www.space-track.org/) [Datos de efemérides predeterminados](default-ephemeris-data.md) 

 AWS Ground Station trata [las efemérides como datos](https://aws.amazon.com/service-terms) de uso individualizados. Si utiliza esta función opcional, AWS utilizará sus datos de efemérides para proporcionar asistencia en la solución de problemas. 

 La carga de efemérides TLE personalizadas puede mejorar la calidad del seguimiento, gestionar las primeras operaciones en las que no haya efemérides de [Space-Track](https://www.space-track.org/) disponibles y tener en cuenta las maniobras. AWS Ground Station

**nota**  
 Al proporcionar efemérides personalizadas antes de asignar un número de catálogo de satélites a su satélite, puede utilizarlas para el campo de números de catálogo de satélites de la TLE y `00000` para la parte del número de lanzamiento del campo designador internacional de la TLE (por ejemplo, `000` para un vehículo lanzado en 2024). `24000A`   
 Para obtener más información sobre el formato de TLEs, consulte Conjunto de elementos de [dos](https://en.wikipedia.org/wiki/Two-line_element_set) líneas. 

## Crear una efeméride TLE
<a name="w2aac28c17c11b9"></a>

 Se puede crear una efeméride de TLE mediante la [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html)acción de la API. AWS Ground Station Esta acción cargará una efeméride utilizando los datos del cuerpo de la solicitud o de un bucket de S3 específico. 

 Es importante tener en cuenta que al cargar una efeméride ésta se establece en `VALIDATING` e inicia un flujo de trabajo asíncrono que validará y generará contactos potenciales a partir de la efeméride. Solo se podrá utilizar para contactos cuando la efeméride haya superado este flujo de trabajo y esté `ENABLED`. Deberías sondear el estado de las efemérides o usar CloudWatch eventos [DescribeEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeEphemeris.html)para realizar un seguimiento de los cambios de estado de las efemérides. 

 Para solucionar problemas relacionados con una efeméride no válida, consulta: [Solucionar problemas de efemérides no válidas](troubleshooting-invalid-ephemerides.md) 

## Ejemplo: cree un conjunto de efemérides de elementos de dos líneas (TLE) mediante la API
<a name="w2aac28c17c11c11"></a>

 La AWS SDKs CLI y la CLI se pueden usar para cargar un conjunto de efemérides de dos elementos de línea (TLE) AWS Ground Station mediante la [CreateEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_CreateEphemeris.html)llamada. Esta efeméride se utilizará en lugar de los datos de efemérides predeterminados de un satélite (consulte). [Datos de efemérides predeterminados](default-ephemeris-data.md) En este ejemplo se muestra cómo hacerlo con el [AWS SDK para Python (Boto3)](https://docs.aws.amazon.com/pythonsdk). 

 Un conjunto TLE es un objeto con formato JSON que enlaza uno o más TLEs para construir una trayectoria continua. El del TLEs conjunto TLE debe formar un conjunto continuo que podamos usar para construir una trayectoria (es decir, no debe haber intervalos de tiempo intermedios TLEs en un conjunto TLE). A continuación se muestra un ejemplo de conjunto 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**  
 Los intervalos de tiempo TLEs de un conjunto TLE deben coincidir exactamente para que sea una trayectoria continua y válida. 

 Se puede cargar un conjunto de TLE a través del cliente AWS Ground Station boto3 de la siguiente manera: 

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

 Esta llamada devolverá un EphemerisID que se puede usar para hacer referencia a las efemérides en el futuro. Por ejemplo, podemos usar el EphemerisID proporcionado en la llamada anterior para sondear el estado de las efemérides: 

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

 A continuación se muestra un ejemplo de respuesta de la acción [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}}]"
    }
  }
}
```

 Se recomienda sondear la [DescribeEphemeris](https://docs.aws.amazon.com/ground-station/latest/APIReference/API_DescribeEphemeris.html)ruta o usar CloudWatch eventos para rastrear el estado de las efemérides subidas, ya que deben pasar por un flujo de trabajo de validación asíncrona antes de configurarse y poder utilizarse para programar y ejecutar contactos. `ENABLED` 

 [Tenga en cuenta que el identificador de NORAD que aparece TLEs en todo el conjunto TLE, en los ejemplos anteriores, debe coincidir con el identificador de NORAD asignado a su satélite `25994` en la base de datos Space-Track.](https://www.space-track.org/) 

## Ejemplo: cargar datos de efemérides del TLE desde un depósito S3
<a name="w2aac28c17c11c13"></a>

 También es posible cargar un archivo de efemérides TLE directamente desde un depósito de S3 apuntando al depósito y a la clave del objeto. AWS Ground Station recuperará el objeto en tu nombre. La información sobre el cifrado de los datos en reposo AWS Ground Station se detalla en:[Cifrado de datos en reposo para AWS Ground Station](security.encryption-at-rest.md). 

 A continuación se muestra un ejemplo de cómo cargar un archivo de efemérides TLE desde un bucket de 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']}")
```