

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.

# Satélite de transmisión pública que utiliza la entrega de datos de Amazon S3
<a name="examples.pbs-to-s3"></a>

 Este ejemplo se basa en el análisis realizado en la [JPSS-1: Satélite de radiodifusión pública (PBS): evaluación](examples.md#examples.pbs-definition) sección de la guía del usuario. 

 Para este ejemplo, tendrá que asumir un escenario: desea capturar la ruta de comunicación del HRD como frecuencia intermedia digital y almacenarla para su futuro procesamiento por lotes. Esto ahorra las muestras en cuadratura infásica (I/Q) de radiofrecuencia (RF) sin procesar una vez digitalizadas. Una vez que los datos estén en su bucket de Amazon S3, podrá demodular y decodificar los datos con el software que desee. Consulte el [ MathWorks tutorial](https://www.mathworks.com/help/satcom/ug/capture-satellite-data-using-aws-ground-station.html) para ver un ejemplo detallado del procesamiento. Tras usar este ejemplo, puedes considerar añadir componentes de precios al EC2 contado de Amazon para procesar los datos y reducir los costes generales de procesamiento. 

## Vías de comunicación
<a name="examples.pbs-to-s3.communication-paths"></a>

 Esta sección representa [Planifique las rutas de comunicación de su flujo de datos](getting-started.step2.md) los primeros pasos. 

 Todos los siguientes fragmentos de plantilla pertenecen a la sección Recursos de la CloudFormation plantilla. 

```
Resources:
  # Resources that you would like to create should be placed within the Resources section.
```

**nota**  
 Para obtener más información sobre el contenido de una CloudFormation plantilla, consulte las secciones de [plantillas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html). 

 Dado nuestro escenario de ofrecer una única ruta de comunicación a Amazon S3, sabe que tendrá una única ruta de entrega asíncrona. Según la [Entrega de datos asíncrona](getting-started.step2.md#getting-started.step2.async-data-delivery) sección, debe definir un bucket de Amazon S3. 

```
  # The S3 bucket where AWS Ground Station will deliver the downlinked data.
  GroundStationS3DataDeliveryBucket:
    Type: AWS::S3::Bucket
    DeletionPolicy: Retain
    UpdateReplacePolicy: Retain
    Properties:
      # Results in a bucket name formatted like: aws-groundstation-data-{account id}-{region}-{random 8 character string}
      BucketName: !Join ["-", ["aws-groundstation-data", !Ref AWS::AccountId, !Ref AWS::Region, !Select [0, !Split ["-", !Select [2, !Split ["/", !Ref AWS::StackId]]]]]]
```

 Además, tendrá que crear las funciones y políticas adecuadas para poder AWS Ground Station utilizar el bucket. 

```
  # The IAM role that AWS Ground Station will assume to have permission find and write
  # data to your S3 bucket.
  GroundStationS3DataDeliveryRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Statement:
          - Action:
              - 'sts:AssumeRole'
            Effect: Allow
            Principal:
              Service:
                - groundstation.amazonaws.com
            Condition:
              StringEquals:
                "aws:SourceAccount": !Ref AWS::AccountId
              ArnLike:
                "aws:SourceArn": !Sub "arn:aws:groundstation:${AWS::Region}:${AWS::AccountId}:config/s3-recording/*"

  # The S3 bucket policy that defines what actions AWS Ground Station can perform on your S3 bucket.
  GroundStationS3DataDeliveryBucketPolicy:
    Type: AWS::IAM::Policy
    Properties:
      PolicyDocument:
        Statement:
          - Action:
              - 's3:GetBucketLocation'
            Effect: Allow
            Resource:
              - !GetAtt GroundStationS3DataDeliveryBucket.Arn
          - Action:
              - 's3:PutObject'
            Effect: Allow
            Resource:
              - !Join [ "/", [ !GetAtt GroundStationS3DataDeliveryBucket.Arn, "*" ] ]
      PolicyName: GroundStationS3DataDeliveryPolicy
      Roles:
        - !Ref GroundStationS3DataDeliveryRole
```

## AWS Ground Station configuraciones
<a name="examples.pbs-to-s3.configs"></a>

 Esta sección representa [Crear configuraciones](getting-started.step3.md) los primeros pasos. 

 Necesitarás una *configuración de seguimiento* para establecer tus preferencias sobre el uso del autotrack. Si se selecciona *PREFERRED* como pista automática, se puede mejorar la calidad de la señal, pero no es obligatorio para cumplir con la calidad de la señal, ya que la calidad de las efemérides del JPSS-1 es suficiente. 

```
  TrackingConfig:
    Type: AWS::GroundStation::Config
    Properties:
      Name: "JPSS Tracking Config"
      ConfigData:
        TrackingConfig:
          Autotrack: "PREFERRED"
```

 Según la ruta de comunicación, tendrá que definir una configuración de *antena y enlace descendente* para representar la parte del satélite, así como una *grabación s3* para hacer referencia al bucket de Amazon S3 que acaba de crear. 

```
  # The AWS Ground Station Antenna Downlink Config that defines the frequency spectrum used to
  # downlink data from your satellite.
  JpssDownlinkDigIfAntennaConfig:
    Type: AWS::GroundStation::Config
    Properties:
      Name: "JPSS Downlink DigIF Antenna Config"
      ConfigData:
        AntennaDownlinkConfig:
          SpectrumConfig:
            Bandwidth:
              Units: "MHz"
              Value: 30
            CenterFrequency:
              Units: "MHz"
              Value: 7812
            Polarization: "RIGHT_HAND"

  # The AWS Ground Station S3 Recording Config that defines the S3 bucket and IAM role to use
  # when AWS Ground Station delivers the downlink data.
  S3RecordingConfig:
    Type: AWS::GroundStation::Config
    DependsOn: GroundStationS3DataDeliveryBucketPolicy
    Properties:
      Name: "JPSS S3 Recording Config"
      ConfigData:
        S3RecordingConfig:
          BucketArn: !GetAtt GroundStationS3DataDeliveryBucket.Arn
          RoleArn: !GetAtt GroundStationS3DataDeliveryRole.Arn
```

## AWS Ground Station perfil de misión
<a name="examples.pbs-to-s3.mission-profile"></a>

 Esta sección representa [Crear perfil de misión](getting-started.step4.md) cómo empezar. 

 Ahora que tiene las configuraciones asociadas, puede usarlas para construir el flujo de datos. Utilizará los valores predeterminados para el resto de los parámetros. 

```
  # The AWS Ground Station Mission Profile that groups the above configurations to define how to downlink data.
  JpssAsynchMissionProfile:
    Type: AWS::GroundStation::MissionProfile
    Properties:
      Name: "43013 JPSS Asynchronous Data"
      MinimumViableContactDurationSeconds: 180
      TrackingConfigArn: !Ref TrackingConfig
      DataflowEdges:
        - Source: !Ref JpssDownlinkDigIfAntennaConfig
          Destination: !Ref S3RecordingConfig
```

## Poniéndolo todo junto
<a name="examples.pbs-to-s3.putting-it-together"></a>

 Con los recursos anteriores, ahora puede programar los contactos del JPSS-1 para la entrega asíncrona de datos desde cualquiera de sus dispositivos integrados. AWS Ground Station [AWS Ground Station Ubicaciones](aws-ground-station-antenna-locations.md) 

 La siguiente es una CloudFormation plantilla completa que incluye todos los recursos descritos en esta sección combinados en una sola plantilla que se puede utilizar directamente. CloudFormation

 La CloudFormation plantilla denominada `AquaSnppJpss-1TerraDigIfS3DataDelivery.yml` contiene un bucket de Amazon S3 y los AWS Ground Station recursos necesarios para programar contactos y recibir datos de transmisión directa de señal o IP del VITA-49. 

 Si Aqua, SNPP, JPSS-1/NOAA-20 y Terra no están integrados en su cuenta, consulte. [Satélite a bordo](getting-started.step1.md) 

**nota**  
 Puede acceder a la plantilla accediendo al bucket de Amazon S3 del cliente con AWS credenciales válidas. Los enlaces que aparecen a continuación utilizan un bucket regional de Amazon S3. Cambie el código de `us-west-2` región para que represente la región correspondiente en la que desea crear la CloudFormation pila.   
 Además, en las siguientes instrucciones se utiliza YAML. Sin embargo, las plantillas están disponibles en formato YAML y JSON. Para usar JSON, reemplaza la extensión del `.yml` archivo por la extensión `.json` al descargar la plantilla. 

 Para descargar la plantilla mediante AWS CLI, utilice el siguiente comando: 

```
aws s3 cp s3://groundstation-cloudformation-templates-us-west-2/AquaSnppJpss-1TerraDigIfS3DataDelivery.yml .
```

 La plantilla puede verse y descargarse en la consola desde la siguiente URL en su navegador: 

```
https://s3.console.aws.amazon.com/s3/object/groundstation-cloudformation-templates-us-west-2/AquaSnppJpss-1TerraDigIfS3DataDelivery.yml
```

 Puede especificar la plantilla directamente en CloudFormation el siguiente enlace: 

```
https://groundstation-cloudformation-templates-us-west-2.s3.us-west-2.amazonaws.com/AquaSnppJpss-1TerraDigIfS3DataDelivery.yml
```