カテゴリー
IchigoJam

IchigoJam S+温湿度センサSi7021で暑さ指数WBGTを計算して、熱中症予防

IchigoJam SのSはセンサのSと言われています(※)。IchigoJam Sのセンサ端子CN5へ温湿度センサSi7021を接続し、温湿度測定値から室内用の暑さ指数WBGTを計算します。
※諸説あるうちの有力でない例です
IchigoJam Sへ温湿度センサSi7021を接続し、暑さ指数WBGTを表示したときの様子。31℃以上になると、危険。撮影用のライトの影響でWBGT=32.4℃とかなり危険な状態となっている。撮影前や現在はWBGT=31.2~31.6℃だったので、十分に水分を取りながら執筆中。
センサの接続方法は、下記のブログ記事を参考にしてください。
温湿度センサ Si7021:

暑さ指数WBGTとは

湿球黒球温度WBGTは、国際規格化されている暑さ指数の一つです。WBGTの単位は℃なので、直感的に分かりやすい指標です。しかし、その測定には湿球黒球温度計という専用の計測器が必要です。また、より簡易な方法で測定する方法として、温度と湿度から推定する方法があります。
日本生気象学会が作成した「日常生活における熱中症予防指針(参考文献2)」に、温度と湿度から暑さ指数WBGTをもとめる換算表と、WBGT値における危険度がまとめられています。以下は、WBGT換算表をエクセルへ転記したものです。
画像データだったWBGT表の数値を「手作業」でエクセルへ入力した。

しかし、公開されている表には20℃以下のデータが無かったので、国立環境研究所の小野 雅司らによる6都市の気象データから求めたWBGT推定式(参考文献3)から0℃におけるデータを使用し、0℃~40℃まで対応できるようにしてみました(日射量や風量は0とした)。近似式も小野氏のWBGT推定式に倣いました。

今回、作成した近似式:(屋内用)
WBGT = 0.725*Ta + 0.0368*RH + 0.00364*Ta*RH – 3.246
参考文献3の推定式:(小野氏らの研究成果・屋外)
WBGT = 0.735*Ta + 0.0374*RH + 0.00292*Ta*RH – 4.064
Ta=室温(℃)、RH=相対湿度(%)
補足(より詳しく知りたい方への情報)
参考文献2のWBGT表は室内環境をもとに作成されており、一方、参考文献3の推定式は屋外環境の気象データをもとに作成されています。このため、これらのWBGT値は下図のように一致しません。そこで、21℃以上については参考文献2のWBGT表を、0℃のときは参考文献3の推定式を使用し、平均二乗誤差を最小にするパラメータを算出しました。
湿度60%における室温とWBGTの関係(湿度が一定値60%のとき)
室温と湿度からWBGTの推定値を算出できるようになった
適切な方法かどうかは分かりませんが、少なくとも熱中症予防指針には沿っているはずです。
実際に熱中症予防対策として使われる場合は、十分に検証の上、ご利用ください。

IchigoJam用 BASICプログラム

下記のプログラムを実行すると、温度、湿度、WBGTが表示されます。IchigoJam BASICの変数は16ビットの整数型なので、計算時に変数の範囲を超えない範囲で精度が確保できるよう配慮しました。

1 ?”Humidity Sensor SILICON LABS Si7021
2 ‘if ver()<12348 stop

100 ‘MAIN
110 let[0],#3ae6,#f3,#f5
120 if i2cw(#40,#800,2) stop
130 if i2cw(#40,#802,1) stop
140 wait 2
150 if i2cr(#40,#806,2) stop
160 A=([3]>>8+[3]<<8)/37-474
170 if i2cw(#40,#804,1) stop
180 wait 2
190 if i2cr(#40,#806,2) stop
200 B=([3]>>9+[3]<<7)/26-65
210 ?”Tempr=”;A/10;”.”;A%10;” “;
220 ?”Humid=”;B/10;”.”;B%10;” “;
230 if A<0 A=A-5 else A=A+5
240 A=A/10:B=B+5:B=B/10
300 ‘WBGT
310 W=(A*725)/100
320 if W<0 W=A*73
330 W=W+(B*37)/100
340 W=W+(A*B*4)/100-32
350 ?”WBGT =”;W/10;”.”;W%10
360 wait 300:goto 100

Bashで計算する#

Raspberry PiなどLinuxベースのOSで計算するにはbcコマンドが便利です。変数TMPLへ温度を、HUMへ湿度を代入して以下のコマンドを実行します。

echo “0.725 * ${TMPL} + 0.0368 * ${HUMI} + 0.00364 * ${TMPL} * ${HUMI} – 3.246″|bc

MIT LICENSE

参考文献

本ブログは、IchigoJamの開発者である福野泰介さんのブログ(参考文献1)を見て、書いてみました。福野さんは、半導体環境センサのパイオニアであるセンシリオン製の温湿度センサSHT31を使用して、不快指数を求めています。また、WBGTについては日本生気象学会のサイト(参考文献2)並びに、同学会誌の情報(参考文献3)を参考にしました。
(参考文献1)
SHT31を使った不快指数(福野泰介の一日一創):
(参考文献2)
「日常生活における熱中症予防指針」Ver.3 確定版
日本生気象学会ウェブサイト
http://seikishou.jp/pdf/news/shishin.pdf
(参考文献3)
日本生気象学会雑誌 50(4):147-157, 2014
通常観測気象要素を用いたWBGTの推定
国立環境研究所・環境健康研究センター 小野 雅司, 気象業務支援センター 登内 道彦
https://www.jstage.jst.go.jp/…/seikisho/50/4/50_147/_pdf
by ボクにもわかるIchiogoJam用マイコンボード
 - 
Chinese (Simplified)
 - 
zh-CN
Chinese (Traditional)
 - 
zh-TW
English
 - 
en
French
 - 
fr
German
 - 
de
Italian
 - 
it
Japanese
 - 
ja
Korean
 - 
ko
Russian
 - 
ru
Spanish
 - 
es