

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon S3 데이터 전송을 활용하는 퍼블릭 브로드캐스트 위성
<a name="examples.pbs-to-s3"></a>

 이 예제는 사용 설명서의 [JPSS-1 - 퍼블릭 브로드캐스트 위성(PBS) - 평가](examples.md#examples.pbs-definition) 섹션에서 수행된 분석을 기반으로 합니다.

 이 예제에서는 HRD 통신 경로를 디지털 중간 빈도로 캡처하고 향후 배치 처리를 위해 저장하려는 시나리오를 가정해야 합니다. 이렇게 하면 디지털화된 후 원시 무선 주파수(RF) I/Q(in-phase quadrature) 샘플이 절약됩니다. Amazon S3 버킷에 데이터가 저장되면 원하는 소프트웨어를 사용하여 데이터를 복조 및 디코딩할 수 있습니다. 자세한 처리 예제는 [ MathWorks 자습서를 ](https://www.mathworks.com/help/satcom/ug/capture-satellite-data-using-aws-ground-station.html) 참조하세요. 이 예제를 사용한 후에는 Amazon EC2 스팟 요금 구성 요소를 추가하여 데이터를 처리하고 전체 처리 비용을 절감하는 것이 좋습니다.

## 통신 경로
<a name="examples.pbs-to-s3.communication-paths"></a>

 이 섹션은 시작하기[데이터 흐름 통신 경로 계획](getting-started.step2.md)를 나타냅니다.

 다음 템플릿 코드 조각은 모두 템플릿의 리소스 섹션에 속합니다 CloudFormation .

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

**참고**  
 CloudFormation 템플릿의 내용에 대한 자세한 내용은 [ 템플릿 섹션을](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html) 참조하세요.

 Amazon S3에 단일 통신 경로를 전달하는 시나리오를 고려할 때 단일 비동기 전송 경로가 있음을 알 수 있습니다. [비동기 데이터 전송](getting-started.step2.md#getting-started.step2.async-data-delivery) 섹션에 따라 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]]]]]]
```

 또한가 버킷을 AWS Ground Station 사용하도록 허용하려면 적절한 역할 및 정책을 생성해야 합니다.

```
  # 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 구성
<a name="examples.pbs-to-s3.configs"></a>

 이 섹션은 시작하기[구성 생성](getting-started.step3.md)를 나타냅니다.

 자동 *추적을 사용하여 기본 설정을 지정하려면 추적 구성*이 필요합니다. *PREFERRED*를 자동 추적으로 선택하면 신호 품질이 향상될 수 있지만 충분한 JPSS-1 에페메리스 품질로 인해 신호 품질을 충족할 필요는 없습니다.

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

 통신 경로를 기반으로 위성 부분을 나타내는 *안테나 다운링크* 구성을 정의하고 방금 생성한 Amazon S3*3 버킷을 참조하는 s3 레코딩*을 정의해야 합니다.

```
  # 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 미션 프로파일
<a name="examples.pbs-to-s3.mission-profile"></a>

 이 섹션은 시작하기[미션 프로파일 생성](getting-started.step4.md)를 나타냅니다.

 이제 연결된 구성이 있으므로 이를 사용하여 데이터 흐름을 구성할 수 있습니다. 나머지 파라미터에 기본값을 사용합니다.

```
  # 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
```

## 함께 넣기
<a name="examples.pbs-to-s3.putting-it-together"></a>

 위의 리소스를 사용하면 온보딩된 모든에서 비동기 데이터 전송을 위해 JPSS-1 연락처를 예약할 수 있습니다 AWS Ground Station [AWS Ground Station 위치](aws-ground-station-antenna-locations.md).

 다음은이 섹션에 설명된 모든 리소스를 직접 사용할 수 있는 단일 CloudFormation 템플릿으로 결합한 전체 템플릿입니다 CloudFormation.

 라는 CloudFormation 템플릿에는 Amazon S3 버킷과 고객 응대를 예약하고 VITA-49 Signal/IP 다이렉트 브로드캐스트 데이터를 수신하는 데 필요한 AWS Ground Station 리소스가 `AquaSnppJpss-1TerraDigIfS3DataDelivery.yml` 포함되어 있습니다.

 Aqua, SNPP, JPSS-1/NOAA-20 및 Terra가 계정에 온보딩되지 않은 경우 섹션을 참조하세요[위성 온보딩](getting-started.step1.md).

**참고**  
 유효한 자격 AWS 증명을 사용하여 Amazon S3 버킷을 온보딩하는 고객에 액세스하여 템플릿에 액세스할 수 있습니다. 아래 링크는 리전별 Amazon S3 버킷을 사용합니다. `us-west-2` 스택을 생성할 CloudFormation 해당 리전을 나타내도록 리전 코드를 변경합니다.  
 또한 다음 지침은 YAML을 사용합니다. 그러나 템플릿은 YAML 형식과 JSON 형식으로 모두 제공됩니다. JSON을 사용하려면 템플릿을 다운로드할 `.json` 때 `.yml` 파일 확장명을 로 바꿉니다.

 를 사용하여 템플릿을 다운로드하려면 다음 명령을 AWS CLI사용합니다.

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

 브라우저에서 다음 URL로 이동하면 콘솔에서 템플릿을 보고 다운로드할 수 있습니다.

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

 다음 링크를 CloudFormation 사용하여에서 직접 템플릿을 지정할 수 있습니다.

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