ノンプログラミングで充電システム
Androidは充電しっぱなしでも大丈夫?
自宅で、ほとんど使わないAndroidタブレットを充電しっぱなしにしています。これが原因かどうかはっきりしないのですが、内蔵電池が膨らんできて2回交換の憂き目にあっています。
このタブレットは、壁につけてあり、たまに調理のレシピを見たりや音楽再生でつかっているだけで、ほとんどの時間はスリープ状態になっています。
タイマーによる充電はいまいちだった
さすがに3回目の電池交換は避けたいので、充電しっぱなしは止めて、市販のタイマーで定期的に充電するしくみにしていました。しかし、使用時間がバラバラなので、結局、必要な時に電池切れになっていたり、どうもいまいちでした。
理想は一定残量になったらフル充電のシステム
TaskerというAndroidの状態変化をトリガーとして、アクションを設定できるアプリがあります。Taskerは以前から使っているのですが、ふと思いついて、電池関係のトリガーをみてみたところ、残量や充電完了の検知ができることがわかりました。
トリガーさえ検知できれば、あとはこっちのものです。IFTTTのWebhookとスマートプラグでこの理想のシステムができあがります。
Taskerの設定
TaskerはUIが頻繁に変わるので、現時点でのメニュー構成だけを記述します。
充電開始
[状態]-[電源]-[バッテリー残量]で、0から30までを指定します(残量が0~30%の範囲になったら発行と言う意味です)。アクションは、[ネット]-[HTTPリクエスト]で、POST方式を選択、下記のようなURLを入力します。
https://maker.ifttt.com/trigger/{EventName}/with/key/<key>
充電終了
[電源]-[電池が満充電になった]。アクションは、充電開始と同じです。(URLのEventNameは異なりますが)
IFTTTのレシピ
IFで、Webhook。THENで、スマートプラグのサービスの電源のONまたはOFFを指定します。
以上のように、これでプログラムミングなしで充電システムが構築できました。
おまけ
TaskerやIFTTTをご存じない方も多いと思います。そういった方には、なにがなんだかさっぱりわからない記事だったと思いますが、ご容赦ください。そんな方向けに、ちょっとだけ解説をさせていただきます。
TaskerはAndroidの無料アプリです。Android内で起きるさまざまな変化(今回なら電池残量の変化)をトリガー(引き金)をキャッチし、何か別な動作をさせるためのものです。この一連の設定をタスクと呼び、複数のタスクを登録、動作させることができます。
プログラミングするよりはるかに簡単ですが、一般の方にはとっつきにくいのは否定しません。
IFTTTは、Taskerのネット版みたいなものです。これはネット上のサービスで無料でも使えます(制限があります)。トリガーにあたるネットサービスを指定し、別なネットサービスを動作させます。この一連の設定をレシピと呼び、複数のレシピを登録、動作させることができます。
自分でネットサービスを構築するより、はるかに簡単ですが、一般の方にはやはりとっつきにくいのは否定しません。
Webhookは、先のように、{EventName}と<key>を加えた、単なるURLです。このURLを、プラウザに入力すれば、レシピを実行できます。{EventName}は、レシピごとに自分で決めます。<key>は、IFTTTのアカウントごとに発行される鍵です(だから公開してはいけません)。
スマートプラグは、通信機能をもった電源スイッチです。wifiに接続して使います。On/Offは手動に加え、メーカーのスマホ用アプリや、IFTTT、スマートスピーカーから行えます。
いかがだったでしょうか?。興味をもたれた方は、ぜひ、Myサービスづくりにトライしてみてください。