0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ラズパイ入門まとめ:DHT11 温湿度センサ & PIR 人感センサ + LED

0
Posted at

ラズパイ入門まとめ:DHT11 温湿度センサ & PIR 人感センサ + LED

Raspberry Pi の定番テーマを、実際にコードを動かしながらまとめて解説します。この記事では DHT11 温湿度センサ/PIR 人感センサ + LED の2テーマを扱います。

各テーマは ブラウザ上の仮想Raspberry Piシミュレーターで、コードを編集しながら自分で動かせます。

1. DHT11 温湿度センサ

概要

1-wire方式のDHT11から温度と湿度を2秒ごとに読み取る。ブラウザ上の仮想Raspberry Piで、実際にコードを動かしながら挙動を確認できます。

プログラムの内容(ざっくり)

1-wire方式のDHT11から温度と湿度を2秒間隔で読み取って表示します。

# === DHT11 温湿度センサ ===
# DHT11から温度・湿度を読み取る。DHT11は2秒間隔での読み取りが目安。

import time

while True:
    t, h = dht.read()
    print(f"温度 = {t}℃  湿度 = {h}%")
    time.sleep(2)

配線

配線図(DHT11)

GPIO4 ── DHT11 DATA(10kΩでプルアップ)
3V3 ── VCC / GND ── GND

シェルの出力

実行すると、Pi側と相手デバイス側に次のような出力がリアルタイムで流れます。

🍓 Raspberry Pi シェル

pi@raspberrypi:~ $ python app.py
温度 = 24.6℃  湿度 = 51%
温度 = 24.3℃  湿度 = 50%
温度 = 24.3℃  湿度 = 50%
温度 = 24.6℃  湿度 = 50%

計測値(温度(℃))の推移:

chart

コードを編集したらどうなるか

読み取り間隔を変えたり、一定の温湿度を超えたら警告を出す処理を追加できます。DHT22にすればより高精度になります。

まとめ

安価な温湿度センサーの定番です。1本の信号線で温度と湿度を取得できます。


Raspi 仮想シミュレーターのライブ実行結果から生成。ブラウザ上で自分でコードを編集して試せます。


2. PIR 人感センサ + LED

概要

人の動きを検知するとLEDが点灯。検知は一定間隔で発生する。ブラウザ上の仮想Raspberry Piで、実際にコードを動かしながら挙動を確認できます。

プログラムの内容(ざっくり)

PIR人感センサが動きを検知するとLED(GPIO17)を点灯し、検知回数を数えます。検知は一定間隔で発生します。

# === PIR人感センサ + LED ===
# 人の動きを検知したらLED(GPIO17)を点灯し、検知回数をカウントする。

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)

count = 0
while True:
    if pir.motion():
        count += 1
        GPIO.output(17, GPIO.HIGH)
        print(f"動体検知! ({count}回目)")
    else:
        GPIO.output(17, GPIO.LOW)
    time.sleep(0.3)

配線

配線図(PIR HC-SR501)

GPIO23 ── PIR OUT
GPIO17 ──[330Ω]──▶|(検知LED)── GND
5V ── VCC / GND ── GND

シェルの出力

実行すると、Pi側と相手デバイス側に次のような出力がリアルタイムで流れます。

🍓 Raspberry Pi シェル

pi@raspberrypi:~ $ python app.py
動体検知! (1回目)
動体検知! (2回目)
動体検知! (3回目)
動体検知! (4回目)
動体検知! (5回目)
動体検知! (6回目)
動体検知! (7回目)
動体検知! (8回目)
動体検知! (9回目)
動体検知! (10回目)
動体検知! (11回目)

🚶 PIRセンサ

OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知
OUT=HIGH  動き検知

コードを編集したらどうなるか

検知後の点灯保持時間を追加したり、一定回数で通知する処理を加えられます。感度や遅延はセンサー側の調整とも組み合わせます。

まとめ

人の動きをトリガーにする定番です。防犯灯や自動点灯照明の基本です。


Raspi 仮想シミュレーターのライブ実行結果から生成。ブラウザ上で自分でコードを編集して試せます。


おわりに

どちらもラズパイの基礎として役立つテーマです。気に入ったらLGTM・ストックしていただけると励みになります。他のテーマも順次まとめていきます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?