まとめ
20回分の投薬まで対応する薬剤ディスペンサー。
このツールはNodeMCU(ESP-12)を使用しています(C++モード)、つまり、主プロセッサとしてeps8266を使用しているのです。
この安価な小さなボードは、ウェブサーバーを稼働でき、これは投薬時間の設定に使用され、将来的には時間同期にインターネット接続が使用される可能性があります。私のアプリケーションでは、毎日異なる時間に投薬が開始されるため、厳密な時間は必要ありません。
動きは、安価な28BYJ 5VDCステップモーターとULN2003ステッピングドライバーで実現されています。右位置用の光センサーが搭載されています(キャリアホイールには間隔を空けて特別なシリンダーが印刷されています)。即時データの表示には0.96インチのI2C 128X64モノクロOLEDディスプレイが使用されています。
私は3*並列18650スクラップノートパソコンのバッテリーとTP4056/microUSB充電器(写真付き)を使用しています。別の3.7V以上の電源(NodeMCUからVinに)に置き換えることも可能です。バッテリーは必要ありません。これは「超低消費電力デバイス」ではないものの、充電なしで5日以上稼働し、ディスプレイは常にオンのままです。
コントロールはウェブサーバーでも、1つのボタンでもでき、そして表示されます。
ボタンは12 mmとナットのどちらでも可ですが、押しやすい方が良いと思います。私はすでにそれを交換しなければなりませんでした。
表示されるのは、投薬量、その日のシーケンス番号、そして次回の投薬までの時間です。
短くボタンを押すと、1日の投薬順序に従って次の投薬に移ります。これは、対象者が睡眠時間が不規則であるため、異なる時間に投薬を開始できるためです。
ボタンを5秒間押すと、完全な展開が実行され、0の位置に戻ります。
ボタンを30秒間押すと、ネットワーク設定の再起動が実行されます。
このデバイスは、Wi-Fi経由でOTAアップロードが可能です。
投薬タイミングは数分のシーケンスによって制御されます(ゼロは押すボタンを待つことを意味します)。
例:0,120,1,0,1,120,120,120,120,120
- フィルイン時間は16:00~18:00です。
- 午後6時頃にボタンを押すと、位置1のピルが放出されます。
- 20:00 ポジション2リリース
- 20:01 ポジション3リリース(就寝前にもう1錠)
- 午前6時頃に起きてから、ボタンを押すと、位置4の薬が放出されます。
- 6:01 ポジション5リリース
- 8:00ポジション6リリース
- 10:00 ポジション7リリース
- 12:00 ポジション8リリース
- 14:00 ポジション9リリース
- 16:00 ポジション10リリース
NodeMCU(eps8266)のソースコードはこのリポジトリにあります。
https://bitbucket.org/sopak/pill-dispenser
(...将来、ソースコードとスキーマをアップロードしようと思う...)
写真のプロトタイプ(将来含まれる予定)は充電器に問題があったため、上部にだけホットグルーで固定されています。
タグ
モデルソース
