劉瑩吳蓬勃李新龍
1.3.沈陽工學院信息與控制學院 遼寧撫順 113122 2.石家莊郵電職業(yè)技術(shù)學院電信工程系 石家莊 050031
基于單片機的精密儀器生產(chǎn)車間溫濕度自動控制系統(tǒng)
劉瑩1吳蓬勃2李新龍3
1.3.沈陽工學院信息與控制學院 遼寧撫順 113122 2.石家莊郵電職業(yè)技術(shù)學院電信工程系 石家莊 050031
該設(shè)計是基于單片機的溫濕度檢測控制系統(tǒng),采用模塊化、層次化設(shè)計。采用新型的數(shù)字型溫濕度傳感器DHT11,它可以實現(xiàn)對溫度、濕度的采集,并將采集到的模擬信號轉(zhuǎn)換成數(shù)字信號;運用單片機STC89C52對數(shù)據(jù)進行分析和處理,為顯示提供信號;顯示部分采用字符型LCD1602液晶顯示器顯示所測溫度和濕度值;溫濕度控制電路由溫濕度傳感器和預(yù)設(shè)溫度值比較報警電路組成,用戶根據(jù)需要預(yù)先輸入預(yù)設(shè)值,當實際測量的溫濕度大于或小于預(yù)設(shè)的溫濕度數(shù)值時,發(fā)出報警信號(指示燈會亮)。本系統(tǒng)電路簡單、集成度高、工作穩(wěn)定、調(diào)試方便、檢測精度高,具有一定的實用價值。
溫濕度傳感器;液晶顯示器;單片機
本設(shè)計所介紹的數(shù)字溫濕度計與傳統(tǒng)的溫濕度計相比,具有讀數(shù)方便,測量范圍廣,測量準確,其輸出溫濕度采用數(shù)字顯示,該設(shè)計控制器使用單片機STC89C52,數(shù)字溫濕度傳感器使用DHT11,用LCD1602液晶屏,實現(xiàn)溫濕度顯示,用加濕設(shè)備、除濕設(shè)備、加溫設(shè)備、降溫設(shè)備控制溫濕度的高低,能準確達到以上要求。
依據(jù)功能設(shè)定該系統(tǒng)主要分為以下四個模塊:數(shù)據(jù)采集模塊、數(shù)據(jù)處理模塊、用戶操作模塊和設(shè)備響應(yīng)模塊。
其中溫濕度采集模塊使用的是DHT11數(shù)字溫濕度傳感器;數(shù)據(jù)處理模塊使用的是AT89C52單片機,其完成溫濕度數(shù)據(jù)的采集、運算和邏輯控制的功能;用戶操作模塊由操作鍵盤、開關(guān)構(gòu)成,其中操作鍵盤包括復(fù)位按鍵、主界面按鍵、加鍵、減鍵和enter鍵五個按鍵;設(shè)備響應(yīng)模塊由1602點陣液晶、繼電器和LED指示報警燈構(gòu)成。
溫濕度自動控制系統(tǒng)的硬件部分由單片機模塊電路、溫濕度傳感器模塊電路、顯示模塊電路、按鍵模塊電路和繼電器模塊電路組成。
2.1 單片機模塊電路設(shè)計
2.1.1 單片機最小電路
1、復(fù)位電路
單片機的復(fù)位分為上電自動復(fù)位、按鍵手動復(fù)位兩種和看門狗強制復(fù)位三種等。上電復(fù)位通常利用電容的充放電來實現(xiàn),按鍵復(fù)位則可分為按鍵脈沖復(fù)位和按鍵電平復(fù)位兩種,看門狗復(fù)位則通過外接看門狗電路或軟件看門狗程序?qū)崿F(xiàn)。
2、時鐘電路
時鐘電路用于產(chǎn)生單片機的基本時鐘信號。8052的時鐘信號可由內(nèi)部振蕩器產(chǎn)生,也可由外部電路直接提供。內(nèi)部振蕩器的輸入和輸出腳分別為XTAL1和XATL2,由XTAL2給單片機內(nèi)部電路提供時鐘信號。當時鐘信號由外部電路提供時,外部時鐘引入XTAL2,而XTAL1腳接地。
2.2 溫濕度傳感器模塊電路設(shè)計
1、接口說明
建議連接線長度短于20米時用5K上拉電阻,大于20米時根據(jù)實際情況使用合適的上拉電阻。
2、電源引腳
DHT11的供電電壓為3-5.5V。傳感器上電后,要等待1S以越過不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳(VDD,GND)之間可增加一個100NF的電容,用以去耦濾波。
3、串行接口(單線雙向)
DATA用于微處理器與DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間4MS左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當前小數(shù)部分用于以后擴展,現(xiàn)讀出為零.操作流程如下:
一次完整的數(shù)據(jù)傳輸為40BIT,高位先出。
數(shù)據(jù)格式:8BIT濕度整數(shù)數(shù)據(jù)+8BIT濕度小數(shù)數(shù)據(jù)+8BIT溫度整數(shù)數(shù)據(jù)+8BIT溫度小數(shù)數(shù)據(jù)+8BIT校驗和。
2.3 顯示模塊電路設(shè)計
LCD1602分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無差別。
2.4 按鍵模塊電路設(shè)計
本溫濕度自動控制系統(tǒng)的鍵盤控制電路共有5個按鍵:主控鍵、+鍵、-鍵、確定鍵和復(fù)位鍵。其中,主控鍵負責主頁面的調(diào)節(jié)包括:溫度的上限、溫度的下限、濕度的上限、濕度的下限以及主頁面顯示。加鍵和減鍵負責溫濕度的上下限數(shù)值的增加與減少,而確定鍵負責確定設(shè)置好的溫濕度上下限值。
系統(tǒng)軟件程序基于KEIL UVSION2開發(fā)平臺,采用C51語言編寫。本程序采用模塊化程序方法,其中主要包括兩大模塊:主程序模塊、子程序模塊。而子程序模塊又包括:LCD初始化顯示模塊、DHT11數(shù)據(jù)采集模塊、按鍵掃描模塊、數(shù)據(jù)比較模塊。
3.1 主程序模塊
本系統(tǒng)采用DHT11溫濕度傳感器,它對生產(chǎn)車間內(nèi)溫濕度進行采集,并將其轉(zhuǎn)換成數(shù)字信號,將數(shù)字信息提供給主控制器進行處理和分析,主控制器開始LCD初始化,進行延時等待后提取DHT11溫濕度傳感器模塊,將采集好的信息經(jīng)過處理后傳給LCD1602進行顯示,同時調(diào)用系統(tǒng)控制模塊,與系統(tǒng)默認設(shè)定值進行比較,系統(tǒng)的溫濕度上下限默認值均為0,可以通過設(shè)置按鈕進行設(shè)置完成。
3.2 子程序模塊
子程序模塊包括:LCD初始化顯示模塊、DHT11數(shù)據(jù)采集模塊、按鍵掃描模塊、數(shù)據(jù)比較模塊。
3.2.1 LCD初始化模塊
LCD初始化模塊的主要功能是完成系統(tǒng)的初始化以及設(shè)定系統(tǒng)的工作狀態(tài)。
3.2.2 DHT11數(shù)據(jù)采集模塊
DHT11數(shù)據(jù)采集模塊是作為獨立的程序被主函數(shù)調(diào)用的,在程序中包含了比較、延時等語句。
3.2.3 掃描按鍵模塊
本設(shè)計共五個按鍵:主控鍵、+鍵、-鍵、確定鍵和復(fù)位鍵。其中,主控鍵負責主頁面的調(diào)節(jié)包括:溫度的上限、溫度的下限、濕度的上限、濕度的下限以及主頁面顯示。加鍵和減鍵負責溫濕度的上下限數(shù)值的增加與減少,而確定鍵負責確定設(shè)置好的溫濕度上下限值。所以在軟件程序中,會對按鍵進行掃描,然后確定按鍵所設(shè)定的具體數(shù)值。
3.2.4 數(shù)據(jù)比較模塊
當溫濕度數(shù)值設(shè)定好以后,就會作為設(shè)定值與溫濕度采集到的數(shù)據(jù)進行比較,然后做出相應(yīng)的響應(yīng)。