Öğretici: Azure dijital TWINS önizlemesi dağıtma ve uzamsal bir grafik yapılandırma

Önemli

Azure Digital TWINS hizmeti 'nin yeni bir sürümü yayımlandı. Yeni hizmetin genişletilmiş özellikleri 'nin açık olduğu, özgün Azure dijital TWINS hizmeti (Bu belge kümesi 'nde açıklanmaktadır) kullanımdan kaldırılmıştır.

Yeni hizmetin belgelerini görüntülemek için etkin Azure dijital TWINS belgeleriniziyaret edin.

Azure Digital TWINS önizleme hizmetini kullanarak, kişileri, yerleri ve cihazları tutarlı bir uzamsal sisteme bir araya getirebilirsiniz. Bu öğretici serisinde, sıcaklık ve hava kalitesinin en iyi koşullarına sahip oda dolışını algılamak için Azure dijital TWINS 'in nasıl kullanılacağı gösterilmektedir.

Bu öğreticiler, bir Office binasının senaryosunu oluşturmak için bir .NET konsol uygulamasında size kılavuzluk eder. Binanın her bir tabandaki birden fazla kat ve oda vardır. Odalar, hareket, çevresel sıcaklık ve hava kalitesini algılayan eklenmiş sensörlerle cihazları içerir.

Azure Digital TWINS hizmetini kullanarak bina Dijital nesnelerinde fiziksel alanların ve varlıkların nasıl çoğaltılacağını öğreneceksiniz. Başka bir konsol uygulaması kullanarak cihaz olaylarını benzetireceksiniz. Daha sonra, bu fiziksel alanlardan ve varlıklardan neredeyse gerçek zamanlı olarak gelen olayların nasıl izleneceğini öğreneceksiniz.

Ofis yöneticileri bu tür bilgileri kullanarak bu binada görevli bir çalışanın en uygun koşullara sahip toplantı odalarını ayırması konusunda yardımcı olabilir. Office tesisler Yöneticisi, odaların kullanım eğilimlerini almak ve bakım amaçlarıyla çalışma koşullarını izlemek için kurulumunuzu kullanabilir.

Bu serinin ilk öğreticisinde aşağıdakilerin nasıl yapılacağını öğreneceksiniz:

  • Dijital TWINS dağıtın.
  • Uygulamanıza izin verin.
  • Dijital bir TWINS örnek uygulamasını değiştirme.
  • Binınızı sağlayın.

Bu öğreticilerde uygun odaları bulma hızlı başlangıcındaki örnekler kullanılmakta, kavramlar daha ayrıntılı bir şekilde ele alınmaktadır.

Ön koşullar

  • Azure aboneliği. Azure hesabınız yoksa ücretsiz bir hesapoluşturun.

  • .NET Core SDK. Bu öğreticilerde kullanılan Azure dijital TWINS örnekleri C# dilinde yazılmıştır. Örneği derlemek ve çalıştırmak için geliştirme makinenize .NET Core SDK sürüm 2.1.403 veya sonraki bir sürümü yüklediğinizden emin olun. Bir komut penceresinde çalıştırarak doğru sürümün makinenizde yüklü olduğundan emin olun dotnet --version .

  • Örnek kodu incelemek için Visual Studio Code.

Digital Twins'i dağıtma

Azure Digital TWINS hizmetinin yeni bir örneğini oluşturmak için bu bölümdeki adımları kullanın. Her abonelik için yalnızca bir örnek oluşturulabilir. Zaten çalışır durumda olan bir sonraki bölüme atlayın.

  1. Azure Portal oturum açın.

  2. Giriş yan çubuğunu seçin ve ardından kaynak oluştur ' atıklayın.

    Giriş yan çubuğunu genişletin ve + kaynak oluştur ' u seçin.

  3. Dijital TWINSaraması yapın ve dijital TWINS' i seçin.

    Yeni dijital TWINS örneği oluşturma seçimleri

    Alternatif olarak, nesnelerin internetiöğesini seçin ve dijital TWINS (Önizleme) öğesini seçin.

  4. Dağıtım işlemini başlatmak için Oluştur’u seçin.

    Kaynağın dağıtımını oluşturma ve onaylama

  5. Digital Twins bölmesine şu bilgileri girin:

    • Kaynak Adı: Digital Twins örneğiniz için benzersiz bir ad oluşturun.

    • Abonelik: Bu Digital Twins örneğini oluşturmak için kullanmak istediğiniz aboneliği seçin.

    • Kaynak grubu: Digital Twins örneği için bir kaynak grubu seçin veya oluşturun.

    • Konum: Cihazlarınıza en yakın konumu seçin.

      Girilen bilgileri içeren dijital TWINS bölmesi

  6. Dijital TWINS bilgilerinizi gözden geçirin ve ardından Oluştur' u seçin. Dijital TWINS örneğinizin oluşturulması birkaç dakika sürebilir. İlerleme durumunu Bildirimler bölmesinden izleyebilirsiniz.

  7. Digital Twins örneğinizin Genel Bakış bölmesini açın. Yönetim API 'sialtındaki bağlantıyı aklınızda edin. YÖNETIM API URL 'si şöyle biçimlendirilir:

    https://yourDigitalTwinsName.yourLocation.azuresmartspaces.net/management/swagger
    

    Bu URL, örneğiniz için geçerli olan Azure Digital Twins REST API belgesini açar. Bu API belgelerini okumayı ve kullanmayı öğrenmek için bkz. Azure Digital Twins Swagger'ı kullanma. YÖNETIM API 'si URL 'sini şu biçimde kopyalayın ve değiştirin:

    https://yourDigitalTwinsName.yourLocation.azuresmartspaces.net/management/api/v1.0/
    

    Uygulamanız, değiştirilen URL'yi örneğinize erişmek için temel URL olarak kullanır. Değiştirdiğiniz URL'yi geçici bir dosyaya kopyalayın. Bu, sonraki bölümde gerekecektir.

    Yönetim API 'sine genel bakış

Uygulamanıza izin verme

Dijital TWINS, hizmete okuma/yazma erişimini denetlemek için Azure ACTIVE DIRECTORY (Azure AD) kullanır. Dijital TWINS örneğinizle bağlantı kurmak için gereken tüm uygulamaların Azure AD 'ye kayıtlı olması gerekir. Bu bölümde örnek uygulamanızı kaydetme adımları gösterilmektedir.

Uygulama kaydınız varsa örnek uygulama için bu kaydı kullanabilirsiniz. Ancak bu bölümdeki adımları izleyerek uygulama kaydınızın doğru yapılandırmaya sahip olduğundan emin olun.

Not

Bu bölümde Azure AD uygulama kaydıiçin yönergeler sağlanmaktadır.

  1. Azure Portal, Genişletilebilir sol menüden Azure Active Directory açın ve uygulama kayıtları bölmesini açın.

    Azure Active Directory bölmesini seçin

  2. + Yeni kayıt düğmesini seçin.

    Yeni kayıt düğmesini seçin

  3. Ad kutusuna bu uygulama kaydı için kolay bir ad verin.

    1. Yeniden yönlendirme URI 'si (isteğe bağlı) bölümünde, https://microsoft.com metin kutusuna yazın.

    2. Azure Active Directory uygulamanız tarafından hangi hesapların ve kiracıların desteklendiğini doğrulayın.

    3. Kaydol’u seçin.

    Bölme oluştur

  4. Kimlik doğrulama dikey penceresi, önemli kimlik doğrulama yapılandırma ayarlarını belirtir.

    1. + Platform Ekle' ye tıklayarak yeniden yönlendirme URI 'Leri ekleyin ve erişim belirteçlerini yapılandırın.

    2. Uygulamanın ortak bir istemciolduğunu belirtmek için Evet ' i seçin.

    3. Azure Active Directory uygulamanız tarafından hangi hesapların ve kiracıların desteklendiğini doğrulayın.

    Ortak istemci yapılandırma ayarı

  5. Uygun platformu seçtikten sonra, yeniden yönlendirme URI 'larınızı ve yan paneldeki erişim belirteçlerinizi Kullanıcı arabiriminin sağına yapılandırın.

    1. Yeniden yönlendirme URI 'leri , kimlik doğrulama isteği tarafından sağlanan adresle eşleşmelidir:

      • Yerel bir geliştirme ortamında barındırılan uygulamalar için ortak istemci (mobil & Masaüstü) öğesini seçin. Ortak Istemciyi Evetolarak ayarladığınızdan emin olun.
      • Azure App Service barındırılan tek sayfalı uygulamalar için Web' i seçin.
    2. Oturum kapatma URL 'sinin uygun olup olmadığını belirleme.

    3. Erişim belirteçlerini veya kimlik belirteçlerinidenetleyerek örtük izin akışını etkinleştirin.

    Yeniden yönlendirme URI 'Lerini yapılandırma

    Yapılandır' a ve ardından Kaydet' e tıklayın.

  6. Kayıtlı uygulamanızın genel bakış bölmesini açın ve aşağıdaki varlıkların değerlerini geçici bir dosyaya kopyalayın. Aşağıdaki bölümlerde örnek uygulamanızı yapılandırmak için bu değerleri kullanacaksınız.

    • Uygulama (istemci) kimliği
    • Dizin (kiracı) kimliği

    Azure Active Directory uygulama KIMLIĞI

  7. Uygulama kaydınız için API izinleri bölmesini açın. + Izin Ekle düğmesini seçin. API Izinleri iste bölmesinde Kuruluşumun kullandığı API 'leri seçin ve ardından aşağıdakilerden birini arayın:

    1. Azure Digital Twins. Azure dijital TWINS API 'sini seçin.

      Arama API 'SI veya Azure dijital TWINS

    2. Alternatif olarak, araması yapın Azure Smart Spaces Service . Azure akıllı boşluklar hizmeti API 'sini seçin.

      Azure akıllı alanları için API arama

    Önemli

    Görüntülenecek Azure AD API adı ve KIMLIĞI, kiracınıza bağlı olarak değişir:

    • Test kiracısı ve müşteri hesapları için arama yapılmalıdır Azure Digital Twins .
    • Diğer Microsoft hesapları için arama yapılmalıdır Azure Smart Spaces Service .
  8. Her iki API de aynı istek API 'si izinleri bölmesinde seçildikten sonra Azure dijital TWINS olarak görünür. Oku açılan seçeneğini belirleyin ve ardından oku. yazma onay kutusunu seçin. Izin Ekle düğmesini seçin.

    API izinleri ekleme

  9. Kuruluşunuzun ayarlarına bağlı olarak, bu API 'ye yönetici erişimi sağlamak için ek adımlar gerçekleştirmeniz gerekebilir. Daha fazla bilgi için yöneticinize başvurun. Yönetici erişimi onaylandıktan sonra, API izinleri bölmesindeki yönetici onayı gerekli sütunu, izinlerinizi görüntüler.

    Yönetici onayı onayı

    Azure dijital TWINS 'in göründüğünü doğrulayın.

Dijital TWINS örneğini yapılandırma

Bu bölümde, dijital TWıNS REST API 'leriile iletişim kuran bir Azure dijital TWINS uygulaması adım adım açıklanmaktadır.

Örneği indirme

Uygun odaları bulma hızlı başlangıcı için bu örnekleri daha önce indirdiyseniz bu adımları atlayabilirsiniz.

  1. Dijital TWINS .net örnekleriniindirin.
  2. Makinenizde zip klasörünün içeriğini ayıklayın.

Örneği keşfetme

Ayıklanan örnek klasöründeki digital-twins-samples-csharp\digital-twins-samples.code-workspace dosyasını Visual Studio Code ile açın. Bu dosyada iki proje bulunur:

  • Bir uzamsal zeka grafiğiniyapılandırmak ve sağlamak için örnek ön hızlı başlangıç sağlama örneğini kullanabilirsiniz. Bu grafik, fiziksel boşlukların ve içerdikleri kaynakların sayısal görüntüsüdür. Akıllı bir bina için nesneleri tanımlayan bir nesne modelikullanır. Digital Twins nesnelerinin ve REST API'lerinin tam listesi için bu REST API belgesini veya örneğiniz için oluşturulmuş olan Yönetim API'si URL'sini ziyaret edin.

    Dijital TWINS örneğinizle nasıl iletişim kuracağını anlamak için örneği araştırmak üzere src\actions klasörüyle başlayabilirsiniz. Bu klasördeki dosyalar, bu öğreticilerde kullanacağınız komutları uygular:

    • ProvisionSample.cs dosyası, uzamsal grafınızı nasıl sağlayacağınızı gösterir.
    • GetSpaces.cs dosyası, sağlanan alanlarla ilgili bilgileri alır.
    • GetAvailableAndFreshSpaces.cs dosyası, Kullanıcı tanımlı işlev olarak adlandırılan özel bir işlevin sonuçlarını alır.
    • CreateEndpoints.cs dosyası diğer hizmetlerle etkileşimde bulunmak için uç noktalar oluşturur.
  • Simülasyon örneği cihaz bağlantısı , algılayıcı verilerinin benzetimini yapar ve bunu dijital TWINS örneğiniz Için sağlanan IoT Hub 'ına gönderir. Bu örneği , uzamsal grafınızı sağladığınızda sonraki öğreticidekullanacaksınız. Bu örneği yapılandırmak için kullandığınız algılayıcı ve cihaz tanımlayıcıları, grafınızı sağlamak için kullanacağınız ile aynı olmalıdır.

Sağlama örneğini yapılandırma

  1. Bir komut penceresi açın ve indirilen örneğe gidin. Şu komutu çalıştırın:

    cd occupancy-quickstart/src
    
  2. Şu komutu çalıştırarak bağımlılıkları örnek projeye geri yükleyin:

    dotnet restore
    
  3. Visual Studio Code, is-QuickStart projesindeki dosya appSettings.js açın. Aşağıdaki değerleri güncelleştirin:

    • ClientID: Azure AD uygulama kaydlarınızın uygulama kimliğini girin. Uygulama izinlerini ayarladığınızbölümde bu kimliği not etmiştiniz.
    • Kiracı: Azure AD KIRACıNıZıNdizin kimliğini girin. Ayrıca, bu KIMLIĞI uygulama izinlerini ayarladığınızbölümde de not etmiştiniz.
    • BaseUrl: Digital Twins örneğinizin URL'sini girin. Bu URL'yi almak için şu URL'deki yer tutucuları örneğinize ait değerlerle değiştirin: https://yourDigitalTwinsName.yourLocation.azuresmartspaces.net/management/api/v1.0/. Dağıtım bölümündeyönetim API URL 'sini değiştirerek bu URL 'yi de alabilirsiniz. Swagger/ , api/v 1.0/ ile değiştirin.
  4. Örneği kullanarak keşfedebileceğiniz dijital TWINS özelliklerinin listesini gözden geçirin. Şu komutu çalıştırın:

    dotnet run
    

Sağlama sürecini anlayın

Bu bölümde örnekte binanın uzamsal grafının nasıl sağlandığı gösterilmektedir.

Visual Studio Code ' de Occupancy-quickstart\src\actions klasörüne gidin ve provisionSample.csdosyasını açın. Aşağıdaki işleve dikkat edin:

public static async Task<IEnumerable<ProvisionResults.Space>> ProvisionSample(HttpClient httpClient, ILogger logger)
{
    IEnumerable<SpaceDescription> spaceCreateDescriptions;
    using (var r = new StreamReader("actions/provisionSample.yaml"))
    {
        spaceCreateDescriptions = await GetProvisionSampleTopology(r);
    }

    var results = await CreateSpaces(httpClient, logger, spaceCreateDescriptions, Guid.Empty);

    Console.WriteLine($"Completed Provisioning: {JsonConvert.SerializeObject(results, Formatting.Indented)}");

    return results;
}

Bu işlev, aynı klasörde Provisionsample. YAML 'yi kullanır. Bu dosyayı açın ve Office oluşturma: mekan, Floor, Areave Odalarhiyerarşisini göz önünde edin. Bu fiziksel alanların herhangi birinde cihazlar ve sensörler bulunabilir. Her giriş için önceden tanımlanmış bir type — örnek, kat, oda vardır.

YAML dosyası örneği, Default dijital TWINS nesne modelini kullanan bir uzamsal grafiği gösterir. Bu model çoğu tür için genel adlar sağlar. Genel adlar bir bina için yeterlidir. SensorDataType için sıcaklık ve SpaceBlobType için eşleme örnekleri. Örnek boşluk türü, alt tür Focusoda, ConferenceRoom vb. ile birlikte yer alır.

Fabrika gibi farklı bir mekan için uzamsal graf oluşturmanız gerekmesi durumunda başka bir nesne modeline ihtiyaç duyabilirsiniz. Sağlama örneği için komut satırında komutunu çalıştırarak hangi modellerin kullanılabilir olduğunu bulabilirsiniz dotnet run GetOntologies .

Uzamsal grafikler ve nesne modelleri hakkında daha fazla bilgi için bkz. dijital TWINS nesne modellerini ve uzamsal zeka grafiğini anlama.

Örnek uzamsal grafiği değiştirme

Provisionsample. YAML dosyası aşağıdaki düğümleri içerir:

  • kaynaklar: resources düğüm, kurulumlarınızdaki cihazlarla iletişim kurmak için bir Azure IoT Hub kaynağı oluşturur. Grafiğinizin kök düğümündeki bir IoT Hub 'ı, grafiğinizde bulunan tüm cihazlar ve sensörlerle iletişim kurabilir.

  • spaces: Digital Twins nesne modelinde spaces, fiziksel konumları temsil eder. Her alan bir Type — Örneğin, bölge, mekan veya müşteri — ve kolay bir şekilde bulunur Name . Boşluk, hiyerarşik bir yapı oluşturarak diğer alanlara ait olabilir. ProvisionSample. YAML dosyası, sanal bir binasının uzamsal bir grafiğine sahiptir. İçindeki türdeki boşlukların Floor Venue , Area bir zemin içindeki ve Room bir alandaki düğümlerin mantıksal iç içe geçme durumunu göz önünde bulundurmayın.

  • devices: Alanlarda, bir dizi sensörü yöneten fiziksel veya sanal varlıklar olan devices öğeleri bulunabilir. Örneğin, bir cihaz kullanıcının telefonu, Raspberry PI algılayıcısı Pod veya ağ geçidi olabilir. Örnekteki hayali binanın Focus Room adlı odasında bir Raspberry Pi 3 A1 cihazı bulunmaktadır. Her cihaz düğümü, örneğe sabit kodlanmış benzersiz bir hardwareId değerine sahiptir. Bu örneği üretim amaçlı kullanım için yapılandırmak isterseniz bu değerleri kendi sisteminizdeki değerlerle değiştirmeniz gerekir.

  • Algılayıcılar: bir cihaz birden çok içerebilir sensors . Sıcaklık, hareket ve pil düzeyi gibi fiziksel değişiklikleri algılayıp kaydedebilirler. Her sensör düğümü, burada sabit kodlanmış hardwareId değeriyle benzersiz olarak tanımlanmıştır. Gerçek bir uygulama için, bu ayarları, kuruluminizdeki sensörların benzersiz tanımlayıcılarını kullanarak değiştirin. provisionSample.yaml dosyasında biri Motion (Hareket) biri de CarbonDioxide (Karbondioksit) sensörü olmak üzere iki sensör vardır. CarbonDioxide sensörünün tanımlandığı satırların altına aşağıdaki satırları ekleyerek Temperature (Sıcaklık) kaydı yapacak yeni bir sensör ekleyin. Bunlar, yorumlanan Sample. YAML 'de açıklamalı çizgiler olarak sağlanır. #Her satırın önündeki karakteri kaldırarak bunların açıklamasını kaldırabilirsiniz.

            - dataType: Temperature
              hardwareId: SAMPLE_SENSOR_TEMPERATURE
    

    Not

    dataTypeVe hardwareId anahtarlarının Bu kod parçacığının üzerindeki deyimlerle hizalanmasına dikkat edin. Ayrıca düzenleyicinizin boşlukları sekmelerle değiştirmediğinden de emin olun.

provisionSample.yaml dosyasını kaydedin ve kapatın. Sonraki öğreticide bu dosyaya daha fazla bilgi ekleyecek ve ardından Azure dijital TWINS örnek binınızı sağlayacaksınız.

İpucu

Azure dijital TWINS grafik Görüntüleyicisi 'nikullanarak uzamsal grafınızı görüntüleyebilir ve değiştirebilirsiniz.

Kaynakları temizleme

Bu noktada Azure dijital TWINS araştırmalarını durdurmak istiyorsanız bu öğreticide oluşturulan kaynakları silebilirsiniz:

  1. Azure Portalsol menüden tüm kaynaklar' ı seçin, dijital TWINS kaynak grubunuzu seçin ve Sil' i seçin.

    İpucu

    Dijital TWINS örneğinizi silme konusunda sorun yaşıyorsanız, bu düzeltmeyle birlikte bir hizmet güncelleştirmesi kullanıma alındı. Lütfen örneğinizi silmeyi yeniden deneyin.

  2. Gerekirse, iş makinenizdeki örnek uygulamayı silin.

Sonraki adımlar

Örnek binaınızdaki koşulları izlemek üzere özel bir mantık uygulamayı öğrenmek için, serideki bir sonraki Öğreticiye gidin: