メニューを閉じる

テクノデジタルグループ

メニューを開く

2019.02.12

導入編

Raspberry Piで温度・湿度を測ろう①

こんにちは、またはこんばんは。

半年以上付き合い続けた昼カレーとは別れを告げた山根です。(飽きました)

今回は「Raspberry Piで出退勤システム」はお休みです。

前々から「Raspberry Piで温度と湿度を測る」をやってみたかったのです。

今回使用するものです

  • Raspberry Pi 3 Model B と電源
  • ブレッドボート(左)
  • DHT22(AM2302) 温度センサモジュール(中央上)
  • 炭素被膜抵抗(4.7kΩ)(中央下)
  • ジャンプワイヤー(オス-メス)(右)
  • ジャンプワイヤー(オス-オス)(後述)

*秋月電通商で全て揃います

  • 上:オス-オス→ブレッドボード間を繋ぎます
  • 下:オスーメス→ブレッドボードとラズパイを繋ぎます

炭素被膜抵抗:抵抗器です(以下、抵抗器と呼びます)
流れる電流を制限します
なぜ制限するか?
私が小学生の頃、豆電球を家のコンセントに突っ込んで、「バチッ」という音と一瞬の光を出し、ショートして壊した事案がございます
こういうときに抵抗器を用い、電流の強さを制御して、壊さずに電子部品が使えるようになります(今回はDHT22に対して使用します)
制限する強さは様々で、抵抗器の茶色い部分に色(カラーコード)があり、これで抵抗の強さが読み取れます
左から(上の写真では下から)読みます(黄(4) 紫(7) 赤(金を2乗) 金(10)) → 4700

DHT22(AM2302):温度と湿度を読み取るモジュールです
DHT11というのもありますが、こちらは精度が本モジュールに比べて良くないそうです

早速作っていきます
***作り方(配線の仕方)は自由です。私が作成したのでは以下のようになりました***

ブレッドボードとDHT22を接続します
場所はなんでも良いです。やり易そうなところで接続しています

まず、DHT22を正面から1,2,3,4とピン番号が振られています
秋月電子通商のDHT22のデータシート(マニュアルみたいな)を参照すると、

  • 1:VDD 電源用Power(3.3V~5.5V)
  • 2:SDA ラズパイに計測したデータを送る用
  • 3:NC 何も使いません
  • 4:GND 電気の逃げ道用

となっております

DHT22の1~4をブレッドボードの「e8」から順に差し込んできます

ここから一気に完成の図になってしまいますが、説明していきます

ラズパイの左上は3.3V電源を流すポートとなっているので、ここと、ブレッドボード「+(ここからブレッドボードに電流が流されます)」部分を繋げます
黄色いジャンプワイヤー(見やすくするため)で「+」と1番ポートを繋げるために、「+」と「8a」に挿します
「8c」と「9c」に抵抗器を差し込みます
ラズパイの3つのジャンプワイヤーの内、真ん中が23ピン(汎用的に使える)で、ここと「9a」を繋げます
ラズパイの左下はGNDとなっているので、ここと「11a」を繋げます

これで配線は終わりです

後は電源を入れてプログラムをインストールします

sudo git clone https://github.com/adafruit/Adafruit_Python_DHT.git
cd Adafruit_Python_DHT
sudo python setup.py install

少しコードを変更します
cd examples
chmod 777 simpletest.py
(権限めんどくさかったのでとりあえず777)
vi simpletest.py

以下の図のようにpinを22から23に変更して保存します(23ピンに接続しているので)

から

実行します
python simpletest.py

このように出力がされました

作業部屋にある時計の温度計と比較してみると

 

まあまあまあ誤差程度ですね

さて、これだけだとただの温度計と変わりありませんね
これと…何かを連携しましょう、これがラズパイの醍醐味です
温度が一定以上になったら通知されるようにする等々….
次回の続記事にご期待ください!

 


【記事への感想募集中!】

記事への感想・ご意見がありましたら、ぜひフォームからご投稿ください!
  • こんな記事が読んでみたい、こんなことが知りたい、調べてほしい!という意見も募集中!
  • いただいた感想は今後の記事に活かしたいと思います!

感想フォームはこちら


【テクノデジタルではエンジニア/デザイナーを積極採用中です!】

下記項目に1つでも当てはまる方は是非、詳細ページへ!
  • 自分でアプリを作ってみたい
  • ITで世の中にワクワクを生み出したい
  • 使いやすさ、デザインにこだわったWebサイトを開発したい

採用情報の詳細はこちら


Qangaroo(カンガルー)

  • 徹底した見やすさと優れた操作性で、テストの「見える化」を実現。
  • テストの進捗が見える。開発がスマートに進む。
  • クラウド型テスト管理ツール『Qangaroo(カンガルー)』

【テクノデジタルのインフラサービス】

当社では、多数のサービスの開発実績を活かし、
アプリケーションのパフォーマンスを最大限に引き出すインフラ設計・構築を行います。
AWSなどへのクラウド移行、既存インフラの監視・運用保守も承りますので、ぜひご相談ください。
詳細は下記ページをご覧ください。

https://www.tcdigital.jp/infrastructure/

最近の記事