徐明

摘要:本設計核心部分是利用8051單片機與DS18B20溫度傳感器以及HTU21D濕度傳感器設計硬件上的數據反饋,研究使用單片機通過分析溫度和濕度的返回信息進行實驗室內的監控, 最終通過ZigBee無線網絡實現單片機與主機的對接,客戶端通過網絡與主機相連來實現監測。
關鍵詞:8051單片機;DS18B20溫度傳感器;HTU21D濕度傳感器
中圖分類號:TP311? ? ? 文獻標識碼:A? ? ? 文章編號:1009-3044(2019)01-0262-02
伴隨著電子技術的日新月異,單片機、傳感器與個人使用的電子類產品也得到了極大地發展,溫度、濕度傳感器成本的降低以及在數字化方面的進步,使得在實驗室設計推廣采用單片機測試溫度、濕度,通過個人手機或者PC機來收取這些數據,以實現預防火災、漏水危險。
本設計電路方面擬采用8051系列的單片機來接收DS18B20溫度傳感器和HTU21D濕度傳感器上的采集數據,這兩種傳感器的檢測與數據輸出集成在一個芯片上,體積小且抗干擾能力強,利用ZigBee無線傳感器跟主機相連,最后客戶端通過Internet網絡訪問主機。
1 系統總體設計方案
目前市面上已有出售跟單片機焊接在一起的溫度傳感器和濕度傳感器,但是傳統的單片機需要通過雙公頭USB線跟主機相連,對于空間比較大的實驗室實現起來比較困難,本系統擬采用ZigBee無線傳感器測試網絡來實現,主要是為了減少對USB線的依賴,以及減少在實驗室密集的空間帶來的布線麻煩。該系統的裝置結構圖如圖1所示,溫度與濕度傳感器通過單片機控制,單片機通過ZigBee無線傳感器測試網絡與主控端控制,客戶端(手機端和PC端)與主控端進行交互以達到實現溫度和濕度的反饋。
針對溫度和濕度兩種非電信號量,需要先利用傳感器將其轉換為電信號,再由集成電路分析處理[1],最終可以在客戶端查看到當前實驗室的相關信息。
2詳細設計
2.1單片機系統模塊
CC2530的“增強型8051內核”與“標準的8051微控制器”進行比較,除了在速度方面進行改進之外,還有以下兩種情況:內核代碼方面:從代碼的兼容性來看,CC2530的內核目標代碼是可以向下兼容“標準8051”的內核目標代碼,換句話說就是CC2530的內核目標代碼可以利用“標準8051”的編譯軟件進行編譯。微控制器方面:由于CC2530的內核目標代碼是可以向下兼容“標準8051”的內核目標代碼,換句話說就是CC2530的內核所使用的指令時鐘不同于“標準8051”,因此CC2530在編譯時與之前標準內核的代碼編譯就會有所不同。
對于使用CC2530的“增強型8051內核”與“標準的8051微控制器”中出現的問題,必須優先解決內核的存儲空間不對稱這種情況,從FLASH存儲器來說,CC2530將其劃分成幾個bank,其中每個bank的大小都是固定的值,為32KB。對于CC2530F256設備來說,它有8個bank,分別為bank0~bank7。通過操作寄存器FMAP.MAP[2:0]來控制將哪個編號的bank映射到CODE區域 。CC2530的供電模式有很多種,通常這些供電模式會影響到單片機的運行,所以需要根據不同的溫度采集或者濕度采集來設定相對應的供電模式,如果模式選擇錯誤會影響單片機與傳感器之間的聯系,因此在CC2530開始工作之前必須要選定正確的供電模式 。從CC2530的五種供電模式中進行比較:
主動模式:完全功能模式。穩壓器的數字內核開啟;此時的高頻振蕩器的32MHz晶振和16MHz RC振蕩器其中之一開始運作,抑或兩者會同時運作,這個需要看運行的傳感器的數量和傳感器的型號;與此同時低頻振蕩器的32KHz晶振和32KHzRC振蕩器其中一個開始運作。如果選中該模式,那么CPU、外置的設備以及RF收發器都變成處于活躍狀態,此時可以通過代碼操控CPU內核是停止運行還是繼續運作,是否進入到空閑的模式。如果想要喚醒空閑模式下的CPU內核繼續運作可以通過操作寄存器來設置寄存器復位、寄存器中斷或設定睡眠定時器。
空閑模式:所謂的空閑模式是指CPU內核暫時停止運作,在CPU內核運作時是與主動模式相同。如果想要喚醒空閑模式下的CPU內核繼續運作可以通過操作寄存器來設置寄存器復位、寄存器中斷或設定睡眠定時器進入主動模式。
PM1:在PM1模式下,穩壓器的數字部分開啟;該模式下的高頻振蕩器的32MHz晶振不運作,且高頻振蕩器的16MHz RC振蕩器也不會運作;此刻由低頻振蕩器的32KHz晶振和32KHz RC振蕩器中間的一個開始運作維持穩壓器的基本運行需求。但此模式有個問題,就是當發生寄存器復位、寄存器中斷或設定睡眠定時器到時時系統又將轉到主動模式,此刻的PM1模式下就不再起任何作用。
PM2:在PM2模式下,穩壓器的數字部分就會發生關閉,該模式下的高頻振蕩器的32MHz晶振不運作,且高頻振蕩器的16MHz RC振蕩器也不會運作;此刻由低頻振蕩器的32KHz晶振和32KHz RC振蕩器中間的一個開始運作維持穩壓器的基本運行需求。但此模式有個問題,就是當發生寄存器復位、寄存器中斷或設定睡眠定時器到時時系統又將轉到主動模式,此刻的PM2模式下就不再起任何作用。且當睡眠時間超過3ms時使用此模式。PM1模式和PM2模式最大區別就是穩壓器的數字部分是否開啟。
PM3:在PM3模式下,穩壓器數字部分也會發生關閉,但跟PM2模式有所不同,就是所有的振蕩器都不運作。當發生寄存器復位、寄存器中斷或設定睡眠定時器到時時系統又將轉到主動模式,此刻的PM3模式下就不再起任何作用。PM3用于系統最低功耗的運行模式。
本系統是以8051系列單片機為核心,對單片機設計算法實現對溫度濕度數據的分析和調節控制[2]。P0.0端口是連接在兩個三極管之間的,它的功能與P1.0、P2.0、P3.0端口的功能不同,只存在下拉的能力,高電平輸出時時沒有電流通過的,此時表現為高阻態,平時設定的也就是高阻態的模式。當實驗過程中如果需要利用 P0 端口時則需要加上拉電阻,使其可以實現輸出高電平和低電平的狀態,這樣系統在工作過程中就可以實時檢測到當前實驗室的溫度、濕度的值,并且及時將這些信息傳送給客戶端,以達到監控該實驗室的溫度和濕度的目的,預防火災以及漏水等現象。.
系統在工作過程中通過客戶端發布的實時命令來達到檢測當前實驗室溫度、濕度的值, 并且將檢測到的值發給客戶端,然后客戶端根據實際的值來進行報警或者及時處理。
2.2溫度傳感器模塊
溫度傳感器DS18B20DS18B20 是美國DALLAS 半導體公司生產的單總線接口的溫度傳感器。與傳統的熱電偶傳感器相比,大大提高了測量溫度的準確度和精度[3]。溫度采集模塊是采用DS18B20溫度傳感器,該系列傳感器屬于IC 溫度傳感器,它比以往的傳感器相比是屬于集成電路芯片,可以把測量的溫度值通過集成在傳感器中的部分模數芯片直接將其轉化成數字信號。
溫度的采集這塊,主要是通過DS18B20 這個直接數字溫度傳感器。相應的精度分別為0.5℃、0.25℃、0.125℃、0.0625℃。默認的分辨率為12 位。
2.3 濕度傳感器模塊
之所以選擇HTU21系列模塊,是因為它的低功耗且體積小,在配置過程中安裝比較方便,且其響應速度相對其他的濕度傳感器來說比較快,在信號的傳輸方面抗干擾能力強,在價格方面性價比高,所以本系統的濕度采集模塊通過HTU21D濕度傳感器來實現,其功能主要完成濕度的采集,并將測試到的模擬信號先轉換成數字電信號,然后通過電路傳遞給主機。但是由于水滴滴在地面上不容易聚集,所以需要找到地面上相對洼的地方,使其聚集,方便信息的采集。
HTU21D濕度傳感器可以放置在溫度為-40到125度的地方,滿足一般實驗室的溫度環境,且其供電的電壓為3.8V,濕度范圍為0~100%RH,數字I/O針腳-0.3~VDD+0.3,任何針腳輸入電流-10MA~+10MA。在傳輸SCK和DATA的信號平行距離不超過10cm時會引起串音并導致信號丟失,我們在指定線路VDD或者GND兩路數據信號之間使用屏蔽電纜。
因為實驗室通常都是置于室內的環境,所以如果室內一旦發生漏水,此時實驗室內的水氣(絕對濕度)就會達到一定的值,而這時最方便我們測量,濕度傳感器就是通過測量空氣中濕度達到飽和時的溫度,這是熱力學的直接結果,準確度高,測量范圍寬。
2.4客戶端模塊
客戶端主要是用來監控溫度傳感器和濕度傳感器當前測試的數據,客戶端分為PC機端和手機APP端,PC機端通常能夠的臺式電腦就可以實現,是使用。NET來開發完成,而手機APP端則是通過Andriod軟件來開發實現,適用于安卓機。無論使用哪種模式,都需要通過用戶登錄,用戶在登錄成功后直接進入到監控界面,點擊查看當前溫度傳感器和濕度傳感器的探測值,通過網絡跟關聯單片機的主機相連,通過測試軟件直接讀取數據,可以實現實時控制并且可以調取該實驗室的監控,詳細了解該實驗室的安全情況。
2.5 ZigBee無線網絡模塊
Zigbee技術在硬件網絡上來說算是是一種近距離的,并且復雜度比較低、對電子設備的功耗要求也很低、搭建容易的雙向無線通訊技術。其主要的功能是方便傳輸速率不高的數據傳輸,作用于距離比較短且功耗低的各種電子類設備。本系統因為只是傳輸傳感器檢測到的信息,故通信數據量不大并且,數據傳輸速率也相對較低。且單片機以及單片機上連接的傳感器只需要很少的能量,通過無線電波將數據從一個傳感器傳到單片機上,并能實現傳感器與單片機與傳感器之間的組網,實現無線傳感器網絡分布式、自組織和低功耗的特點。數據的發送和接收是通過IEEE802.15.4標準專門定義的三個原語來實現的。IEEE802.15.4標準專門定義了三個與數據相關的原語:數據請求原語(PD-DATA.Request),數據確認原語(PD-DATA.comfirm)和數據指示原語(PD-DATA.Indication),這三個原語實現網絡的傳送。
3 結束語
本設計主要是以單片機配合溫度傳感器以及濕度傳感器為核心,并且配合ZigBee無線網絡,對傳感器采集到的溫度和濕度信號在單片機上地完成了對應的信號的處理,并能將這些處理后的信息發送到主機上,通過廣域網來查看這些信息,該設計具有網絡搭建簡單、用戶易于操作、設計成本低的特點,這樣實驗室內溫度和濕度的監控更方便。
參考文獻:
[1] 何淑賢.室內溫度和濕度智能調控系統的設計與實現.晉中學院學報,2014.6(3):74-77
[2] 吳永.基于網絡的單片機多點溫度采集系統的設計[J].計算機測量與制,2010,18(4):959-960.
[3] 沙占友.智能溫度傳感器的發展趨勢[J].電子技術應用,2002(5):6-7.