4.2.7 温度湿度計
4.2.7.1 概要

このプロジェクトでは、Micro:bitボード、ゲームパッド、XHT11温湿度センサー、OLEDディスプレイを使用して温湿度監視システムを構築します。XHT11センサーは周囲の温度と湿度を測定し、OLEDディスプレイはリアルタイムで測定値を更新します。ゲームパッドのコントローラーボードは回路拡張と安定した接続を容易にし、システムがシンプルな温度計として機能することを可能にします。

4.2.7.2 コンポーネント知識

XHT11 温湿度センサー

XHT11温湿度センサーはデジタル信号を出力し、特殊なアナログ信号取得と変換、高度な温湿度センシング技術を採用して、優れた長期安定性と高い信頼性を保証します。
高精度抵抗式湿度センサーとサーミスタ温度センサーを内蔵し、8ビット高性能マイクロコントローラーと統合されています。
XHT11 通信モード:
簡素化されたシングルバス通信を採用しています。シングルバスは単一のデータラインで構成され、システム内のすべてのデータ交換と制御操作がこれを通じて実行されます。
シングルバス伝送データビット:
シングルバスデータ形式: 40ビットのデータを一度に送信し、上位ビットが最初です。
8ビット整数湿度データ + 8ビット小数湿度データ + 8ビット整数温度データ + 8ビット小数温度データ + 8ビットパリティビット。
注: 湿度の小数部分は0です。
パリティビット:
8ビット整数湿度データ + 8ビット小数湿度データ + 8ビット整数温度データ + 8ビット小数温度データ
8ビットパリティビットは結果の最後の8ビットです。

XHT11温湿度センサーのデータシーケンス図:
ユーザーホスト(MCU)がスタート信号を送信した後、XHT11は低電力モードから高速モードに切り替わり、この信号が終了した後、XHT11は応答信号と40ビットのデータを送信し、信号取得をトリガーします。
信号は図のように送信されます:

⚠️ ヒント: ホストがXHT11センサーから読み取る温湿度データは、常に前回の測定値です。2回の測定間隔が長い場合は、2回連続して読み取ってください。2回目の値が実際の値になります。
回路図:

パラメータ:
動作電圧: DC 3V~5V
動作電流: (最大)2.5mA
最大電力: 0.0125W
温度範囲: -25 ~ +60°C (±2℃)
湿度範囲: 5 ~ 95%RH(25C°付近での精度は±5%RH)
出力信号: デジタル双方向シングルバス
OLED ディスプレイ

OLEDは、豊かな色彩再現、高いコントラスト、広い視野角といった優れた利点を提供します。画像は鮮明で鮮やかで、特に黒が際立っています。各ピクセルはバックライトを必要とせず自己発光するため、消費電力は比較的低いです。0.9インチのOLEDスクリーンは、コンパクトなサイズ、高解像度(128×64ピクセル)、低消費電力という特徴を持ち、組み込みシステムやウェアラブルデバイスでのアプリケーションに最適です。
⚠️ 注: このOLEDディスプレイの場合、SDAインターフェースはMicro:bitボードのP20ピンに接続され、SCLはP19ピンに接続されます。
パラメータ:
動作電圧: DC 3V - 5V
動作電流: 30mA
インターフェース: 2.54mmピッチのピン
通信モード: I2C通信
内部駆動チップ: SSD1306
解像度: 128×64
視野角: 150°以上
4.2.7.3 必要な部品
|
|
|
|---|---|---|
micro:bit V2 ボード (自己調達) ×1 |
micro:bit スマートゲームパッド (組み立て済み) ×1 |
単4電池 (自己調達) ×4 |
|
|
|
XHT11 温湿度センサー (自己調達)×1 |
OLED ディスプレイ (自己調達)×1 |
F-F デュポンワイヤー(自己調達) x7 |
4.2.7.4 配線図

上記のように配線した後、micro:bitをゲームパッドコントロールボードのスロットに挿入します。
OLED ディスプレイ |
micro:bit ゲームパッドコントロールボード |
micro:bit ボードピン |
|---|---|---|
GND |
GND |
GND |
VCC |
3V |
3V |
SDA |
SDA |
P20 |
SCL |
SCL |
P19 |
XHT11 温湿度センサー |
micro:bit ゲームパッドコントロールボード |
micro:bit ボードピン |
|---|---|---|
G |
GND |
GND |
V |
3V |
3V |
S |
12 |
P12 |
4.2.7.5 コードフロー

4.2.7.6 テストコード
⚠️ ここではOLEDとDHT11ライブラリが含まれているため、https://github.com/keyestudio/pxt-environment-kit-masterをインポートする必要があります。
完全なコード:


簡単な説明:
① OLEDのピクセルを初期化してクリアし、5×5LEDマトリックスに
を表示させ、温度と湿度の値を0に定義します。

② XHT11センサーの対応する測定値を変数temperatureとhumidityに割り当てます。

③ OLEDにXHT11センサーの測定値を表示します。

④ 500ms(0.5秒)遅延させます。

4.2.7.7 テスト結果

コードを書き込んだ後、micro:bitボードをゲームパッドのスロットに挿入し(電池が取り付けられていることを確認)、「ON」に切り替えます。
micro:bitボードにコードをアップロードすると、OLEDにXHT11センサーが読み取った温度と湿度がリアルタイムで表示されます。

ヒント: ボードが応答しない場合は、micro:bitボードの背面にあるリセットボタンを押してください。





