本チュートリアルは、温湿度計測ノードの構築を事例にとり、UIFlow を利用してデバイスを Azure IoT クラウドサービスプラットフォームに接続する方法を紹介します。
接続前に、Azure Portal を通じて IoT Hub を作成し、新規デバイスを登録する必要があります。 Azure の公式ドキュメントをクリックして詳細を確認
Azure の公式ドキュメントに従い、デバイスを作成した後、Azure IoT に接続する前に、必要な二つの文字列、つまり Primary Connection String と SAS Token を取得する必要があります。
デバイスに UIFlow ファームウェアを焼録します(ファームウェアのバージョンは v1.8.0 以上が必要)。
UIFlow ファームウェア焼録手順 を参照して、詳細な焼録手順を確認してください。
事例プログラム中、アップロードしたデータの形式は JSON で、データの後続の拡張と伝達を容易にするため、Power BI などのアプリケーションに拡張も可能です。
Connection String:"Primary Connection String"
SAS Token: "SAS Token"
//初始化连接
azure = IoT_Hub(connection_string='')
//证书接入方式
azure = IoT_Hub(device_id='', host_name='', ssl=True, cert_file_path='', private_key_path='')
//启用连接
azure.start()
//direct_method信息订阅
azure.subscribe_direct_method(topic, azure_direct_fun)
//监听云端数据callback
azure.subscribe_C2D_message(azure_C2D_cb)
//发布数据至云端
azure.publish_D2C_message()
//上传数据至云端设备实例(Device Twin)
azure.update_twin_reported_properties(key1='value',key2='value')
//传数据至云端设备实例(Device Twin) 响应callback
azure.subscribe_twin_desired_response(azure_desired_cb)
//获取云端设备实例(Device Twin)拥有的属性
azure.retrieve_twin_properties()
//初始化连接
azure = IoT_Central(scope_id='', device_id='', device_key='')
//启用连接
azure.start()
//direct_method信息订阅
azure.subscribe_direct_method(topic, azure_direct_fun)
//监听云端数据callback
azure.subscribe_C2D_message(azure_C2D_cb)
//发布数据至云端
azure.publish_D2C_message()
//上传数据至云端设备实例(Device Twin)
azure.update_twin_reported_properties(key1='value',key2='value')
//传数据至云端设备实例(Device Twin) 响应callback
azure.subscribe_twin_desired_response(azure_desired_cb)
//获取云端设备实例(Device Twin)拥有的属性
azure.retrieve_twin_properties()
Core2 にコードをプッシュした後、デバイスはプログラムの内容に基づいてデータのアップロードを開始します。データの確認方法は一意ではありません。本事例は、Azure-IoT-Explorer ツールを用いてアップロードしたデータを確認する方法を示します。 Azure-IoT-Explorer のダウンロードページをクリック
ダウンロードが完了後、ダブルクリックで開きます。Add connection をクリックし、接続鍵を入力します。適切な鍵を入力後、確認をクリックします(入力する鍵文字列は、Azure Portal の IoT Hub->設定->共有アクセスポリシー->iothubowner-Primary connection string から取得できます。下記の図示を参照してください)。
設定が完了後、現在のアプリケーション内に含まれるデバイスリストを取得できます
デバイスを選択し、詳細ページに進みます。Cloud-to-device message 機能を利用して、情報の配信を実現します。
目前、Azure-IoT-Explorer は D2C データの確認をサポートしていません。ユーザは VSCode - Azure IoT Hub プラグイン を利用して、データの監視と配信を実行できます。詳細は VSCode - Azure IoT Hub プラグインの Github を参照してください。