0
.NET Gadgeteer で IoT
瀬尾佳隆 (@seosoft)
Microsoft MVP for Visual C#2014/08/23 技術ひろば.net
自己紹介
瀬尾 佳隆 (せお よしたか)
MVP for Visual C# (Jan 2009 – Dec 2014)
組み込みと SharePoint / Office 365 が好き
 AKB48G とディズニーリゾートと劇団四季...
アジェンダ
.NET Gadgeteer 開発
.NET Gadgeteer をネットワークに接続する方法
.NET Gadgeteer をクラウドに接続する方法
Project Siena でクライアント開発
「“IoT” とは何か...
今日の機材
今日の機材
メインボード
WiFi
温度・気圧
センサー LED ディスプレイ
可変抵抗
ボタン
.NET Gadgeteer 開発
.NET Micro Framework とは
http://www.microsoft.com/ja-jp/dev/embedded/default.aspx
.NET Micro Framework とは
マイクロソフトの超小型機器向けファームウェア
.NET Framework のサブセット
Visual Studio で組込み開発できる
.NET Gadgeteer とは
.NET Gadgeteer とは
モジュールを組み合わせて組込み開発を行う
プラットフォーム
Visual Studio でビジュアル開発
モジュールのインスタンス化や
初期化コードが自動的に生成される
デバイス 1個あたりのコストは...
デバイスの入手方法
GHI Electronics 社のサイトへどうぞ
日本では デバイスドライバーズ社が代理店
https://www.ghielectronics.com/
http://tinyclr.jp/
残念ながら 6月に...
開発環境の入手方法・構築方法
GHI Electronics のサイトで以下をダウンロード
https://www.ghielectronics.com/support/netmf
Visual Studio 2012 (2013 ではな...
基本的な開発の手順
1. VS で新規プロジェクトを作成
2. メインボードとモジュールを
デザイナー画面に配置
3. コーディング
4. デザイナー画面通りに
デバイスを結線
5. PC とデバイスを USB 接続
6. アプリケーションの配...
.NET Gadgeteer を
ネットワークに接続する方法
無線 LAN への接続
1. デバイスをオープンして
DHCP 有効化
2. アクセスポイントを探す
3. 接続する
WebServer クラス
センサーデータ公開には WebServer クラスが便利
1. リクエスト受信時のイベントハンドラーを定義
2. 応答するアドレスとポートとを指定して Webサーバーを起動
WebServer のレスポンス
1. ContentType を指定
2. Byte[] 型の Body を作る
3. Responder.Respond メソッドを呼び出す
.NET Gadgeteer を
クラウドに接続する方法
Azure Mobile Services の利用
Azure Mobile Services 対応のライブラリ
https://github.com/nickharris/
Microsoft.Azure.Zumo.MicroFramew...
MobileServiceClient
AppUrl と AppKey
IMobileServiceEntity
IMobileServiceEntity を
実装したクラスを定義
AMS にデータ送信
1. データをまとめる
2. GetTable().Insert()
メソッドを呼び出す
デバイスの時刻合わせ
AMS に登録したデータ
Project Siena でクライアント開発
Project Siena
Project Siena
Windows 8 アプリ開発用の Windows 8 アプリ
IT Pro がメインターゲットの開発ツール
デベロッパーが “サクッと” お手軽ツールを作るのにも使える
Visual Studio の代替/...
Project Siena のデータソース
Sienaで AMS を利用する際の注意点
zz_config という名前のテーブルが必要
Key 列と value 列を追加する(型はどちらも string)
key には “table” という固定値
value には Siena ...
zz_config の登録例
Siena でデータソースの追加
Siena のデザイン画面
まとめ
まとめ
.NET Gadgeteer ならば簡単に IoT を始められる
簡単なシステムなら WebServer クラスを使って
センサーデータを公開できる
Azure Mobile Services を使ってクラウド対応
Azure....
参考情報
ファームアップ時の USBバージョン
メインボードのファームウェアのアップデートでは
USB 3.0は使えません
対応方法 1
PC の BIOS で一時的に USB 2.0にする
対応方法 2
USBハブを中継する
比較的安いハブ...
ユニバーサルプレートがあると便利
タミヤのユニバーサルプレート
があると便利
(通販が確実)
ホームセンターで
ネジ、ナット、スペーサーを
用意する
Upcoming SlideShare
Loading in...5
×

.Net GadgeteerでIoT

586

Published on

「今どきの入出力を考える会(初心者歓迎)~ 技術ひろば.net 2014年8月 」(2014年8月23日開催)
セッション資料

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
586
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
10
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Transcript of ".Net GadgeteerでIoT"

  1. 1. .NET Gadgeteer で IoT 瀬尾佳隆 (@seosoft) Microsoft MVP for Visual C#2014/08/23 技術ひろば.net
  2. 2. 自己紹介 瀬尾 佳隆 (せお よしたか) MVP for Visual C# (Jan 2009 – Dec 2014) 組み込みと SharePoint / Office 365 が好き  AKB48G とディズニーリゾートと劇団四季も好き ブログやってます  http://yseosoft.wordpress.com/
  3. 3. アジェンダ .NET Gadgeteer 開発 .NET Gadgeteer をネットワークに接続する方法 .NET Gadgeteer をクラウドに接続する方法 Project Siena でクライアント開発 「“IoT” とは何か?」については話しません 用語自体には深入りしません(最近、バスワードっぽいし)
  4. 4. 今日の機材
  5. 5. 今日の機材 メインボード WiFi 温度・気圧 センサー LED ディスプレイ 可変抵抗 ボタン
  6. 6. .NET Gadgeteer 開発
  7. 7. .NET Micro Framework とは http://www.microsoft.com/ja-jp/dev/embedded/default.aspx
  8. 8. .NET Micro Framework とは マイクロソフトの超小型機器向けファームウェア .NET Framework のサブセット Visual Studio で組込み開発できる
  9. 9. .NET Gadgeteer とは
  10. 10. .NET Gadgeteer とは モジュールを組み合わせて組込み開発を行う プラットフォーム Visual Studio でビジュアル開発 モジュールのインスタンス化や 初期化コードが自動的に生成される デバイス 1個あたりのコストは高い 少数デバイスのソリューションやプロトタイプで利用するべき 簡単に始められるので、評価や自習には非常に有用
  11. 11. デバイスの入手方法 GHI Electronics 社のサイトへどうぞ 日本では デバイスドライバーズ社が代理店 https://www.ghielectronics.com/ http://tinyclr.jp/ 残念ながら 6月にいくつかのモジュールが製造中止 通販サイトに出回ったモジュールを買うならお早めに
  12. 12. 開発環境の入手方法・構築方法 GHI Electronics のサイトで以下をダウンロード https://www.ghielectronics.com/support/netmf Visual Studio 2012 (2013 ではない) VS2013と共存可能 Express Edition 利用可能 NETMF and Gadgeteer Package 最新のバージョンは 2014 R2 ダウンロードするには GHI に無償のユーザー登録が必要 ファームのアップデートには USB 3.0 は使えないので注意 対応方法を資料の末尾に
  13. 13. 基本的な開発の手順 1. VS で新規プロジェクトを作成 2. メインボードとモジュールを デザイナー画面に配置 3. コーディング 4. デザイナー画面通りに デバイスを結線 5. PC とデバイスを USB 接続 6. アプリケーションの配置とデバッグ
  14. 14. .NET Gadgeteer を ネットワークに接続する方法
  15. 15. 無線 LAN への接続 1. デバイスをオープンして DHCP 有効化 2. アクセスポイントを探す 3. 接続する
  16. 16. WebServer クラス センサーデータ公開には WebServer クラスが便利 1. リクエスト受信時のイベントハンドラーを定義 2. 応答するアドレスとポートとを指定して Webサーバーを起動
  17. 17. WebServer のレスポンス 1. ContentType を指定 2. Byte[] 型の Body を作る 3. Responder.Respond メソッドを呼び出す
  18. 18. .NET Gadgeteer を クラウドに接続する方法
  19. 19. Azure Mobile Services の利用 Azure Mobile Services 対応のライブラリ https://github.com/nickharris/ Microsoft.Azure.Zumo.MicroFramework ZIPファイルをダウンロード 解凍したプロジェクトを .NET Gadgeteer ソリューションに追加 Gadgeteer プロジェクトで参照設定
  20. 20. MobileServiceClient
  21. 21. AppUrl と AppKey
  22. 22. IMobileServiceEntity IMobileServiceEntity を 実装したクラスを定義
  23. 23. AMS にデータ送信 1. データをまとめる 2. GetTable().Insert() メソッドを呼び出す
  24. 24. デバイスの時刻合わせ
  25. 25. AMS に登録したデータ
  26. 26. Project Siena でクライアント開発
  27. 27. Project Siena
  28. 28. Project Siena Windows 8 アプリ開発用の Windows 8 アプリ IT Pro がメインターゲットの開発ツール デベロッパーが “サクッと” お手軽ツールを作るのにも使える Visual Studio の代替/後継ではない 対応しているデータソースが多いのが特長 Azure Mobile Services にも対応
  29. 29. Project Siena のデータソース
  30. 30. Sienaで AMS を利用する際の注意点 zz_config という名前のテーブルが必要 Key 列と value 列を追加する(型はどちらも string) key には “table” という固定値 value には Siena から参照したいテーブル名
  31. 31. zz_config の登録例
  32. 32. Siena でデータソースの追加
  33. 33. Siena のデザイン画面
  34. 34. まとめ
  35. 35. まとめ .NET Gadgeteer ならば簡単に IoT を始められる 簡単なシステムなら WebServer クラスを使って センサーデータを公開できる Azure Mobile Services を使ってクラウド対応 Azure.Zumo.MicroFramework を利用 AMS のクライアントとして Project Siena を 覚えておくとよい(かも)
  36. 36. 参考情報
  37. 37. ファームアップ時の USBバージョン メインボードのファームウェアのアップデートでは USB 3.0は使えません 対応方法 1 PC の BIOS で一時的に USB 2.0にする 対応方法 2 USBハブを中継する 比較的安いハブが 簡単に入手可能 アプリ転送やデバッグ時は USB 3.0でも問題なし
  38. 38. ユニバーサルプレートがあると便利 タミヤのユニバーサルプレート があると便利 (通販が確実) ホームセンターで ネジ、ナット、スペーサーを 用意する
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×