湿度計HS15Pの抵抗値算出方法改善その後

 もう一度初心に戻って抵抗値をちゃんと得ているのか確認。HS15Pを抜いて既存の抵抗を挿す。その際には抵抗値とコンデンサ容量も計っておく。抵抗値を計る方法は2つ。1つめはタイマーで監視して既定の電圧になる時間を習得し、そこから計算する方法。2つめはHS15Pに電圧を加えて指定した時間の後の電圧から計算する方法。参考にしたとこや、他で見かけるのは2つめの方法だ。



 問題点としては、1つめの方法は正確なタイマー精度を必要とする。arduino標準では駄目らしいが、外部ライブラリを使えば解決できる。2つめの方法の問題点は、どの位の時間の後に読めばいいのか?だ。なんせ抵抗値の幅が広いので、その指定が難しい。参考にしたサイトでは、最初は短い時間から始めて、必要とする分解能に達し無ければ時間を少し長くして再度測定するという方法だった。しかしこの方法は、delay関数を使いその間は止まってしまう。

 で、試してみると。1kΩ,10kΩ,47kΩで全て2つめの方が良い。やはり本家の方法が一番なのか?と思ったが、なんか抵抗値が大きくなるにつれて誤差も大きい。もしかしたらと目標とする電圧値をσ(63%)ではなく半分の2.5Vにしてみた。電圧が高くなるとカーブが寝てきて電圧と時間の関係も難しそうだし。そうしてみるとどちらの方法でもほぼ一緒。多少誤差があるが、一応この方法で得た抵抗値を換算式にかけて湿度に直してみた。


 傾向は以前の日記の時と同じ、他の湿度計DHT-22やHIH4030よりも気象観測装置WMR-100に近い。もっともWMR-100にしても、他の家庭用高精度湿度計とは10%以上差が有る時も珍しくない。