Azure IoTを気軽に試せるSimulatorをご紹介! – DevWire (2017/08/28)


 

TwitterTwitter でつぶやく  FacebookFacebook でシェアする  LinkedInLinkedIn でシェアする
Index
Hot Topics
マイクロソフトの WW パートナー イベント「Microsoft Inspire」で Inspire されちゃいました
「Microsoft Tech Summit 2017」11 月 8 日 (水)、9 日 (木) 開催! 早期申し込み割引受付中!
Azure IoT に関するアップデート情報!
DevWire のバック ナンバーをご紹介
Windows Embedded/IoT 販売代理店 耳より情報
Column
FPGA の記述言語 HDL について
ほっとひと息
「1 周年になりました」DevWire 編集部 加藤 大輔
Hot Topics
マイクロソフトの WW パートナー イベント「Microsoft Inspire」で Inspire されちゃいました
マイクロソフトのパートナー イベントと言えば「World Partner Conference (WPC)」が有名でしたが、2017 年からは「Microsoft Inspire」という呼称に代わりました。当イベントは、全世界のパートナー企業の経営者様およびセールス&マーケティングご担当者様を対象にビジネスの成長と収益性の向上を目的とした有益な最新情報をご提供するカンファレンスです。名前が変わって初の今年のイベントは、2017 年 7 月 9 日から 13 日に米国 ワシントン D.C.で開催され、全世界 140 か国以上から約 18,000 名のパートナー様にご参加いただき、過去最多となりました。マイクロソフトがどれだけパートナー様を大切に、そして重要視しているかがお分かりいただけるかと思います。日本からは 152 社 445 名様のご参加を頂き、96% のパートナー様が来年も参加したいといっていただける満足度の高いイベントとなりました。

ご参加いただけなかった読者の皆様に今年のようすをお知らせします!
Inspire 2017 は Where the world meets to transform business をテーマに Digital Transformation をキーワードにして最新の取り組み状況や、新たな製品、機能などが発表されました。

Day 1 基調講演では、Microsoft はパートナー様との成功を常に考える会社であると述べ、『パートナー ファースト』を推進する組織改編を行うと発表しました。「Build-with」「Go-to-market」「Sell-with」を 3 本柱にパートナー専門部署を作成し、Microsoft Azure Co-Sell Program など新たな取り組みを行うことを明らかにしました。

また、4 つのソリューション領域でデジタル トランスフォーメーションを加速させることを示しました。Microsoft 365 や Microsoft Relationship Sales などの新しいソリューションも発表しました。

  • Modern Workplace: Microsoft 365
  • Business Applications: Microsoft Relationship Sales
  • Applications & Infrastructure: Azure Stack
  • Data & AI: Democratize AI
Day 2 基調講演では、前日 Satya が発表した 4 つのソリューション領域により解決される 4 つの領域と、これらを支えてくれているパートナー様の成功事例をご紹介しました。

  • Empower employees: Azure を利用した BroadReach 様
  • Engage customers: Adobe Platform + Azure を活用した Sephora 様
  • Optimize operations: Azure を利用した Ertech 様
  • Transform products: Dynamics 365 を取り入れた ProMX 様

デジタル トランスフォーメーションを実現するには、テクノロジーに加え業界の知識が不可欠で、今年度から 6 つの業界 (教育、金融、政府、医療、製造、小売) にフォーカスすることを発表しました。

Day 3 基調講演では、今期のパートナー戦略を中心に「どうすれば」それを実現できるのかという点について下記 4 つのポイントが紹介されました。

  • ターゲットとなるお客様と市場についてよく理解する
  • 技術スキルを磨く
  • 反復可能でスケーラブルなソリューションを構築する

イノベーションを推し進める

ここまで読んで、もっと詳しく内容を知りたいと思った方は以下のリンクからビデオがご覧になれます。

各基調講演ビデオ:
https://partner.microsoft.com/en-US/inspire/sessions

各ブレイクアウトセッション資料はこちら
https://myinspire.microsoft.com/sessions

来年の Microsoft Inspire は、ラスベガスで開催されます。マイクロソフトのエグゼクティブたちが心をこめて語る貴重講演とさまざまなテーマでビジネスに役立つ情報が得られるブレイクアウトセッションを生でご覧になりませんか? カンファレンスの合間には、カジノで一儲けもできるかもしれないですよ (負けてもマイクロソフトは責任を負いませんのであしからず・・・)

参考資料: Inspire 2017 関連ニュースなど
Inspire 2017 で発表されたニュースや関連記事のまとめ

「Microsoft Tech Summit 2017」11 月 8 日 (水)、9 日 (木) 開催! 早期申し込み割引受付中!
「Microsoft Tech Summit 2017」早期申込割引受付中
インフラ エンジニア、アーキテクト、IT 戦略にかかわる皆様のための技術カンファレンス「Microsoft Tech Summit 2017」が 11 月 8 日 (水)、9 日 (木)、ウェスティンホテル東京にて今年も開催されます。クラウド、アプリケーション基盤、プロダクティビティ、セキュリティ、AI、IoT、Mixed Reality といった最新技術を 80 を超えるセッションでご紹介するほか、米国で開催される Microsoft Ignite で提供される最新情報を、いち早く日本向けにアレンジしてお届けします。お得な早期申し込み割引は 10 月 13 日 (金) までのご提供です。
お申し込みはお早めに!
詳細情報、お申し込みはこちらから
Azure IoT に関するアップデート情報!
今回は、皆さんに Azure IoT を気軽に試してしてみるのに便利な Raspberry Pi Web Simulator を紹介させていただきます。


実機 (ハード) を購入して、Raspberry Pi を Azure IoT Hub に接続してみたいけど、その前に、気楽に試してみたいな思っている人はいませんか? はい、私もその一人です。人前で Node.js コマンド プロンプト を開いて、実際にデモをさせていただくこともあるのですが、見栄えがよくないせいか、いまいちウケがよくなかったりすることがあります。満員電車のなか、毎日、このような Raspberry Pi デモ キットを持ち運ぶのはたいへんなわけでして、そんなときに出会ったのが、今回紹介させていただく Raspberry Pi Web Simulator でした。
https://gitter.im/Microsoft/raspberry-pi-web-simulator/

写真: My Sweet Raspberry Pi & Sensor Tag

このシミュレーターは、BME280 というセンサー デバイスと、LED をシミュレートしてくれています。
BME280 からデータを読み出すときは、readSensorData () 関数を使い、LED を点滅させるときは blinkLED () という関数を使います。以下のリンクにアクセスしていただけると(https://azure-samples.github.io/raspberry-pi-web-simulator/)、ほぼ完成されたひな形のコードが出来上がっています。

上の図は、そのひな形のコードの一部です。赤線で記した部分に IoT Hub に登録したデバイスの Connection String をコピペしてあげれば、すぐにでも実行できます。(実行コマンドは npm start と入力するか、ブラウザ上の RUN ボタンをクリックするだけで OK です) Azure ポータルで IoT Hub を作成すると、デバイス エクスプローラーという欄がありますので、ここから簡単にデバイスを登録することができます。(下図参照)
私は Free の IoT Hub を作成して、課金を気にせずいつでも使用できるようにしています。


IoT Hub に送られてくるデータを確認したい場合は、Node.js コマンド プロンプト上で、IoT Hub-explorer を使うと簡単です。コマンドは、IoT Hub-explorer monitor-events [ デバイス名 ] –login [IoT Hub の接続文字列 ] です。


Raspberry Pi Web Simulator を実行すると、Node.js コマンド プロンプト上に、下図のようなメッセージが表示されるようになります。とっても簡単に実行できますので重宝しています。


次にちょっと Raspberry Pi Web Simulator のコードを少しイジッテみます。


上の図で示した 1 行を追加することで、圧力のデータも表示されるようになります。
コードを変更してみたあと、再度実行しみると、コンソール上での出力が以下のように圧力情報が追加されているのが確認できます。

Message sent to Azure IoT Hub
>
Sending message: { "messageId": 2 "deviceId" "Raspberry Pi Web Client" "temperature":
28.45128934262562 "humidity": 60.04946264158931 "pressure": 10.332970178041867}
>

次に、リモートからの遠隔操作を試してみます。IoT Hub-explorer で、作成した IoT Hub にログインをしたあと、ダイレクト メソッド (stop) を実行します。実行コマンドはこのようになっています "IoT Hub-explorer device-method (デバイス名) (メソッド名)"
ひな形のコードでは、すでに Start と Stop がメソッドとして定義されていますので、Stop メソッドを IoT Hub 側から実行すると、Web ブラウザ上で点滅していた LED が止まっているのが確認できます。さらに Start メソッドを IoT Hub から実行してあげると、Web ブラウザ上で止まっていた LED が、再び点滅しだすのが確認できます。下の図は実際に IoT Hub から Raspberry Pi シミュレーターにメソッドを実行してみたときの画面になります。


デバイスにメッセージも遅れますよ。コマンド名は、"IoT Hub-explorer send (デバイス名) (メッセージ)" です。実際に実行させてみたときのスクリーン キャプチャを添付します。


あたり障りのないメッセージになりますが、Raspberry Pi Simulator 上で Hello World というメッセージが受信されているのがわかりますね。

DevWire のバックナンバーをご紹介
タイトルタイトルバック ナンバー とっても役に立つ、みんな大好き DevWire のバック ナンバーです。

DevWire バック ナンバー サイトはこちら

Windows Embedded/IoT 販売代理店 耳より情報
東京エレクトロンデバイス
IoT トータルソリューションサイトをオープンしました。エッジ デバイスからクラウド サービスまで、IoT ソリューションの検索も可能です。
http://esg.teldevice.co.jp/iot/

ハンズオン トレーニングを定期開催しています。

各社とも多くのセミナー・トレーニングを開催しております。ぜひご活用ください。

●アヴネット株式会社 トレーニング 社外サイトへ
●岡谷エレクトロニクス株式会社 セミナー/トレーニング情報 社外サイトへ
●東京エレクトロン デバイス株式会社 トレーニング 社外サイトへ セミナー・イベント 社外サイトへ
●菱洋エレクトロ株式会社 イベント・セミナー情報 社外サイトへ

Column
FPGA の記述言語 HDL について今岡工学事務所 代表 今岡 通博
Microsoft は Catapult Project の成果である FPGA の応用として Being などの検索システムを劇的に高速化させたといわれています。

Catapult FPGA Accelerator
Altera Stratix V D5 FPGA with capacity 172k ALMs
https://www.microsoft.com/en-us/research/project/project-catapult/

前回 (4 月号) は CPU との比較で並列化についてお話ししました。今回は FPGA 内部の回路を設計する言語 HDL についてお話しします。HDL は Hardware Definition Language の頭文字でその名のとおり日本語では「ハードウエア記述言語」です。FPGA を内部構成を設計する言語には大きく分けて二つありますが、今回はそのうちのひとつ Verilog-HDL を用いて話を進めたいと思います。これ以外にもメジャーなもので VHDL という言語もありますが、それらについては他のネットの情報や書籍を参考にしてください。

早速その Verilog-HDL で記述した L チカを例に説明していきましょう。L チカとは LED (発光ダイオード) が点滅するプログラムでマイコンなどの入門用によく用いられます。ソフトウエアのプログラミングの世界では「Hello world!」が定番なのによく似ていますね。L チカはマイコンあるいはハードウエアの「Hello world!」といった感じです。因みに L チカは英語圏では Blink と呼ばれています。

一番左の数字は行番号を示しておりソース コードの一部ではありません。これらのソース コードは通常「. v」の拡張子を付けるのが一般的です。

  • 1:module led (out, clk) ;
  • 2:input clk;
  • 3:output out;
  • 4:reg[24:0]count;
  • 5:assign out = count[24];
  • 6:always @ (posedge (clk)) begin
  • 7:count <= count + 1;
  • 8:end
  • 9:endmodule

では早速 1 行目から見ていきましょう。ここではモジュール名を定義しています。開発ツールで指定したプロジェクト名と一いたした名前にしておけばもっとも上くらいの階層のモジュールとなります。C 言語で云えばメイン関数のような扱いとなります。ここでモジュール名は led としました。ここでモジュール名の後のかっこ以下に out と clk というピン名を定義しています。この二つのピンが外部とのインターフェースとなります。2 行目で clk ピンが入力ピンであること、また 3 行目で out ピンが出力ピンであることを定義しています。4 行目では 25 ビット分のレジスターを定義しています。いわゆる 25 ビット分の符号なし整数変数と思ってください。5 行目では先ほど定義したレジスターの最上位ビットを out というピンに接続しています。6 行目は clk というピンの信号が立ち上がった時 bigin から end までに記述された命令を実行します。この場合先ほど定義した 25 ビットのレジスターをひとつずつインクリメントしています。そして 9 行の endmodule をもってこんモジュールは完了します。

clk にシステム クロックを接続し out に LED を接続すると LED が点滅します。この回路でやっていることはシステム クロックは非常に高速でたとえば 50 MHz くらいありますので、そのまま LED に接続しても LED は人間の目には点灯しているようには見えません (実際には 1 秒間に 5 千万回点滅している)。これを人間が点滅していると認識できる速さにシステム クロックを 25 ビット分のカウンターで分周していることになります。

いかがでしたか。L チカ程度のアプリケーションであればソフトウエアで記述するより簡単ですよね。次回以降も FPGA の開発についてもう少し詳しくお話しできればと思います。お楽しみに!

ほっとひと息
「1 周年になりました」DevWire 編集部 加藤 大輔
私が DevWire の担当になってから 1年が経ちました。
ちょうとど 1年前に「数年後には、IoT も「あたり前」で特別なことではなくなるんだろうな」という編集後記を書きました。まだ 1年しか経っていませんがどうでしょうか? 特別なこととは思わないけれど、実感がない。という方が多いのではないかと思います。
どこからどこまでを IoT と呼ぶのか定義するのは難しいですが、知らず知らずのうちに IoT と呼べる何かしらのものに接していると思います。膨大なデータのひとつになっているか、もしくは膨大なデータの分析結果を目にしているか・・・。すでに身近なところに IoT があるのではないでしょうか?
Windows Embedded DevWire に関するお問い合わせはこちら:
kkoedadmin@microsoft.com
 
 


Comments (0)

Skip to main content