Grove - 気圧センサー (BMP180)
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
これは、Bosch BMP180 高精度・低消費電力のデジタル気圧センサー用の Grove モジュールです。BMP180 は、300 から 1100 hPa の圧力測定範囲を持ち、高解像度モードでは 0.02 hPa までの精度を提供します。このセンサーは、高精度、耐久性、長期安定性を実現するために圧電抵抗技術に基づいています。このチップは 1.8V から 3.6V の入力電圧のみを受け付けますが、外部回路を追加することで、このモジュールは 3.3V および 5V に対応可能となります。そのため、Arduino/Seeeduino または Seeeduino Stalker で改造なしに使用できます。このモジュールは、I2C バスを介してマイクロコントローラーに直接接続するよう設計されています。
特徴
- デジタル 2 線式 (I2C) インターフェース
- 広い気圧測定範囲
- 柔軟な電源電圧範囲
- 超低消費電力
- 低ノイズ測定
- 工場出荷時に校正済み
- -40 から +85°C の動作範囲、±2°C の温度精度
- I2C アドレス: 0x77
複数の I2C デバイスを使用したい場合は、[Software I2C](https://wiki.seeedstudio.com/ja/Arduino_Software_I2C_user_guide/) を参照してください。
Grove モジュールの詳細については、[Grove System](https://wiki.seeedstudio.com/ja/Grove_System/) を参照してください。
応用例
- GPS ナビゲーションの強化
- 屋内および屋外ナビゲーション
- レジャーおよびスポーツ
- 天気予報
- 垂直速度指示 (上昇/下降速度)
仕様
項目 | 最小 | 標準 | 最大 | 単位 |
---|---|---|---|---|
電圧 | 3 | 5 | 5.5 | VDC |
電流 | 1.1 | / | 20 | uA |
圧力範囲 | 300 | / | 1100 | hPa |
高速 I2C データ転送 | / | / | 3.4 | MHZ |
寸法 | 40.1*20.2*9.7 | mm |
対応プラットフォーム
Arduino | Raspberry Pi |
---|---|
上記でサポートされていると記載されているプラットフォームは、モジュールのソフトウェアまたは理論的な互換性を示しています。ほとんどの場合、Arduino プラットフォーム用のソフトウェアライブラリまたはコード例のみを提供しています。すべての可能な MCU プラットフォーム用のソフトウェアライブラリやデモコードを提供することはできません。そのため、ユーザーは独自のソフトウェアライブラリを作成する必要があります。
はじめに
Arduinoで遊ぶ
ハードウェア
- ステップ 1. 以下のアイテムを準備してください:
Seeeduino V4.2 | Base Shield | Grove-Barometer_Sensor-BMP180 |
---|---|---|
今すぐ購入 | 今すぐ購入 | 今すぐ購入 |
- ステップ 2. Grove-Barometer_Sensor-BMP180をGrove-Base ShieldのI2Cポートに接続します。
- ステップ 3. Grove - Base ShieldをSeeeduinoに差し込みます。
- ステップ 4. USBケーブルを使用してSeeeduinoをPCに接続します。
Grove Base Shieldがない場合は、以下のように直接このモジュールをSeeeduinoに接続することもできます。
Seeeduino_v4 | Grove-Barometer_Sensor-BMP180 |
---|---|
5V | VCC |
GND | GND |
SDA | SDA |
SCL | SCL |
ソフトウェア
ステップ 1. ライブラリをGithubからダウンロードしてください。
ステップ 2. Arduinoライブラリのインストール方法を参照して、Arduino用のライブラリをインストールしてください。
ステップ 3. 新しいArduinoスケッチを作成し、以下のコードを貼り付けるか、次のパスから直接コードを開いてください: File -> Example -> Barometer_Sensor -> Barometer_Sensor。
以下はコードです:
#include "Barometer.h"
#include <Wire.h>
float temperature;
float pressure;
float atm;
float altitude;
Barometer myBarometer;
void setup(){
Serial.begin(9600);
myBarometer.init();
}
void loop()
{
temperature = myBarometer.bmp085GetTemperature(myBarometer.bmp085ReadUT()); // 温度を取得するには、bmp085ReadUTを最初に呼び出す必要があります
pressure = myBarometer.bmp085GetPressure(myBarometer.bmp085ReadUP()); // 気圧を取得
altitude = myBarometer.calcAltitude(pressure); // 補正なしの計算 - メートル単位
atm = pressure / 101325;
Serial.print("Temperature: ");
Serial.print(temperature, 2); // 小数点以下2桁を表示
Serial.println("deg C");
Serial.print("Pressure: ");
Serial.print(pressure, 0); // 整数のみを表示
Serial.println(" Pa");
Serial.print("Ralated Atmosphere: ");
Serial.println(atm, 4); // 小数点以下4桁を表示
Serial.print("Altitude: ");
Serial.print(altitude, 2); // 小数点以下2桁を表示
Serial.println(" m");
Serial.println();
delay(1000); // 1秒待って再度値を取得
}
ステップ 4. シリアルモニターを開き、温度、気圧値、相対気圧、標高などのセンサーのデータを受信してください。
Raspberry Piで遊ぶ
ハードウェア
- ステップ 1. 以下のアイテムを準備してください:
Raspberry Pi | GrovePi_Plus | Grove-Barometer_Sensor-BMP180 |
---|---|---|
今すぐ購入 | 今すぐ購入 | 今すぐ購入 |
- ステップ 2. GrovePi_PlusをRaspberry Piに差し込みます。
- ステップ 3. Grove-Barometer_Sensor-BMP180をGrovePi_PlusのI2Cポートに接続します。
- ステップ 4. USBケーブルを使用してRaspberry PiをPCに接続します。
ソフトウェア
- ステップ 1. ソフトウェアの設定を参照して開発環境を構築してください。
- ステップ 2. Githubリポジトリをクローンしてください。
cd ~
git clone https://github.com/DexterInd/GrovePi.git
- ステップ 3. 以下のコマンドを実行してこのセンサーを使用してください。
cd ~/GrovePi/Software/Python/grove_barometer_sensors/barometric_sensor_bmp180
python grove_i2c_barometic_sensor_example.py
#!/usr/bin/python
import time
import smbus
import RPi.GPIO as GPIO
#import grovepi
from grove_i2c_barometic_sensor_BMP180 import BMP085
# ===========================================================================
# サンプルコード
# ===========================================================================
# BMP085を初期化し、STANDARDモード(デフォルト値)を使用
# bmp = BMP085(0x77, debug=True)
bmp = BMP085(0x77, 1)
# 別の動作モードを指定する場合は、以下のいずれかをコメント解除してください:
# bmp = BMP085(0x77, 0) # ULTRALOWPOWERモード
# bmp = BMP085(0x77, 1) # STANDARDモード
# bmp = BMP085(0x77, 2) # HIRESモード
# bmp = BMP085(0x77, 3) # ULTRAHIRESモード
rev = GPIO.RPI_REVISION
if rev == 2 or rev == 3:
bus = smbus.SMBus(1)
else:
bus = smbus.SMBus(0)
while True :
temp = bmp.readTemperature()
# 現在の気圧レベルを読み取る
pressure = bmp.readPressure()
# 推定平均海面気圧(1013.25 hPa)に基づいて標高を計算するには、以下のように関数を呼び出しますが、これはあまり正確ではありません
# altitude = bmp.readAltitude()
# より正確な標高を指定するには、正しい平均海面気圧レベルを入力してください。例えば、現在の気圧レベルが1023.50 hPaの場合は、102350を入力してください(小数点以下2桁を含む整数値)
altitude = bmp.readAltitude(101560)
print("Temperature: %.2f C" % temp)
print("Pressure: %.2f hPa" % (pressure / 100.0))
print("Altitude: %.2f m" % altitude)
time.sleep(.1)
- ステップ 4. 結果は以下の通りです:
回路図オンラインビューア
リソース
- [Eagle] Grove - Barometer Sensor(BMP180) Eagle ファイル
- [ライブラリ] Barometer_Sensor ライブラリ
- [データシート] BMP180 データシート
- [高度と気圧の関係] 以下は海抜高度と気圧の関係を示す参考グラフです。
プロジェクト
Blynk を使用した天気とセキュリティステーション:Blynk と CC32000 LaunchPad を使用して、天気とセキュリティをリモートで監視します!
技術サポート & 製品ディスカッション
産業用センサーへのアップグレード
SenseCAP S2110 コントローラー と S2100 データロガー を使用することで、Grove を簡単に LoRaWAN® センサーに変えることができます。Seeed はプロトタイピングをサポートするだけでなく、SenseCAP シリーズの堅牢な産業用センサーを使用してプロジェクトを拡張する可能性も提供します。
IP66 ハウジング、Bluetooth 設定、グローバル LoRaWAN® ネットワークとの互換性、内蔵 19 Ah バッテリー、そして強力なアプリサポートにより、SenseCAP S210x は産業用途に最適な選択肢となります。このシリーズには、土壌水分、空気温度と湿度、光強度、CO2、EC、そして 8-in-1 気象ステーション用センサーが含まれています。次の成功する産業プロジェクトには、最新の SenseCAP S210x をお試しください。