

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# テレメトリの操作
<a name="telemetry"></a>

 AWS Ground Station テレメトリは、衛星コンタクト中に AWS Ground Station アンテナからほぼリアルタイムのメトリクスを提供します。テレメトリデータを使用して、コンタクトパフォーマンスのモニタリング、異常の検出、衛星通信に関する情報に基づいた意思決定を行うことができます。

## テレメトリの仕組み
<a name="telemetry.how-it-works"></a>

 テレメトリを使用するには、テレメトリデータを AWS Ground Station 配信する場所を指定する *TelemetrySinkConfig* を設定します。次に、 `telemetrySinkConfigArn`フィールドを使用して、この設定をミッションプロファイルに追加します。テレメトリが有効なミッションプロファイルを使用する問い合わせ中、 はテレメトリデータをアカウントに AWS Ground Station ストリーミングします。

 テレメトリ配信プロセスは次のように機能します。

1.  テレメトリデータを受信するには、 AWS アカウントに Kinesis Data Streams ストリームを作成します。ストリームは、連絡先をスケジュールするのと同じアカウントとリージョンで作成する必要があります。

1.  ストリームにデータを書き込む AWS Ground Station アクセス許可を付与する IAM ロールを作成します。

1.  ストリームと IAM ロールを参照する TelemetrySinkConfig を作成します。

1.  TelemetrySinkConfig をミッションプロファイルに追加します。

1.  新しいテレメトリ対応ミッションプロファイルを使用して、連絡先を一覧表示および予約します。

1.  このミッションプロファイルを使用する問い合わせ中、 AWS Ground Station はテレメトリデータをほぼリアルタイムで Kinesis Data Streams ストリームにストリーミングします。

1.  AWS サービスまたは独自のアプリケーションを使用して、ストリームのテレメトリデータを消費して処理します。

## 使用可能なテレメトリタイプ
<a name="telemetry.telemetry-types"></a>

 AWS Ground Station は、問い合わせ中に次のテレメトリタイプを提供します。

**注記**  
AWS Ground Station は、サポートされているテレメトリタイプの拡張に取り組んでいます

ポイントテレメトリ  
 衛星コンタクト中のアンテナの向きに関する情報を提供します。このテレメトリタイプは常にコンタクト中に送信され、実際の方位角とコマンドされた方位角が含まれます。詳細については、「[ポイントテレメトリ](telemetry.understanding-data.md#telemetry.understanding-data.pointing)」を参照してください。

テレメトリの追跡  
 アンテナ追跡ステータスと追跡エラーに関する情報を提供します。このテレメトリタイプは、追跡設定で自動追跡が有効になっている場合に送信されます。詳細については、「[テレメトリの追跡](telemetry.understanding-data.md#telemetry.understanding-data.tracking)」を参照してください。

## リージョナルな可用性
<a name="telemetry.regional-availability"></a>

 テレメトリは、 が AWS Ground Station 動作するすべての AWS リージョンで使用できます。コンタクトの実行中、テレメトリは AWS Ground Station アンテナからコンタクトをスケジュールしたリージョンに配信され、クロスリージョンサポートが提供されます。

 AWS Ground Station リージョンと地上局の場所の完全なリストについては、「」を参照してください[AWS Ground Station ロケーション](aws-ground-station-antenna-locations.md)。

**Topics**
+ [テレメトリの仕組み](#telemetry.how-it-works)
+ [使用可能なテレメトリタイプ](#telemetry.telemetry-types)
+ [リージョナルな可用性](#telemetry.regional-availability)
+ [テレメトリの設定](telemetry.setup.md)
+ [テレメトリデータを理解する](telemetry.understanding-data.md)

# テレメトリの設定
<a name="telemetry.setup"></a>

 AWS Ground Station 連絡先のテレメトリを設定するには、次の手順に従います。この設定が完了すると、テレメトリ対応ミッションプロファイルを使用するコンタクト中に、テレメトリデータが Kinesis Data Streams ストリームに配信されます。Kinesis Data Streams の詳細については、[Kinesis Data Streams ユーザーガイド](https://docs.aws.amazon.com/streams/latest/dev/introduction.html)を参照してください。

## ステップ 1: 前提条件 AWS となるリソースを作成する
<a name="telemetry.setup.step1"></a>

 次の CloudFormation スニペットは、テレメトリ配信の前提条件 AWS となるリソースを作成する方法を示しています。このスニペットは、Kinesis Data Streams ストリームと、ストリームにテレメトリデータを書き込む AWS Ground Station アクセス許可を付与する IAM ロールを作成します。

```
TelemetryStream:
  Type: AWS::Kinesis::Stream
  Properties:
    Name: GroundStationTelemetryStream
    StreamModeDetails:
      StreamMode: ON_DEMAND
    RetentionPeriodHours: 24

TelemetryRole:
  Type: AWS::IAM::Role
  Properties:
    RoleName: GroundStationTelemetryRole
    AssumeRolePolicyDocument:
      Version: '2012-10-17'
      Statement:
        - Effect: Allow
          Principal:
            Service: groundstation.amazonaws.com
          Action: sts:AssumeRole
    Policies:
      - PolicyName: KinesisWritePolicy
        PolicyDocument:
          Version: '2012-10-17'
          Statement:
            - Effect: Allow
              Action:
                - kinesis:DescribeStream
                - kinesis:PutRecord
                - kinesis:PutRecords
              Resource: !GetAtt TelemetryStream.Arn
```

 以下のリストでは、テレメトリ配信を設定する際の一意の設定に関する考慮事項を示します AWS Ground Station。

 **Kinesis Data Streams ストリーム** - ストリームはオンデマンドキャパシティモードを使用し、スループットに基づいて自動的にスケーリングされます。これは、ほとんどのユースケースで推奨されます。ストリームは、データを 24 時間保持するように設定されています。デフォルトでは、ストリームは AWS マネージド暗号化を使用します。でカスタマーマネージド暗号化を使用するには AWS Key Management Service、 `StreamEncryption`プロパティを追加し、IAM ロールポリシーを更新して アクセス`kms:GenerateDataKey`許可を含めます。詳細については、[Amazon Kinesis Data Streams でのデータ保護](https://docs.aws.amazon.com/streams/latest/dev/server-side-encryption.html)」を参照してください。

 **IAM ロール** - IAM ロールは、`groundstation.amazonaws.com`サービスプリンシパルがロールを引き受け、テレメトリデータを Kinesis Data Streams ストリームに書き込むことを許可します。ロールポリシーは`kinesis:DescribeStream`、ストリーム上の 、`kinesis:PutRecord`、および `kinesis:PutRecords`アクションのアクセス許可を付与します。信頼ポリシーとロールポリシーの設定に関するガイダンス[テレメトリシンク設定](how-it-works.config.md#how-it-works.config-telemetry-sink)については、「」を参照してください。

 **追加設定** - AWS Ground Station API コールに使用する IAM ユーザーまたはロールにアクセス`iam:PassRole`許可を追加します。これにより、TelemetrySinkConfig の作成 AWS Ground Station 時にテレメトリロールを に渡すことができます。

### PassRole ポリシーの例
<a name="telemetry-passrole-policy-example"></a>

 ロールポリシーを更新またはアタッチする方法の詳細については、IAM ユーザーガイドの[「IAM ポリシーの管理](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage.html)」を参照してください。アクセス`iam:PassRole`許可の詳細については、[「AWS サービスにロールを渡すアクセス許可をユーザーに付与する」を参照してください。 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html)

```
{
  "Version": "2012-10-17", 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "iam:GetRole",
        "iam:PassRole"
      ],
      "Resource": "arn:aws:iam::999999999999:role/your-telemetry-delivery-role-name"
    }
  ]
}
```

## ステップ 2: TelemetrySinkConfig を作成する
<a name="telemetry.setup.step2"></a>

 AWS Ground Station がテレメトリデータを Kinesis Data Streams ストリームに配信する方法を定義する *TelemetrySinkConfig* を作成します。ステップ 1 の CloudFormation スタック出力からストリーム ARN とロール ARN を使用します。

**注記**  
 *TelemetrySinkConfig* を作成すると、 AWS Ground Station はパーティションキーが の空のテストレコードを配信することで、Kinesis Data Streams ストリームへのアクセスを検証します`test`。

 *TelemetrySinkConfig* の作成の詳細については、「」を参照してください[テレメトリシンク設定](how-it-works.config.md#how-it-works.config-telemetry-sink)。

## ステップ 3: ミッションプロファイルにテレメトリを追加する
<a name="telemetry.setup.step3"></a>

 ミッションプロファイルを作成します。ミッションプロファイルの作成の詳細については、「」を参照してください[AWS Ground Station ミッションプロファイルを使用する](how-it-works-mission-profile.md)。をミッションプロファイルに追加`telemetrySinkConfigArn`して、コンタクト中のテレメトリ配信を有効にします。ステップ 2 で作成した *TelemetrySinkConfig* の ARN を使用します。

## ステップ 4: コンタクトをスケジュールする
<a name="telemetry.setup.step4"></a>

 テレメトリが有効なミッションプロファイルを使用してコンタクトをスケジュールします。問い合わせ中、 AWS Ground Station はテレメトリデータを Kinesis Data Streams ストリームにストリーミングします。

 **問い合わせ中に予想されること** 
+  **テレメトリ開始** - 問い合わせが開始されると、データがストリーミングを開始します。
+  **ほぼリアルタイムの配信** - テレメトリはほぼリアルタイムで Kinesis Data Streams ストリームに到着します。
+  **問い合わせ期間** - データは問い合わせ全体を通じて継続されます。
+  **自動停止** - コンタクトが終了すると、テレメトリはストリーミングを停止します。

 **配信のモニタリング** 

 テレメトリ配信は、以下を使用してモニタリングできます。
+  **Kinesis Data Streams ストリームメトリクス** - CloudWatch で受信レコードを確認します。詳細については、[Amazon Kinesis Data Streams のモニタリング](https://docs.aws.amazon.com/streams/latest/dev/monitoring-with-cloudwatch.html)」を参照してください。
+  **アプリケーションログ** - ストリームから消費するアプリケーションのデータ処理を検証します。
+  **Kinesis Data Viewer** - Kinesis Data Streams ストリームコンソールを使用して、ストリームのサンプルレコードを表示します。

## 次の手順
<a name="telemetry.setup.next-steps"></a>

 セットアップが完了したら、次のことができます。
+  テレメトリデータ形式と使用可能なテレメトリタイプについて説明します。「[テレメトリデータを理解する](telemetry.understanding-data.md)」を参照してください。
+  Kinesis Data Streams ストリームからテレメトリデータを処理するためのアプリケーションを構築します。詳細については、[Amazon Kinesis Data Streams のコンシューマーの構築](https://docs.aws.amazon.com/streams/latest/dev/building-consumers.html)」を参照してください。
+  CloudWatch およびその他の AWS サービスを使用してダッシュボードとアラートを作成します。
+  問題が発生した場合は、トラブルシューティングガイダンスを確認してください。「[テレメトリのトラブルシューティング](troubleshooting-telemetry.md)」を参照してください。

# テレメトリデータを理解する
<a name="telemetry.understanding-data"></a>

 テレメトリデータは BaseBase64-encodedされた JSON レコードとして Kinesis Data Streams ストリームに配信されます。各レコードには、コンタクトに関するメタデータやサンプリングされたテレメトリ測定値など、衛星コンタクト中に収集された情報が含まれます。

## データ形式の概要
<a name="telemetry.understanding-data.format"></a>

 各テレメトリレコードには、次のコンポーネントが含まれています。

テレメトリのタイプとバージョン  
 テレメトリデータの特定のタイプとそのスキーマバージョンを識別します。これにより、さまざまなテレメトリタイプを適切に解析できます。スキーマのバージョニングの詳細については、「」を参照してください[スキーマのバージョニングと進化](#telemetry.understanding-data.schema-evolution)。

スコープ ID  
 テレメトリの範囲の一意の識別子。これにより、テレメトリデータを特定の連絡先に関連付けることができます。

メタデータ  
 テレメトリに関するコンテキスト情報。

データ  
 テレメトリタイプに固有のサンプリングされたテレメトリ測定値。

 **パーティションキー** 

 テレメトリレコードは、 形式のパーティションキーを使用して Kinesis Data Streams ストリームに配信されます。

```
SCOPE#scopeId#TELEMETRY_ID#telemetryId#TELEMETRY_VERSION#telemetryVersion
```

 このパーティションキーにより、1 つのコンタクトに対する特定のタイプのすべてのテレメトリが Kinesis Data Streams ストリーム内の同じシャードに配信され、そのコンタクトのテレメトリストリームの最適な順序付けが可能になります。

## ポイントテレメトリ
<a name="telemetry.understanding-data.pointing"></a>

 指向テレメトリは、衛星コンタクト中のアンテナの指向方向に関する情報を提供します。このテレメトリタイプは、常に問い合わせ中に送信されます。

 **データフィールド** 

sampleTimestamp  
 テレメトリデータがサンプリングされた時刻。ISO-8601 形式では UTC、ミリ秒精度。

方位  
 アンテナの実際の方位角を度数で表したものです。

標高  
 アンテナの実際の上昇角度を度数で表します。

commandedAzimuth  
 角度単位のコマンドされた方位角。これは、アンテナが達成しようとしているターゲット方位角です。

commandedElevation  
 角度単位のコマンドされた標高角度。これは、アンテナが達成しようとしているターゲットの標高角度です。

**注記**  
 実際のアンテナ位置は、物理的な制限や接触中の機械的な遅延により、コマンドされた位置とは異なる場合があります。

 **メタデータフィールド** 

groundStation  
 地上局の名前 (「オハイオ 1」など）。

satelliteId  
 の衛星リソースの識別子 AWS Ground Station。

contactId  
 問い合わせの識別子。

 **JSON の例** 

```
{
  "telemetryTypeAndVersion": "POINTING#1.0.0",
  "telemetryType": "POINTING",
  "telemetryVersion": "1.0.0",
  "scopeId": "12345678-1234-1234-1234-123456789012",
  "metadata": {
    "groundStation": "Ohio 1",
    "satelliteId": "87654321-4321-4321-4321-210987654321",
    "contactId": "12345678-1234-1234-1234-123456789012"
  },
  "data": {
    "sampleTimestamp": "2025-12-08T12:00:00.123Z",
    "azimuth": 180.5,
    "elevation": 45.2,
    "commandedAzimuth": 180.0,
    "commandedElevation": 45.0
  }
}
```

## テレメトリの追跡
<a name="telemetry.understanding-data.tracking"></a>

 追跡テレメトリは、アンテナ追跡ステータスと追跡エラーに関する情報を提供します。このテレメトリタイプは、追跡設定で自動追跡が有効になっているとき、およびアンテナが自動追跡をアクティブに使用しているときに送信されます。

**注記**  
 TrackingConfig の `autotrack`パラメータが に設定されている場合`REMOVED`、追跡テレメトリは配信されません。設定の追跡の詳細については、「」を参照してください[追跡設定](how-it-works.config.md#how-it-works.config-tracking)。

 **データフィールド** 

sampleTimestamp  
 テレメトリデータがサンプリングされた時刻。精度がミリ秒の ISO-8601 形式の UTC。

trackingStatus  
 アンテナの現在の追跡ステータス。指定できる値には、`TRACKING`、`ACQUIRING`、`MASKED` などがあります。

trackingErrorAzimuth  
 方位軸の追跡エラー。度数で測定されます。

trackingErrorElevation  
 高度軸の追跡エラー。度数で測定されます。

**注記**  
 追跡エラー値は、信号強度を最大化するために自動追跡中 AWS Ground Station に適用されるエフェメリスベースのプログラムトラックの調整を表します。

 **メタデータフィールド** 

 追跡テレメトリには、ポイントテレメトリと同じメタデータフィールド `groundStation`、`satelliteId`、および が含まれます`contactId`。

 **JSON の例** 

```
{
  "telemetryTypeAndVersion": "TRACKING#1.0.0",
  "telemetryType": "TRACKING",
  "telemetryVersion": "1.0.0",
  "scopeId": "12345678-1234-1234-1234-123456789012",
  "metadata": {
    "groundStation": "Ohio 1",
    "satelliteId": "87654321-4321-4321-4321-210987654321",
    "contactId": "12345678-1234-1234-1234-123456789012"
  },
  "data": {
    "sampleTimestamp": "2025-12-08T12:00:00.123Z",
    "trackingStatus": "TRACKING",
    "trackingErrorAzimuth": 0.2,
    "trackingErrorElevation": 0.1
  }
}
```

## Kinesis Data Streams ストリームからのデータの読み取り
<a name="telemetry.understanding-data.reading"></a>

 テレメトリデータは Kinesis Data Streams ストリームに配信され、標準のストリーム消費パターンを使用して消費できます。ストリームからデータを読み取るときは、次の考慮事項に注意してください。

 **Base64 デコード** 

 Kinesis Data Streams ストリームのデータは Base64-encodedされています。データを JSON として解析する前に、データをデコードする必要があります。詳細については、[Amazon Kinesis Data Streams の使用](https://docs.aws.amazon.com/streams/latest/dev/working-with-streams.html)」を参照してください。

 **Kinesis Data Viewer の使用** 

 テレメトリデータにすばやくアクセスするために、Kinesis Data Streams ストリームコンソールにはデータビューワー機能が用意されています。この機能を使用する場合: 
+  テレメトリ配信は、ストリーム内の任意のシャードに発生する可能性があります。
+  デフォルトの開始位置は、シャード内の最新のレコードから読み取ります。
+  選択したシャードを調整し、「タイムスタンプ時」の開始位置を使用して、受信したレコードを表示する必要がある場合があります。

 **Kinesis Client Library の使用** 

 Kinesis Client Library (KCL) は、シャード管理、チェックポイント、ロードバランシングなど、Kinesis Data Streams ストリームからのデータの消費に関連する多くの複雑さを管理します。本番環境のテレメトリ消費アプリケーションには KCL を使用することをお勧めします。

 詳細については、[「Kinesis Client Library を使用したコンシューマーの開発](https://docs.aws.amazon.com/streams/latest/dev/kcl.html)」を参照してください。

 **使用のベストプラクティス** 
+  **レイテンシーの最小化** - 拡張ファンアウトを使用して Kinesis Data Streams ストリームから読み取ると、ポーリングに比べて専用のスループットとレイテンシーが低くなります。詳細については、[「拡張ファンアウトコンシューマーの開発](https://docs.aws.amazon.com/streams/latest/dev/enhanced-consumers.html)」を参照してください。
+  **専用ストリーム** - AWS Ground Station テレメトリ統合に専用の Kinesis Data Streams ストリームを使用します。ストリームを他のアプリケーションと共有すると、書き込みスループットの飽和やテレメトリ配信の失敗が発生する可能性があります。
+  **オンデマンドキャパシティ** - Kinesis Data Streams ストリームをオンデマンドプロビジョニングモードでデプロイして、スループットに基づいてシャードを自動的にスケーリングできるようにします。
+  **スループットのモニタリング** - CloudWatch メトリクスを使用してストリームのスロットリングをモニタリングします。詳細については、[Amazon Kinesis Data Streams のモニタリング](https://docs.aws.amazon.com/streams/latest/dev/monitoring-with-cloudwatch.html)」を参照してください。

## スキーマのバージョニングと進化
<a name="telemetry.understanding-data.schema-evolution"></a>

 テレメトリスキーマは、時間の経過に伴う進化をサポートするようにバージョン管理されています。各レコードの `telemetryVersion`フィールドはスキーマバージョンを示します。

 **スキーマの変更の処理** 
+  今後、新しいテレメトリタイプが導入される可能性があります。
+  既存のテレメトリタイプは、重大な変更を含む新しいバージョンを受け取る場合があります。
+  アプリケーションは、不明なテレメトリタイプとバージョンに対して寛容である必要があります。
+  `telemetryTypeAndVersion`、`telemetryType`、および `telemetryVersion`フィールドを解析して、各レコードの処理方法を決定します。

 複数のスキーマバージョンを適切に処理できるバージョン対応ペイロードのシリアル化を実装し、新しいバージョンが導入されてもアプリケーションが引き続き機能できるようにすることをお勧めします。