Önceden yapılandırılmış uzaktan izleme çözümündeki cihaz bilgileri meta verileri

Önceden yapılandırılmış Azure IoT Paketi uzaktan izleme çözümü, cihaz meta verilerini yönetmek için bir yaklaşım gösterir. Bu makalede, bu çözümün anlamanıza olanak tanımak için yaklaşımı özetlenir:

  • Çözüm hangi cihaz meta verilerini depolar?
  • Çözümün cihaz meta verilerini yönetme şekli.

Bağlam

Önceden yapılandırılmış uzaktan izleme çözümü, cihazlarınızın buluta veri göndermesini sağlamak için Azure IoT Hub kullanır. Çözüm, cihazlar hakkındaki bilgileri üç farklı konumda depolar:

Konum Depolanan bilgiler Uygulama
Kimlik kayıt defteri Cihaz kimliği, kimlik doğrulama anahtarları, etkin durum yerleşik olarak IoT Hub
Cihaz ikizleri Meta veriler: bildirilen özellikler, istenen özellikler, etiketler yerleşik olarak IoT Hub
Cosmos DB Komut ve yöntem geçmişi Çözüm için özel

IoT Hub, IoT hub'ına erişimi yönetmek için bir cihaz kimliği kayıt defteri içerir ve cihaz meta verilerini yönetmek için cihaz ikizlerini kullanır. Komut ve yöntem geçmişini depolayan uzaktan izleme çözümüne özgü bir cihaz kayıt defteri de vardır. Uzaktan izleme çözümü, komut ve yöntem geçmişi için özel bir depo uygulamak üzere Cosmos DB veritabanı kullanır.

Not

Önceden yapılandırılmış uzaktan izleme çözümü, cihaz kimliği kayıt defterini Cosmos DB veritabanındaki bilgilerle eşitlenmiş durumda tutar. Her ikisi de IoT hub'ınıza bağlı her cihazı benzersiz olarak tanımlamak için aynı cihaz kimliğini kullanır.

Cihaz meta verileri

IoT Hub, uzaktan izleme çözümüne bağlı her sanal ve fiziksel cihaz için bir cihaz ikizi tutar. Çözüm, cihazlarla ilişkili meta verileri yönetmek için cihaz ikizlerini kullanır. Cihaz ikizi, IoT Hub tarafından tutulan bir JSON belgesidir ve çözüm, cihaz ikizleriyle etkileşime geçmek için IoT Hub API'sini kullanır.

Cihaz ikizi üç tür meta veri depolar:

  • Bildirilen özellikler bir cihaz tarafından IoT hub'ına gönderilir. Uzaktan izleme çözümünde, simülasyon cihazları bildirilen özellikleri başlatma sırasında ve Cihaz durumu komutlarını ve yöntemlerini değiştir'e yanıt olarak gönderir. Bildirilen özellikleri çözüm portalındaki Cihaz listesinde ve Cihaz ayrıntıları'nda görüntüleyebilirsiniz. Bildirilen özellikler salt okunur.
  • İstenen özellikler cihazlar tarafından IoT hub'ından alınır. Cihazda gerekli yapılandırma değişikliklerini yapmak cihazın sorumluluğundadır. Değişikliği hub'a bildirilen bir özellik olarak bildirmek de cihazın sorumluluğundadır. çözüm portalı aracılığıyla istediğiniz özellik değerini ayarlayabilirsiniz.
  • Etiketler yalnızca cihaz ikizinde bulunur ve hiçbir zaman bir cihazla eşitlenmez. Etiket değerlerini çözüm portalında ayarlayabilir ve cihaz listesini filtrelerken kullanabilirsiniz. Çözüm ayrıca çözüm portalında bir cihaz için görüntülenecek simgeyi tanımlamak için bir etiket kullanır.

Simülasyon cihazlarından bildirilen özelliklere örnek olarak üretici, model numarası, enlem ve boylam verilebilir. Sanal cihazlar ayrıca desteklenen yöntemlerin listesini bildirilen bir özellik olarak döndürür.

Not

Sanal cihaz kodu, IoT Hub’ına geri gönderilen bildirilen özellikleri güncelleştirmek üzere yalnızca istenen Desired.Config.TemperatureMeanValue ve Desired.Config.TelemetryInterval özelliklerini kullanır. Diğer tüm istenen özellik değişiklik istekleri yoksayılır.

Cihaz kayıt defteri Cosmos DB veritabanında depolanan cihaz bilgileri meta verileri JSON belgesi aşağıdaki yapıya sahiptir:

{
  "DeviceProperties": {
    "DeviceID": "deviceid1",
    "HubEnabledState": null,
    "CreatedTime": "2016-04-25T23:54:01.313802Z",
    "DeviceState": "normal",
    "UpdatedTime": null
    },
  "SystemProperties": {
    "ICCID": null
  },
  "Commands": [],
  "CommandHistory": [],
  "IsSimulatedDevice": false,
  "id": "fe81a81c-bcbc-4970-81f4-7f12f2d8bda8"
}

Not

Cihaz bilgileri, cihazın IoT Hub gönderdiği telemetriyi açıklayan meta verileri de içerebilir. Uzaktan izleme çözümü, panonun dinamik telemetriyi görüntüleme biçimini özelleştirmek için bu telemetri meta verilerini kullanır.

Yaşam döngüsü

Çözüm portalında ilk kez bir cihaz oluşturduğunuzda, çözüm Cosmos DB veritabanında komut ve yöntem geçmişini depolamak için bir giriş oluşturur. Bu noktada çözüm, cihaz kimlik kayıt defterinde cihaz için bir giriş de oluşturur ve bu giriş, cihazın IoT Hub kimlik doğrulaması için kullandığı anahtarları oluşturur. Ayrıca bir cihaz ikizi oluşturur.

Bir cihaz çözüme ilk kez bağlandığında bildirilen özellikleri ve cihaz bilgileri iletisini gönderir. Bildirilen özellik değerleri otomatik olarak cihaz ikizine kaydedilir. Bildirilen özellikler arasında cihaz üreticisi, model numarası, seri numarası ve desteklenen yöntemlerin listesi yer alır. Cihaz bilgileri iletisi, herhangi bir komut parametresiyle ilgili bilgiler de dahil olmak üzere cihazın desteklediği komutların listesini içerir. Çözüm bu iletiyi aldığında Cosmos DB veritabanındaki cihaz bilgilerini güncelleştirir.

Çözüm portalında cihaz bilgilerini görüntüleme ve düzenleme

Çözüm portalındaki cihaz listesi varsayılan olarak şu cihaz özelliklerini sütunlar olarak görüntüler: Durum, DeviceId, Üretici, Model Numarası, Seri Numarası, Üretici Yazılımı, Platform, İşlemci ve Yüklü RAM. Sütun düzenleyicisi'ne tıklayarak sütunları özelleştirebilirsiniz. Cihaz özellikleri Enlem ve Boylam , panodaki Bing Haritası'ndaki konumu belirler.

Cihaz listesindeki sütun düzenleyicisi

Çözüm portalındaki Cihaz Ayrıntıları bölmesinde, istediğiniz özellikleri ve etiketleri düzenleyebilirsiniz (bildirilen özellikler salt okunur).

Cihaz ayrıntıları bölmesi

Çözüm portalı kullanarak bir cihazı çözümünüzden kaldırabilirsiniz. Bir cihazı kaldırdığınızda, çözüm cihaz girişini kimlik kayıt defterinden kaldırır ve ardından cihaz ikizini siler. Çözüm, cihazla ilgili bilgileri Cosmos DB veritabanından da kaldırır. Bir cihazı kaldırabilmeniz için devre dışı bırakmanız gerekir.

Cihazı kaldır

Cihaz bilgileri ileti işleme

Bir cihaz tarafından gönderilen cihaz bilgileri iletileri telemetri iletilerinden farklıdır. Cihaz bilgileri iletileri, bir cihazın yanıt verebileceği komutları ve tüm komut geçmişini içerir. IoT Hub, bir cihaz bilgi iletisinde yer alan meta veriler hakkında bilgi sahibi değildir ve iletiyi cihazdan buluta iletiyi işlediği şekilde işler. Uzaktan izleme çözümünde, bir Azure Stream Analytics (ASA) işi IoT Hub gelen iletileri okur. DeviceInfo akış analizi işi, "ObjectType": "DeviceInfo" içeren iletiler için filtreler ve bunları bir web işinde çalışan EventProcessorHost konak örneğine iletir. EventProcessorHost örneğindeki mantık, belirli bir cihaz için Cosmos DB kaydını bulmak ve kaydı güncelleştirmek için cihaz kimliğini kullanır.

Not

Cihaz bilgileri iletisi standart bir cihazdan buluta iletidir. Çözüm, ASA sorgularını kullanarak cihaz bilgi iletileriyle telemetri iletilerini birbirinden ayırır.

Sonraki adımlar

Artık önceden yapılandırılmış çözümleri nasıl özelleştirebileceğinizi öğrendiniz. Önceden yapılandırılmış IoT Paketi çözümlerinin diğer bazı özelliklerini ve özelliklerini keşfedebilirsiniz: