6.8 KiB
温度を測定する - Raspberry Pi
このレッスンのこの部分では、Raspberry Pi に温度センサーを追加します。
ハードウェア
使用するセンサーは DHT11 湿度・温度センサー です。このセンサーは 2 つのセンサーを 1 つのパッケージに組み合わせたものです。これは非常に一般的で、温度、湿度、時には気圧を組み合わせた市販のセンサーが数多く存在します。温度センサーのコンポーネントは負の温度係数(NTC)サーミスタで、温度が上昇すると抵抗が減少する特性を持っています。
このセンサーはデジタルセンサーであり、温度と湿度のデータを含むデジタル信号を生成するオンボード ADC を備えています。この信号をマイクロコントローラーが読み取ることができます。
温度センサーを接続する
Grove 温度センサーを Raspberry Pi に接続できます。
タスク
温度センサーを接続する
-
Grove ケーブルの片方の端を湿度・温度センサーのソケットに差し込みます。ケーブルは一方向にしか差し込めません。
-
Raspberry Pi の電源を切った状態で、Grove ケーブルのもう一方の端を Pi に接続された Grove Base Hat のデジタルソケット D5 に接続します。このソケットは GPIO ピンの隣のソケット列の左から 2 番目にあります。
温度センサーをプログラムする
これで、接続された温度センサーを使用するようにデバイスをプログラムできます。
タスク
デバイスをプログラムする
-
Pi の電源を入れ、起動を待ちます。
-
VS Code を起動します。Pi 上で直接起動するか、Remote SSH 拡張機能を使用して接続します。
⚠️ 必要に応じて、レッスン 1 の VS Code のセットアップと起動に関する手順を参照してください。
-
ターミナルから、
pi
ユーザーのホームディレクトリにtemperature-sensor
という新しいフォルダを作成します。このフォルダ内にapp.py
というファイルを作成します:mkdir temperature-sensor cd temperature-sensor touch app.py
-
このフォルダを VS Code で開きます。
-
温度・湿度センサーを使用するには、追加の Pip パッケージをインストールする必要があります。VS Code のターミナルから、以下のコマンドを実行して Pi に Pip パッケージをインストールします:
pip3 install seeed-python-dht
-
必要なライブラリをインポートするために、以下のコードを
app.py
ファイルに追加します:import time from seeed_dht import DHT
from seeed_dht import DHT
ステートメントは、seeed_dht
モジュールから Grove 温度センサーとやり取りするためのDHT
センサークラスをインポートします。 -
上記のコードの後に、温度センサーを管理するクラスのインスタンスを作成するための以下のコードを追加します:
sensor = DHT("11", 5)
これは、Digital Humidity and Temperature センサーを管理する
DHT
クラスのインスタンスを宣言します。最初のパラメータは、使用しているセンサーが DHT11 センサーであることをコードに伝えます。使用しているライブラリは、このセンサーの他のバリエーションもサポートしています。2 番目のパラメータは、センサーが Grove Base Hat のデジタルポートD5
に接続されていることをコードに伝えます。✅ すべてのソケットには固有のピン番号があります。ピン 0、2、4、6 はアナログピン、ピン 5、16、18、22、24、26 はデジタルピンです。
-
上記のコードの後に無限ループを追加し、温度センサーの値をポーリングしてコンソールに出力します:
while True: _, temp = sensor.read() print(f'Temperature {temp}°C')
sensor.read()
の呼び出しは、湿度と温度のタプルを返します。必要なのは温度値だけなので、湿度は無視します。その後、温度値をコンソールに出力します。 -
ループの最後に 10 秒間のスリープを追加します。温度レベルを継続的にチェックする必要はありません。スリープを追加することで、デバイスの消費電力を削減できます。
time.sleep(10)
-
VS Code のターミナルから、以下を実行して Python アプリを実行します:
python3 app.py
コンソールに温度値が出力されるのが確認できるはずです。センサーを温めるために、親指で押さえたり、ファンを使用したりして値が変化するのを確認してください:
pi@raspberrypi:~/temperature-sensor $ python3 app.py Temperature 26°C Temperature 26°C Temperature 28°C Temperature 30°C Temperature 32°C
💁 このコードは code-temperature/pi フォルダにあります。
😀 温度センサーのプログラムが成功しました!
免責事項:
この文書は、AI翻訳サービス Co-op Translator を使用して翻訳されています。正確性を期すよう努めておりますが、自動翻訳には誤りや不正確な部分が含まれる可能性があります。元の言語で記載された原文が公式な情報源と見なされるべきです。重要な情報については、専門の人間による翻訳を推奨します。本翻訳の使用に起因する誤解や誤認について、当方は一切の責任を負いません。