概要
Maker Faire Kyoto 2023(4/29,30)出展のため新しく作り直した非接触スイッチです。挿入型は、「エレベーターのような環境でも誤動作せずに使える非接触スイッチ」を目標に考えました。世界でもまだ実現されていないイノベーティブで現代的なテーマです。
非接触空間センサーについてはこちらをご覧下さい https://interactive-hand-sensor.com/root/
https://makezine.jp/event/mfk2023/
動画
しくみ
- 4個のセンサーがそれぞれ商品マークのLEDとペアになりマイコンから制御しています。
- 指の挿入があればセンサーの値が上がり、しきい値を超えるとペアのLEDを点灯します。
- 高感度非接触センサーをこのように実装するとセンサーはほとんど最大値に振り切れて指先を検出できません。
- そこでセンサー付近は黒色の板に遮光フィルムを貼って光の反射を防ぎコントラストを上げています。
プログラム
RaspberryPiPico-MicroPython
from machine import PWM
from Sensor_CLED import *
def makePwm(gpio, freq, duty16):
pwm = PWM(gpio)
pwm.freq(freq)
pwm.duty_u16(duty16)
makePwm(pwmCled_gpio, 50, 1<<15) # set pwm
def makeIndi():
val = True
def closure(timer):
nonlocal val
CLed.setIndi(val)
val = not val
return closure
indi = makeIndi()
tim = Timer()
tim.init(freq=3, mode=Timer.PERIODIC, callback=indi)
# ***************** main ********************
if __name__ == '__main__':
try:
CRI_LED = 50
cled = CLed()
Sensor.init(1) # *** initialize Sensor ***
print('ROW_LEN:', ROW_LEN, ' ******************* START ********************' )
cled.turnOn(5)
time.sleep(1)
cled.turnOn(0)
while True:
Sensor.setAd()
adLst = Sensor.getAdLst()
for i, ad in enumerate(adLst):
if ad > CRI_LED:
Sensor.ledOn(i)
except KeyboardInterrupt:
print("\nCtl+C")
CLed.turnOn(0)
終わりに
コロナは減ってきましたが感染症の驚異は無くなりません。自動販売機やエレベーターで感染するなんて馬鹿らしいと思いませんか?非接触スイッチは現実でもSFでもほとんど使われていませんが非接触空間センサーを使うと実現可能です。
世界でイノベーションが生まれ続ける現代ですが、このような先進的なデバイスを売り出すことができれば日本の製造業もきっと復活のチャンスがあります。スポンサー募集中です。
1
投稿者の人気記事
-
3duilab
さんが
2023/04/19
に
編集
をしました。
(メッセージ: 初版)
ログインしてコメントを投稿する