UbuntuをインストールしたBeagle Bone Blackもしばらく放置していました。Connected Hardwareな感じが薄れますが、IoTも最初はLinuxが動くマシンを使うと敷居が低く入りやすいです。そこでBeagle Bone BlackをIoTのConnected Hardwareとして使っていこうと思います。まずは良い事例やチュートリアルがないか調べます。
参考サイト
SensorTagとBluetooth LE使ったサンプルをいくつか探しました。
- BlueMix Internet of Things Workshop with Texas Instruments BeagleBone and SensorTag
- BeagleBone with SensorTag
- Bluetooth Low Energy on BeagleBone Black
- Using DevOps Tools to Monitor a Polytunnel
IBM IoT FoundationのレシピはチュートリアルのページとBluemixが連携しているので、アカウントを持っている人にはとても便利な仕組みです。こういったレシピは最近よく見かけますが情報共有にとても有効です。Riemann+InfluxDB+Grafanaの組み合わせは気に入っているので、Raspberry Piを使ったビニルハウス監視を参考にしてみます。
デバイス側の準備
Beagle Bone BlackにはタイプAのUSBポートが一つしかありません。現在は無線LANドングルを挿して使っています。SensorTagとBLEで通信するためUSBポートを空けたいので、インターネット接続はWindowsやOSXとUSBシリアル接続経由で行います。USBシリアル接続はBeagle Bone Blackの電源供給も兼ねるので開発用途には便利ですが、単独で使えないので設置場所が限られてしまいます。とりあえずSensorTagとBLEの練習用です。
Ubuntu 14.04.1のインストール
現在はBeagle Bone BlackにUbuntu 13.10をインストールしているので、新しいイメージを再インストールします。
SensorTagの購入
Texas InstrumentsのTI Storeから、SensorTagを購入します。送料無料というブログもありましたが、今購入すると送料は$20.00かかります。FAQのWhy are you now charging shipping and handling?によると送料無料はコストに合わなくなったのでやめたそうです。合計$45.00でした。
Bluetooth LE USBドングルの購入
Raspberry PiやBeagle Bone Blackで実績があるらしい、PlanexのBT-Micro4をAmazonから購入します。1,343円です。2015-03-20まで「ビデオレンタルで使える200円クーポンプレゼント」のキャンペーン中です。
バックエンド側の準備
DIYの場合
今のところIoTデータストアにはInfluxDBにする予定です。以前用意したRiemann、InfluxDB、Grafana用のDockerコンテナを使います。
クラウドサービスを使う場合
PubNubのブログからfreeboardをダッシュボードに使ったサンプルを見つけました。
PubNubもfreeboardもFREEプランがあるので、サーバーサイドは自分で構築しなくても使えそうです。