基于單片機的水溫液位自動控制系統(tǒng)設計
設計一個測溫及液位自動控制系統(tǒng),水位和水溫都可以在一定范圍內由人工設定,當液位低于設定下限值時,系統(tǒng)能自動加水,以保持設定液位高度不變。當溫度低于設定值時,系統(tǒng)能實現(xiàn)自動加熱,以保持設定的溫度基本不變。
系統(tǒng)設計具體要求如下:
(1)液位可在正常工作范圍內任意設定,上、下限之間最大高度差為100mm;
(2)自動完成注水(液位偏差小于5mm),達到設定液位時要有明顯的聲音提示;
(3)具有液位超下限(可設)自動注水功能,自動保持設定液位高度,偏差小于2mm;
(4)加熱溫度可在室溫至100℃之間任意設定;
(5)自動完成加熱(溫度偏差小于5℃),達到設定溫度時要有明顯的、有別于液位的聲音提示;
(6) 具有溫度超下限(可設)自動加熱功能,自動保持設定溫度,偏差小于1℃;
(7) 通過手機完成對該裝置工作參數(shù)無線監(jiān)控。
整個系統(tǒng)采用單片機作為系統(tǒng)核心控制器,接+5V直流電壓源。按下系統(tǒng)總電源開關后,系統(tǒng)開始運行,顯示器顯示系統(tǒng)當前狀態(tài)。用戶可以通過藍牙手機遙控預置溫度和液位高度值。接下來系統(tǒng)會對容器內的水溫和水位進行檢測,判斷溫度和水位是否低于設定值,當?shù)陀谒辉O定值時,單片機會通過控制繼電器的閉合來啟動水泵給容器內上水;若是低于溫度設定值,則單片機會通過控制繼電器的閉合來啟動電熱壺進行加熱操作。每次完成任務后系統(tǒng)都會有相應的語音提示,讓用戶在操作過程中擁有良好的聽覺感受,這使整個系統(tǒng)的設計更加具有人性化。
溫度采集電路
本設計中對容器內溫度的采集在控制系統(tǒng)中占有很重要的一部分,要想得到精準的控制效果,精確的溫度信號是關鍵所在,因此在本設計中采用DS18B20溫度傳感器進行溫度采集。DS18B20溫度傳感器具有獨特的單線接口,只需1個接口引腳即可通信,信息通過單線接口即可送入DS18B20或從DS18B20送出。與單片機電路連接圖如圖所示。
DS18B20與單片機的硬件連接圖
液位檢測電路
本設計中采用了US-100超聲波傳感器來檢測容器內的水位,由單片機控制超聲波模塊****并進行檢波接收,通過串口RX(P3.0引腳)輸出指令0x55到超聲波的Trig/TX管腳,超聲波傳感器會驅動超聲波****探頭向外****出超聲波,遇到障礙物后****出去的超聲波會被反射回來,超聲波傳感器檢測和處理后,結果會通過Echo/RX管腳輸出到單片機的P3.1口,共輸出包含兩個字節(jié)的距離值,前一字節(jié)代表距離高8位(HDate),后者代表距離低8位(LData),計算出(HData*256 +LData)的值即為傳感器距容器內液面的高度,由單片機處理后控制顯示出來,其硬件連接圖如圖所示。
顯示電路
本設計中顯示模塊采用的是型號為LCD12864的液晶,通過它可以顯示出當前水溫和水位的狀態(tài),使容器內的水溫水位狀態(tài)有了一個更為直觀的顯示。串行連接除電源線接地線外,只連接3個管腳即可與單片機進行通信。液晶的片選信號端CS、數(shù)據(jù)口SID端以及同步時鐘端SCLK分別按順序與單片機的P2.0、P2.1、P2.2口相連接,連接電路圖如圖所示。
藍牙傳輸電路
智能手機已經成為了當代人們必備的信息交流工具,而現(xiàn)在的智能手機都具有藍牙功能,本設計中利用外圍單片機通過串口對藍牙模塊進行開發(fā),使藍牙模塊和藍牙手機建立連接,實現(xiàn)藍牙設備與藍牙手機之間的無線通信,使用者通過藍牙手機即可對該系統(tǒng)進行參數(shù)設置,從而實現(xiàn)用手機完成對裝置工作參數(shù)的無線監(jiān)控的目的。系統(tǒng)采用型號為HC-06的藍牙模塊,該型號藍牙模塊結構功能簡單合理,成本低且能滿足需求。
繼電器控制電路
繼電器實際上是一種用小電流控制大電流的“自動開關”,通常應用在自動控制電路中,起著安全保護、自動調節(jié)等作用,是一種電子控制器件。本控制系統(tǒng)利用固態(tài)繼電器的常開觸點來作為接通輔助加熱器和加水裝置的開關。水溫的加熱是通過電熱壺來實現(xiàn)的,對于電熱壺這種大功率交流元件,STC12C5A60S2是不可能通過自己的引腳來完成的,而需要通過功率放大元件利用220V的交流電來實現(xiàn)加熱和加水。對繼電器動作與否的總控制信號是P1.3口。當CPU向P1.3發(fā)高電平信號時,進入三極管Q2,此時固態(tài)繼電器導通,同時D2發(fā)光二極管點亮,指示工作狀態(tài)為正在輔助加熱。
電加熱控制電路
水位的補償則是通過水泵來實現(xiàn)的,水泵是大功率交流元件,STC12C5A60S2無法通過自己的引腳來完成對它的控制,而需要通過控制繼電器的閉合220V的交流電來實現(xiàn)水泵加水,控制電路如圖所示。對繼電器動作與否的總控制信號是STC12C5A60S2的P1.4口線。當CPU向P1.4發(fā)高電平信號時,進入三極管Q1,此時固態(tài)繼電器導通,同時D1發(fā)光二極管點亮,指示工作狀態(tài)為正在加水。
水泵上水控制電路
主程序設計
主程序是整個系統(tǒng)軟件中的管理者,它管理著程序的走向以及各個子程序的調用。系統(tǒng)啟動時,程序開始運行對各個I/O口進行初始化操作,然后啟動超聲波傳感器和DS18B20溫度傳感器對容器內的水溫水位進行采集測量,并做出相應的處理。然后將采集到的數(shù)據(jù)與設定值進行比較,通過計算后根據(jù)PWM脈沖控制繼電器的閉合程度,從而控制水泵和電熱壺來實現(xiàn)水溫水位的調整。主程序流程圖如圖所示。
溫度控制程序設計
本系統(tǒng)的水溫采集系統(tǒng)是實時的,系統(tǒng)初始化時,將水溫監(jiān)測模塊對應的DS18B20啟用。DS18B20測出的實際溫度送入單片機中與目標值相比較,調用PWM脈沖產生子程序對電熱壺所對應的繼電器進行控制。溫度控制流圖如圖所示。
水位控制程序設計
首先我們需要對串口進行初始化設置好定時器的工作方式,然后通過程序驅動讓單片機向超聲波傳感器的Trig/TX管腳發(fā)送指令0x55,此時超聲波會****8個40KHZ的超聲波脈沖,檢測到回波信號后,將包含兩個字節(jié)的距離值傳送給單片機,通過計算得出容器內的液位高度,由單片機控制調用PWM脈沖產生子程序對水泵所對應的繼電器進行控制,并將當前水位狀況送到液晶顯示出來。液位控制流程圖如圖所示。
*博客內容為網友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。