クラウド―Arduino接続について
Upcoming SlideShare
Loading in...5
×
 

クラウド―Arduino接続について

on

  • 3,550 views

 

Statistics

Views

Total Views
3,550
Views on SlideShare
3,549
Embed Views
1

Actions

Likes
7
Downloads
8
Comments
0

1 Embed 1

https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    クラウド―Arduino接続について クラウド―Arduino接続について Presentation Transcript

    • クラウド-Arduino接続について 吉田 研一@ECCコン専 ものアプリハッカソン対策 参加する方へ (私は見守っています^^)
    • インターネット to ガジェット• IoT – Internet of Things – もの・コトのインターネット• M2M – Machine to Machine – 機械と機械がやりとりする• どちらも最近のキーワード。そんなに Buzzってないのが救いか。
    • アピールポイント(多分)• 色んな「モノ」がインターネットを通じ てやりとりする可能性を感じさせること• つながるだけではダメ• サービスと連動する面白さ – アイデア自体、ネタ – UX/UI – 仕組みだて(システム、フロー)• モック、プロトタイプのレベルで実装し、 コンセプトをアピール(でいいのか な?)
    • アイデア、コンセプトが重要だろうけどハードウェアが何ができるかがはっきりしてない人も多いハズハードウェアでできることがわからないと、そこのところは手慣れたWebサービスなどのようには行かない例えば、英語をしゃべるときに語彙(ボキャブラリー)が多いほうが表現が豊かになるとかで、ちょっとハード寄りの話を説明します
    • 接続形態 2つ Arduino + WiFi シールド クラウド クラウドArduino ADK Android
    • • Fritzing 回路図ソフトだがプレゼン時にも使える • http://fritzing.org/download/ エクスポートで画像ファイルに落とせばOK
    • 2つのうち本質的なのは• IoT, M2Mにとって本質的なのはこっち…Arduino + WiFi シールド クラウド WebClient WebServer Twitter/OAuth• ガジェット(や家電など)+通信のスタイル
    • でも現状では• Androidが介在するとさまざまなバリエー ションが可能となり、こっちのほーが使 える クラウドArduino ADK ADK Android HttpConnection MicroBridge GCM Bluetooth WebSocket Wi-Fi Twitter/OAuth NFC 現状、ある種ねじれの状況にある
    • まず先にArduino Wi-Fi接続手法• ArduinoがWebClient• ArduinoがWebServer• ArduinoがTwitter• ArduinoがCosmにデータをPOSTする クラウド
    • サンプルソースがあります。 • ライブラリ https://github.com/arduino/wifishield • Arduino IDEにて • [ファイル]メニュー →[スケッチの例] →[Wifi]サンプルソースを直で見るhttps://github.com/arduino/wifishield/tree/master/libraries/WiFi/examples
    • Arduino Wi-Fi接続手法1• ArduinoがWebClient – 定期的にクライアントPullをかける方式 – 決められた間隔の間はリアルタイムに処理が 行われない。 – 間隔を短くするとリアルタイムに近くなるが、 頻繁なアクセスが実用上好まれない。 – プロトタイプレベルの実装では最適かも • Webエンジニアも扱いやすい • つながることだけ確認して、アイデアをプレゼン でふくらませるとか(そういうのはアリかな?)
    • ArduinoがWebClient• 日経Linux 2012年8月号 p.97 赤外線リモコンを操ろう 格安ボードで室温に反応 – 鳥人間 久川真吾さん• Tomcat LAMPでイケる!• PostgreSQL• Nagios 監視サーバ – ブラウザからのコマンドをDBに登録(INSERT) – ArduinoがWebにアクセスして命令を受取る • SELECT文の結果を表示するWebページのHTMLを取得
    • Arduino Wi-Fi接続手法2• ArduinoがWebServer – LAN内でブラウザなどでアクセス(今回は不 向き)• ArduinoがTwitterをする – 認証について下調べが必要。Android経由がベ ター?• ArduinoがCosmにセンサー情報をPOST – CosmのAPIで気温・湿度などArduinoからの データを簡単にグラフ化 – ガイガーカウンタのプロジェクトなども有り https://cosm.com/
    • WebClientでPOSTメソッド• boundio APIで電話をかけるとか http://boundio.jp/ WebAPIから電話をかけ るクラウドサービスを使う – 応用例)おーいおまえねむっTEL(ただし mbed)
    • • I/O 2013年1月号お手軽マイコンボードで自作ガジェット「mbed」第10回「クラウドサービス」と連携した工作• じぇーけーそふと 勝 純一さん• http://jksoft.cocolog-nifty.com/blog/tel.html
    • Webサービス間連携サービス• http://www.botize.com/ – 活用出来れば面白いかも(他にもないかな?) 応用例)電子回路のセンサーからTwitterまで http://www.studiokura.com/blog/?p=2627
    • Arduino-クラウドまとめ• POSTメソッドでArduino(Androidでも良い) からデータを送信(クライアントPULL)• LAMP、APサーバなどこなれたサーバで運用 可能(AWSなどでサクっと構築しといて…)• Web APIをもつサイトへの接続も可• クエリ文字列でGETメソッド送信も可(更に ラク)
    • Arduino-Android-クラウド接続手法• Arduino-Android – 有線:USBケーブル • ADK, MicroBridge, USB Host API – 無線:Bluetooth,(WiFi) これが詳しいです^^ クラウド
    • Arduino-Android-クラウド接続手法• Android-クラウド – Http…HttpClient, HttpUrlConnectionクラス – Twitter…Twitter4Jライブラリ – GCM…サーバPUSH(1台のみ) – WebSocket…サーバPUSH(ブロードキャスト 可) – BaaS利用 クラウド
    • Arduino-Android-クラウド接続資料• 「Android×Androidでつくる クラウド連携デバイス」• 伊藤元 @itog – Http(Herokuへの接続) – Twitter – ParseによるBaaS利用 269ページ(著者紹介のページ)をご覧ください^^
    • Arduino-Android-クラウド接続資料 WebSocket編1• Software Design 2012年8月号• Androidエンジニアからの招待状• 第28回プロトタイプの作成にAndroidを使 おう• 渡辺知男 @tomo_watanabe – ADKとWebSocketを使い、ブラウザからArduino をリモート・コントロールしている
    • Arduino-Android-クラウド接続資料 WebSocket編2• 日本Androidの会_秋葉原支部_ロボット部_第 5回勉強会資料.pdf – https://docs.google.com/open?id=0B851b3sD_KtxQm F0THVEVkN1TzA• WebSocketドロンくんソースコード (Android+Node.js) – http://sourceforge.jp/projects/dronkunpro/releases/? package_id=13164 – WebSocketライブラリはsocket.io‐java‐client(Gottox 版)を採用前回のデモ(コーヒーメーカON/OFF)はこれを書き換えたものです。
    • 実装の手間や難しさ• AndroidアプリはArduino接続の実装とクラ ウド接続の実装コードが必要• しかも、最初のスライドにもあるとおり、 IoT, M2M的には中間的な介在物で本来的で はない。• 技術的な実装だけでは「余分」な印象を 受ける。• Androidが介在する「理由」を表現する必 要がある(技術的な部分を除いて)。
    • なぜAndroidがあるのか 一つの主張(の例)• 例えば、中間に優れたUX/UIがあるということ を取り上げてみる• M2Mは人が介在しない仕組みとなるが、イン ターネットに繋ぐ場合、モノとモノとの間に 人が関わり、人が判断することも重要と思う• IoTの一手法として人がどう関わるかは大事 クラウド
    • なぜAndroidがあるのか 一つの主張(の例のつづき)普段常に持ち歩くAndroidが、モノとクラウドとの間に立つことで、ガジェットと人とクラウドの関わりをより豊かにするものになるのではないか。とゆー提案とか(をデッチあげて^^;みる)Androidを使う場合、作り上げるモノにその意味をデザインすると共感を得られるのではないかと思います。
    • • 意味をデザインする – ガジェット、モノを見ただけで理由がわかる – でも、後から一声かける(=発表したりす る)だけで意味が現れたりもする – 使う人によって新たな意味が立ち現れること もあるので、予測・誘導し過ぎない(一概に は言えないけど) – ノリとフィーリングと勢いをうまく使う
    • ちなみにこれは今回のではOK? • デモします。英単語発音チェックロボGoogle音声認識を使って英単語の発音を検査します。 緑ボタンで進行 赤ボタンでやり直し発音が正解ならAndroidがうなづきます。間違えばAndroidが首を振ります。5問の解答結果に応じて色々動きます。クラウド:Google音声認識サービスArduinoとはMicroBridge接続多分、これだと画面やサーボモータの動きで、先生と発音を勉強している所作を演出したりとか…になるかな。 以上