CodeZine(コードジン)

特集ページ一覧

Raspberry PiとMicrosoft Azureを連携してIoTを活用しよう

Raspberry Pi Zeroではじめよう! おうちで楽しむIoTレシピ 第3回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2017/12/21 14:00

目次

デバイスの登録

 デバイスエクスプローラーで、デバイスからAzure IoT ハブへ接続するための認証情報を登録します。「+追加」ボタンを押して、デバイスIDを登録します。

 「デバイスの追加」で、以下のように詳細情報を登録します。セキュリティを確保するため、キーは自動生成を選択しています。

  • デバイスID:デバイスIDを登録します(大文字・小文字の区別があります)
  • キーの自動生成:チェックボックスにチェックします
  • デバイスをIoT Hubに接続:「有効」を選択

 全て入力・選択したら「保存」ボタンを押します

デバイス情報の確認

 「デバイス エクスプローラー」「デバイスID」を選択し、デバイスの詳細を確認します。「接続文字列 - プライマリキー」の値は次の手順で使用します。

動作テスト

 Azure IoT SDKのサンプルプログラムを利用して、IoTハブへ接続します。

 ~/azure-iot-sdk-python/device/samples/iothub_client_sample.pyconnection_string = "[device connection string]"に、一つ前の手順で確認した「接続文字列 - プライマリキー」を貼り付けます。

 「接続文字列 - プライマリキー」の値を"[device connection string]"へ貼り付けるとき、値は"`(ダブルクォーテーション)で必ず囲って下さい。

$ cd ~/azure-iot-sdk-python/device/samples
$ nano iothub_client_sample.py
connection_string = "[device connection string]"

 サンプルプログラムを実行します。

$ ./iothub_client_sample.py

 iothub_client_sample.pyの実行時、以下のような出力になっていることを確認して、Ctrl+Cでプログラムの実行をキャンセルします。

 これで、Raspberry Pi ZeroとAzure IoT Hubが繋がりました。メッセージの送信数はダッシュボードから確認できます。

Raspberry Pi Azure IoT Web Simulatorの紹介

 Raspberry Pi Azure IoT Online Simulatorでは、温湿度・気圧センサーのBME280と、Raspberry Pi 2をシミュレーションし、プログラム実行のメッセージをIoT Hubへ送信するプログラムが用意されています。

 これで、Raspberry Pi本体とセンサーが手元になくても、オンラインシミュレーターからIoT Hubへの接続テストが容易にできます。

const connectionString = '[Your IoT hub device connection string]';

 サンプルで用意されているコードの15行目の[Your IoT hub device connection string]にIoT Hubのデバイス エクスプローラー → デバイスの詳細で取得した「接続文字列 - プライマリキー」を入力し、Runボタンを押してプログラムを実行してみましょう。

 IoT Hubへメッセージの送信ができていることを確認できたら、Stopボタンを押してください。

 次回は、Azure Web Appsを利用して IoTクリスマスツリーを作ってみましょう。



  • LINEで送る
  • このエントリーをはてなブックマークに追加

バックナンバー

連載:Raspberry Pi Zeroではじめよう! おうちで楽しむIoTレシピ

もっと読む

著者プロフィール

  • 平 愛美(タイラ マナミ)

     熊本県出身のITエンジニア。2児の母で、趣味は写真とグルメ。最近はRaspberry Pi、Arduinoを使った家庭内IoTについて日々研究するIT系母ちゃんとして活躍中。主な著書は、『改訂3版 Linuxエンジニア養成読本』(寄稿、技術評論社 刊)、『Linuxシステム管理標準教科書』(共著、...

あなたにオススメ

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5