Raspberry PiとDS18B20でマルチセンサー温度・光監視システムを構築
Raspberry PiとDS18B20でマルチセンサー温度・光監視システムを構築
必要なもの
- 2×DS18B20デジタル温度センサー
- 2×4.7kΩプルアップ抵抗
- 標準ブレッドボード、ジャンパーワイヤー、Piからの3.3V電源
- オプション: 47Ω抵抗、1×LED、メス-オスジャンパーワイヤー(インジケーター用)
DS18B20と1-Wireプロトコルの理解
DS18B20は、1-Wireプロトコルのおかげで複数のデバイスが単一GPIOピンを共有できる高信頼性センサーです。各センサーは独自のアドレスを持つため、Raspberry Piはそれぞれを独立して読み取れます。
ブレッドボードのセットアップ
ほとんどのブレッドボードには電源レールのペアがあります—赤が+3.3V、青がGND。これらのレールは、それぞれの側面に接続されたすべてのワイヤーを接続するため、後でコンポーネントを追加しやすくなります。
ボードの中央部分は、垂直ギャップで2つの半分に分割された行で構成されます。行の片側にワイヤーを接続すると、その側の他のすべてのピンにリンクしますが、反対側の半分にはリンクしません。
DS18B20のピンアウトは:
- ピン1: GND
- ピン2: データ(PiのGPIO4に接続)
- ピン3: VDD(3.3V)
ピン2とピン3の間に4.7kΩ抵抗を配置して必要なプルアップを提供。ピン1を青のGNDレールに、ピン3を赤の3.3Vレールに配線。2つ目のセンサーも同じセットアップで繰り返します。
Piのプログラミング
Raspbian SDカードを挿入し、Piの電源を入れ、ターミナルを開きます。デフォルト認証情報(pi / raspberry)でログインし、実行:
sudo python dstemp.py
初回実行では必要なドライバーがロードされ、以降の実行では数秒ごとに各センサーからの温度読み取り値が表示されます。
センサー動作の確認
- センサーに触れると徐々に読み取り値が上昇。
- 温風を吹きかけたりヘアドライヤーを使用すると上昇が加速。
- 氷を当てると温度が急速に低下。
- 時折、外れ値(例: 0.06℃)が現れるが、通常は一時的。
Ctrl+Cで終了。
2つ目のセンサーを追加
Piの電源を切った状態(sudo halt)で、2つ目のDS18B20をブレッドボードに挿入し、ピンを上記のように接続してから再度電源投入。sudo python dstemp.pyを実行すると、両デバイスからの読み取り値が表示されるはずです。
LEDインジケーターを追加
センサー1が25℃を超えたときにLEDを点灯させるには、以下のコンポーネントを追加:
- GPIO 24からLEDのアノード(長い足)へのメス-オスジャンパー
- LED(任意の色)
- LEDのカソード(平らな側)から青のGNDレールへの47Ω抵抗
Pythonスクリプトを変更してセンサー1を監視し、GPIO 24を適切に切り替えるようにします。配線中はPiの電源を切った状態にしてください。
製造プロセス
- 5ドルI2C温度センサーで作るRaspberry Pi温度ロガー
- 複数DS18B20 1-WireセンサーをRaspberry Pi接続で精密温度監視
- Raspberry PiとDS18B20によるプロフェッショナルな温度監視
- Raspberry PiでTMP006赤外線温度センサーを使う – Pythonライブラリとセットアップガイド
- Raspberry PiとPythonでリモート温度センサーを構築 – ステップバイステップガイド
- EzTempでRaspberry Pi上の温度・湿度をシームレスに監視
- Raspberry Piでサーバークローゼットの温度を正確に監視
- DS1820ワンワイヤー温度センサーをGPIOでRaspberry Piに接続する方法
- Raspberry PiでPIRモーションセンサーとLEDを制御
- DS18B20ワンワイヤーデジタル温度計をRaspberry Piに接続 - ステップバイステップガイド
- Raspberry Piで低コスト土壌水分センサーを構築 - スマート灌漑に活用