孫景偉 丁學用 莫小琴
摘? 要:本設計主要應用紅外遙控技術,可在手動和自動兩種模式下,通過風扇和加熱片兩種外部器件對溫度進行控制。該控制器主要是以負責判斷信息和向各執行模塊發送具體指令的單片機STC89C52為核心;此外,本設計主要有三大執行模塊來分別負責檢測、顯示、控制實時溫度,以TL1838為主的紅外遙控模塊則負責接收紅外信號;若溫度不在系統設定界限內,則蜂鳴器報警模塊開始響起,其余的兩大模塊分別為按鍵模塊和電源模塊。首先溫度傳感器感知到實時溫度,然后將之直接傳輸給液晶顯示屏顯示和單片機以判斷是否需要進行溫度控制。如果溫度在系統設置界限內,則一切正常;反之,單片機傳輸相應指令給溫度控制模塊和報警模塊,蜂鳴器響起,加熱片或者風扇開始工作。結果表明該控制器與同類溫度控制器相比,不僅精度高、實時性好,抗干擾能力也強。
關鍵詞:紅外遙控;恒溫控制;溫度檢測;實時控制
中圖分類號:TP273? ? ? ? 文獻標志碼:A 文章編號:2095-2945(2019)09-0089-02
Abstract: This design mainly applies infrared remote control technology, which can control the temperature through two external devices: fan and heating plate in manual and automatic mode. The controller is mainly based on the single-chip microcomputer STC89C52, which is responsible for judging the information and sending specific instructions to each execution module. in addition, the design mainly has three execution modules to detect, display and control the real-time temperature respectively. The infrared remote control module based on TL1838 is responsible for receiving the infrared signal; if the temperature is not within the set limit of the system, the buzzer alarm module begins to ring, and the other two modules are the key module and the power module respectively. Firstly, the temperature sensor senses the real-time temperature, and then transmits it directly to the liquid crystal display screen and the single-chip microcomputer to determine whether the temperature control is needed. If the temperature is within the limits set by the system, everything is normal; on the contrary, the single-chip microcomputer transmits the corresponding instructions to the temperature control module and the alarm module, the buzzer rings, and the heating plate or fan begins to work. The results show that compared with the same kind of temperature controller, the controller not only has high precision, good real-time performance, but also has strong anti-interference ability.
Keywords: infrared remote control; constant temperature control; temperature detection; real-time control
引言
現如今,國外的溫室自動控制系統技術水平依舊比我國先進,主要表現在以下幾個方面:第一是我國尚未創建統一的溫室結構,各地的溫度控制體系針對性仍然很強,欠缺橫向可比性來對照其好壞;第二是大多數溫度自動控制軟件并不與我國氣候特點相匹配。第三是我國在溫度控制領域起步晚,仍不了解在地表空間內各種環境因子是否會相互影響和制約。當其中一者發生改變時,往往其它環境因子也會隨之變化,進而對整個生態環境造成影響。因此,開發一套溫度與其他環境因子相統籌結合的溫度控制軟件是有必要的。
溫度控制體系是工農業生產的重要組成部分,該控制器是基于STC89C5單片機而開發,可對室內溫度進行調控。其功能主要是對溫度進行實時檢測、顯示與控制,來實現溫度控制系統的智能化、自動化。首先,系統通過溫度感應探頭檢測出當前環境的溫度值,然后對比系統已設置好的溫度界限;緊接著,溫度可直接在LCD1602液晶顯示屏上顯示出來;若超出設定的溫度界限,此時報警模塊響起,再由STC89C52單片機判斷加熱還是降溫,傳達具體指令至加熱或者降溫模塊執行。反之,蜂鳴器不報警,加熱或者降溫模塊不工作就說明溫度仍然處于正常范圍。本設計最大意義便是豐富了溫度控制方法,如遇人們不方便手動控制電路或按鍵控制等復雜情況,則通過紅外遙控亦可解決問題。
1 基本原理
1.1 系統整體框架結構圖
本設計是基于STC89C52單片機的溫度控制器,有自動和手動兩種方式來控制溫度。該系統通過溫度傳感器感應實時溫度,直接傳送至LCD1602液晶顯示屏來顯示,再輸出數字信號到單片機STC89C52進行處理,由其判斷是否超出設置溫度范圍,如果是,則蜂鳴器報警,單片機發送給外部設備加熱或者降溫指令,直至溫度恢復正常,蜂鳴器和外部設備停止工作。LCD1602液晶顯示屏可顯現出已設置好的溫度界限和實時溫度等信息,其系統整體方框圖如圖1所示。
該系統主要由DS18B20溫度傳感器感應實時溫度,再將實時信號直接傳送給單片機來進行判斷溫度是否在設置好的溫度范圍內。如在溫度范圍內,則蜂鳴器不報警;反之,蜂鳴器報警,溫度控制模塊開始工作直至溫度恢復正常。
1.2 方案比較
通過篩選,本課題有兩種預選設計方案。第一種方案是通過五種不同顏色的LED燈來區分各種狀態下的電路狀況。第二種方案是直接通過電阻分壓的形式來控制整個溫度控制器的運轉。經過比較兩種方案,第一種方案雖然使用了LED燈, 但數量不多,成本不高,比第二種方案清晰度更高,更美觀,更具有觀賞性;第二種方案雖然減少了設計所需的成本,控制比較靈活,但是電阻分壓浪費了能源的利用率,也不美觀。總體來比較這兩種方案的優缺點,第一種方案更適用于本設計。
2 系統的軟件設計
2.1 程序設計
該設計系統是通過先運行軟件程序,然后配合相關硬件電路來實現它的整體功能。我們可以通過已經成型的硬件電路來確定軟件的主要功能。軟件有不同功能的兩大類:第一類是整個控制系統的核心,即主程序,它下達具體指令給各執行模塊,如讓加熱片加熱或者風扇降溫,主程序相當于操作者和各執行模塊之間溝通的橋梁;第二類是各執行模塊的子程序,具體實現各自早已經設定好的功能。如在本設計中,溫度傳感器感知到實時溫度后,第一時間將之傳輸到液晶顯示屏便是設置好的程序。在進行程序設計的過程中,首先要為每一個執行模塊定義其接口功能,分別設置其相關的子程序;然后根據系統的整體功能來選擇一種最恰當的主程序;最后按照實現控制器所預期功能來確定主程序和各執行模塊之間的主次。在這個過程中,最關鍵的就是要協調好主程序和各子程序之間的關系。
2.2 主要流程
系統是通過Proteus集成開發軟件和Keil μ Vision4軟件來分析并調試的。這兩個軟件不但功能齊全,而且操作簡便;完成編寫程序的工作后,再經過編譯、調試和運行,生成格式為.hex文件,用Proteus仿真軟件添加到STC89C52單片機中,從而進行系統軟件仿真。
點擊“開關按鍵”后,程序開始初始化,首先出現開機界面,液晶顯示屏上面顯示實時溫度,左下角展示上限溫度,右下角則展示其下限溫度,皆精確到小數點后一位。在本設計中,因為Proteus元器件庫里是沒有紅外接收器的,故紅外遙控模塊無法實現仿真功能。電路一共有六種情況,分別是自動和手動模式下的三種工作狀態:加熱、降溫、或者不工作。另外,點擊“復位按鍵”可將程序初始化,回到初始界面; 若首次點擊“設置按鍵”,則光標會停留顯示屏上限溫度的小數點后一位,此時可以點擊“溫度加按鍵”或者“溫度減按鍵”來對溫度界限實施具體操控,第二次點擊“設置按鍵”就表明上限溫度已經設置完畢,第三次點擊它則光標移至下限溫度的小數點后一位,此外,也可以設置下限溫度,最后點擊該按鍵就表明溫度范圍已經設置完畢;其中切換按鍵則可在自動和手動模式之間相互轉換。
3 硬件調試
本設計主要是分為核心的單片機和其它七大具體執行模塊,包括了電源模塊、按鍵模塊、溫度檢測模塊、溫度顯示模塊、溫度控制模塊、紅外遙控模塊以及報警模塊。其中,電源模塊負責提供啟動能源;按鍵模塊共有七個按鍵,其功能分別是:復位,設置,溫度加,溫度減,切換,加熱,降溫;以TL1838為主的紅外遙控模塊接收紅外信號;若溫度不在系統設置界限內,則報警模塊開始工作;剩下的三大模塊則負責對溫度進行實時檢測、顯示和控制。
在自動加熱模式下,溫度范圍為28.1-37.7℃,實時檢測的溫度為25.5℃,故加熱繼電器閉合,藍燈和黃燈亮,蜂鳴器報警,加熱片開始運轉;在手動加熱模式下,溫度范圍為28.2-30.2℃,實時檢測的溫度為26.8℃,故加熱繼電器閉合,藍燈亮,蜂鳴器報警,加熱片開始運轉。
在自動降溫模式下,溫度范圍為24.4-25.0℃,實時檢測的溫度為26.3℃,故降溫繼電器閉合,白燈亮,蜂鳴器報警,風扇開始工作;在手動降溫模式下,溫度范圍為23.9-26.7℃,實時檢測的溫度為27.0℃,故降溫繼電器閉合,白燈亮,蜂鳴器報警,風扇開始工作。
4 結束語
本設計是基于STC89C52單片機的紅外恒溫控制器,它結合了恒溫控制器和紅外線控制器的特點,可在手動/自動兩種模式下控制溫度。首先通過構想該控制器所要實現的功能來確定整個硬件電路的整體結構,進而選擇最適當的元器件,再對相應的軟件程序進行分析設計,結果表明該控制器不但比同類溫度控制器精度高、且實時性好。隨著生產力的不斷提高,進一步研發溫度控制技術,實現它的智能化和自動化對人類社會的意義深遠。
參考文獻:
[1]劉理云.51單片機C語言開發教程[M].化學工業出版社,2017.
[2]童詩白,華成英,葉朝暉.模擬電子技術基礎(第五版)[M].高等教育出版社,2015.
[3]趙汝和.一種基于DS18B20傳感器的溫度測量系統的設計[J].科學技術創新,2018(31).
[4]段旭陽,韓延義,王曉丹,等.基于FPGA的LCD1602液晶顯示屏系統控制設計[J].工業和信息化教育,2018(03).
[5]周潤景,張麗娜,劉印群.PROTEUS入門實用教程[M].機械工業出版社,2007:107-109.
[6]明立軍.基于AT89C51的多功能紅外無線遙控器系統設計[J].電大理工,2013(01).