Aracılığıyla paylaş


Öğretici: Azure Digital Twins Önizleme'yi dağıtma ve uzamsal graf yapılandırma

Önemli

Azure Digital Twins hizmetinin yeni bir sürümü yayımlandı. Yeni hizmetin genişletilmiş özellikleri ışığında özgün Azure Digital Twins hizmeti (bu belge kümesinde açıklanmıştır) kullanımdan kaldırılmıştır.

Yeni hizmetin belgelerini görüntülemek için etkin Azure Digital Twins Belgelerini ziyaret edin.

Kişileri, yerleri ve cihazları tutarlı bir uzamsal sistemde bir araya getirmek için Azure Digital Twins Önizleme hizmetini kullanabilirsiniz. Bu öğretici serisinde, oda doluluk durumunu en uygun sıcaklık ve hava kalitesi koşullarıyla algılamak için Azure Digital Twins'in nasıl kullanılacağı gösterilmektedir.

Bu öğreticiler, bir ofis binası senaryosu oluşturmak için bir .NET konsol uygulamasında size yol gösterir. Binanın her katın içinde birden fazla kat ve oda vardır. Odalarda hareketi, ortam sıcaklığını ve hava kalitesini algılayan takılı algılayıcılara sahip cihazlar bulunur.

Azure Digital Twins hizmetini kullanarak binadaki fiziksel alanları ve varlıkları dijital nesneler olarak çoğaltmayı öğreneceksiniz. Başka bir konsol uygulaması kullanarak cihaz olaylarının benzetimini yapacaksınız. Ardından, bu fiziksel alanlardan ve varlıklardan gelen olayları neredeyse gerçek zamanlı olarak izlemeyi öğ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. Ofis tesis yöneticisi, oda kullanım eğilimlerini almak ve bakım amacıyla çalışma koşullarını izlemek için kurulumunuzu kullanabilir.

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

  • Digital Twins'i dağıtma.
  • Uygulamanıza izinler verin.
  • Digital Twins örnek uygulamasını değiştirme.
  • Binanızı hazırlar.

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.

Önkoşullar

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

  • .NET Core SDK'sı. Bu öğreticilerde kullanılan Azure Digital 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 üzerini yüklediğinizden emin olun. Bir komut penceresinde çalıştırarak dotnet --version makinenizde doğru sürümün yüklü olup olmadığını denetleyin.

  • Ö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. Abonelik başına yalnızca bir örnek oluşturulabilir. Zaten çalışan bir bölümünüz varsa sonraki bölüme atlayın.

  1. Azure Portal’ında oturum açın.

  2. Giriş yan çubuğunu ve ardından + Kaynak oluştur'u seçin.

    Giriş kenar çubuğunu genişletin ve ardından + Kaynak oluştur'u seçin

  3. Digital Twins'i arayın ve Digital Twins'i seçin.

    Yeni Digital Twins örneği oluşturma seçimleri

    Alternatif olarak Nesnelerin İnterneti'ne tıklayın ve Digital Twins (önizleme) seçeneğini belirleyin.

  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 bilgilerin yerlendiği Digital Twins bölmesi

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

  7. Digital Twins örneğinizin Genel Bakış bölmesini açın. Yönetim API'sinin altındaki bağlantıya dikkat edin. Yönetim API'si URL'si şu şekilde 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çime 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. Sonraki bölümde buna ihtiyacınız olacak.

    Yönetim API'lerine genel bakış

Uygulamanıza izin verme

Digital Twins, hizmete okuma/yazma erişimini denetlemek için Azure Active Directory (Azure AD) kullanır. Digital Twins örneğiniz ile bağlanması gereken tüm uygulamalar Azure AD kaydedilmelidir. 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ı yönergeleri sağlanır.

  1. Azure portal, genişletilebilir sol menüden Azure Active Directory'yi açın ve ardından Uygulama kayıtları bölmesini açın.

    Azure Active Directory bölmesini seçme

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

    Yeni kayıt düğmesini seçin

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

    1. Yeniden Yönlendirme URI'si (isteğe bağlı) bölümünde metin kutusuna girinhttps://microsoft.com.

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

    3. Kaydet’i seçin.

    Oluştur bölmesi

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

    1. + Platform ekle'yi seçerek Yeniden Yönlendirme URI'leri ekleyin ve Erişim Belirteçlerini yapılandırın.

    2. Uygulamanın genel istemci olduğ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.

    Genel istemci yapılandırma ayarı

  5. Uygun platformu seçtikten sonra, kullanıcı arabiriminin sağ tarafındaki yan panelde Yeniden Yönlendirme URI'lerinizi ve Erişim Belirteçlerinizi yapılandırın.

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

      • Yerel geliştirme ortamında barındırılan uygulamalar için Genel istemci (mobil & masaüstü) seçeneğini belirleyin. Genel istemciyiEvet olarak ayarladığınızdan emin olun.
      • Azure App Service'da barındırılan Single-Page Uygulamalar için Web'i seçin.
    2. Oturumu Kapatma URL'lerinin uygun olup olmadığını belirleyin.

    3. Erişim belirteçlerini veya kimlik belirteçlerini denetleyerek örtük verme 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. + İzin ekle düğmesini seçin. API izinlerini iste bölmesinde kuruluşumun kullandığı API'ler sekmesini seçin ve aşağıdakilerden birini arayın:

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

      Arama API'si veya Azure Digital Twins

    2. Alternatif olarak, için arama da bulabilirsiniz Azure Smart Spaces Service. Azure Akıllı Alanlar Hizmeti API'sini seçin.

      Azure Akıllı Alanlar için ARAMA API'si

    Önemli

    Görünecek Azure AD API adı ve kimliği kiracınıza bağlıdır:

    • Test kiracısı ve müşteri hesapları için Azure Digital Twinsarama yapmalıdır.
    • Diğer Microsoft hesapları için Azure Smart Spaces Servicearama yapmalıdır.
  8. Api'lerden biri seçildikten sonra aynı İstek API'si izinleri bölmesinde Azure Digital Twins olarak görünür. Okuma açılan seçeneğini ve ardından Read.Write onay kutusunu seçin. İzin ekle düğmesini seçin.

    API izinleri ekleme

  9. Kuruluşunuzun ayarlarına bağlı olarak, bu API'ye yönetici erişimi vermek için ek adımlar uygulamanız 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.

    onay onayı Yönetici

    Azure Digital Twins'in göründüğünü doğrulayın.

Digital Twins örneğini yapılandırma

Bu bölümde , Digital Twins REST API'leriyle iletişim kuran bir Azure Digital Twins uygulamasında size yol gösterir.

Örneği indirme

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

  1. Digital Twins .NET örneklerini indirin.
  2. Makinenizdeki 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:

  • Uzamsal zeka grafiğini yapılandırmak ve sağlamak için sağlama örneği doluluk-hızlı başlangıcını kullanabilirsiniz. Bu grafik, fiziksel alanlarınızın ve içindeki kaynakların dijitalleştirilmiş görüntüsüdür. Akıllı bina için nesneleri tanımlayan bir nesne modeli kullanı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.

    Örneğin Digital Twins örneğiniz ile nasıl iletişim kurabileceğini anlamak için 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ı sağlamayı gösterir.
    • getSpaces.cs dosyası sağlanan alanlar hakkında bilgi 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şim kurmak için uç noktalar oluşturur.
  • Simülasyon örneği cihaz bağlantısı , algılayıcı verilerinin simülasyonunu oluşturur ve Digital Twins örneğiniz için sağlanan IoT hub'ına gönderir. Uzamsal grafınızı sağladıktan sonra sonraki öğreticide bu örneği kullanacaksı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ızla aynı olmalıdır.

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

  1. Bir komut penceresi açın ve indirilen örne 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'da, occupancy-quickstart projesinde appSettings.json dosyasını açın. Aşağıdaki değerleri güncelleştirin:

  4. Örneği kullanarak keşfedebileceğiniz Digital Twins özelliklerinin listesini gözden geçirin. Şu komutu çalıştırın:

    dotnet run
    

Sağlama işlemini anlama

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

Visual Studio Code'da occupancy-quickstart\src\actions klasörüne gidin ve provisionSample.cs dosyası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 kullanır. Bu dosyayı açın ve bir ofis binasının hiyerarşisini not edin: Mekan, Kat, Alan ve Odalar. Bu fiziksel alanların herhangi birinde cihazlar ve sensörler bulunabilir. Her girişin önceden tanımlanmış typebir girişi vardır; örneğin, Kat, Oda.

Örnek yaml dosyası, Digital Twins nesne modelini kullanan Default uzamsal bir graf gösterir. Bu model çoğu tür için genel adlar sağlar. Genel adlar bir bina için yeterlidir. SensorDataType için Temperature ve SpaceBlobType için Eşleme örnekleri verilebilir. Örnek alan türü, FocusRoom, ConferenceRoom vb. alt türleri olan Oda'dı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ğinin komut satırında komutunu dotnet run GetOntologies çalıştırarak hangi modellerin kullanabildiğini öğrenebilirsiniz.

Uzamsal grafikler ve nesne modelleri hakkında daha fazla bilgi için Digital Twins nesne modellerini ve uzamsal zeka grafını anlama konusunu okuyun.

Örnek uzamsal grafiği değiştirme

provisionSample.yaml dosyası aşağıdaki düğümleri içerir:

  • kaynaklar: Düğüm, resources kurulumunuzda cihazlarla iletişim kurmak için bir Azure IoT Hub kaynağı oluşturur. Grafınızın kök düğümündeki bir IoT hub'ı, grafınızdaki tüm cihazlar ve algılayıcılarla iletişim kurabilir.

  • spaces: Digital Twins nesne modelinde spaces, fiziksel konumları temsil eder. Her alanın bir Type(örneğin, Bölge, Mekan veya Müşteri) ve kolay Namebir alanı vardır. Boşluklar diğer boşluklara ait olabilir ve hiyerarşik bir yapı oluşturur. provisionSample.yaml dosyası, hayali bir binanın uzamsal grafiğine sahiptir. bir zeminde Room ve düğümlerde bir alanda, içindeki VenueArea türdeki Floor boşlukların mantıksal iç içe yerleştirilip yerleştirilemeycesine dikkat edin.

  • devices: Alanlarda, bir dizi sensörü yöneten fiziksel veya sanal varlıklar olan devices öğeleri bulunabilir. Örneğin, bir cihaz bir kullanıcının telefonu, Raspberry Pi algılayıcı podu 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 sensorsiçerebilir. Sıcaklık, hareket ve pil düzeyi gibi fiziksel değişiklikleri algılayabilir ve kaydedebilirler. Her sensör düğümü, burada sabit kodlanmış hardwareId değeriyle benzersiz olarak tanımlanmıştır. Gerçek bir uygulama için, kurulumunuzda algılayıcıların benzersiz tanımlayıcılarını kullanarak bunları 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 provisionSample.yaml dosyasında açıklama satırı olarak sağlanır. Her satırın # önündeki karakteri kaldırarak açıklamalarını kaldırabilirsiniz.

            - dataType: Temperature
              hardwareId: SAMPLE_SENSOR_TEMPERATURE
    

    Not

    ve hardwareId tuşlarının dataType bu kod parçacığının üzerindeki deyimlerle uyumlu olduğundan emin olun. 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 Digital Twins örnek derlemenizi oluşturacaksınız.

İpucu

Azure Digital Twins Graph Viewer'ı kullanarak uzamsal grafınızı görüntüleyebilir ve değiştirebilirsiniz.

Kaynakları temizleme

Bu noktada Azure Digital Twins'i keşfetmeyi durdurmak istiyorsanız, bu öğreticide oluşturulan kaynakları silebilirsiniz:

  1. Azure portal soldaki menüden Tüm kaynaklar'ı seçin, Digital Twins kaynak grubunuzu seçin ve Sil'i seçin.

    İpucu

    Digital Twins örneğinizi silerken sorun yaşadıysanız düzeltmeyle birlikte bir hizmet güncelleştirmesi kullanıma sunuldu. Lütfen örneğinizi silmeyi yeniden deneyin.

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

Sonraki adımlar

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