ダイキンのルームエアコンでおうちハックする(センサー編)

操作編の記事の続きです。

今回はセンサーから値を取得してみます。

取得できる値

室温と外気温を取得できます。外気温は室外機のセンサーで取得しているようです。室温センサーはAN80TRP-Wの場合は本体左側にあります。センサー周りがホコリで汚れている場合は正しく取得できないかもしれないので掃除しましょう。

パラメーター 内容 htemp 室温 hhum 室内の湿度 otemp 外気温

このような値が取得できます。

室温がある範囲から外れたら冷暖房の運転を開始したり、外気温より低いのに冷房が動いていたらメールでアラートを送ったりといったことができそうですね。

センサーを利用したプログラム

うちではハムスターを飼っているのですが外出中の室温が心配です。そこで、室温が設定された範囲から外れたら冷暖房の運転を開始し、室温が安定したら運転を停止するプログラムを書いてみました。Githubに公開しています。

適当なディレクトリに配置し、config/local.jsonに設定値を書き込んだあと

$ cd temperature-checker
$ node index.js

で動作します。

/opt 以下に配置した場合、systemdで動かす場合は以下のようなUnit設定を記載すれば良いと思います。

[Unit]
Description=Temperature checker
After=syslog.target network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/node /opt/temperature-checker/index.js
WorkingDirectory=/opt/temperature-checker
KillMode=process
Restart=always
[Install]
WantedBy=multi-user.target