JH1LHVの雑記帳

和文電信好きなアマチュア無線家の雑記帳

スポンサーリンク

エアコン制御 ~2~(温度センサ追加)

先日のエアコン制御の続きです。
部屋がどのくらい暑くなっているか、温度センサを使って外から監視できるようにしました。

 

まず、うまくいかなかったことから。

最初、DHT12 という、I2C で動作する「温度センサ」を試してみたんですが。。。

f:id:JH1LHV:20190819192346j:plain

こういう形をした I2C な温湿度センサです。

f:id:JH1LHV:20190819192424j:plain
ANAVI Infrared pHAT のピン配置に合わせて接続替えして、最後に菱チューブを被せました、

f:id:JH1LHV:20190815205621j:plain
こんな風に I2C ソケットに挿して使おうとしたんですが・・・うまくいかず。。。

「sudo i2cdetect -y 1」では、ちゃんと DHT12 のアドレス(0x5C)が見えるんですが。  

f:id:JH1LHV:20190819193237j:plain
「sudo i2cdump -y 1 0x5C」で、データをダンプしてみると・・・オール 0xFF。 

Raspberry Pi の I2C はチップの外でプルアップされている!

I2C に割り付けられている GPIO の 2と3 には、1.8KΩ という、それはそれはとっても強力なプルアップ抵抗がぶら下がっていて・・・こ奴が邪魔して(?)ハイ状態をオフにすることができず、すべてのデータでハイレベル( 0xFF)になってるんだろうなぁ~って。

この時 DHT12 以外の I2C デバイスで試してないのでなんとも言えないんですが、そもそものこの DHT12 のドライブ能力が足りてないんじゃないかって。

まぁそういうことなんだろうと勝手に決めつけて、推奨できないことなんだけど、DHT12 の信号ラインと GND の間に 3KΩ を入れてオフ側にゲタはかせてみたものの、結果は同じオール 0xFF だし。

RasPi ってどうして 1.8KΩ という強力なプルアップをやっているのか謎のまま、それならばと、本体に付いてるプルアップ抵抗を強制排除してみるも、やっぱり結果は同じで、オール 0xFF のまま。

f:id:JH1LHV:20190819194856j:plain

f:id:JH1LHV:20190819195007j:plain
こいつが 1.8K のプルアップ抵抗です。もう要らないので、外しちゃいました。

もう最後の手段、というかホントはこれが正統派?
こういった、電圧レベル変換モジュールを使って、ちゃんとレベルを合わせてやろうかと考えたんですが・・・もう、そこまでしてこの DHT12 と付き合う義理もないしということで、一旦ここで止めることにしました。

確かに、「Raspberry Pi と DHT12」というキーワードでウェブ検索してみても、単線式の DHT11 なモジュールを使った話はたくさん検索されるんですが、この DHT12 の記事が極端に少なかったりするので、「なんか、変だな~」って思いながら作業は進めてたんですが。。。

まぁ、そんなこんなで、
Raspberry Pi と DHT12 の組み合わせはダメだということがわかりました。

ちなみに M5Stack だと DHT12 でも、すんなり動作してくれました。

 

続いて、うまくいった方法です。

RasPi 本体から I2C のプルアップ抵抗(1.8KΩ)を外した状態のまま、秋月電子の I2C 温度センサーを繋いでみたら、ホント、今までのことがまるで嘘のように一発で動作してくれました。
これだから、電子工作ってオモシロイよ。。。ったく。。。

f:id:JH1LHV:20190819201322j:plain
近頃見慣れた 0xFF 以外のデータがちゃんと受信してます。やれやれです。

f:id:JH1LHV:20190818130654j:plain
DHT12 のように直接ソケットに差し込めるように配線替えしようかと考えたのですが・・・もう動いたし、これでいいかって。

ただ、この ADT7410 センサなんですが。
湿度が測れないってことが、とっても残念なことで。

なので、そのうち温度、湿度の両方が測れるセンサに交換しようかと。
で、冷房のオン/オフだけじゃなくって、湿度とかも見てドライにするとか、もう少し柔軟に対応できるように変更したり、そんなことを目論んでます。

f:id:JH1LHV:20190819201450j:plain
部屋の温度が 35.5℃ になってる。。。って、今日はこれでも涼しい方です。
ということで、冷房 ON。

f:id:JH1LHV:20190819202114j:plain
部屋の温度は 27.5℃ になりました。
こうして、涼しくなった部屋に帰れるので・・・マンモスハッピー!です^^