自動アルコールディスペンサーの記事にアクセスが多くあり、武漢コロナの影響がまだまだ大きいことがうかがえます。
以前作成した自動アルコールディスペンサーはアルコールボトルの大きさに制限があり、汎用性に乏しかったと反省しています。
そこで市販のディスペンサーボトルを使用した自動アルコールディスペンサーを作成することにしました、今回はウォーターポンプを使用します。
パーツなど合計すると市販の自動ディスペンサーが購入できてしまいますが、自作する楽しみを優先していますのであしからず。
使用するパーツ
マイコン:Raspberry PI PICO いま流行の PICO を使用してみます。
ウォーターポンプ:水中ポンプではなく、ポンプがアルコールと接触しないタイプのものです。
IRセンサー:検知距離は短いですが十分使えます。
リレー:5V1回路で小型のもの、ポンプのON・OFF に使用
リチウムイオンバッテリー:18650 3.7V3000mA 2本
[asin:B09KBB37KC:detail]
ディスペンサーボトル:容量500ミリリットルの物を使用します、手押しポンプ部分は取り外します、幅80×奥行き60×高さ150mm 以内の容器があれば使えます。
シリコンチューブ:外径5mm×内径3mm 付属のチューブは短いので。
その他:電源スイッチ、5Vレギュレーター(L7805CV-DG)、100nFコンデンサー、47μF電解コンデンサー、2色LED (OSRB5131A)、
5mmLED用ワンタッチブラケット、1KΩ抵抗、ユニバーサル基板(30×70mm)、電池ボックスなど。
回路図
今回はArduinoではなく、いま流行の Raspberry PI PICO をポチってあったので使用してみました、電源はリチウムイオンバッテリー2本を使用しました、アルカリ電池4本(6V)でも動作可能ですがポンプの動作時間の調整が必要になります、回路図ではLED2個表示されていますが赤/青の2色LED(5mmΦ)を使用します。
使用したIRセンサーは回路図の物とは異なり4端子ですが、VCC GND D0端子 に接続します。(取付画像参照)
プログラム
Thonny を使用してプログラムしました、Python は習い始めなのでプログラムがスマートではないかも知れませんが参考になればと思い載せておきます。
from machine import Pin
import utime
relay = Pin(16,Pin.OUT)
sensor = Pin(15,Pin.IN)
led_red = Pin(17,Pin.OUT)
led_blue = Pin(18,Pin.OUT)
while True:
if sensor.value()==1:
relay.value(0)
led_red.value(1)
else:
led_red.value(0)
led_blue.value(1)
relay.value(1)
utime.sleep_ms(300)
relay.value(0)
utime.sleep(2)
led_blue.value(0)
ディスペンサーのケース
ディスペンサーのケースは3Dプリンターで作成しました、サポートを最小限にするため分割して印刷しています。
ケースの STL_file が必要な方はコメントでお知らせ下さい。
組み込み
アルコールボトルを入れるケースにセンサーとスプレーノズルを取り付ける部分をセットした画像です、これに2色LEDを取り付けたカバーをかぶせます。
スプレーノズルは3Dプリンターで作りましたが、ディスペンサーボトルに付いているノズルを使用しても良さそうです。
ディスペンサーボトルはポンプ部分を取り外し、シリコンチューブを通す穴を開けたパッキンを取り付けました。
IRセンサー は周囲の明るさにより感度が変化しますので、ディスペンサーを使用する場所で感度調整をしてから使用しないと不要な動作の原因となります。
メカ部分とポンプ部分です、ユニバーサル基板30mm×70mmを使用し5VレギュレータとPICOを載せました、ポンプはシリコンチューブをローラーで押して液体を送り出す仕組です。
メカケースとディスペンサーケースは両面テープで貼り付け固定しました。