0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ラズパイ 人感センサーで人が居るときのみ8:00~11:00~14:00~18:00~PCを起動する。

Last updated at Posted at 2024-12-04

1.人感センサーの配線は以下を参考にする。
https://chasuke.com/motionsensor/
chasuke さん
jinsen_2.jpg
jinsen_3.jpg
jinkan_7-8.jpg

IMG_0006.JPG

ちなみにRPZ-IR-Sensorは上段の1号機に接続
71-MEhapEoL.AC_SX679.jpg
RPZ-IR-Sensor Rev2 (端子実装済 + 外付センサーセット) - Raspberry Pi用 温度/湿度/気圧/明るさ/赤外線 ホームIoT拡張ボード

2号機に人感センサーを配線。5年前と同じです。

2.パイソンの編集

sudo vim wakeuplan.py

中身は以下

#!/usr/bin/ python3
from datetime import datetime
import time
import RPi.GPIO as GPIO
import subprocess

INTERVAL = 3
SLEEPTIME = 20
GPIO_PIN = 18

GPIO.setmode(GPIO.BCM)
GPIO.setup(GPIO_PIN, GPIO.IN)
cmd = "sudo node /home/pi/etherwake.js"

if __name__ == '__main__':
    try:
        print ("cancel CTRL+C")
        cnt = 1
        while True:
            # sencer touch
            if(GPIO.input(GPIO_PIN) == GPIO.HIGH):
                print(datetime.now().strftime('%Y/%m/%d %H:%M:%S') +
                      ":" + str("{0:05d}".format(cnt)) + " human look")
                print("pc wake")
                subprocess.check_call(cmd, shell=True) 
                time.sleep(SLEEPTIME)
                break
            else:
                print(GPIO.input(GPIO_PIN))
                time.sleep(INTERVAL)
    except KeyboardInterrupt:
        print("stop runnig...")
    finally:
        GPIO.cleanup()
        print("GPIO clean")

4.実行してみる。

python wakeonlan

5.crontabでwakeonlan.pyの実行。
2025/1/7 どうも Crontabで実行すると人感センサー検知したことになっている模様。
仮想環境から実行するとどうやらうまくいくようだ。⇒誤り。2025/1/10 ノイズが原因と判明。
2025/1/8 誤検知している。あれれ。調査中。
2025/1/8 21:16 以下 参考サイトでフェライトコアでノイズが消えると記載ある。
大昔 ADSLの時代に フェライトコアいくつも付けた記憶ある。 なつかしい。
試しに大須のボントンさんで275円で購入して設置。
2025/1/9 朝8:00は誤検知解消していた。 以降 誤検知している。
2025/1/10 フェライトコアをGPIO(Output)に正しく装着。 今のところ、誤検知していない。
2025/1/11 フェライトコアで精度はあがったとは思うが、誤検知している。
HC-SR501は実用的ではないですね。 ぼくのアイリスオーヤマのこたつの人感センサーは精度いいのにね。
もう売ってないみたいね。
https://www.amazon.co.jp/gp/product/B0099JWZTC/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

2025/1/11 カメラとAIで人を検知させることにした。 決意。 2025/1/12 実装完了。

IMG_0096.jpg
https://www.souichi.club/raspberrypi/watch-over-07/

仮想環境は以下で設定。必要なモジュールを仮想環境にインストール&実行

source ~/vpy/bin/activate
pip3 install RPi.GPIO
python3 wakeonlan.py
deactivate

ここまでは仮想環境でなくても結果は同じ。(うまくいっている)

crontab -e

ひまじんの在宅タイミングに合わせて実行。
0 8 * * * cd /home/pi/ && /home/pi/vpy/bin/python wakeonlan.py > /tmp/cronw.log 2>&1
0 11 * * * cd /home/pi/ && /home/pi/vpy/bin/python wakeonlan.py >> /tmp/cronw.log 2>&1
0 14 * * * cd /home/pi/ && /home/pi/vpy/bin/python wakeonlan.py >> /tmp/cronw.log 2>&1
0 18 * * * cd /home/pi/ && /home/pi/vpy/bin/python wakeonlan.py >> /tmp/cronw.log 2>&1

補足 間違えるとnanoがエディタとなるので
select-editor で変更する。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?