obnizで温度・湿度センサー「SHT20」を使う

obnizのパーツライブラリにある温度・湿度センサー「SHT20」。パーツライブラリ以外にあまり情報がないので、起こったトラブルとその対処法を記録に残します。

温度・湿度センサー「SHT20」購入

SHT20は、Amazonで900円くらいで買えます。

ピンのはんだ付けは必要でした。

パーツライブラリのコード調整

SHT20のピンは4本ですが、サンプルコードでは6本指定があります。

adrとaddressmodeは、指定しなくても問題なく動作しました。

たまに出るエラーに注意

温度、湿度を定期的に取得していると、たまに下記のエラーが発生します。

i2c0: writing error. Communication Failed. Maybe, target is not connected.

エラーは大きく2パターンあり、数値を取得できない場合と、-2で取得する場合です。

特に気温-2度は、ありえる数字なので要注意です。

エラーの対処法

使う場面で対処は異なりますが、今回はエラーや不正値の場合、前回の値を代入する対処とします。

sensor.get・・・でエラーがでたら前回の値代入。

これだけでは解決せず、-2と取得することがあります。

センサーで取得する気温や湿度の値は、少数点15位くらいまであり、-2ピッタリになることはまずありえません。

もし、-2だった場合も、前回の値を代入することにしました。

追記:超高温・高湿度エラー

まだエラーが発生しました。

まれに、気温が「53.1℃」とか、湿度「96.8%」とか、異常に高い数値を取得してしまいます。

window.onerrorで、ブラウザがエラーを感知した時、前回の値を代入するように追記して、様子をみます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)