在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用BMP180進(jìn)行溫度壓力和高度測(cè)量

454398 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-05 10:12 ? 次閱讀

BMP180 是博世Sensortec的新一代數(shù)字氣壓和溫度傳感器。在本教程中,我們將簡(jiǎn)要回顧該設(shè)備并描述如何將其與Arduino Uno板連接以測(cè)量周圍的溫度和壓力。我們還將討論從壓力讀數(shù)中檢索傳感器高度的問題。

使用BMP180的溫度,壓力和高度測(cè)量

實(shí)驗(yàn)設(shè)置

Bosch Sensortag的BMP180是一款超低功耗數(shù)字溫度和壓力傳感器,具有高精度和穩(wěn)定性。它由壓阻傳感器,模數(shù)轉(zhuǎn)換器,帶EEPROM和串行I2C接口的控制單元組成.BMP180傳感器對(duì)壓力和溫度的原始測(cè)量必須使用校準(zhǔn)數(shù)據(jù)補(bǔ)償溫度影響和其他參數(shù)。保存到EEPROM中。在本教程中,我們將使用Arduino開發(fā)板從BMP180傳感器讀取溫度和氣壓測(cè)量值,并在基于1.44英寸ILI9163的TFT顯示器上顯示數(shù)據(jù)。如果您想重復(fù)此實(shí)驗(yàn),則需要做以下事情。

1。任何以3.3V電壓運(yùn)行的Arduino開發(fā)板 。我正在使用Elecrow的 Crowduino Uno 板,它具有一個(gè)板載滑動(dòng)開關(guān),可在3.3V至5.0V之間選擇工作電壓。如果要使用此板,請(qǐng)確保將開關(guān)滑動(dòng)到3.3V位置。

Elecrow的Crowduino Uno板

2。 BMP180傳感器模塊

BMP180傳感器突破模塊

3。基于ILI9163的TFT顯示屏 (我使用的是Elecrow的1.44“尺寸顯示屏)。

1.44” TFT顯示屏(ILI9163驅(qū)動(dòng)程序)

4。 一塊面包板和少量跳線,用于將傳感器和顯示器連接到Arduino板上。

下圖描述了本教程的實(shí)驗(yàn)設(shè)置。 BMP180和TFT顯示屏均由3.3V供電。 BMP180支持I2C接口,因此SDA和SCL引腳連接到Arduino板的A4和A5引腳。 ILI9163 TFT驅(qū)動(dòng)器支持SPI接口。下圖右側(cè)所示的表描述了顯示器和Arduino之間的接線。 I2C和SPI引腳名稱印在BMP180和TFT顯示模塊的底層絲網(wǎng)上。

o4YBAF3XGfGAMklXAAEwRNsfB2g403.jpg

傳感器和顯示設(shè)置

這是在實(shí)驗(yàn)板上進(jìn)行的該實(shí)驗(yàn)的實(shí)際設(shè)置。

與Arduino的BMP180傳感器連接

Arduino固件

對(duì)于傳感器讀數(shù),我使用的是Love Electronics Ltd.的BMP180 Arduino庫(kù)(我不確定這家公司現(xiàn)在是否存在,或者它在庫(kù)中的含義是不是) 。您需要下載它(下面提供的鏈接)并將此庫(kù)安裝到Arduino/庫(kù)/位置。

下載BMP180庫(kù)

用于ILI9163 TFT LCD,我正在使用另一個(gè)免費(fèi)的開源Arduino庫(kù)TFT_ILI9163C,您可以從以下鏈接下載。

下載TFT_ILI9163C Arduino庫(kù)

TFT庫(kù)將Adafruit_GFX庫(kù)用于字體,因此您也需要下載并安裝它。

下載Adafruit_GFX_Library

這兩個(gè)庫(kù)都安裝好了為Arduino編寫固件。我在下面編寫和共享的固件以攝氏度和華氏度為單位顯示溫度,以毫巴和inHg為單位的大氣壓力。為了計(jì)算傳感器高度,我們需要了解以下部分中討論的參考表面壓力值。

關(guān)于檢索傳感器高度的重要說(shuō)明

請(qǐng)注意,BMP180傳感器提供溫度和壓力的絕對(duì)測(cè)量值,但不提供海拔高度的直接輸出。由于大氣壓力隨高度降低,因此您可以通過了解地面的參考?jí)毫χ祦?lái)找出傳感器的垂直位移。例如,為了從海平面計(jì)算傳感器高度,您需要知道您當(dāng)?shù)氐漠?dāng)前平均海平面壓力。平均海平面壓力不是恒定的,而是隨環(huán)境溫度和天氣模式而變化。找出當(dāng)前海平面壓力的最簡(jiǎn)單方法是查看您最近的機(jī)場(chǎng)或國(guó)家氣象服務(wù)的網(wǎng)站。他們通常每小時(shí)大約在其網(wǎng)站上更新一次。我住在弗吉尼亞州的威廉斯堡,我從Weather.gov網(wǎng)站檢查了平均海平面壓力。在我進(jìn)行此實(shí)驗(yàn)時(shí),平均海平面壓力為1027.7毫巴或102770帕斯卡。在下面的Arduino代碼中( float seaLevelPressure = 102770; ),我使用此值作為平均海平面壓力,并使用傳感器讀取壓力的差值和該值來(lái)計(jì)算傳感器位置的高度,那是我在弗吉尼亞州威廉斯堡的房子的二樓。因此,為了計(jì)算傳感器位置的高度,您必須用當(dāng)前的本地海平面壓力值(帕斯卡)(1毫巴= 100帕斯卡)替換該值。有了本地海平面壓力的知識(shí),下面的Arduino固件也以英尺和米為單位顯示海平面上方的高度。

o4YBAF3XGgaAWzueAAJhAwdLoEc765.jpg

平均海平面壓力數(shù)據(jù)

這是此項(xiàng)目的完整Arduino代碼。我建議使用下面的下載文件,而不是從此處復(fù)制和粘貼代碼,這有時(shí)無(wú)法正常工作。

#include

#include

#include

#include

#include // Define pins for ILI9163 SPI display

#define __CS 10

#define __DC 9 // Labeled as A0 in some modules

#define __RST 8

// Connect SDA to Arduino pin 11 (MOSI), and SCK to 13 (SCK) // Color definitions

#define BLACK 0x0000

#define BLUE 0x001F

#define RED 0xF800

#define GREEN 0x07E0

#define CYAN 0x07FF

#define MAGENTA 0xF81F

#define YELLOW 0xFFE0

#define WHITE 0xFFFF

#define TRANSPARENT -1

TFT_ILI9163C display = TFT_ILI9163C(__CS, __DC, __RST); // Store an instance of the BMP180 sensor.

BMP180 barometer;

// Store the current sea level pressure at your location in Pascals.

float seaLevelPressure = 102770; // Williamsburg, VA on Dec 31, 2014, 14:54 Eastern Time void setup()

{

display.begin();

display.setBitrate(24000000);

display.setRotation(2);

display.clearScreen();

// We start the serial library to output our messages.

Serial.begin(9600);

// We start the I2C on the Arduino for communication with the BMP180 sensor.

Wire.begin();

// We create an instance of our BMP180 sensor.

barometer = BMP180();

// We check to see if we can connect to the sensor.

if(barometer.EnsureConnected())

{

Serial.println(“Connected to BMP180.”); // Output we are connected to the computer.

// When we have connected, we reset the device to ensure a clean start.

barometer.SoftReset();

// Now we initialize the sensor and pull the calibration data.

barometer.Initialize();

}

else

{

Serial.println(“No sensor found.”);

}

} void loop()

{

if(barometer.IsConnected)

{

// Retrive the current pressure in Pascals.

long currentPressureP = barometer.GetPressure();

float currentPressuremb = currentPressureP/100.0;

float currentPressureinHg = currentPressuremb*0.02953;

// Print out the Pressure.

Serial.print(“Pressure: ”);

Serial.print(currentPressureP);

Serial.println(“ Pa”);

Serial.print(“Pressure: ”);

Serial.print(currentPressuremb);

Serial.println(“ mbar”);

Serial.print(“Pressure: ”);

Serial.print(currentPressureinHg);

Serial.println(“ inHg”);

// Retrive the current altitude (in meters)。 Current Sea Level Pressure is required for this.

float altitudem = barometer.GetAltitude(seaLevelPressure);

float altitudeft = altitudem*3.2808;

// Print out the Altitude.

Serial.print(“ Altitude: ”);

Serial.print(altitudem);

Serial.print(“ m”);

Serial.print(“ Altitude: ”);

Serial.print(altitudeft);

Serial.print(“ ft”);

// Retrive the current temperature in degrees celcius.

float currentTemperatureC = barometer.GetTemperature();

float currentTemperatureF = (9.0/5.0)*currentTemperatureC+32.0;

// Print out the Temperature

Serial.print(“ Temperature: ”);

Serial.print(currentTemperatureC);

Serial.write(176);

Serial.print(“C”);

Serial.print(currentTemperatureF);

Serial.write(176);

Serial.print(“F”);

Serial.println(); // Start a new line.

// Now display results on LCD

display.fillScreen();

display.setCursor(0, 0);

display.setTextColor(WHITE);

display.setTextSize(1);

display.print(“BMP180 Sensor Demo”);

// Display temperature in F

display.setCursor(0, 16);

display.setTextColor(YELLOW);

display.setTextSize(2);

display.print(“T=”);

display.print(currentTemperatureF);

display.setTextSize(1);

display.print(“ o”);

display.setTextSize(2);

display.print(“F”);

// Display temperature in C

display.setCursor(24, 32);

display.print(currentTemperatureC);

display.setTextSize(1);

display.print(“ o”);

display.setTextSize(2);

display.print(“C”);

//Now display pressure in mbar

display.setCursor(0, 48);

display.setTextColor(CYAN);

display.setTextSize(2);

display.print(“P=”);

display.print(currentPressuremb,1);

display.print(“mb”);

// Display pressure in inHg

display.setCursor(24, 64);

display.setTextColor(CYAN);

display.print(currentPressureinHg,1);

display.print(“inHg”);

//Now display pressure in mbar

display.setCursor(0, 80);

display.setTextColor(WHITE);

display.setTextSize(2);

display.print(“H=”);

display.print(altitudeft,1);

display.print(“ft”);

// Display pressure in inHg

display.setCursor(24, 96);

display.setTextColor(WHITE);

display.print(altitudem,1);

display.print(“m”);

delay(5000); // Show new results every second.

}

}

在此處下載Arduino草圖

輸出

所示的傳感器高度大約是海拔88英尺,與此處發(fā)布的城市數(shù)據(jù)相比是正確的:http://en.wikipedia.org/wiki/威廉斯堡,_弗吉尼亞州

pIYBAF3XGlyAES5FAAGcSH2TtSo242.jpg

二樓測(cè)量值

傳感器對(duì)高度非常敏感。通過將傳感器放在我一樓的餐桌上進(jìn)行以下測(cè)量。高度降低了約8英尺,這似乎是合理的。

pIYBAF3XGmmAHQZDAAIEmsjOcss210.jpg

一樓的測(cè)量
責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2564

    文章

    52659

    瀏覽量

    764122
  • bmp180
    +關(guān)注

    關(guān)注

    2

    文章

    7

    瀏覽量

    11627
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    SDP810傳感器信號(hào)補(bǔ)償專題之高度修正(二)

    大氣壓隨海拔升高而降低。SDP傳感器校準(zhǔn)條件為海拔425米高度、大氣壓966毫巴。該傳感器基于微熱測(cè)量原理,使其成為本質(zhì)質(zhì)量流量傳感器。因此使用SDP進(jìn)行質(zhì)量流量測(cè)量時(shí)無(wú)需
    的頭像 發(fā)表于 05-19 13:26 ?107次閱讀
    SDP810傳感器信號(hào)補(bǔ)償專題之<b class='flag-5'>高度</b>修正(二)

    薄膜壓力分布測(cè)量系統(tǒng)鞋墊式足底壓力分布測(cè)試

    引言: 鞋墊式足底壓力分布測(cè)試系統(tǒng)是一種基于傳感器技術(shù)的高科技設(shè)備,通過嵌入鞋墊中的壓力傳感器,實(shí)時(shí)采集足底各個(gè)部位的壓力數(shù)據(jù),并將數(shù)據(jù)傳輸?shù)椒治鲕浖?b class='flag-5'>進(jìn)行處理和可視化。該系統(tǒng)能夠精確
    的頭像 發(fā)表于 02-24 16:24 ?389次閱讀
    薄膜<b class='flag-5'>壓力</b>分布<b class='flag-5'>測(cè)量</b>系統(tǒng)鞋墊式足底<b class='flag-5'>壓力</b>分布測(cè)試

    薄膜式壓力分布測(cè)量系統(tǒng)

    壓力映射技術(shù)為各個(gè)行業(yè)帶來(lái)突破,該系統(tǒng)利用高精度陣列式傳感器實(shí)時(shí)捕捉被測(cè)物體的壓力變化并以直觀圖形化界面呈現(xiàn),幫助工程師了解壓力分布數(shù)據(jù)并進(jìn)行優(yōu)化設(shè)計(jì)。 福普生
    的頭像 發(fā)表于 02-10 15:26 ?394次閱讀
    薄膜式<b class='flag-5'>壓力</b>分布<b class='flag-5'>測(cè)量</b>系統(tǒng)

    溫度探頭的測(cè)量范圍選擇

    溫度是工業(yè)過程中一個(gè)關(guān)鍵的參數(shù),它直接影響到產(chǎn)品質(zhì)量、生產(chǎn)效率和安全性。溫度探頭作為測(cè)量溫度的工具,其測(cè)量范圍的選擇直接關(guān)系到
    的頭像 發(fā)表于 01-20 09:54 ?705次閱讀

    水管行業(yè)生產(chǎn)制造配備的測(cè)量儀:測(cè)徑儀、壁厚儀、壓力儀…

    ,通過測(cè)量超聲波在管壁中的傳播時(shí)間來(lái)計(jì)算壁厚;磁性測(cè)厚儀主要用于鐵磁性材料的水管,利用磁性原理測(cè)量壁厚。 4、壓力測(cè)量儀 水壓試驗(yàn)機(jī):用于對(duì)水管進(jìn)行
    發(fā)表于 01-10 14:25

    溫度對(duì)電橋測(cè)量結(jié)果的影響

    溫度對(duì)電橋測(cè)量結(jié)果的影響是顯著的,主要體現(xiàn)在以下幾個(gè)方面: 一、電阻值變化 電橋電路中的電阻值會(huì)隨著溫度的變化而變化。通常,電阻的阻值會(huì)隨著溫度的升高而增大,這種變化會(huì)導(dǎo)致電橋電路中的
    的頭像 發(fā)表于 01-09 10:21 ?1180次閱讀

    飽和蒸汽流量計(jì)測(cè)量時(shí)補(bǔ)償方式的選擇

    在飽和蒸汽流量測(cè)量中,補(bǔ)償方式的選擇是確保測(cè)量準(zhǔn)確性的關(guān)鍵。由于飽和蒸汽的密度與溫度壓力之間存在固定的對(duì)應(yīng)關(guān)系,因此可以通過溫度補(bǔ)償或
    的頭像 發(fā)表于 12-29 09:38 ?411次閱讀

    CW32模塊使用 BMP180氣壓傳感器

    CW32F030C8T6開發(fā)板上【能夠測(cè)量環(huán)境溫度、氣壓、高度】。首先要獲取資料,查看數(shù)據(jù)手冊(cè)應(yīng)如何實(shí)現(xiàn)讀取數(shù)據(jù),再移植至我們的工程。 3.1查看資料 BMP180共有四種
    的頭像 發(fā)表于 12-05 12:06 ?619次閱讀
    CW32模塊使用 <b class='flag-5'>BMP180</b>氣壓傳感器

    外界溫度對(duì)壓力變送器的影響

    1. 壓力變送器的工作原理 壓力變送器通常基于壓電效應(yīng)、應(yīng)變效應(yīng)或電容效應(yīng)來(lái)測(cè)量壓力。它們將機(jī)械壓力轉(zhuǎn)換為電信號(hào),這些信號(hào)隨后可以被進(jìn)一步處
    的頭像 發(fā)表于 11-04 11:20 ?877次閱讀

    非接觸溫度傳感器如何測(cè)量內(nèi)部溫度

    探測(cè)器、光學(xué)系統(tǒng)、信號(hào)處理電路和顯示裝置等部分組成。紅外探測(cè)器用于接收物體表面發(fā)射的紅外輻射;光學(xué)系統(tǒng)用于聚焦紅外輻射,提高測(cè)量精度;信號(hào)處理電路用于將接收到的紅外輻射信號(hào)轉(zhuǎn)換為電信號(hào),并進(jìn)行溫度
    的頭像 發(fā)表于 10-23 15:52 ?1311次閱讀

    使用一種高度集成的ToF位置傳感器進(jìn)行精確的距離測(cè)量

    電子發(fā)燒友網(wǎng)站提供《使用一種高度集成的ToF位置傳感器進(jìn)行精確的距離測(cè)量.pdf》資料免費(fèi)下載
    發(fā)表于 09-21 10:14 ?0次下載
    使用一種<b class='flag-5'>高度</b>集成的ToF位置傳感器<b class='flag-5'>進(jìn)行</b>精確的距離<b class='flag-5'>測(cè)量</b>

    應(yīng)變測(cè)量時(shí)溫度補(bǔ)償?shù)幕驹?/a>

    對(duì)應(yīng)變測(cè)量結(jié)果的影響是一個(gè)不可忽視的因素。因此,進(jìn)行應(yīng)變測(cè)量時(shí),溫度補(bǔ)償是必要的。 一、溫度對(duì)應(yīng)變測(cè)量
    的頭像 發(fā)表于 08-27 16:26 ?1823次閱讀

    測(cè)量溫度的常見測(cè)量原理是什么

    溫度測(cè)量是科學(xué)研究和工業(yè)生產(chǎn)中非常重要的一個(gè)環(huán)節(jié),它涉及到各種物理量和化學(xué)性質(zhì)的測(cè)量。在不同的領(lǐng)域和應(yīng)用場(chǎng)景中,人們采用了多種不同的溫度測(cè)量
    的頭像 發(fā)表于 08-27 16:23 ?1203次閱讀

    立儀光譜共焦傳感器行業(yè)應(yīng)用 透明膠水高度測(cè)量

    01|檢測(cè)需求:透明膠水高度測(cè)量 光譜共焦傳感器行業(yè)應(yīng)用|透明膠水高度測(cè)量 02|檢測(cè)方式 根據(jù)客戶要求及觀察我們使用立儀科技D40A26XL鏡頭搭配E系列控制器
    的頭像 發(fā)表于 08-15 17:06 ?480次閱讀
    立儀光譜共焦傳感器行業(yè)應(yīng)用 透明膠水<b class='flag-5'>高度</b><b class='flag-5'>測(cè)量</b>

    【核桃派ZeroW開發(fā)板體驗(yàn)連載】小小氣象站 03 aht10、bmp280測(cè)試

    %%\" % sensor.relative_humidity) time.sleep(2) 最后點(diǎn)擊運(yùn)行,發(fā)現(xiàn)終端打印出了溫度和濕度: BMP2880測(cè)試 接線和AHT10一樣的,安裝下庫(kù)
    發(fā)表于 08-10 10:04
    主站蜘蛛池模板: 日韩视频 中文字幕 视频一区 | 色综合久久天天综合观看 | 精品乱码一区二区三区四区 | 国产精品久久久久久久牛牛 | 4438x成人网最大色成网站 | 好吊日在线 | 欧美日本一道免费一区三区 | 韩国三级hd | 欧美精品国产第一区二区 | 天天爽夜爽免费精品视频 | 婷婷综合五月中文字幕欧美 | 四虎884 | 四虎在线永久视频观看 | 天天色综合社区 | 美女黄页在线观看 | 久久精品大全 | 一区二区三区国模大胆 | 午夜视频免费国产在线 | 四虎影视永久在线观看 | 俺也来俺也去俺也射 | 亚洲一区二区三区四区在线观看 | 在线看片你懂得 | 在线观看jyzzjyzz | 性夜影院爽黄a爽免费视 | 黄黄视频免费看 | 国产精品高清免费网站 | 亚洲人xx视频 | 午夜影院在线视频 | 国产精品美女久久久久网 | 欧美日韩一区二区三区视频在线观看 | 久热国产在线 | 日本伊人网 | 成人涩涩网站 | 欧美拍拍 | 天天射天天射天天干 | 久久久久久免费播放一级毛片 | 日本在线观看高清不卡免v 日本在线观看永久免费网站 | 小说老卫陈红张敏陈法蓉 | 美国一级做a一级爱视频 | 成人免费久久精品国产片久久影院 | 77久久|