Sympapaのスマートホーム日記

スマートなんとかはスマートじゃない方法でつくられている

Home Assistant: 絶対湿度が知りたい!

Sympapaです。


家を建てる計画もいよいよ近々「建て方」というところまできました。
そこそこ高断熱にそこそこ高気密の家になる予定です。そして換気は第一種換気で温度と湿度を排気と給気の間で交換する全熱式熱交換システムを入れる計画で、エアコンと加湿器によってどこまで快適な温湿度に制御出来るかちょっと楽しみです。


そして色々住宅系YouTuberさんの動画を観ていると、人間が快適と感じる湿度を得るには「相対湿度」ではなく「絶対湿度」をベースに空調した方が良いという考えの方が多いようです。しかし、年中快適な温湿度に制御するのはなかなか難しく、できたとしても結露と紙一重だったりするようですね。


そんなワケで「絶対湿度」と「露点」をHome Assistantで取得して、エアコンや加湿器を自動制御出来たら常時快適温湿度で無結露の環境を実現できるんじゃね?なんて妄想をしているワケですが、世の湿度計や温湿度センサーは「相対湿度」をアウトプットするものがほとんどなんですよね。
そんなわけで今回はHome Assistantで「絶対湿度」と「露点」を取得できるようにしてみたというお話です。

■相対湿度と絶対湿度と露点

ご存知の方も多いとは思いますが「相対湿度」と「絶対湿度」について簡単に書いておこうと思います。


多くの場合、私達が日頃「湿度」と呼んでいるのは「相対湿度」です。
空気は温度によって体積あたりに含むことが出来る水蒸気の量が変化し、気温が高いほど体積あたりに含むことが出来る水蒸気量は増えます。その時の気温で含むことの出来る水蒸気量の限界を100%として今の水蒸気量が何パーセントなのかを表したものが「相対湿度」となります。
なので体積あたりに含んでいる水蒸気量が同じでも、気温によって「相対湿度」は変化し、気温が高いほど「相対湿度」は低くなります。
つまり、「相対湿度」が同じ50%であっても、気温が低い時は気温が高い時より乾いているということになります。


一方、体積あたりの水蒸気量を表したのが絶対湿度で単位はg/㎥です。(重量あたりで示す場合もありますが話がややこしくなるので無視します(笑))
体積あたりの水蒸気量が同じであれば気温による変化はありません。


「相対湿度」と「絶対湿度」については、ここらへんも参考にしてみてください。
weathernews.jp


そして「露点」はその「絶対湿度」の時に何℃まで気温が下がると含むことの出来る水蒸気量の限界に達するかを示したものです。
先に述べたように気温が低いほど体積あたりに含むことの出来る水蒸気量は減るため、絶対湿度が一定の場合、温度をだんだん下げていくとある温度で含むことが出来る水蒸気量の限界に達して結露することになります。

■今回使った温湿度センサー

Home Assistantで使用するセンサーは基本的にZigbee接続のものを選びます。Wi-Fi接続のものよりバッテリー持ちが良く接続の安定性も高いし、無線ルーターへのWi-Fi接続台数を増やさないのが利点です。
新しい家では床下含め10箇所くらいの温湿度をモニターしたいので安価なZigbee接続温湿度センサーを探していました。今回はdiysmarthomeさんが以前の記事でレビューされているこちらを購入してみました。Tuya Zigbee温湿度センサーです。
ja.aliexpress.com


私が購入した時は672円でした。送料無料の発送は"cainiao super economy global"、頭が"UT"、末尾が"TW"のトラッキング番号で発送されました。
"cainiao super economy global"は中国国内のトラッキングは可能ですが、中国から国外へ向けて出発してしまうと(到着地の)最寄りの郵便局へ届くまでトラッキングの更新がされません。トラッキング出来ない間は少しヤキモキしますが、今回は注文から12日後とまぁまぁ早く届きました。


電源が単4電池×2本なので、サイズはなかなか大きめのW25mm×H70mm×D20mm(だいたい)です。

ただ温湿度センサーの場合は設置場所がそこまで限定されないのでこのくらいの大きさであれば問題ないでしょうし、床下や小屋裏などバッテリー交換が面倒そうな場所にも設置予定なので、バッテリー持ちが良さそうな単4電池仕様はむしろありがたいです。


Zgbee2MQTTに追加したところ、モデルは"WSD500A"として認識されました。
用意されているエンティティはシンプルに「温度(℃)」「相対湿度(%)」「バッテリー残量(%)」ですが、"linkquality"と”Voltage”も有効化すれば使えるようです。
基本のレポート間隔は15分ですが、温度や湿度の変化が大きい場合はレポート間隔が短くなるようです。


前述のdiysmarthomeさんの記事こちらの記事によると、使用されているセンサーの仕様上の精度は、温度が±0.5℃、湿度が±3%みたいです。
Nature Remo 3(センサー精度の仕様は不明)と比較してみましたが、温度の差は概ね0.5℃以内ではあるものの、湿度はNature Remo 3に対して10%程度低い値となっています。
どちらが真値に近いのかは不明なので、ここは後日、エスペックあたりの校正された温湿度計や乾湿球と比較して記事を書きたいと思います。

■Home Assistant上で絶対湿度を取得する

やる気さえあれば"template"を使い相対湿度と温度から絶対湿度を計算できそうですが、やる気もスキルもないのでカスタムコンポーネントを探すところから始めてみたところ「秒」でみつかりました(笑)
"Thermal confort"というカスタムコンポーネントです。熱的快適性を評価してくれる面白そうなカスタムコンポーネントです。
github.com


インストール方法はHACSから簡単にインストール出来るので省略します。
インストール後に統合の追加で"thermal confort"を探して追加すると初期設定が開くので、そこで温度センサーと湿度センサーを指定します。


すると15個のsensorエンティティが作成されます。
別の温湿度センサーを使用したい場合は再度統合を追加する形で追加できます。
また15個のエンティティの内、使用したいものだけを選択して有効化することも可能です。
15個のエンティティの中に「絶対湿度」と「露点」も含まれますが、大半は様々な手法によって導き出された「人間が感じる快適性」に関わる指標です。面白そうですが今回は「絶対湿度」と「露点」を取得するのが目的なのでスルーします(笑)
どんな指標があるかはここのページに書かれています。


絶対湿度は"absolute_humidity"、露点は"dew_point"としてsensorエンティティが作成されているので、簡単にHome Assistantのオートメーションなどに使用することが出来ます。
実際に1日半くらいの推移をみてみると「絶対湿度」は「温度」と似た動きをしていました。
これでいいのか?と思いましたが、温湿度センサーを置いていた部屋は暖房に石油ファンヒータを使用しているので暖房中は灯油の燃焼により水蒸気が発生するのと、現在の我が家は「気密ゼロ(笑)」なので外の湿度の影響を受けやすい(外は気温が上がると水が蒸発しやすくなり湿度が上がる)ことを考えるとこんなもんなのかな。

■まとめ

ということでHome Assistantでカスタムコンポーネントを使って簡単に「絶対湿度」を取得できたというお話でした。
いやでも絶対湿度を求める計算式もそこまでややこしそうじゃないので私でもTemplateで出来たかも。まぁいっか。
今回使用した温湿度センサー"WSD500A"については湿度の精度をあらためて検証して、後日ブログを書こうかなと思います。


それでは。