王江紅 胡湘娟 陽泳
摘 要:溫濕度的監測對于當前控制室內環境,改善室內環境起著重要的作用,為了提高室內用戶的舒適度,一般都會對室內的溫濕度進行監控,通過監測溫濕度的變化情況來確定下一步的動作,例如在溫室中嚴格監控室內溫度,使得溫室內的植物能到最合適的生存環境。文章就基于STM32的溫濕度監控系統設計問題進行了全面分析,通過其有效提高溫度的時效性管理意義重大。
關鍵詞:STM32;溫濕度;ucosII系統;監控系統設計
此次的基于STM32的溫濕度監控系統設計主要是32位的單片機為主控芯片,DHT11為溫濕度監測裝置,搭載的是ucosII操作系統,顯示設備為主控ITL9438的彩屏,通過DHT11采集的信息對經過單片機的內部程序的處理,將其以數字的形式顯示在彩屏上,并且同時根據單片機內部的溫度設定值進行相應的動作,實現的室內溫濕度的智能控制。
1 溫濕度監控系統設計
1.1 溫濕度監控系統硬件設計
系統主控芯片為STM32F103ZET6,除了必須的STM32單片機正常的驅動的電路之外,彩屏為使用的是已經做成模塊的ITL9438彩屏,而采集模塊則是使用的DHT11,如圖所示為使用的DHT11的引腳圖,可得知只要通過采集Dout引腳的輸出的電平變化,查看數據手冊,根據DHT11的時序圖寫出相應的驅動程序,驅動DHT11溫濕度傳感器。彩屏的程序可以直接使用的屏幕廠家寫好的程序,移植到STM32上既可,而通過將Dout引腳上的高低電平變化,進行相應的數據處理可以將溫濕度數據已數字的形式顯現在彩屏上,通過內部的程序根據比較當前的溫濕度值與設定的參數值進行比較,使得進行下一步的溫濕度調節動作,通過向外部電路發送信號,例如溫度高了,打開排風機降低室內的溫度等措施優先對溫度的控制,這與空調的原理類似,但是系統比空調電路簡捷的多。
DHT11數字濕溫度傳感器采用單總線數據格式,單個數據引腳端口完成輸入輸出雙向傳輸。其數據包由5Byte(40Bit)組成。數據分小數部分和整數部分,一次完整的數據傳輸為40bit,高位先出。DHT11的數據格式為:8bit濕度整數數據+8bit濕度小數數據+8bit溫度整數數據+8bit溫度小數數據+8bit校驗和。其中校驗和數據為前四個字節相加,傳感器數據輸出的是未編碼的二進制數據。數據(濕度、溫度、整數、小數)之間應該分開處理。
1.2 溫濕度監控系統軟件設計
此次的溫濕度監控系統軟件設計主要實在keil4中完成,操作系統為UCOSII,將UCOSII系統移植到當前單片機上,并且建立相應的任務堆棧,通過調用任務堆棧的形式實現系統運行,將DHT11的Dout引腳與PG11連接,PG11引腳設置的為輸入模式,用于采集Dout引腳的電平變化。開機的時候先檢測是否有DHT11存在,如果沒有,則提示錯誤。只有在檢測到DHT11之后才開始讀取溫濕度值,并顯示在LCD上,如果發現了DHT11,則程序每隔100ms左右讀取一次數據,并把溫濕度顯示在LCD上。同時會使用一個LED來指示程序運行狀況。
溫濕度監控系統的軟件設計主要分為的LED驅動程序、LCD驅動程序、DHT11驅動程序以及STM32單片機的啟動文件等幾個部分,其中LCD驅動程序主要是有屏幕生產廠家提供,并不需要自己編寫,直接移植廠家提供的LCD驅動程序即可,而設計者主要是編寫的LED驅動和DHT11的驅動。DHT11并不需要使用IIC接口或者是SPI接口,所以直接配置兩個I/O引腳,通過DHT11的讀寫時序編寫相應的驅動程序即可,如圖1中的'1'時序和'0'時序圖。
通過圖1中時序圖,我們可以編寫出DHT11相應的讀函數與寫函數,再通過數據發送流程時序便可以寫出DHT11的驅動程序。將上述幾個主要的驅動程序編寫好之后,編寫相應的DHT11數據處理函數,通過函數參數返回值將實際的數據顯示在LCD屏幕上。屏幕上顯示的參數在主函數中的出現編寫即可。
2 溫濕度監控系統的運行情況
單片機所使用電源為3.3V,供電電壓不得超過3.3V,否則將會燒掉STM32單片機芯片,上電系統便開始啟動,設計一個LED指示燈來顯示程序的運行狀況,而系統檢測DHT11是否存在,存在便會將采集的溫濕度數據顯示在彩屏上,不存在則會提示沒有DHT11,溫度為30℃,濕度為33%,每100ms刷新一次,動態顯示數據變化,如果DHT11出現問題,將會顯示沒有設備,請檢查設備等字樣。
在實際的測試中,可以發現本次設計,屏幕上數據精確程度較低,而且數據的刷新率較慢,所以在數據的處理方面還要進行加強。
3 結束語
通過此次溫濕度監控系統設計,可以看出此系統在改善室內環境中發揮著巨大的作用,需要深入研究,重點在于對DHT11數據的分析精確程序加強,這樣才能提高系統的運作效率,此外STM32單片機所設計的溫濕度控制系統與8位單片機設計的溫濕度控制系統有著明顯的進步,但是通過上述設計也可以看出的,基于STM32的溫濕度控制系統還存在很多的不足,需要加以改進才能運用到實際的工作、生活中。
參考文獻
[1]任哲.嵌入式實時操作系統uc/os-II原理與應用[M].北京航空航天出版社,2013.
[2]廖義奎.Cortex-m3之STM32嵌入式系統設計[M].中國電力出版社,2013.
[3]劉博文.ARM Cortex-M3應用開發實例詳解[M].電子工業出版社,2011.
作者簡介:王江紅(1993-),男,云南曲靖人,漢族,學生,在讀本科,所學專業:通信工程。