BMP180 یک سنسور اندازه گیری فشار هوا می باشد که قابلیت اندازه گیری فشار 300 تا 1100 پاسکال را دارد . دقت این سنسور بالا بوده لذا می توان از آن برای اندازه گیری ارتفاع استفاده نمود . این سنسور مصرف جریان بسیار پایینی دارد به صورتی که در حالت 1 نمونه بر ثانیه تنها 5uA جریان مصرف میکند . می توان از این سنسور در گجت های پرتابل استفاده کرد . همچنین دارای یک سنسور دمای داخلی است که شما را از استفاده از سنسور دما بی نیاز می کند . در این آموزش قصد داریم به نحوه راه اندازی ماژول BMP180 بپردازیم . ماژول BMP180 در واقع یک هدر برد سنسور BMP180 است که امکان اتصال راحت آن به برد بورد را فراهم می سازد . این سنسور دارای رابط I2C است که می توان آن را با طیف وسیعی از میکروکنترلر ها راه اندازی نمود . مقدار خروجی فشار این مازول 19 بیتی و دمای آن 16 بیتی است . BMP180 امکان اندازه گیری ارتفاع با دقت یک متر را فراهم میکند .
در تصویر زیر پایه های این ماژول نشان داده است :
پین های VCC و GND به ترتیب پین های تغذیه و زمین ماژول هستند . همچنین پین های SCL و SDA مربوط به ارتباط I2C می باشند .
راه اندازی ماژول BMP180 با آردوینو :
#include <Wire.h> #include <Adafruit_BMP085.h> #define seaLevelPressure_hPa 1013.25 Adafruit_BMP085 bmp; void setup() { Serial.begin(9600); if (!bmp.begin()) { Serial.println("Could not find a valid BMP085 sensor, check wiring!"); while (1) {} } } void loop() { Serial.print("Temperature = "); Serial.print(bmp.readTemperature()); Serial.println(" *C"); Serial.print("Pressure = "); Serial.print(bmp.readPressure()); Serial.println(" Pa"); Serial.print("Altitude = "); Serial.print(bmp.readAltitude()); Serial.println(" meters"); Serial.print("Pressure at sealevel (calculated) = "); Serial.print(bmp.readSealevelPressure()); Serial.println(" Pa"); Serial.print("Real altitude = "); Serial.print(bmp.readAltitude(seaLevelPressure_hPa * 100)); Serial.println(" meters"); Serial.println(); delay(500); }