Raspberryでエアコンを自動運転する(その2)


前回、温度計と組み合わせて一定温度をKEEPする自動運転を紹介しましたが、これが 思った以上に快適だったので、
土日や帰宅後など、好きなとき に自動運転ができるようにしました。
とは言っても、不在時に自動運転するも無駄なので、自動運転する/しないのボタン回路を追加しました。

【STEP1】回路図

回路は以下のように簡単なものです。
SWはトグルSWでも押しボタンSWでもかまいませんが、押しボタンSWの時はオルタネイト動作(位置保持型、プッシュオン・プッシュオフ型)す るものを使ってください。
SW-ONで自動運転開始、SW-OFFで自動運転停止となります。
自動運転中はLEDが光ります。
人感センサーをSWの代わりにすれば面白いかもしれませ ん。
なお、こちらで赤外線モーションセンサーを紹介していま すが、じっとしているときは反応しないのでSWの代わりにはなりそうもありません。

回路図

実は私はまだSWを付けていません。
下の写真のように中央の緑のジャンパ線を抜き差ししてSWの代わりにしています。
近日中にトグルSWを調達してケースに組み込みたいと思っています。
写真はストロボをたいたので、LEDが光っていないように見えますが、左の写真ではLEDは光っています。

SW-ON
SW-OFF

【STEP2】ソースのダウンロードとコンパイル

パソコンで制御するエアコンの作り方 ここからソースファイル一式をダウンロードしてください。
ダウンロードが終わったらファイルを展開します。
pi@raspberrypi ~ $ tar zxvf BMP085-2.tar.gz

新しく「BMP085-2」という名前のディレクトが作成され、その中に以下のファイルが展開されますのでmakeしてください。
pi@raspberrypi ~ $ cd BMP085-2
pi@raspberrypi ~/BMP085-2 $ ls -l
total 36
-rwxr-xr-x 1 pi pi 2371 Oct 10 07:06 air-con2.sh
-rw-r--r-- 1 pi pi  669 Oct  3 08:26 button.c
-rw-r--r-- 1 pi pi  705 Jan  6  2014 led.c
-rw-r--r-- 1 pi pi  192 Oct 10 07:11 Makefile
-rw-r--r-- 1 pi pi 6988 Oct  2  2013 readBMP085.c
-rw-r--r-- 1 pi pi 5322 Oct  2  2013 smbus.c
-rw-r--r-- 1 pi pi 2422 Oct  2  2013 smbus.h

pi@raspberrypi ~/BMP085-2 $ make
cc -o readBMP085 ./smbus.c ./readBMP085.c -lm
cc -o led led.c -lwiringPi
cc -o button button.c -lwiringPi

※windowsPCでファイルをダウンロード、展開し、展開後のファイルをscpで Raspberry Piに転送すると、ファイルのアクセス権限が変わってしまいます。
※必ず展開前のファイル(BMP085-2.tar.gz)をscpでRaspberry Piに転送し、Raspberry Pi側で展開してください。

【STEP3】CRONへの組み込み

自動運転する/しないはボタンで決めますので、cronを使って24時間、定期的に温度を監視し、一定の温度以上(以下)になったら パソコンで制御するエアコンの作り方 エアコンの電源を入れます。
エアコンの電源を入れる上限温度、下限温度の指定は前回と同じです。
また、暖房/冷房の切り替え、エアコン側の設定温度も前回と同じで、事前にエアコンをハンドで操作して指定しておきます。
pi@raspberrypi ~/BMP085-2 $ nano air-con2.sh
#!/bin/bash
HighTemp=280  → 室温がこれ以上(28度以上)ならエアコンを入れる
LowTemp=150  → 室温がこれ以下(15度以下)ならエアコンを入れる

crontabの書き方は、こ のページなどを参考にしてください。
ちなみに私は、毎日24時間5分間隔で室温のチェックをしています。
*/5 * * * * /home/pi/BMP085-2/air-con2.sh

今は10月ですが、日中など少し蒸し暑い日があります。
そんなときに自動運転にしておくと、勝手にエアコンが温度一定で動いてくれるのでホント快適です。
最新のエアコンには温度一定で自動運転する機能が付いているようですが、10年前のエアコン(我が家)でも同じことができるようになりました。
今後は梅雨(遠い!!)に向けて湿度一定で自動運転する機能を付けたいと思っていま す。

続く....