本システムでは、環境値と頭痛の記録、分析、対策を行うことができます。
記録
環境値の記録
OMRONの環境センサで測定した値を記録します。
OMRON環境センサ →(BLE)→ obniz Board 1Y →(Web API)→ kintone
の流れでobniz Board 1Yを経由してkintoneに記録されます。
なおOMRONの環境センサでは以下の値が取得できます。
温度・湿度・気圧・照度・騒音・UV・電圧(電池)
頭痛には基本的に気圧しか環境要因とならないと思っていますが、せっかく値が取得できるのでその他の値も保存(記録)できるようにしました。
頭痛薬服薬の記録
頭痛薬を飲んだタイミングを記録します。
MESH明るさブロック/動きブロック →(BLE)→ obniz Board 1Y →(Web API)→ kintone
MESHの明るさブロックを用いて、薬を入れた箱が開くと頭痛薬飲んだ判定としその日時を記録します。 箱は最初100均のものを利用していましたが、その後fusion360で既存データを改造して作成しました。
改造元とさせていただいたデータ(ありがとうございます!) https://www.thingiverse.com/thing:4919057
ちょうどMESHがはまる大きさにした上で2種類の記録ができるようにしました。3Dプリンタで出力しました。フィラメントはPETGです。
完成〜お薬ケース💊
— とり子 (@siroitori0413) November 25, 2022
左が頭痛時、右が頭痛以外の鎮痛時。
それぞれMESHでカウントします。 pic.twitter.com/kCWDse84h1
2種類の記録については以下です。
- 頭痛時の服薬
- 鎮痛時(頭痛以外)の服薬
頭痛時の服薬はそれぞれMESHの明るさブロックと動きブロックで判定させました。
- 明るさブロック:明るくなった時に服薬判定
- 動きブロック:ふたが開いた(動いた)時に服薬判定
薬を取り出すだけで自動的に記録されるのでとても便利です!
分析
kintoneでグラフ表示を行って分析ができます。
kintone標準のグラフ機能では様々な要素を一気に表示できなかったので、Chart.jsライブラリによるカスタマイズを行いました。
最初のグラフでは、気圧・頭痛(=頭痛薬服薬タイミング)・頭痛予測(後述します)がどうなっているかグラフで確認できます。 頭痛タイミングは、わかりやすいように棒グラフそれ以外は折れ線グラフで表示させました。
「▼すべて表示」リンクを作って広げられるようにしました。
■ 気圧と頭痛のグラフ
→ このときはどうも予測が頭痛とリンクしておらず…気圧頭痛ではなかった可能性が高いです。
グラフの下部に選択期間内の各回数を計測して表示させるようにしました。
- 服薬:服薬した回数
- アロマ:アロマが焚かれた回数=頭痛が起こると推測した回数
- 頭痛推測マッチ:頭痛が起こると推測した期間内に実際に頭痛が起こった(頭痛服薬した)回数
- 頭痛推測アンマッチ:上記推測期間外に頭痛が起こった回数
やはりなかなか推測と頭痛がマッチしませんでした。 推測判定の調整が必要です。
■ 全部入りグラフ
対策
頭痛が発生するのは気圧が下がるタイミングであることがわかっているので、気圧が3回連続で下がったタイミングで「頭痛予測の判定」として、頭痛予防に自動でアロマを焚くことにしました。
また逆に3回連続で気圧が上がったタイミングでアロマをOFFとしました。
obniz →(Web API)→ Amazon Smart Plug
Amazon Smart Plug はAlexaアプリからしか操作できないものですが、アドバイザーの中学生memetan(我が子)がプログラムから操作できるものを作ってくれたのでそれを利用しました。
▼ memetan作 Amazon Smart Plug用 操作ライブラリはこちら https://github.com/MeemeeLab/alexa-smart-plug
良いですねー。頭痛ではないのですが気圧変化で調子が狂う事が多いので、自分も気圧センサーで毎日ロギングしてます。
頭痛以外にも拡げていけたらなと思います♪
かずさんご覧くださりコメントありがとうございます!嬉しいです。
この界隈、環境ロガーな方多いですねw
気圧の不調、ありますよね〜。お互い良いデータ分析ができよう、楽しんでがんばりましょう。
薬を飲んだタイミングでデータ収集してくれるため、無意識にデータが貯まる仕組みがとても良いと思いました。頭痛対策として、Amazon Smart Plugでアロマを炊く点や、MESHの光センサ・動きブロックで頭痛薬、頭痛以外の鎮痛薬を判断している点がとても面白いですね!
kintoneの活用の仕方として、データを貯めるだけでなく、グラフをカスタマイズしてより見やすくしていた点を評価し、kintone賞に選ばせていただきました。