通過NodeMCU向ubidot發(fā)送BMP傳感器數(shù)據(jù)
在過去幾年中,出現(xiàn)了許多物聯(lián)網(wǎng)云平臺,以滿足不斷增長的物聯(lián)網(wǎng)設(shè)備網(wǎng)絡(luò)。這些物聯(lián)網(wǎng)云平臺可以用來管理、處理和傳輸信息,從物聯(lián)網(wǎng)設(shè)備到云,或者借助互聯(lián)網(wǎng)從云到連接的設(shè)備。除了傳輸信息外,這些平臺還可以用于控制設(shè)備,例如家庭自動化系統(tǒng)。
我們已經(jīng)使用了一些流行的物聯(lián)網(wǎng)平臺,如ThingSpeak, Adafruit IO, Blynk, b谷歌Firebase等來構(gòu)建許多物聯(lián)網(wǎng)項目。
今天我們將探討另一個物聯(lián)網(wǎng)云平臺——Ubidots。在這里,我們將NodeMCU ESP8266與Ubidots物聯(lián)網(wǎng)云連接起來,從BMP180傳感器發(fā)送溫度、壓力和海拔數(shù)據(jù)。上傳的數(shù)據(jù)也可以在Ubidots儀表板上通過Widgets的幫助進(jìn)行可視化。
組件的要求
?NodeMCU ESP8266
?BMP180傳感器
?跳線
Ubidots NodeMCU電路圖
Ubidots NodeMCU的電路圖非常簡單,只有BMP180傳感器與NodeMCU相連。
將BMP180的VIN和GND引腳連接到NodeMCU的3.3V和GND。請勿將傳感器直接連接到5V,否則會永久損壞傳感器。將BMP180的SCL和SDA引腳分別連接到NodeMCU的D1和D2引腳。
BMP180壓力傳感器
BMP180是一款與Arduino兼容的數(shù)字氣壓傳感器模塊,主要用于使用數(shù)字氣壓計測量絕對壓力,溫度。它的測量范圍為300至1100hPa,在高級分辨率模式下精度可達(dá)0.02 hPa。它基于壓阻技術(shù),具有高效率,堅固性和長期穩(wěn)定性。BMP180是一個非常小的模塊,尺寸為1毫米x 1.1毫米(0.039英寸x 0.043英寸)。
BMP傳感器通過I2C協(xié)議工作。BMP180的輸入電壓范圍為1.8V ~ 3.6V。
我們以前使用BMP180傳感器與樹莓派和ESP32建立氣象站。
Ubidots帳戶設(shè)置
Ubidots成立于2012年,最初是一家工程服務(wù)公司,它與其合作伙伴和聯(lián)合創(chuàng)始公司Netux一起提供端到端物聯(lián)網(wǎng)解決方案,為醫(yī)療保健客戶遠(yuǎn)程監(jiān)控、控制和自動化流程。
現(xiàn)在,Ubidots已經(jīng)成為一個價格合理、可靠、最實用的平臺,用于在硬件、軟件和嵌入式工程行業(yè)中構(gòu)建物聯(lián)網(wǎng)應(yīng)用生態(tài)系統(tǒng)。
在本教程中,我們將通過HTTP協(xié)議向Ubidots發(fā)送BMP傳感器數(shù)據(jù)。要發(fā)送數(shù)據(jù),首先在Ubidots上創(chuàng)建一個帳戶。完成帳戶設(shè)置后,單擊user下拉菜單并單擊API documentation。記下您的默認(rèn)令牌,因為稍后將需要它。
為ubidot編寫NodeMCU
向Ubidots發(fā)送數(shù)據(jù)程序非常簡單,因為它只需要讀取BMP傳感器數(shù)據(jù)并通過HTTP協(xié)議將其發(fā)送到Ubidots。
本頁末尾給出了完整的代碼。這里我們將解釋代碼的重要部分。
因此,從包含所有必需的庫開始編寫代碼。Adafruit_BMP085.h庫用于讀取BMP傳感器數(shù)據(jù),Ubidots.h庫用于通過HTTP協(xié)議向Ubidots平臺發(fā)送數(shù)據(jù)。
然后,輸入令牌和Wi-Fi憑據(jù),在NodeMCU和Ubidots之間建立連接。
在void setup()函數(shù)中,使用.begin()函數(shù)初始化波特率和BMP180,然后將模塊與Wi-Fi連接。
現(xiàn)在在void循環(huán)中,從BMP180傳感器讀取溫度、壓力和海拔高度值,并將這些值存儲在不同的變量中。之后,將這些讀數(shù)發(fā)送到Ubidots平臺。
用NodeMCU測試ubidot的BMP180傳感器讀數(shù)
一旦代碼和硬件準(zhǔn)備就緒,將NodeMCU連接到筆記本電腦并上傳代碼?,F(xiàn)在打開串行監(jiān)視器,檢查NodeMCU是否正在讀取數(shù)據(jù)。
之后,導(dǎo)航到瀏覽器,打開Ubidots Dashboard,點擊“Create Widget”按鈕,向下滾動,選擇“溫度計”Widget。
現(xiàn)在點擊“添加變量”來選擇設(shè)備和變量。
現(xiàn)在選擇設(shè)備。一旦你點擊設(shè)備,你會看到三個變量,即壓力,高度和溫度。選擇溫度變量。
然后單擊Finish。對Pressure和Altitude變量重復(fù)相同的過程,但不是選擇溫度計小部件,而是選擇‘ Gauge ’小部件。
完成這個過程后,你的儀表板看起來像這樣:
這就是NodeMCU可以輕松連接到Ubidots的方式,以便在儀表板上以圖形方式顯示任何傳感器值。它可以從世界上任何地方通過互聯(lián)網(wǎng)進(jìn)行監(jiān)控。
本文編譯自iotdesignpro