IoT プラグ アンド プレイとはWhat is IoT Plug and Play?

IoT プラグ アンド プレイにより、ソリューション ビルダーは、手動で構成することなく、独自のソリューションにスマート デバイスを統合することができます。IoT Plug and Play enables solution builders to integrate smart devices with their solutions without any manual configuration. IoT プラグ アンド プレイの中核となるのは、デバイスが自身の機能を IoT プラグ アンド プレイ対応アプリケーションに公開するために使用するデバイス モデル です。At the core of IoT Plug and Play, is a device model that a device uses to advertise its capabilities to an IoT Plug and Play-enabled application. このモデルは、次の内容を定義する要素のセットとして構成されます。This model is structured as a set of elements that define:

  • デバイスまたは他のエンティティの読み取り専用および書き込み可能な状態を表す プロパティProperties that represent the read-only or writable state of a device or other entity. たとえば、デバイスのシリアル番号は読み取り専用のプロパティであり、サーモスタットでの目標温度は書き込み可能なプロパティとなります。For example, a device serial number may be a read-only property and a target temperature on a thermostat may be a writable property.
  • デバイスによって出力されるデータである "テレメトリ"。このデータはセンサー読み取り値の通常のストリーム、偶発的なエラー、または情報メッセージのいずれかです。Telemetry that's the data emitted by a device, whether the data is a regular stream of sensor readings, an occasional error, or an information message.
  • デバイス上で実行できる関数または操作を記述した "コマンド"。Commands that describe a function or operation that can be done on a device. たとえば、コマンドでは、ゲートウェイを再起動したり、リモート カメラを使用して写真を撮影したりすることが可能です。For example, a command could reboot a gateway or take a picture using a remote camera.

インターフェイス内でこれらの要素をグループ化してモデル間で再利用すれば、コラボレーションを容易にし、開発を高速化することができます。You can group these elements in interfaces to reuse across models to make collaboration easier and to speed up development.

IoT プラグ アンド プレイを Azure Digital Twins と連携させるには、Digital Twin Definition Language (DTDL) を使用してモデルとインターフェイスを定義します。To make IoT Plug and Play work with Azure Digital Twins, you define models and interfaces using the Digital Twins Definition Language (DTDL). IoT プラグ アンド プレイと DTDL はコミュニティにも開かれており、Microsoft はお客様、パートナー、業界とのコラボレーションを歓迎しています。IoT Plug and Play and the DTDL are open to the community, and Microsoft welcomes collaboration with customers, partners, and the industry. どちらも、サービスおよびツールをまたいで簡単に導入できるオープンな W3C 標準 (JSON-LD や RDF など) に基づいています。Both are based on open W3C standards such as JSON-LD and RDF, which enables easier adoption across services and tooling.

IoT プラグ アンド プレイと DTDL を使用する場合、追加料金は発生しません。There's no extra cost for using IoT Plug and Play and DTDL. Azure IoT Hub およびその他の Azure サービスの標準料金は変わりません。Standard rates for Azure IoT Hub and other Azure services remain the same.

この記事では以下の内容について概説します。This article outlines:

  • IoT プラグ アンド プレイを使用するプロジェクトに関連付けられる一般的なロール。The typical roles associated with a project that uses IoT Plug and Play.
  • ご利用のアプリケーション内で IoT プラグ アンド プレイ デバイスを使用する方法。How to use IoT Plug and Play devices in your application.
  • IoT プラグ アンド プレイをサポートする IoT デバイス アプリケーションを開発する方法。How to develop an IoT device application that supports IoT Plug and Play.

ユーザー ロールUser roles

IoT プラグ アンド プレイは、次の 2 種類の開発者にとって有用です。IoT Plug and Play is useful for two types of developers:

  • "ソリューション ビルダー": Azure IoT Hub およびその他の Azure リソースを使用して IoT ソリューションを開発すると共に、統合する IoT デバイスを特定する役割を担います。A solution builder is responsible for developing an IoT solution using Azure IoT Hub and other Azure resources, and for identifying IoT devices to integrate.
  • "デバイス ビルダー": ご利用のソリューションに接続されたデバイス上で実行するコードを作成します。A device builder creates the code that runs on a device connected to your solution.

IoT プラグ アンド プレイ デバイスを使用するUse IoT Plug and Play devices

ソリューション ビルダーは、IoT プラグ アンド プレイ デバイスを使用する、クラウドでホストされた IoT ソリューションを開発できます。As a solution builder, you can develop a cloud-hosted IoT solution that uses IoT Plug and Play devices. IoT Hub を使用します。これは、マネージド クラウド サービスであり、ご利用の IoT アプリケーションとデバイスとの間で、セキュリティで保護された双方向通信を行うためのメッセージ ハブとして機能します。Use IoT Hub - a managed cloud service, that acts as a message hub for secure, bi-directional communication between your IoT application and your devices.

IoT プラグ アンド プレイ デバイスを IoT ハブに接続すると、Azure IoT エクスプローラー ツールを使用することで、インターフェイス内で定義されている、モデルを構成するテレメトリ、プロパティ、およびコマンドを表示できます。When you connect an IoT Plug and Play device to an IoT hub, you can use the Azure IoT explorer tool to view the telemetry, properties, and commands defined in the interfaces that compose the model.

Windows または Linux ゲートウェイに接続されている既存のセンサーがある場合は、IoT プラグ アンド プレイ ブリッジを使用してこれらのセンサーを接続し、(サポートされているプロトコル用の) デバイス ソフトウェア/ファームウェアを記述することなく IoT プラグ アンド プレイ デバイスを作成することができます。If you have existing sensors attached to a Windows or Linux gateway, you can use IoT Plug and Play bridge, to connect these sensors and create IoT Plug and Play devices without the need to write device software/firmware (for supported protocols ).

IoT デバイス アプリケーションを開発するDevelop an IoT device application

デバイス ビルダーは、IoT プラグ アンド プレイをサポートする IoT ハードウェア製品を開発できます。As a device builder, you can develop an IoT hardware product that supports IoT Plug and Play. このプロセスには、次の 3 つの主な手順が含まれます。The process includes three key steps:

  1. デバイス モデルを定義します。Define the device model. DTDL を使用してデバイスの機能を定義する一連の JSON ファイルを作成します。You author a set of JSON files that define your device's capabilities using the DTDL. モデルには、物理的な製品などの完全なエンティティが記述され、さらにそのエンティティによって実装される一連のインターフェイスが定義されます。A model describes a complete entity such as a physical product, and defines the set of interfaces implemented by that entity. インターフェイスは、デバイスでサポートされているテレメトリ、プロパティ、コマンドを一意に識別する共有コントラクトです。Interfaces are shared contracts that uniquely identify the telemetry, properties, and commands supported by a device. インターフェイスは、さまざまなモデル間で再利用できます。Interfaces can be reused across different models.

  2. デバイスのソフトウェアまたはファームウェアを作成する場合は、それらのテレメトリ、プロパティ、およびコマンドが IoT プラグ アンド プレイ規則に従うようにします。Author device software or firmware in a way that their telemetry, properties, and commands follow the IoT Plug and Play conventions. Windows または Linux ゲートウェイに接続されている既存のセンサーを接続する場合は、IoT プラグ アンド プレイ ブリッジを使用すると、このステップを簡略化できます。If you are connecting existing sensors attached to a Windows or Linux gateway, the IoT Plug and Play bridge can simplify this step.

  3. MQTT 接続の一環としてモデル ID がデバイスから通知されます。The device announces the model ID as part of the MQTT connection. Azure IoT SDK には、接続時にモデル ID を提供する新しいコンストラクトが含まれています。The Azure IoT SDK includes new constructs to provide the model ID at connection time.

重要

IoT プラグ アンド プレイ デバイスでは、WebSocket 経由で MQTT または MQTT を使用する必要があります。IoT Plug and Play devices must use MQTT or MQTT over WebSockets. AMQP や HTTP などの他のプロトコルは、IoT プラグ アンド プレイ デバイスの実装には無効です。Other protocols such as AMQP or HTTP are not valid to implement IoT Plug and Play devices.

デバイス認定Device certification

IoT プラグ アンド プレイ デバイス認定プログラムは、IoT プラグ アンド プレイの認定要件をデバイスが満たしていることを確認するものです。The IoT Plug and Play device certification program verifies that a device meets the IoT Plug and Play certification requirements. 認定されたデバイスは、公開されている Azure IoT 認定デバイス カタログに登録できます。You can add a certified device to the public Certified for Azure IoT device catalog.

次のステップNext steps

IoT プラグ アンド プレイの概要を説明したので、次の手順では、クイックスタートのいずれかを試してみましょう。Now that you have an overview of IoT Plug and Play, the suggested next step is to try out one of the quickstarts: