You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/orbital/satellite-imagery-with-orbital-ground-station.md
+49-52Lines changed: 49 additions & 52 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
---
2
-
title: Collect and process Aqua satellite payload - Azure Orbital
3
-
description: An end-to-end walk-through of using the Azure Orbital Ground Station (AOGS) to capture and process satellite imagery.
2
+
title: Collect and process Aqua satellite data - Azure Orbital
3
+
description: An end-to-end walk-through of using the Azure Orbital Ground Station (AOGS) to capture and process Aqua satellite imagery.
4
4
ms.service: orbital
5
5
author: EliotSeattle
6
6
ms.author: eliotgra
@@ -9,39 +9,40 @@ ms.date: 07/13/2022
9
9
ms.custom: template-overview
10
10
---
11
11
12
-
# Tutorial: Collect and process Aqua satellite payload using Azure Orbital Ground Station (AOGS)
12
+
# Tutorial: Collect and process Aqua satellite data using Azure Orbital Ground Station (AOGS)
13
13
14
14
This article is a comprehensive walk-through showing how to use the [Azure Orbital Ground Station (AOGS)](https://azure.microsoft.com/services/orbital/) to capture and process satellite imagery. It introduces the AOGS and its core concepts and shows how to schedule contacts. The article also steps through an example in which we collect and process NASA Aqua satellite data in an Azure virtual machine (VM) using NASA-provided tools.
15
15
16
-
Aqua is a polar-orbiting spacecraft launched by NASA in 2002. Data from all science instruments aboard Aqua is downlinked to the Earth using direct broadcast over the X-band in near real-time. More information about Aqua can be found on the [Aqua Project Science](https://aqua.nasa.gov/) website. With AOGS, we can capture the Aqua broadcast when the satellite is within line of sight of a ground station.
16
+
Aqua is a polar-orbiting spacecraft launched by NASA in 2002. Data from all science instruments aboard Aqua is downlinked to the Earth using direct broadcast over the X-band in near real-time. More information about Aqua can be found on the [Aqua Project Science](https://aqua.nasa.gov/) website.
17
17
18
-
A *contact* is time reserved at an orbital ground station to communicate with a satellite. During the contact, the ground station orients its antenna towards Aqua and captures the broadcast payload. The captured data is sent to an Azure VM as a data stream that is processed using the [RT-STPS](http://directreadout.sci.gsfc.nasa.gov/index.cfm?section=technology&page=NISGS&subpage=NISFES&sub2page=RT-STPS&sub3Page=overview) (Real-Time Software Telemetry Processing System) provided by [Direct Readout Laboratory](http://directreadout.sci.gsfc.nasa.gov/) at NASA to generate a level 0 product. Further processing of level 0 data is done using IPOPP (International Planetary Observation Processing Package) tool, also provided by DRL.
18
+
Using AOGS, we capture the Aqua broadcast when the satellite is within line of sight of a ground station by scheduling a *contact*. A *contact* is time reserved at a ground station to communicate with a satellite. During the contact, the ground station orients its antenna towards Aqua and captures the direct broadcast data. The captured data is sent to an Azure VM as a data stream and processed using the [Real-Time Software Telemetry Processing System](http://directreadout.sci.gsfc.nasa.gov/index.cfm?section=technology&page=NISGS&subpage=NISFES&sub2page=RT-STPS&sub3Page=overview)(RT-STPS) tool provided by the [Direct Readout Laboratory](http://directreadout.sci.gsfc.nasa.gov/)(DRL) which generates a Level-0 product. This Level-0 product is processed further using DRL's [International Planetary Observation Processing Package](https://directreadout.sci.gsfc.nasa.gov/?id=dspContent&cid=68)(IPOPP) tool to produce higher level products.
19
19
20
-
In this tutorial, you'll follow these steps to process the Aqua data stream:
20
+
In this tutorial, we will follow these steps to collect and process Aqua data:
21
21
22
22
> [!div class="checklist"]
23
-
> *[Prerequisites](#step-1-prerequisites).
24
-
> *[Process RAW data using RT-STPS](#step-2-process-raw-data-using-rt-stps).
25
-
> *[Prepare a virtual machine (processor-vm) to process higher level products](#step-3-prepare-a-virtual-machine-processor-vm-to-create-higher-level-products).
26
-
> *[Create higher level products using IPOPP](#step-4-create-higher-level-products-using-ipopp).
23
+
> *[Schedule a contact and collect Aqua direct broadcast data using AOGS](#step-1-schedule-a-contact-and-collect-aqua-direct-broadcast-data-using-aogs).
24
+
> *[Process Aqua direct broadcast data using RT-STPS](#step-2-process-aqua-direct-broadcast-data-using-rt-stps).
25
+
> *[Create higher level products using IPOPP](#step-3-create-higher-level-products-using-ipopp).
27
26
28
27
Optional setup steps for capturing the ground station telemetry are included in the [Appendix](#appendix).
29
28
30
-
## Step 1: Prerequisites
29
+
## Step 1: Schedule a contact and collect Aqua direct broadcast data using AOGS
31
30
32
-
You must first follow the steps listed in [Tutorial: Downlink data from NASA's AQUA public satellite](downlink-aqua.md).
31
+
Follow the steps listed in [Tutorial: Downlink data from NASA's AQUA public satellite](downlink-aqua.md) to schedule a contact with Aqua using AOGS and collect the direct broadcast data on an Azure VM for further processing.
33
32
34
33
> [!NOTE]
35
34
> In the section [Prepare a virtual machine (VM) to receive the downlinked AQUA data](downlink-aqua.md#prepare-your-virtual-machine-vm-and-network-to-receive-aqua-data), use the following values:
36
35
>
37
36
> -**Name:** receiver-vm
38
37
> -**Operating System:** Linux (CentOS Linux 7 or higher)
39
-
> -**Size:**Standard_D8_v5 or higher
38
+
> -**Size:**Standard_D8s_v5 or higher
40
39
> -**IP Address:** Ensure that the VM has at least one standard public IP address
41
40
42
-
## Step 2: Process RAW data using RT-STPS
41
+
At the end of this step, you should have the raw direct broadcast saved as ```.bin``` files under the ```~/aquadata``` folder on the receiver-vm.
43
42
44
-
The [Real-time Software Telemetry Processing System (RT-STPS)](https://directreadout.sci.gsfc.nasa.gov/?id=dspContent&cid=69) is NASA-provided software for processing the raw Aqua payload. The steps below cover installation of RT-STPS on the receiver-vm, and production of level-0 PDS files for the Aqua payload captured in the previous step.
43
+
## Step 2: Process Aqua direct broadcast data using RT-STPS
44
+
45
+
The [Real-time Software Telemetry Processing System](https://directreadout.sci.gsfc.nasa.gov/?id=dspContent&cid=69)(RT-STPS) is a NASA-provided software for processing Aqua direct broadcast data. The steps below cover installation of RT-STPS Verson 6.0 on the receiver-vm, and production of Level-0 Production Data Set(PDS) files from the data collected in the previous step.
45
46
46
47
Register with the [NASA DRL](https://directreadout.sci.gsfc.nasa.gov/) to download the RT-STPS installation package.
47
48
@@ -87,49 +88,49 @@ rm ./data/*
87
88
ls -la ./data
88
89
```
89
90
90
-
### Process RAW Aqua data
91
+
### Create Level-0 product
91
92
92
-
Run rt-stps in batch mode to process the previously captured Aqua data (.bin files).
93
+
Run rt-stps in batch mode to process the ```.bin``` file collected in Step 1
This command produces Level-0 Production Data Set (```.pds```) files under the ```~/software/rt-stps/data``` directory.
105
101
106
-
Download the level-0 PDS files from this storage container for further processing in later steps.
107
-
108
-
## Step 3: Prepare a virtual machine (processor-vm) to create higher level products
102
+
## Step 3: Create higher level products using IPOPP
109
103
110
104
[International Planetary Observation Processing Package (IPOPP)](https://directreadout.sci.gsfc.nasa.gov/?id=dspContent&cid=68) is another NASA-provided software to process Aqua Level-0 data into higher level products.
111
-
In the steps below, you'll process the Aqua PDS files downloaded from the Azure Storage container in the previous step.
112
-
Because IPOPP has higher system requirements than RT-STPS, it should be run on a bigger VM called the "processor-vm".
105
+
In the steps below, you'll process the Level-0 data generated in the previous step using IPOPP.
106
+
107
+
> [!NOTE]
108
+
> Due to potential resource contention, DRL recommends installing RT-STPS and IPOPP on separate machines. But for this tutorial, we install both on the our receiver-vm because we don't run them at the same time. For production workloads, please follow sizing and isolation recommendations in the user guides available on the DRL website.
113
109
114
-
[Create a virtual machine(VM)](../virtual-machines/linux/quick-create-portal.md) within the virtual network above. Ensure that this VM has the following specifications:
110
+
### Attach a data disk to the receiver-vm
115
111
116
-
-**Name:** processor-vm
117
-
-**Size:** Standard D16ds v5
118
-
-**Operating System:** Linux (CentOS Linux 7 or higher)
119
-
-**Disk:** 2 TB Premium SSD data disk
112
+
IPOPP installation and subsequent generation of products requires more disk space and I/O throughput than what is available on the receiver-vm by default.
113
+
To provide more disk space and throughput, attach a 1TB premium data disk to the receiver-vm by following steps in [Attach a data disk to a Linux VM](../virtual-machines/linux/attach-disk-portal.md)
> To ensure that the datadrive is mounted automatically after every reboot, please refer to [Attach a data disk to a Linux VM](../virtual-machines/linux/attach-disk-portal.md#mount-the-disk) for instructions on how to add an entry to ```/etc/fstab```
128
128
129
-
IPOPP installation requires using a browser to sign on to the DRL website to download the installation script. This script must be run from the same host that it was downloaded to. IPOPP configuration also requires a GUI. Therefore, we install a full desktop and a vnc server to enable running GUI applications.
130
129
131
130
### Install Desktop and VNC Server
132
131
132
+
IPOPP installation requires using a browser to sign on to the DRL website to download the installation script. This script must be run from the same host that it was downloaded to. The subsequent IPOPP configuration also requires a GUI. Therefore, we install a full desktop and a vnc server to enable running GUI applications on the receiver-vm.
133
+
133
134
```console
134
135
sudo yum install tigervnc-server
135
136
sudo yum groups install "GNOME Desktop"
@@ -145,7 +146,7 @@ Enter a password when prompted.
145
146
Port forward the vncserver port (5901) over ssh:
146
147
147
148
```console
148
-
ssh -L 5901:localhost:5901 azureuser@processor-vm
149
+
ssh -L 5901:localhost:5901 azureuser@receiver-vm
149
150
```
150
151
151
152
Download the [TightVNC](https://www.tightvnc.com/download.php) viewer and connect to ```localhost:5901``` and enter the vncserver password entered in the previous step. You should see the GNOME desktop running on the VM.
@@ -170,6 +171,8 @@ cd $INSTALL_DIR
170
171
171
172
This script will download \~35G and will take 1 hour or more.
172
173
174
+
Alternatively, you can upload your installation binaries to a container in Azure Storage and download them to the receiver-vm using [AzCopy](../storage/common/storage-use-azcopy-v10.md)
@@ -195,16 +198,12 @@ $INSTALL_DIR/drl/tools/services.sh status
195
198
$INSTALL_DIR/drl/tools/spa_services.sh status
196
199
```
197
200
198
-
## Step 4: Create higher level products using IPOPP
199
-
200
-
Before we can create level-1 and level-2 products from the PDS files, we need to configure IPOPP.
201
-
202
-
### Configure the IPOPP service using the dashboard
201
+
### Configure IPOPP services using its dashboard
203
202
204
-
IPOPPmust be configured with the dashboard GUI. To start the dashboard, first port forward the vncserver port (5901) over ssh:
203
+
Before we can create Level-1 and Level-2 products from the Level-0 PDS files generated by rt-stps, we need to configure IPOPP. IPOPP must be configured with its dashboard GUI. To start the dashboard, first port forward the vncserver port (5901) over ssh:
205
204
206
205
```console
207
-
ssh -L 5901:localhost:5901 azureuser@processor-vm
206
+
ssh -L 5901:localhost:5901 azureuser@receiver-vm
208
207
```
209
208
210
209
Using the TightVNC client, connect to localhost:5901 and enter the vncserver password. On the virtual machine desktop, open a new terminal and start the dashboard:
@@ -236,15 +235,13 @@ cd /datadrive/ipopp
236
235
237
236
## Ingest data for processing
238
237
239
-
Download the PDS files generated by the RT-STPS tool from your storage container to the IPOPP ingest directory configured during installation.
238
+
Copy the Level-0 PDS files generated by RT-STPS to the IPOPP ingest directory for further processing.
0 commit comments