Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Öffentlicher Rundfunksatellit, der einen Datenflussendpunkt verwendet (demoduliert und dekodiert)
Dieses Beispiel baut auf der Analyse auf, die im JPSS-1 - Öffentlicher Rundfunksatellit (PBS) - Bewertung Abschnitt des Benutzerhandbuchs durchgeführt wurde.
Um dieses Beispiel zu vervollständigen, müssen Sie von einem Szenario ausgehen: Sie möchten den HRD Kommunikationspfad als demodulierte und dekodierte Direktübertragungsdaten mithilfe eines Datenflussendpunkts erfassen. Dieses Beispiel ist ein guter Ausgangspunkt, wenn Sie planen, die Daten mit der NASA Direct Readout Labs-Software (RT- und) zu verarbeiten. STPS IPOPP
Kommunikationswege
Dieser Abschnitt beschreibt Planen Sie Ihre Datenfluss-Kommunikationspfade die ersten Schritte. In diesem Beispiel werden Sie zwei Abschnitte in Ihrer AWS CloudFormation Vorlage erstellen: die Abschnitte Parameter und Ressourcen.
Anmerkung
Weitere Informationen zum Inhalt einer AWS CloudFormation Vorlage finden Sie unter Abschnitte mit Vorlagen.
Für den Abschnitt Parameter werden Sie die folgenden Parameter hinzufügen. Sie geben Werte für diese an, wenn Sie den Stack über die AWS CloudFormation Konsole erstellen.
Parameters: EC2Key: Description: The SSH key used to access the EC2 receiver instance. Choose any SSH key if you are not creating an EC2 receiver instance. For instructions on how to create an SSH key see https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html Type: AWS::EC2::KeyPair::KeyName ConstraintDescription: must be the name of an existing EC2 KeyPair. ReceiverAMI: Description: The Ground Station DDX AMI ID you want to use. Please note that AMIs are region specific. For instructions on how to retrieve an AMI see https://docs.aws.amazon.com/ground-station/latest/ug/dataflows.ec2-configuration.html#dataflows.ec2-configuration.amis Type: AWS::EC2::Image::Id
Anmerkung
Sie müssen ein key pair erstellen und den Namen für den EC2 EC2Key
Amazon-Parameter angeben. Siehe Erstellen Sie ein key pair für Ihre EC2 Amazon-Instance.
Darüber hinaus müssen Sie bei der Erstellung des AWS CloudFormation Stacks die richtige regionsspezifische AMI ID angeben. Siehe AWS Ground Station Amazon-Maschinenbilder (AMIs).
Die verbleibenden Vorlagenausschnitte gehören in den Abschnitt Ressourcen der AWS CloudFormation Vorlage.
Resources: # Resources that you would like to create should be placed within the resource section.
Angesichts unseres Szenarios, einer EC2 Instanz einen einzigen Kommunikationspfad bereitzustellen, haben Sie einen einzigen synchronen Bereitstellungspfad. Gemäß Synchrone Datenlieferung diesem Abschnitt müssen Sie eine EC2 Amazon-Instance mit einer Dataflow-Endpoint-Anwendung einrichten und konfigurieren und eine oder mehrere Datenfluss-Endpunktgruppen erstellen.
# The EC2 instance that will send/receive data to/from your satellite using AWS Ground Station. ReceiverInstance: Type: AWS::EC2::Instance Properties: DisableApiTermination: false IamInstanceProfile: !Ref GeneralInstanceProfile ImageId: !Ref ReceiverAMI InstanceType: m5.4xlarge KeyName: !Ref EC2Key Monitoring: true PlacementGroupName: !Ref ClusterPlacementGroup SecurityGroupIds: - Ref: InstanceSecurityGroup SubnetId: !Ref ReceiverSubnet BlockDeviceMappings: - DeviceName: /dev/xvda Ebs: VolumeType: gp2 VolumeSize: 40 Tags: - Key: Name Value: !Join [ "-" , [ "Receiver" , !Ref "AWS::StackName" ] ] UserData: Fn::Base64: | #!/bin/bash exec > >(tee /var/log/user-data.log|logger -t user-data -s 2>/dev/console) 2>&1 echo `date +'%F %R:%S'` "INFO: Logging Setup" >&2 GROUND_STATION_DIR="/opt/aws/groundstation" GROUND_STATION_BIN_DIR="${GROUND_STATION_DIR}/bin" STREAM_CONFIG_PATH="${GROUND_STATION_DIR}/customer_stream_config.json" echo "Creating ${STREAM_CONFIG_PATH}" cat << STREAM_CONFIG > "${STREAM_CONFIG_PATH}" { "ddx_streams": [ { "streamName": "Downlink", "maximumWanRate": 4000000000, "lanConfigDevice": "lo", "lanConfigPort": 50000, "wanConfigDevice": "eth1", "wanConfigPort": 55888, "isUplink": false } ] } STREAM_CONFIG echo "Waiting for dataflow endpoint application to start" while netstat -lnt | awk '$4 ~ /:80$/ {exit 1}'; do sleep 10; done echo "Configuring dataflow endpoint application streams" python "${GROUND_STATION_BIN_DIR}/configure_streams.py" --configFileName "${STREAM_CONFIG_PATH}" sleep 2 python "${GROUND_STATION_BIN_DIR}/save_default_config.py" exit 0
# The AWS Ground Station Dataflow Endpoint Group that defines the endpoints that AWS Ground # Station will use to send/receive data to/from your satellite. DataflowEndpointGroup: Type: AWS::GroundStation::DataflowEndpointGroup Properties: ContactPostPassDurationSeconds: 180 ContactPrePassDurationSeconds: 120 EndpointDetails: - Endpoint: Name: !Join [ "-" , [ !Ref "AWS::StackName" , "Downlink" ] ] # needs to match DataflowEndpointConfig name Address: Name: !GetAtt ReceiverInstanceNetworkInterface.PrimaryPrivateIpAddress Port: 55888 SecurityDetails: SecurityGroupIds: - Ref: "DataflowEndpointSecurityGroup" SubnetIds: - !Ref ReceiverSubnet RoleArn: !GetAtt DataDeliveryServiceRole.Arn # The security group that the ENI created by AWS Ground Station belongs to. DataflowEndpointSecurityGroup: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: Security Group for AWS Ground Station registration of Dataflow Endpoint Groups VpcId: !Ref ReceiverVPC SecurityGroupEgress: - IpProtocol: udp FromPort: 55888 ToPort: 55888 CidrIp: 10.0.0.0/8 Description: "AWS Ground Station Downlink Stream To 10/8" - IpProtocol: udp FromPort: 55888 ToPort: 55888 CidrIp: 172.16.0.0/12 Description: "AWS Ground Station Downlink Stream To 172.16/12" - IpProtocol: udp FromPort: 55888 ToPort: 55888 CidrIp: 192.168.0.0/16 Description: "AWS Ground Station Downlink Stream To 192.168/16" # The placement group in which your EC2 instance is placed. ClusterPlacementGroup: Type: AWS::EC2::PlacementGroup Properties: Strategy: cluster # The security group for your EC2 instance. InstanceSecurityGroup: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: AWS Ground Station receiver instance security group. VpcId: !Ref ReceiverVPC SecurityGroupIngress: # To allow SSH access to the instance, add another rule allowing tcp port 22 from your CidrIp - IpProtocol: udp FromPort: 55888 ToPort: 55888 SourceSecurityGroupId: !Ref DataflowEndpointSecurityGroup Description: "AWS Ground Station Downlink Stream" ReceiverVPC: Type: AWS::EC2::VPC Properties: CidrBlock:
"10.0.0.0/16"
Tags: - Key: "Name" Value: "AWS Ground Station - PBS to dataflow endpoint Demod Decode Example VPC" - Key: "Description" Value: "VPC for EC2 instance receiving AWS Ground Station data" ReceiverSubnet: Type: AWS::EC2::Subnet Properties: CidrBlock:"10.0.0.0/24"
Tags: - Key: "Name" Value: "AWS Ground Station - PBS to dataflow endpoint Demod Decode Example Subnet" - Key: "Description" Value: "Subnet for EC2 instance receiving AWS Ground Station data" VpcId: !Ref ReceiverVPC # An ENI providing a fixed IP address for AWS Ground Station to connect to. ReceiverInstanceNetworkInterface: Type: AWS::EC2::NetworkInterface Properties: Description: Floating network interface providing a fixed IP address for AWS Ground Station to connect to. GroupSet: - !Ref InstanceSecurityGroup SubnetId: !Ref ReceiverSubnet # Attach the ENI to the EC2 instance. ReceiverInstanceInterfaceAttachment: Type: AWS::EC2::NetworkInterfaceAttachment Properties: DeleteOnTermination: false DeviceIndex: "1" InstanceId: !Ref ReceiverInstance NetworkInterfaceId: !Ref ReceiverInstanceNetworkInterface # The instance profile for your EC2 instance. GeneralInstanceProfile: Type: AWS::IAM::InstanceProfile Properties: Roles: - !Ref InstanceRole
Sie benötigen außerdem die entsprechenden Richtlinien, Rollen und Profile, um eine elastic network interface (ENI) in Ihrem Konto erstellen AWS Ground Station zu können.
# AWS Ground Station assumes this role to create/delete ENIs in your account in order to stream data. DataDeliveryServiceRole: Type: AWS::IAM::Role Properties: Policies: - PolicyDocument: Statement: - Action: - ec2:CreateNetworkInterface - ec2:DeleteNetworkInterface - ec2:CreateNetworkInterfacePermission - ec2:DeleteNetworkInterfacePermission - ec2:DescribeSubnets - ec2:DescribeVpcs - ec2:DescribeSecurityGroups Effect: Allow Resource: '*' Version: '2012-10-17' PolicyName: DataDeliveryServicePolicy AssumeRolePolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Principal: Service: - groundstation.amazonaws.com Action: - sts:AssumeRole # The EC2 instance assumes this role. InstanceRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: "Allow" Principal: Service: - "ec2.amazonaws.com" Action: - "sts:AssumeRole" Path: "/" ManagedPolicyArns: - arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess - arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role - arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy - arn:aws:iam::aws:policy/service-role/AmazonEC2RoleforSSM
AWS Ground Station Konfigurationen
Dieser Abschnitt stellt Konfigurationen erstellen das Benutzerhandbuch dar.
Sie benötigen eine Tracking-Konfiguration, um Ihre Präferenz für die Verwendung von Autotrack festzulegen. Die Auswahl PREFERREDvon Autotrack kann die Signalqualität verbessern, ist aber aufgrund der ausreichenden JPSS Ephemeridenqualität von -1 nicht erforderlich, um die Signalqualität zu gewährleisten.
TrackingConfig: Type: AWS::GroundStation::Config Properties: Name: "JPSS Tracking Config" ConfigData: TrackingConfig: Autotrack: "PREFERRED"
Basierend auf dem Kommunikationspfad müssen Sie eine antenna-downlink-demod-decodeKonfiguration definieren, die den Satellitenanteil repräsentiert, sowie eine Datenfluss-Endpunktkonfiguration, um auf die Datenfluss-Endpunktgruppe zu verweisen, die die Endpunktdetails definiert.
Anmerkung
Einzelheiten zum Einstellen der Werte für und finden Sie DemodulationConfig
unter. DecodeConfig
Antennen-Downlink-Demod-Decode-Config
# The AWS Ground Station Antenna Downlink Config that defines the frequency spectrum used to # downlink data from your satellite. JpssDownlinkDemodDecodeAntennaConfig: Type: AWS::GroundStation::Config Properties: Name: "JPSS Downlink Demod Decode Antenna Config" ConfigData: AntennaDownlinkDemodDecodeConfig: SpectrumConfig: CenterFrequency: Value: 7812 Units: "MHz" Polarization: "RIGHT_HAND" Bandwidth: Value: 30 Units: "MHz" DemodulationConfig: UnvalidatedJSON: '{ "type":"QPSK", "qpsk":{ "carrierFrequencyRecovery":{ "centerFrequency":{ "value":7812, "units":"MHz" }, "range":{ "value":250, "units":"kHz" } }, "symbolTimingRecovery":{ "symbolRate":{ "value":15, "units":"Msps" }, "range":{ "value":0.75, "units":"ksps" }, "matchedFilter":{ "type":"ROOT_RAISED_COSINE", "rolloffFactor":0.5 } } } }' DecodeConfig: UnvalidatedJSON: '{ "edges":[ { "from":"I-Ingress", "to":"IQ-Recombiner" }, { "from":"Q-Ingress", "to":"IQ-Recombiner" }, { "from":"IQ-Recombiner", "to":"CcsdsViterbiDecoder" }, { "from":"CcsdsViterbiDecoder", "to":"NrzmDecoder" }, { "from":"NrzmDecoder", "to":"UncodedFramesEgress" } ], "nodeConfigs":{ "I-Ingress":{ "type":"CODED_SYMBOLS_INGRESS", "codedSymbolsIngress":{ "source":"I" } }, "Q-Ingress":{ "type":"CODED_SYMBOLS_INGRESS", "codedSymbolsIngress":{ "source":"Q" } }, "IQ-Recombiner":{ "type":"IQ_RECOMBINER" }, "CcsdsViterbiDecoder":{ "type":"CCSDS_171_133_VITERBI_DECODER", "ccsds171133ViterbiDecoder":{ "codeRate":"ONE_HALF" } }, "NrzmDecoder":{ "type":"NRZ_M_DECODER" }, "UncodedFramesEgress":{ "type":"UNCODED_FRAMES_EGRESS" } } }'
# The AWS Ground Station Dataflow Endpoint Config that defines the endpoint used to downlink data # from your satellite. DownlinkDemodDecodeEndpointConfig: Type: AWS::GroundStation::Config Properties: Name: "Aqua SNPP JPSS Downlink Demod Decode Endpoint Config" ConfigData: DataflowEndpointConfig: DataflowEndpointName: !Join [ "-" , [ !Ref "AWS::StackName" , "Downlink" ] ] DataflowEndpointRegion: !Ref AWS::Region
AWS Ground Station Missionsprofil
Dieser Abschnitt stellt Missionsprofil erstellen das Benutzerhandbuch dar.
Da Sie nun über die zugehörigen Konfigurationen verfügen, können Sie sie verwenden, um den Datenfluss zu erstellen. Für die übrigen Parameter verwenden Sie die Standardwerte.
# The AWS Ground Station Mission Profile that groups the above configurations to define how to # uplink and downlink data to your satellite. SnppJpssMissionProfile: Type: AWS::GroundStation::MissionProfile Properties: Name: "37849 SNPP And 43013 JPSS" ContactPrePassDurationSeconds: 120 ContactPostPassDurationSeconds: 60 MinimumViableContactDurationSeconds: 180 TrackingConfigArn: !Ref TrackingConfig DataflowEdges: - Source: !Join [ "/", [ !Ref JpssDownlinkDemodDecodeAntennaConfig, "UncodedFramesEgress" ] ] Destination: !Ref DownlinkDemodDecodeEndpointConfig
Es zusammensetzen
Mit den oben genannten Ressourcen haben Sie jetzt die Möglichkeit, JPSS -1 Kontakte für die synchrone Datenübermittlung von jedem Ihrer AWS Ground Station AWS Ground Station Standorte Onboarder aus zu planen.
Im Folgenden finden Sie eine vollständige AWS CloudFormation Vorlage, die alle in diesem Abschnitt beschriebenen Ressourcen in einer einzigen Vorlage zusammenfasst, die direkt verwendet werden kann. AWS CloudFormation
Die genannte AWS CloudFormation Vorlage AquaSnppJpss.yml
soll Ihnen einen schnellen Zugriff ermöglichen, um mit dem Empfang von Daten für die Satelliten AquaSNPP, und JPSS -1/ NOAA -20 zu beginnen. Es enthält eine EC2 Amazon-Instance und die erforderlichen AWS Ground Station Ressourcen, um Kontakte zu planen und demodulierte und dekodierte Direktübertragungsdaten zu empfangen.
Falls AquaSNPP, JPSS -1/ NOAA -20 und Terra nicht in Ihr Konto integriert sind, finden Sie weitere Informationen unter. Satellit an Bord
Anmerkung
Sie können auf die Vorlage zugreifen, indem Sie mit gültigen AWS Anmeldeinformationen auf den Amazon S3 S3-Bucket des Kunden zugreifen. Die folgenden Links verwenden einen regionalen Amazon S3 S3-Bucket. Ändern Sie den us-west-2
Regionalcode so, dass er die entsprechende Region darstellt, in der Sie den AWS CloudFormation
Stack erstellen möchten.
Zusätzlich verwenden die folgenden AnweisungenYAML. Die Vorlagen sind jedoch sowohl im als auch YAML im JSON Format verfügbar. Um die Vorlage zu verwendenJSON, ersetzen Sie .json
beim Herunterladen der Vorlage die .yml
Dateierweiterung durch.
Verwenden Sie den folgenden Befehl AWS CLI, um die Vorlage mit herunterzuladen:
aws s3 cp s3://groundstation-cloudformation-templates-us-west-2/AquaSnppJpss.yml .
Sie können die Vorlage in der Konsole anzeigen und herunterladen, indem Sie URL in Ihrem Browser zu den folgenden Optionen navigieren:
https://s3.console.aws.amazon.com/s3/object/groundstation-cloudformation-templates-us-west-2/AquaSnppJpss.yml
Sie können die Vorlage direkt AWS CloudFormation über den folgenden Link angeben:
https://groundstation-cloudformation-templates-us-west-2.s3.us-west-2.amazonaws.com/AquaSnppJpss.yml
Welche zusätzlichen Ressourcen definiert die Vorlage?
Die AquaSnppJpss
Vorlage enthält die folgenden zusätzlichen Ressourcen:
-
(Optional) CloudWatch Ereignisauslöser — AWS Lambda Funktion, die mithilfe von CloudWatch Ereignissen ausgelöst wird, die AWS Ground Station vor und nach einem Kontakt gesendet wurden. Die AWS Lambda Funktion startet und stoppt optional Ihre Receiver-Instanz.
-
(Optional) EC2Bestätigung für Kontakte — Die Option, Lambda zu verwenden, um ein Überprüfungssystem für Ihre EC2 Amazon-Instance (s) für Kontakte mit SNS Benachrichtigung einzurichten. Bitte beachten Sie, dass hierfür je nach Ihrer aktuellen Nutzung Gebühren anfallen können.
-
Ground Station Amazon Machine Image Retrieval Lambda — Die Option, um auszuwählen, welche Software in Ihrer Instance installiert ist und welche AMI Ihrer Wahl. Die Softwareoptionen umfassen
DDX 2.6.2 Only
und.DDX 2.6.2 with qRadio 3.6.0
Wenn Sie Wideband DigIF Data Delivery und den AWS Ground Station Agent verwenden möchten, finden Sie weitere Informationen unter. Öffentlicher Rundfunksatellit mit AWS Ground Station Agent (Breitband) Diese Optionen werden mit der Veröffentlichung zusätzlicher Softwareupdates und Funktionen weiter ausgebaut. -
Zusätzliche Missionsprofile — Missionsprofile für zusätzliche öffentliche Rundfunksatelliten (AquaSNPP, und Terra).
-
Zusätzliche Antennen-Downlink-Konfigurationen — Antennen-Downlink-Konfigurationen für zusätzliche öffentlich-rechtliche Rundfunksatelliten (Aqua, und Terra). SNPP
Die Werte und Parameter für die Satelliten in dieser Vorlage sind bereits ausgefüllt. Diese Parameter erleichtern Ihnen die sofortige Verwendung mit diesen Satelliten. AWS Ground Station Sie müssen keine eigenen Werte konfigurieren, um diese Vorlage AWS Ground Station verwenden zu können. Sie können die Werte jedoch anpassen, damit die Vorlage für Ihren Anwendungsfall funktioniert.
Wo erhalte ich meine Daten?
Die Datenverkehr-Endpunktgruppe wird so eingerichtet, dass die als Teil der Vorlage erstellte Netzwerkschnittstelle der Receiver-Instance verwendet wird. Die Empfängerinstanz verwendet eine Datenfluss-Endpunktanwendung, um den Datenstrom von AWS Ground Station dem durch den Datenflussendpunkt definierten Port zu empfangen. Nach dem Empfang können die Daten über UDP Port 50000 auf dem Loopback-Adapter der Empfängerinstanz abgerufen werden. Weitere Informationen zum Einrichten einer Datenfluss-Endpunktgruppe finden Sie unter. AWS::GroundStation::DataflowEndpointGroup