Aracılığıyla paylaş


Gerçek zamanlı anten telemetrisi alma

Azure Orbital Ground istasyonu, bir temas sırasında yer istasyonunun çalışmasını analiz etmek için kullanılabilecek anten telemetri olayları yayar. Kişi profilinizi Azure Event Hubs'a telemetri olayları gönderecek şekilde yapılandırabilirsiniz..

Bu kılavuzda şunların nasıl yapıldığını öğrenirsiniz:

  • Azure Orbital Ground Station için Azure Event Hubs'ı yapılandırma
  • Kişi profilinizde telemetriyi etkinleştirin.
  • Telemetri verilerinin içeriğini doğrulama
  • Telemetri noktalarını anlama

Event Hubs'ı yapılandırma

  1. Aboneliğinizde ayarlardaki kaynak sağlayıcılarına gidin. Microsoft.Orbital araması yapın ve sağlayıcı olarak kaydedin.
  2. Aboneliğinizde bir Azure Event Hubs ad alanı ve olay hub'ı oluşturun.

Not

Eventhubs'a bağlantı erişimi için Genel erişim'i seçin. Özel erişim veya hizmet uç noktaları desteklenmez.

  1. Sol menüden Erişim denetimi (IAM) öğesini seçin. 'Bu kaynağa erişim ver' altında Rol ataması ekle'yi seçin.

Not

Azure rollerini atamak için şunlara sahip olmanız gerekir: Microsoft.Authorization/roleAssignments/write Kullanıcı Erişimi Yönetici istrator veya Sahip gibi izinler

  1. Rol sekmesinin altında Azure Event Hubs Veri Göndereni'ni arayın ve seçin. İleri'ye tıklayın.
  2. Üyeler sekmesinin altında Kullanıcı, grup veya hizmet sorumlusuna erişim atayın.
  3. + Üye seç'e tıklayın.
  4. Azure Orbital Kaynak Sağlayıcısı'nın aramasını yapın ve Seç'e tıklayın.
  5. Gözden Geçir ve ata'ya tıklayın. Bu eylem, Azure Orbital Ground Station'a olay hub'ınıza telemetri gönderme hakkı verir.
  6. Yeni eklenen rol atamasını onaylamak için Erişim Denetimi (IAM) sayfasına dönün ve Bu kaynağa erişimi görüntüle'yi seçin. Azure Orbital Kaynak Sağlayıcısı, Azure Event Hubs Veri Göndereni altında olmalıdır.

Kişi profili için Event Hubs telemetrisini etkinleştirme

Kişi profilini aşağıdaki gibi yapılandırın:

  1. Event Hubs Ad Alanı açılan listesini kullanarak bir ad alanı seçin.
  2. Ad alanı seçiminden sonra görüntülenen Event Hubs Örneği açılan listesini kullanarak bir örnek seçin.

Mevcut kişi profilinin ayarlarını şu şekilde güncelleştirebilirsiniz:

Bir kişiden anten telemetri verilerini doğrulama

Daha önce Event Hubs telemetrisi için yapılandırdığınız kişi profilini kullanarak kişileri zamanlayın. Kişi başladıktan kısa süre sonra Event Hubs'ınızdaki verileri görmeye başlamanız gerekir.

Gelen telemetri verilerinin hem varlığını hem de içeriğini birden çok şekilde doğrulayabilirsiniz.

Event Hubs ad alanı panosu

Event Hubs'ınıza olayların alındığını doğrulamak için, kaynak grubunuzdaki Event Hubs ad alanınızın genel bakış sayfasında bulunan grafikleri de kontrol edebilirsiniz. Bu görünüm, bir ad alanı içindeki tüm Event Hubs örneklerindeki verileri gösterir. Bu örneğin grafiklerini görmek için kaynak grubunuzdaki belirli bir Event Hub örneğinin genel bakış sayfasına gidebilirsiniz.

Anten telemetri verilerini depolama hesabına teslim etme

Telemetri verilerini seçtiğiniz bir Azure Blob depolama hesabına otomatik olarak teslim etmek için Event Hubs Yakalama özelliğini etkinleştirebilirsiniz. Azure depolamada veri yakalama ve yakalama özelliğini etkinleştirmek için yönergeleri izleyin. Etkinleştirildikten sonra kapsayıcınızı denetleyebilir ve verileri görüntüleyebilir/indirebilirsiniz.

Telemetri noktalarını anlama

Geçerli telemetri şeması sürümü: 4.1

Yer istasyonu, şema olarak Avro kullanarak telemetri sağlar. Şema aşağıdadır. Microsoft antenlerinin, ilk veri noktası alındığında Telemetri yaydığına dikkat edin. Telemetri bir "bilinen son değer" yaklaşımı kullanılarak bildirilir, yani ölçüm için sahip olduğumuz en son değeri her zaman göndeririz. Bu davranış nedeniyle, ilgili NULL ölçüm ilk üretilene kadar kişinin ilk saniyesinde bir değer görebilirsiniz.

{
  "namespace": "EventSchema",
  "name": "TelemetryEventSchema",
  "type": "record",
  "fields": [
    {
      "name": "version",
      "type": [ "null", "string" ]
    },
    {
      "name": "contactId",
      "type": [ "null", "string" ]
    },
    {
      "name": "contactPlatformIdentifier",
      "type": [ "null", "string" ]
    },
    {
      "name": "groundStationName",
      "type": [ "null", "string" ]
    },
    {
      "name": "antennaType",
      "type": {
        "name": "antennaTypeEnum",
        "type": "enum",
        "symbols": [
          "Microsoft",
          "KSAT"
        ]
      }
    },
    {
      "name": "antennaId",
      "type": [ "null", "string" ]
    },
    {
      "name": "spacecraftName",
      "type": [ "null", "string" ]
    },
    {
      "name": "gpsTime",
      "type": [ "null", "double" ]
    },
    {
      "name": "utcTime",
      "type": "string"
    },
    {
      "name": "azimuthDecimalDegrees",
      "type": [ "null", "double" ]
    },
    {
      "name": "elevationDecimalDegrees",
      "type": [ "null", "double" ]
    },
    {
      "name": "contactTleLine1",
      "type": [ "null", "string" ]
    },
    {
      "name": "contactTleLine2",
      "type": [ "null", "string" ]
    },
    {
      "name": "links",
      "type": [
        "null",
        {
          "type": "array",
          "items": {
            "name": "antennaLink",
            "type": "record",
            "fields": [
              {
                "name": "name",
                "type": [ "null", "string" ]
              },
              {
                "name": "direction",
                "type": {
                  "name": "directionEnum",
                  "type": "enum",
                  "symbols": [
                    "Uplink",
                    "Downlink"
                  ]
                }
              },
              {
                "name": "polarization",
                "type": {
                  "name": "polarizationEnum",
                  "type": "enum",
                  "symbols": [
                    "RHCP",
                    "LHCP",
                    "linearVertical",
                    "linearHorizontal"
                  ]
                }
              },
              {
                "name": "uplinkEnabled",
                "type": [ "null", "boolean" ]
              },
              {
                "name": "channels",
                "type": [
                  "null",
                  {
                    "type": "array",
                    "items": {
                      "name": "antennaLinkChannel",
                      "type": "record",
                      "fields": [
                        {
                          "name": "name",
                          "type": [ "null", "string" ]
                        },
                        {
                          "name": "modemName",
                          "type": [ "null", "string" ]
                        },
                        {
                          "name": "digitizerName",
                          "type": [ "null", "string" ]
                        },
                        {
                          "name": "endpointName",
                          "type": "string"
                        },
                        {
                          "name": "inputEbN0InDb",
                          "type": [ "null", "double" ]
                        },
                        {
                          "name": "inputEsN0InDb",
                          "type": [ "null", "double" ]
                        },
                        {
                          "name": "inputRfPowerDbm",
                          "type": [ "null", "double" ]
                        },
                        {
                          "name": "outputRfPowerDbm",
                          "type": [ "null", "double" ]
                        },
                        {
                          "name": "packetRate",
                          "type": [ "null", "double" ]
                        },
                        {
                          "name": "gapCount",
                          "type": [ "null", "double" ]
                        },
                        {
                          "name": "modemLockStatus",
                          "type": [
                            "null",
                            {
                              "name": "modemLockStatusEnum",
                              "type": "enum",
                              "symbols": [
                                "Unlocked",
                                "Locked"
                              ]
                            }
                          ]
                        },
                        {
                          "name": "commandsSent",
                          "type": [ "null", "double" ]
                        }
                      ]
                    }
                  }
                ]
              }
            ]
          }
        }
      ]
    }
  ]
}

Aşağıdaki tabloda kaynak cihaz/nokta, olası değerler ve her telemetri noktasının tanımı sağlanır.

Telemetri Noktası Kaynak Cihaz/Nokta Olası Değerler Tanım
sürüm Dahili olarak el ile ayarlama Telemetrinin yayın sürümü
Contactıd İlgili kişi kaynağı İlgili kişinin kimlik numarası
contactPlatformIdentifier İlgili kişi kaynağı
groundStationName İlgili kişi kaynağı Yer istasyon adı
anten Türü İlgili Microsoft / iş ortağı telemetri oluşturucuları bu değeri ayarlar MICROSOFT, KSAT, VIASAT Temas için kullanılan anten ağı.
antennaId İlgili kişi kaynağı Anten kimliğinin insan tarafından okunabilen adı
spacecraftName Kişi Platformu Tanımlayıcısından Ayrıştırıldı Uzay aracının adı
gpsTime utcTime'ın kapağı MÜŞTERI telemetri iletisinin oluşturulduğu GPS saati.
utcTime Geçerli zaman Müşteri telemetri iletisinin oluşturulduğu UTC saati.
azimuthDecimalDegrees ACU: AntennaAzimuth Antenler ondalık derecelerde azimut.
elevationDecimalDegrees ACU: AntennaElevation Antenin ondalık derecelerde yükselmesi.
contactTleLine1 ACU: Uydu[0]. Model.Value TLE Satır 1 Dizesi Kişi için kullanılan TLE'nin ilk satırı.
contactTLeLine2 ACU: Uydu[0]. Model.Value TLE Satır 2 Dizesi Kişi için kullanılan TLE'nin ikinci satırı.
name [Bağlantı düzeyi] Kişi profili bağlantısı Bağlantının adı
yön Kişi profili bağlantısı Yukarı Bağlantı, Aşağı Bağlantı Kişi için kullanılan bağlantının yönü.
Kutuplaşma Kişi profili bağlantısı RHCP, LHCP, DualRhcpLhcp, LinearVertical, LinearHorizontal Kişi için kullanılan bağlantının polarizasyonu.
uplinkEnabled ACU: SBandCurrent veya UHFTotalCurrent • NULL (Geçersiz CenterFrequencyMhz veya Aşağı Bağlantı yönü)
• False (S ve UHF veya Amp Akım < Eşiği dışındaki bantlar)
• True (S/UHF bandı, Yukarı Bağlantı, Amp Akım > Eşiği)
Kişi için yukarı bağlantının etkinleştirilip etkinleştirilmediğini gösterir.
name [Kanal düzeyi] Kişi profili bağlantı kanalı Kanalın adı
modemName Modem Modem cihazının adı
digitizerName Sayısallaştırıcı Dijitalleştirici cihazının adı
endpointName Kişi profili bağlantı kanalı Kişi için kullanılan uç noktanın adı.
inputEbN0InDb Modem: measuredEbN0 • NULL (QRadio veya QRx dışındaki modem modeli)
• Çift: Giriş EbN0
DB'de gürültü gücü spektral yoğunluğuna bit başına giriş enerjisi.
inputEsN0InDb Modem: measuredEsN0 • NULL (QRx dışındaki modem modeli)
• Çift: Giriş EsN0
DB'de gürültü gücü spektral yoğunluğuna sembol başına giriş enerjisi.
inputRfPowerDbm Sayısallaştırıcı: inputRfPower • NULL (SNNB veya SNWB dışında Yukarı bağlantı veya Basamaklandırıcı sürücüsü)
• Çift: Giriş Rf Gücü
DBm'de RF gücünü girdi.
outputRfPowerDbm Sayısallaştırıcı: outputRfPower • NULL (SNNB veya SNWB dışında Aşağı Bağlantı veya Basamaklandırıcı sürücüsü)
• Çift: Çıkış Rf Gücü
dBm'de Ouput RF gücü.
outputPacketRate Dijitalleştirici: rfOutputStream[0].measuredPacketRate • NULL (SNNB veya SNWB dışında Aşağı Bağlantı veya Basamaklandırıcı sürücüsü)
• Çift: Çıkış Paket Hızı
Yukarı bağlantı için ölçülen paket hızı
gapCount Sayısallaştırıcı: rfOutputStream[0].gapCount • NULL (SNNB veya SNWB dışında Aşağı Bağlantı veya Basamaklandırıcı sürücüsü)
• Çift: Boşluk sayısı
Yukarı bağlantı için paket aralığı sayısı
modemLockStatus Modem: carrierLockState • NULL (QRadio veya QRx dışındaki modem modeli; kilit durumu Sabit Listesi ayrıştırılamıyor)
• Boş dize (ölçüm okuma null ise)
• Dize: Kilit durumu
Modemin kilitli olduğunu onaylar.
commandsSent Modem: commandsSent • NULL (Yukarı Bağlantı ve QRadio değilse)
• Çift: Gönderilen komut sayısı
Kişi sırasında komutların gönderildiğini onaylar.

Olay tüketicileri

Olay tüketicilerini kullanarak Event Hubs'ınızdan olay almak için basit tüketici uygulamaları yazabilirsiniz. Event Hubs olaylarını çeşitli dillerde göndermeyi ve almayı öğrenmek için aşağıdaki belgelere bakın:

Değişiklik günlüğü

2024-04-17 - Şema, TLE'ler için olası NULL değerini içerecek şekilde güncelleştirildi ve QRX için EsN0 eklendi ve microsoft antenlerinin bir kişinin ilk saniyesinde bir alan için null değeri olabileceği hakkında bulanıklık eklendi. 2023-10-03 - Sürüm 4.0'a tanıtın. Şema, kullanılan altyapının yukarı bağlantı paket ölçümlerini ve adlarını içerecek şekilde güncelleştirildi (yer istasyonu, anten, uzay aracı, modem, sayısallaştırıcı, bağlantı, kanal)
2023-06-05 - Şema, bağlantıların yerine kanalların altında ölçümleri gösterecek şekilde güncelleştirildi.

Sonraki adımlar