ラズパイで営業時間に合わたアナウンスマシン その1

  • 100均電卓を使いソーシャルディスタンスなスイッチとラズパイでアナウンスマシンを作った
  • 材料は100均電卓ソーラ電池、トランジスタ、抵抗、500円アンプスピーカーとラズパイ(Raspberry Pi Model B Rev 2)・・・ヘッドホーンジャックへ直接アンプスピーカーが接続できる
  • 100均電卓センサーは電源不要、センサー基板からラズパイGPIO入力端子迄2本線で済む
  • 手をかざして光を完全に遮らないと反応しない・・・赤外線人感センサーのように近づいても過敏に反応しない、ただし薄暗い場所では過敏に反応してしまう…orz
  • 本来なら扉にマグネットとリードスイッチを取り付け扉に同期して喋るアナウンスマシンを作れば良いと思うけど
  • IOTに興味を持ってもらう為あえて電子回路の見える化と安全策で可能な限り営業時間外に発話しないようにした
  • 通常ソーラーパネルに光があたるとトランジスター(2SC1815)のベース電流が流れコレクター・エミッタは導通、接続されているGPIO入力端子は0V近くになる・・・low
  • ソーラーパネルを塞ぐと切れ、コレクター・エミッタ間の電流が切れGPIO入力端子が3.3V近くになる・・・high
  • Sound Settingsタブでmp3音源ファイルをアップロード、m4aとwavはmp3へ自動変換
  • DIO Controlタブでセンサー入力端子のlow->highアクションでSound1を選択・・・ソーラーパネルの光を遮るとこのアクションが起きる
  • 月→金9時〜18時、土9時〜13時、日曜日お休みはスクリプトで固定、臨時休業はブラウザ又はアレクサアプリから当日設定→リモート制御出力端子とリモート制御入力端子をループ接続しておき出力端子をオン・オフさせる
  • automatedタブで自動作成したスケジュール毎スクリプトをエディタで編集、マッチ条件する部分へ svc -u /www/pepolinux/pifaced/を追記します・・・実はpifacedデーモンを止めたり切ったりして人感センサーもどきの動作を止めます
    # cat /www/remote-hand/tmp# cat auto_act0
    #!/bin/bash
    if [ ENABLE = “DISABLE” ];then
    exit
    elif [ “1” != -1 ];then
    # [ -e /www/remote-hand/tmp/.di_read_data ] && . /www/remote-hand/tmp/.di_read_data <—ここ
    [ -e /www/remote-hand/tmp/.gpiodi_read_data ] && . /www/remote-hand/tmp <—ここ/.gpiodi_read_data
    [ -z “${di[0]}” ] && exit
    [ “${di[0]}” = “-1” ] && exit
    [ “${di[0]}” != “1” ] && exit
    fi
    if [ 16 -gt 7 -a 16 -lt 14 ];then
    /usr/local/bin/pepoirkitpost 3
    elif [ 16 -gt 13 -a 16 -lt 17 ];then
    /usr/local/bin/pepotocoshelp 3 1
    svc -u /www/pepolinux/pifaced/   <—ここ
    elif [ 16 -gt 16 -a 16 -lt 22 ];then
    /usr/local/bin/peposound 1
    elif [ 16 -lt 8 ];then
    /usr/local/bin/pepodioctl 16 1
    fi

Follow me!