スマホにセンサをつなげて、計測データをスマホに送信することができます。
はんだ付けしなくても使えるように Groveセンサ を使えるようにしました。
Groveセンサについてはこちらを参照してください。
日本でセンサ購入する場合、たとえば下記を参照してみてください。
出荷時には、Grove Analogセンサーの値を読み取れるようにプログラムを書き込んであります。Grove AnalogセンサーをA0につなぐことで、スマホと連携することができます。
基板のピンアサイン(コネクタと入出力データの関係)はこちらの写真を参照してください。
センサをA0に接続し、マイクロUSBコネクタをスマホに接続してください
こちらからサンプルアプリをダウンロードすることができます。
アプリを起動して、Waffle基板がAndroidスマホにつながっている状態で、右上の「DISCONNECTED」の部分をタップしてください。接続確認ダイアログが出るので、OKをタップすると、Waffle基板からのテキストデータ受信を開始します。
画面下のタブバーから「Text」を選択すると、受信したJSON形式のテキストデータをそのまま表示します。「Bar Chart」を選択すると、受信した0-1023の値を0-100として表示します。
Androidのソースコードについては、こちらを参考にしてください。
Androidとの連携は、シリアル通信を利用しています。
Waffle → テキストデータ(JSON) → Androidスマホ
WaffleからJSON形式のテキストデータを送信しています。Androidアプリで受け取ったJSON形式のテキストを解析(パース)して、数値を読み取っています。
Waffle基板はArduino互換機です。Arduinoをご存知の方は、Arduinoと同じように使うことができます。
USBでPC/Macにつなぐ際には USB-シリアル変換プラグ が必要となります。
基板は Arduino Duemilanove と同じ構成にしています。オリジナルのプログラムを書き込むには、PC/Mac で Arduino アプリを起動します。
ボードの選択画面で、Arduino Duemilanove を選択してください。
シリアルポートの変更も忘れずに!(写真は一例になります。番号はお手持ちの基板によって異なります。)
回路図はこちらです。構成は Arduino Duemilanove と同じです。
出荷時には、A0コネクタの値をスマホへ送信するプログラムを書き込んでいます。Arduinoのソースコードについては、こちらにあります。いろいろ書きこんだ後で、プログラムを出荷時に戻したくなった場合は、こちらのコードを書き込んでください。
なお、本コードはArduinoJsonライブラリを使用しています。Arduino IDE上で、スケッチ->ライブラリをインクルード->ライブラリを管理...をクリック。すると、ライブラリマネージャが起動するので、ArduinoJsonライブラリを検索し、インストールしてください。
Let's tinkering!
Keisuke SuzukiさんのPocketDuino/Physicaloidを参考にしています。
Waffle is released under the Apache License, Version 2.0.