Raspberry Piに温度湿度センサー(DHT11)を接続

Raspberry Piにセンサを接続してみました。
今回接続をしたのは、「DHT11」という型式の温度湿度センサです。
DHT11
このセンサはAOSONG(广州奥松电子有限公司)製で高い信頼性、長期間の安定性、低価格が特徴であるとしています。
インターネットで情報収集してみると、湿度の測定精度はイマイチ、湿度測定機能が故障する、などの情報を目にします。
電源電圧によって値の変動が大きいという調査結果もあり使用するにあたり不安がよぎります。
温度も湿度も最小測定単位が整数なので高精度感はありません。
カタログスペックとしては
温度 0℃~50℃ ±5%
湿度 20%~90% ±2℃
電源 3.3-5.5V DC
インターフェース Aosong 1-wire bus digital signal
センサ素子 Polymer humidity resistor
となっています。
製造元のホームページを見ると、英語ページには偽物についての記載がありませんが、中国語ページには偽物に注意!という情報が書かれています。
見分けがつきやすい本物と偽物の違いはセンサ背面の表記がラベルであるかレーザー刻印であるかの様です。レーザー刻印が本物です。白地に黒いラベルのものは偽物です。
その他の特徴は形が少し違うであったり樹脂成形の出来が良くないであり、本物を持っていないとわかりにくい部分の違いだと思います。
手元にあるセンサはその情報と見比べる限り本物の様です。

さて本題の接続です。
今回はデータ線にプルアップ抵抗がついたモジュール基板を使用しました。(直結も試してみましたがプルアップ抵抗がないと動作しませんでした)
電源、GND、データ線の3本の接続で完了です。
電源電圧ですがRaspberry Pi側のIOピンが5Vトレラントではないので電源も3.3Vしか使用できません(電圧変換すれば接続可能ですが、使用するIOピンが入出力兼用使用なので変換は面倒です)。センサ単体では5Vの方が良いとの情報がありますがRaspberry Piとの組み合わせでは選択肢はありません。
ソフトですが、wiringPiを使うC言語のコードを探してきました。
最終的にPHPを使用してデータベースに結果を記録する予定なので、標準出力に結果を出力できるコマンド形式のものが希望でした。
サンプルコードではその後のデータのハンドリングが厄介だったのでカンマ区切り出力に書き換えて完成です。

意外と短時間で動かすことが出来ました。
色々と情報を提供してくださっている方に感謝です。

カテゴリー: Raspberry Pi パーマリンク

コメントを残す

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

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください