複合センサー

| コメント(0)

 ちょっとグレードアップしました。

BME280使用環境モニタ
 BME280使用環境モニタ

 前回に気温・湿度センサーであるDHT22を用いてモニタリングするものを作りましたが、今回はセンサー部を変更して気温・湿度に加えて大気圧を測定できるセンサーBME280を用いてモニタリングできるようにしました。
 センサーは3.3V使用なのですが、LDOレギュレーターにMOSFETを用いて5V信号をやり取りできる回路を付加したものです。元々のセンサーが小さいのもありますが、全ての部品が表面実装の小さい部品ばかりなのでモジュール基板も極小です。

BME280モジュール
 BME280モジュール基板

 センサーとのデータ授受にはI2Cを用いますが、センサーを使用するためにライブラリがありましたので有難くそちらを使わせて頂きました。ライブラリのデフォルトのI2Cアドレスが0x77だったのですがモジュールは0x77ですので、その部分だけ使用前に別途設定するようにすればサンプル・スケッチのままでほぼ手を加える必要はありませんでした。
 BOSCH製のBME280センサーのレスポンスがDHT22に比べると大変早く、分解能も高いため、少しの変化でも数値が変化します。センサーのドキュメントによると部屋のドア開閉程度でも気圧変化を得られるそうで、hPaではなくPaの桁で測定データを読み出せます。これは机の上下の気圧差が得られるぐらいで、ノイズや外来要因で数値が目紛しく変化してしまい表示がちらつきます。
 サンプル・スケッチでは50msで回していましたが、ぜんぜん落ち着かないので測定を5秒に1回としました。用途的にセンサーの能力を使い切るほどの桁精度が不要ですね。

 今回はI2Cのデバイスが複数繋がるため+5V・GND・SCL・SDAをバス接続できる子基板(便利小物(#11))を作ってそちら経由でArduinoと接続しました。
 単に4列のヘッダピンでそれぞれの列が繋がっているだけですが、I2Cを使う上で複数のデバイスとやり取りする場合には必須なのかもしれません。

コメントする

投稿ボタンは1回だけクリックしてください。
システムレスポンスが悪い場合はかなり時間がかかる時がありますので、その節はご容赦ください。