ラズパイ　赤外線でエアコンの消し忘れを自動で消す、人がいる時にエアコンの暖房自動ONを実現　ホップ

音声ではnature remoと　Googlehomeで「ねえGoogleエアコンを暖房にしてとか」「ねえGoogleエアコンを24度にしてとか」できるので、テーマはいいなと思い実装することにした。
Indoor Corgiさんのサイトから引用
ここは色々と参考になります。サンプルをちょっと加工するだけで動く、＝さすが企業。
社員の三谷さんには昨年アドバイス頂きました。参考サイトは以下
https://www.indoorcorgielec.com/resources/raspberry-pi/aircond-control/
# 【テーマ　Indoor Corgiさんと同じ：時間は変えてます。】
# ・朝7時に温度を測定し、11℃未満なら暖房をONする
# ・早朝01時に自動的にエアコンOFFする
前提条件は人が居る時、
人感センサーは2号機、RPZ-IR-SensorRev2は1号機なので情報連携にはMariaDBを使います。
補足
夏Verも夏に導入しようと考えています。
１．赤外線制御ソフトウェア「cgir」をインストール
```
sudo python3 -m pip install -U cgir
```
２．赤外線制御の為に「pigpio」のサービスをスタート&起動時自動立ち上げ
```
sudo systemctl start pigpiod
sudo systemctl enable pigpiod
```
３．赤外線コードを登録する。夏はcooler_onとかにしよう。以下実行。
```
 cgir rec heater_on
 i@raspberrypi:~ $ cgir rec heater_on
------------------------------------
赤外線コード"heater_on"を受信中...  受信機に向けて赤外線を送信して下さい.

受信コード
[3400, 1750, 380, 1350, 390, 1350, 380, 470, 380, 470, 390, 470, 380, 1350, 380, 470, 380, 470, 380, 1350, 380, 1300, 390, 470, 380, 1350, 390, 470, 390, 470, 380, 1350, 380, 1350, 390, 460, 390, 1350, 380, 1350, 380, 470, 380, 480, 380, 1350, 390, 470, 380, 520, 340, 1350, 380, 480, 380, 470, 390, 470, 380, 470, 390, 460, 390, 470, 390, 470, 390, 470, 380, 470, 380, 470, 390, 470, 380, 470, 380, 480, 380, 470, 380, 470, 380, 470, 380, 470, 380, 480, 380, 470, 380, 440, 420, 1350, 390, 470, 390, 470, 390, 470, 390, 470, 380, 470, 390, 1350, 380, 480, 410, 440, 390, 1350, 390, 470, 380, 480, 380, 1350, 390, 1350, 380, 470, 410, 1300, 380, 470, 380, 470, 380, 470, 380, 480, 380, 470, 380, 480, 380, 470, 380, 480, 380, 470, 390, 470, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 380, 470, 380, 470, 390, 1350, 410, 1300, 380, 470, 380, 470, 390, 470, 380, 470, 390, 480, 380, 470, 380, 480, 380, 470, 380, 470, 380, 470, 390, 470, 390, 470, 380, 480, 380, 470, 380, 470, 390, 470, 390, 470, 390, 470, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 380, 480, 380, 470, 380, 470, 380, 480, 380, 470, 380, 480, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 390, 470, 390, 470, 380, 1400, 330, 480, 380, 480, 380, 470, 380, 1350, 390, 1350, 390, 470, 380, 470, 380, 470, 390, 470, 390, 470, 380, 480, 380, 470, 380, 470, 380, 470, 390, 470, 380, 480, 390, 470, 380, 480, 380, 470, 390, 470, 380, 1350, 380, 1350, 380, 480, 380, 470, 390, 1350, 390, 1350, 380, 480, 380, 13000, 3400, 1750, 380, 1350, 390, 1350, 390, 470, 390, 470, 380, 470, 380, 1350, 380, 480, 380, 480, 380, 1350, 390, 1350, 380, 480, 380, 1350, 380, 470, 380, 470, 390, 1350, 390, 1350, 390, 470, 390, 1300, 390, 1350, 380, 470, 380, 480, 380, 1350, 380, 470, 380, 480, 380, 1350, 380, 470, 390, 470, 380, 470, 390, 470, 390, 470, 380, 470, 380, 480, 380, 470, 380, 470, 380, 470, 390, 470, 390, 470, 380, 470, 380, 470, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 380, 470, 390, 1350, 390, 470, 380, 470, 380, 470, 380, 470, 380, 470, 380, 1350, 390, 470, 390, 470, 390, 1350, 380, 470, 390, 470, 390, 1350, 380, 1350, 390, 470, 380, 1350, 390, 470, 380, 470, 380, 470, 390, 470, 390, 470, 390, 470, 410, 450, 380, 470, 390, 470, 410, 450, 380, 480, 380, 470, 390, 470, 390, 470, 390, 470, 390, 470, 380, 470, 390, 1350, 380, 1350, 380, 470, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 380, 470, 390, 470, 390, 470, 380, 470, 380, 480, 380, 470, 380, 470, 390, 470, 390, 470, 380, 470, 390, 460, 390, 470, 390, 470, 390, 470, 380, 470, 410, 440, 390, 470, 380, 430, 420, 470, 380, 470, 390, 470, 380, 470, 390, 470, 390, 470, 390, 470, 380, 470, 390, 470, 390, 470, 410, 440, 410, 450, 390, 1350, 380, 470, 390, 470, 390, 470, 390, 1350, 380, 1350, 390, 470, 380, 480, 380, 470, 390, 470, 380, 470, 390, 470, 380, 470, 390, 470, 380, 480, 380, 470, 390, 470, 390, 470, 380, 480, 380, 480, 380, 470, 390, 1350, 380, 1350, 380, 470, 380, 470, 390, 1350, 390, 1350, 390, 470, 390]

Format AEHA
Frame#1 0x23, 0xCB, 0x26, 0x01, 0x00, 0x20, 0x48, 0x16, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, 0x00, 0x66
Frame#2 0x23, 0xCB, 0x26, 0x01, 0x00, 0x20, 0x48, 0x16, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, 0x00, 0x66

赤外線コード "heater_on" を登録しました.
```
４．ＯＦＦも登録する。
```
cgir rec aircond_off
pi@raspberrypi:~ $ cgir rec aircond_off
------------------------------------
赤外線コード"aircond_off"を受信中...  受信機に向けて赤外線を送信して下さい.

受信コード
[3400, 1750, 380, 1350, 380, 1350, 380, 470, 380, 480, 380, 470, 380, 1300, 400, 470, 380, 480, 380, 1350, 390, 1350, 380, 480, 380, 1350, 380, 470, 380, 470, 380, 1350, 390, 1300, 400, 470, 380, 1350, 380, 1350, 390, 470, 390, 480, 380, 1350, 380, 470, 390, 470, 390, 1350, 390, 470, 380, 480, 380, 470, 390, 470, 380, 480, 380, 470, 380, 470, 380, 470, 390, 470, 380, 470, 380, 470, 380, 480, 380, 470, 390, 470, 390, 470, 380, 520, 330, 480, 390, 470, 380, 470, 380, 470, 390, 470, 390, 470, 390, 470, 380, 470, 390, 470, 390, 470, 380, 1350, 390, 480, 380, 480, 380, 1350, 390, 470, 380, 480, 380, 1350, 390, 1350, 390, 480, 380, 1350, 380, 470, 390, 470, 390, 470, 380, 470, 380, 470, 390, 470, 390, 470, 380, 480, 380, 470, 390, 470, 390, 470, 390, 470, 390, 460, 390, 480, 380, 470, 380, 480, 380, 480, 380, 1400, 340, 1350, 390, 480, 380, 480, 380, 470, 390, 470, 380, 470, 380, 480, 380, 470, 380, 470, 390, 470, 380, 480, 390, 470, 390, 470, 390, 470, 380, 470, 390, 470, 380, 470, 380, 470, 390, 470, 390, 470, 380, 520, 340, 470, 390, 470, 380, 470, 390, 470, 380, 470, 390, 470, 380, 470, 380, 470, 380, 480, 380, 480, 380, 470, 380, 480, 380, 470, 380, 470, 390, 470, 380, 480, 380, 1350, 380, 480, 380, 470, 380, 470, 380, 1350, 390, 1350, 380, 480, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 390, 440, 420, 470, 380, 470, 380, 470, 390, 470, 380, 480, 380, 470, 380, 470, 390, 470, 380, 1350, 380, 1350, 390, 470, 390, 470, 380, 470, 380, 1350, 380, 470, 390, 13000, 3400, 1750, 390, 1350, 380, 1350, 390, 470, 380, 470, 390, 470, 390, 1250, 440, 470, 380, 480, 380, 1350, 380, 1350, 380, 480, 380, 1350, 380, 470, 390, 460, 390, 1350, 380, 1350, 380, 470, 380, 1350, 390, 1350, 380, 470, 390, 470, 380, 1350, 380, 470, 380, 470, 380, 1350, 380, 470, 380, 430, 420, 480, 380, 470, 380, 480, 380, 470, 390, 470, 380, 470, 380, 470, 380, 480, 380, 470, 380, 480, 380, 470, 380, 470, 390, 460, 390, 470, 380, 480, 380, 470, 390, 460, 390, 470, 380, 470, 390, 460, 390, 470, 390, 470, 380, 470, 380, 480, 380, 1350, 380, 470, 380, 470, 380, 1350, 380, 480, 390, 470, 380, 1350, 380, 1350, 390, 470, 380, 1350, 390, 470, 390, 470, 390, 470, 380, 480, 380, 480, 380, 480, 380, 470, 380, 480, 380, 470, 380, 470, 380, 480, 380, 470, 380, 480, 380, 470, 380, 470, 380, 480, 390, 470, 390, 1350, 380, 1350, 380, 470, 390, 470, 390, 470, 380, 480, 380, 480, 380, 470, 380, 470, 390, 470, 390, 470, 380, 480, 380, 470, 380, 480, 380, 480, 380, 470, 380, 480, 380, 520, 340, 470, 380, 470, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 390, 470, 380, 470, 390, 470, 380, 470, 380, 470, 380, 480, 380, 470, 390, 470, 380, 480, 380, 470, 380, 480, 380, 470, 390, 470, 380, 1350, 380, 470, 380, 470, 380, 470, 390, 1350, 380, 1350, 380, 470, 380, 470, 390, 470, 380, 470, 380, 480, 380, 470, 380, 470, 380, 470, 380, 440, 420, 470, 390, 430, 420, 520, 330, 480, 380, 480, 380, 520, 340, 1350, 380, 1300, 420, 470, 380, 470, 390, 470, 390, 1350, 380, 470, 390]

Format AEHA
Frame#1 0x23, 0xCB, 0x26, 0x01, 0x00, 0x00, 0x48, 0x16, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, 0x00, 0x46
Frame#2 0x23, 0xCB, 0x26, 0x01, 0x00, 0x00, 0x48, 0x16, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, 0x00, 0x46

赤外線コード "aircond_off" を登録しました.
```
５．テスト　オン　オフ
以下を設定
```
sudo vim /lib/systemd/system/pigpiod.service
```
１）2行目のDescription行の次の行に「After=multi-user.target」を追加
２）ExecStart行の最後に「-t 0」を追加
```
[Unit]
Description=Daemon required to control GPIO pins via pigpio
After=multi-user.target
..
ExecStart=/usr/bin/pigpio -l -t 0
```
３）エアコン　オン　オフ　うまくいったぞ。
```
cgir send heater_on
cgir send aircond_off
```
cron登録以降はステップで。

ちなみに　人感センサーの誤検知（しばらく悩んでいた）はフェライトコアで解消することが判明。
2025/1/9 朝8:00は誤検知解消していた。　以降　誤検知している。
2025/1/10 フェライトコアをＧＰＩＯ（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　実装完了。
https://qiita.com/m_sunafukin77/items/291f101f88b31a3b008b
![IMG_0096.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433305/cabcb7ae-53e5-12a0-89d9-3dc8b3074273.jpeg)
参考サイト
https://www.souichi.club/raspberrypi/watch-over-07/