溫溼度採集系統——OneNET雲平臺應用

本章節將從零開始搭建一個環境信息採集系統,並通過這個實戰項目,帶讀者實現第一個物聯網項目。

完整視頻可以查看:

基於OneNET雲平臺的環境數據採集系統

10.1 系統框架

該項目硬件上採用STM32F407開發作爲主控芯片,網卡採用DP83848芯片,環境檢測傳感器採用DHT溫溼度傳感器。

軟件系統框架上,STM32F407開發運行RT-Thread系統,並通過OneNET軟件包接入到OneNET平臺,同時,讀者可以在手機APP上查看數據。

系統軟硬件框架如圖10.1所示。

圖10.1 系統框架

該系統主要分3大部分:

(1)嵌入式:也稱爲邊緣計算,主要以STM32F407、DP83848、DHT溫溼度傳感器爲主,實現節點數據採集,數據上傳等功能。

(2)雲平臺:在OneNET的基礎上,構建一套WEB界面,用來顯示傳感器的數據。WEB界面提供一個儀表盤用來實時顯示數據,同時提供一個折線圖,用來顯示數據的變化趨勢,如圖10.2所示。

圖10.2 WEB界面

(3)手機APP:在OneNET基礎上開發一套一套手機APP應用,用戶可以直接在手機上實時查看數據。手機APP的界面如圖10.3所示。

圖10.3 手機APP界面

 

10.2 嵌入式開發

 

嵌入式硬件開發的工作主要是:

(1)驅動DHT11傳感器,讀取溫度、溼度數值。

(2)DP8348網卡驅動、LwIP網絡協議棧實現。

(3)OneNET數據上傳。

其中,RT-Thread已經集成了DP83848驅動、LwIP網絡協議棧、OneNET軟件包。我們只需要實現DHT11的數據採集並通過OneNET上傳到雲端即可。

10.2.1 DHT11傳感器介紹

DHT11是一款有已校準數字信號輸出的溫溼度傳感器。 其精度溼度+-5%RH, 溫度+-2℃,量程溼度20-90%RH, 溫度0~50℃。廣泛應用在氣象站、家電、除溼器等。

1.硬件原理圖

DHT11實物如圖10.4所示。

 

圖10.4 DHT11傳感器

引腳說明如表10.1所示:

Pin

名稱

備註

1

VDD

供電,3~5.5V DC

2

DATA

串行數據,單總線。使用上拉電阻拉高,上拉電阻推薦阻值範圍:4.7K~5.1K。

3

NC

空腳,請懸空

4

GND

接地

DHT11和單片機連接原理圖如圖10.5所示。

圖10.5 連接原理圖

 

2.工作原理

DHT11使用單一總線通信,即DATA引腳和單片機連接。DATA總線要麼處於空閒狀態,要麼處於通信狀態。

空閒狀態:當單片機沒有與DHT11通信時,總線處於空閒狀態,在上拉電阻的作用下,DATA引腳處於高電平。

通信狀態:當單片機和DHT11正在通信時,總線處於通信狀態。

一次完整的通信過程如下:

(1)單片機將驅動總線的IO配置爲輸出模式,準備向DHT11發送數據。

(2)單片機將總線拉低至少18ms,以此來發送起始信號。再將總線拉高並延時20~40us,以此表示起始信號結束。

(3)單片機將驅動總線的IO配置成輸入模式,準備接收DHT11的數據。

(4)當DHT11檢測到單片機發送得到起始信號後,就開始應答,回傳採集到的傳感器數據。DHT11先將總線拉低80us作爲對單片機的應答(ACK),然後將總線拉高80us。起始信號和應答信號時序圖如圖10.6所示。

圖10.6 起始應答時序圖

(5)DHT11應答單片機後,接下來回傳溫溼度數據,以固定的幀格式發送,格式如圖10.7所示。

圖10.7 幀格式

(5)當一幀數據傳輸完成後,DHT11釋放總線。

整個通信的時序圖如圖10.8所示。

圖10.8 完整時序圖

一幀爲40個bit,而每一個bit的傳輸時序邏輯爲:每一個bit都以50us的低電平(DHT11將總線拉低)爲先導,然後緊接着DHT11拉高總線,如果這個高電平持續時間爲26~28us,則代表邏輯0,如果持續70us則代表邏輯1。

邏輯0信號時序圖如圖10.9所示。

圖10.9 邏輯0時序圖

邏輯1信號時序圖如圖10.10所示。

圖10.10 邏輯1時序圖

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章