この記事はM5Stack Advent Calendar 2018の15日目の記事になります。
はじめに
冬の作業のお供はあったかい飲み物なのですが、冷めたお茶などを電子レンジで温めなおした際に、少々あたためすぎたりします。
で、冷めるまでと思って作業をしていたら、いつの間にか飲み物のことを忘れて覚めすぎていた ⇒ 振出しに戻る ってことがままあります。
これを防ぐ方法をM5Stackで簡単に実現する方法を考えてみます。
実現方法
最近、M5Stackから続々とGROVE互換インターフェイスのユニットが発売されています。その中に、赤外線をつかった非接触温度センサーユニットである、NCIR Unitがあります。
これをM5Stack Fireに取り付ければ簡単に物体の表面温度を測ることができます。
M5Stack FireとNCIRユニットはレゴで簡単に取り付けられますので、ささっとデバイスが作れてしまいます。
これでコップの液体があるあたりの表面温度を観測しておけばコーヒーの冷めぐわいもわかるかと思います。
アプリケーション
M5StackにNCIRユニットから定期的に取得した値を表示します。センサーからは環境温度と物体温度が取得できます。[A] が環境温度(Ambient temperature)で、[O]が物体温度(Object temperature)です。
次に、Aボタンを押すことで、現在の物体温度を目標値として保存します。
Bボタン/Cボタンを押すことで、保存した目標値を±1℃ずつ変更させることができます。
値を決めたら、再度Aボタンを押すことで観測開始となります。
現在の物体温度が目標値を下回った際に、ブザーを再生させます。
これで、飲み物が覚めすぎる前に気づくことができます。
作成したコードはこちらになります。
センサーからの値取得は、AdafruitのMLX90614ライブラリを使用し、Platform I/Oを使って開発しています。
最後に
実際にコップを測定する場合、M5Stackの固定が問題になりますが、今回は100均の紙粘土を使って対応しました。
実際の様子はこちらになります。
実際につくってみると、いろんなものを測りたくなってきました。やはり、簡単に組み立てられるのがいいですね。
今後は、非接触温度センサーの使い道をいろいろ考えてみたいと思います。