AWS Ground Station – 위성 데이터 수집 및 처리 서비스 정식 출시
지난 가을, AWS Ground Station에 대한 게시물에서 위성 데이터를 다운링크할 때 수행하는 단계를 미리 살펴봤습니다. 그동안 미리보기로 제공하던 AWS Ground Station을 정식 출시하고, 우선 미국 내 지상국 두 곳을 통해 바로 사용이 가능합니다.
AWS Ground Station 사용하기
당시 설명한 것과 같이 첫 번째 단계는 위성의 NORAD ID 및 기타 정보를 AWS와 공유하여 AWS 계정에 위성을 추가하는 것입니다.
온보딩 프로세스에는 일반적으로 1~2일이 소요됩니다. AWS Ground Station 팀을 통해 테스트에 사용할 3개의 위성을 제 계정에 추가했습니다.
- Terra(NORAD ID 25994) – 이 위성은 1989년에 발사되었으며 705km 고도에서 궤도를 선회합니다. 이 위성에는 지구 표면을 연구하도록 설계된 5대의 센서가 장착되어 있습니다.
- Aqua(NORAD ID 27424) – 이 위성은 2002년에 발사되었으며 마찬가지로 705km 고도에서 궤도를 선회합니다. 이 위성에는 지표수를 연구하도록 설계된 6대의 센서가 장착되어 있습니다.
- NOAA-20(NORAD ID 43013) – 이 위성은 2017년에 발사되었으며 825km 고도에서 궤도를 선회합니다. 이 위성에는 육지와 바다를 관찰하는 5대의 센서가 장착되어 있습니다.
온보딩 프로세스가 진행 중인 동안 수행할 다음 단계는 데이터 수신에 사용할 지상국을 선택하는 것입니다. 위성이 지구 궤도를 선회하는 경로와 데이터를 수신하려는 시간에 따라 적합한 지상국을 선택합니다. AWS 두 개 지상국은 오레곤과 오하이오에 있으며 다른 위치는 현재 공사 중입니다. 각 지상국은 인접 AWS 리전에 연결되며 고객은 해당 리전에서 AWS 인프라를 미리 설정해야 합니다.
이 블로그 게시물에서는 미국 동부(오하이오) 리전을 사용합니다. AWS Ground Station 사용 설명서의 지침에 따라 CloudFormation 템플릿을 사용하여 VPC 내에 인프라를 설정합니다.
스택에는 EC2 인스턴스 1개, ENI(탄력적 네트워크 인터페이스) 3개와 필요한 IAM 역할(EC2 보안 그룹 등)이 포함됩니다.
EC2 인스턴스는 Kratos DataDefender(무손실 UDP 전송 메커니즘)를 호스팅합니다. 수신 데이터 스트림을 처리하는 코드도 이 인스턴스를 사용하여 호스팅할 수 있습니다. DataDefender는 포트 55892에서 수신 데이터 스트림을 Unix 도메인 소켓에 제공합니다. 코드는 원시 데이터를 읽고, 패킷으로 분할한 후, 각 패킷을 처리하는 작업을 담당합니다.
필요한 경우 하나 이상의 미션 프로필을 생성할 수 있습니다. 각 프로필에는 접촉 시기 요구 사항이 설명되고, 접촉에 필요한 리소스가 나열되며, 접촉 중의 데이터 흐름이 정의됩니다. 동일한 미션 프로필을 여러 위성에 사용할 수 있으며 동일한 위성에 서로 다른 프로필(접촉 구분용)을 사용할 수도 있습니다.
통신 예약하기
위성을 구성했고 AWS 인프라를 설정했으니 이제 위성 통신을 예약할 수 있습니다! Ground Station 콘솔을 열고 사용하려는 지상국에 해당하는 AWS 리전에 있는지 확인한 후 [Contacts]를 클릭합니다. 예정된 접촉 목록을 검토하고 원하는 접촉을 선택한 후(Zulu 시간에 익숙하지 않은 경우 World Clock / Converter가 유용함) [Reserve contact]를 클릭합니다.
그런 다음 [Reserve]를 클릭하여 의사를 확인합니다.
1분 전후로 연결 상태가 [SCHEDULING]으로 바뀐 후 [SCHEDULED]로 바뀝니다.
다음 단계는 선택한 지상국의 범위 내로 위성이 들어올 때까지 기다리는 것입니다. 이 시간 동안 두 가지 방법으로 EC2 인스턴스에 연결할 수 있습니다.
SSH – SSH를 사용하여 인스턴스의 IP 주소에 로그인하고, 코드의 배치 상태 및 실행 준비를 확인하고, DataDefender가 실행되고 있는지 확인합니다.
웹 – 웹 브라우저를 열고 DataDefender 웹 인터페이스를 볼 수 있습니다.
참고: 인스턴스에 연결된 보안 그룹을 편집하여 VPC 외부 액세스를 허용해야 할 수 있습니다.
통신 상태 확인하기
이제 선택한 지상국의 범위 내로 Terra가 들어올 때까지 기다려야 합니다. 필수는 아니지만 재미와 교육을 위해 n2yo.com에서 제공하는 것과 같은 실시간 위성 추적기를 사용해 보는 것도 좋습니다.
위성이 범위에 들어오면 DataDefender가 데이터 전송이 진행되고 있음을 보여줍니다. 데이터 전송은 WAN Data Rate의 증가로 확인할 수 있듯이 인상적인 781Mbps의 속도로 진행되고 있습니다.
앞서 언급했듯이 Unix 도메인 소켓의 인스턴스 내에서 실시간으로 수신 데이터 스트림을 사용할 수 있습니다. 코드는 모든 즉각적인 하위 수준의 처리를 완료한 후 Amazon Kinesis Data Streams로 데이터를 라우팅하여 실시간으로 처리하고 Amazon S3에 저장하여 향후 분석 및 기타 작업을 위해 안전하게 보관합니다.
고객 사례 – Spire
이 글을 작성할 때 AWS 고객인 Spire의 프로그램 관리자 Robert Sproles와 왜 Ground Station을 채택하게 되었는지 이야기를 나누었습니다. Spire는 궤도에서 데이터 및 분석을 제공하고 그 뒤에서 우주 프로그램을 실행합니다. 이 회사는 내부에서 자체 CubeSats를 설계 및 구축하며 현재 약 70개가 궤도를 선회하고 있습니다. 종합적으로 이러한 위성은 Spire의 어떤 경쟁업체보다 많은 수의 센서를 사용하여 해상, 항공 및 날씨 데이터를 수집합니다.
Spire는 이미 30개 지상국으로 구성된 네트워크를 운영하고 있지만 가장 먼저 AWS Ground Station의 가치를 확인하고 사용을 시작한 고객 중 하나입니다. Spire는 Ground Station을 통해 CapEx(자본 지출)를 OpEx(운영 비용) 모델로 전환하는 동시에 회사의 고객에게 훨씬 더 신속하게 데이터를 제공하겠다는 목표로 새로운 데이터를 더 빠르게 수집할 수 있게 되었습니다.
Spire는 전 세계의 다양한 고객을 보유하고 있지만 고품질 데이터에 대한 신속한 액세스는 이 모든 고객에게 이점을 제공합니다. 이 회사의 LEMUR(Low Earth Multi-Use Repeater) 위성은 90분마다 지구를 돌지만 항공 또는 날씨와 관련된 데이터에 있어서 이 시간은 비교적 긴 편입니다. Robert 씨의 이야기에 따르면 추가 위성을 동일한 궤도에 추가하거나 추가 지상국을 사용함으로써 이 상황을 바꿀 수 있다고 합니다. 목표는 모두 지연 시간을 줄이고 가능한 최신의 데이터를 제공하는 것입니다.
Spire는 “데이터 덩어리”를 실행 가능한 통찰력으로 바꾸기 위해 원시 데이터에 기계 학습을 적용합니다. 예를 들어 ML을 사용하고 날씨 및 기록 데이터를 조합하여 화물선의 향후 위치를 예측합니다. 화물선의 예측된 위치는 부두의 도크 및 다른 부족한 리소스를 미리 예약하는 데 사용될 수 있습니다.
정식 출시
오늘부터 AWS Ground Station을 시작할 수 있습니다. 현재 지상국 2개를 운영 중이며 올해 하반기에 예정된 10개 이상의 지상국을 작업 중입니다.
— Jeff;
Leave a Reply