たまたまツイッターでタイムラインに流れてきた
「エナジー ハーベスティング設計入門」ワークショップはじめました!なんと、ご参加者全員に開発キットをプレゼント☆この機会に、ソーラー パワー駆動のIoTデバイスを設計してみませんか? http://t.co/qq0pYyFwzy pic.twitter.com/yFNLazCp3J
— 日本サイプレス(公式) (@NipponCypress) 2015, 8月 25
に行ってきました。
川崎はちょっと家から遠くて急遽午後の部にしてもらって、てくてくと1時間半かけて電車で行きました。
Energy Harvesting PMICs
http://www.spansion.com/products/analog/energy-harvesting-pmics/Pages/pmic-eh.aspx
Solar-Powered IoT Device Kit | Cypress
http://www.cypress.com/documentation/development-kitsboards/solar-powered-iot-device-kit
どんなボード?
簡単に言うと、センサーの類とBLEをソーラーパネルの電力で賄って通知する、というボードです。他のボードと違うのは、供給するのはソーラーパネルに限らず熱伝導や振動を使った「比較的不安定な電力供給源」をサポートしているところです。蓄電器にためて置いたり、ボタン電池を使うのではなくて(使うこともできるけど)、ソーラーモジュールから低い電流を内蔵のセラミック容量(100uF)にため込んで、間欠的に温度センサーなどを読み取ってBLEで通知できます。ってのがミソ。確かに、ボタン電池でも1年以上持つけど、しばらく置いておくと電池は無くなるわけだし、ビーコンのように置きっぱなしの場合にはいつ電池が切れたかわかりづらいという点もあって、そうなるとソーラーパネルを利用して蛍光灯レベルのでの低い電流でもセンサーが動いてBLEが通知し続けることができる、っては需要が多そうだなというところです。その分、工夫が必要なんですが。
ワークショップなので、こんなデベロッパーキットを使って手を使って実験しました。
PMIC(Energy Harvesting Power Management IC)が載せてあるボードに、ソーラーモジュールをくっつけて、あちこちに持って行くと、電波強度/温度/湿度センサーが動きます。
ソーラーパネルを使う
諸々のドライバーのインストールがあるのですが、こんな風に小さなソーラーパネルから給電して、PC側でBLE通知を受けることができます。
Windows デスクトップのサンプルアプリが付いていて、電波強度≒センサーとの距離、温度/湿度を取得できます。
電力消費を計算する
このワークショップで面白いところは、実際にテスターとオシロスコープを使って電力消費量を計算するところです。ソーラーパネルでは5.5V程度の電流が流れるのですが、電流のほうは70uA程度しか流れない。オンボードのセラミック容量コンデンサ(100uF)を使って一時的ため込むわけですが、あまり連続して湿度/温度センサーから読み取りしてしまうと、BLE通知をするための電力が足りなくなるという現象が発生するんです。このため、「待ち」の部分を長くしないといけないし、実際には湿度センサー読み取りと温度センサー読み取りの間も時間を置かないと給電ができない、という仕組みを学んでいきます。
オシロスコープって初めて使ったのですが、ああなるほど、こういう風に使って計算するのかという実地が解かりました。
手元でキャプチャをするのは、ひとつのセンサーしかないのですが、会場では30名ぐらいの講習のセンサーを一気に取得できるというデモもありました。温度/湿度センサーはI2C通信しているそうなので、加速度センサーも積むと(GPIO経由で接続できる?)と傾きとかもとれるかも。ボタン電池ではないため、常時供給のように頻繁に送信することはできません。実際、BLE対応なので用途的にも10秒間隔とか比較的長い間隔で通知を飛ばすことになります。あとは「待ち」の部分をうまく調節するとか、外部コンデンサを積んで容量を増やして蓄電させるっていう方法になりますね。
USB-BLE Bridge は必須?
BLE Smartなのだから、iPhoneから BLExplr を使った接続できるのでは、と思ったので試してみました。
電波強度だけ取れているような取れていないような、ビーコン要素だけならばこれでできそうな感じ。温度/湿度センサーの読み取り関係は、Bridge が必要なのかな。このあたりは、別途調べるか、問い合わせしてみましょう。
そんなわけで、ポータブルなオシロスコープが便利だったので、購入欲が再燃中。