博客專欄

EEPW首頁(yè) > 博客 > 基于單片機(jī)的水溫液位自動(dòng)控制系統(tǒng)設(shè)計(jì)

基于單片機(jī)的水溫液位自動(dòng)控制系統(tǒng)設(shè)計(jì)

發(fā)布人:dianlaotie 時(shí)間:2022-03-25 來(lái)源:工程師 發(fā)布文章

設(shè)計(jì)一個(gè)測(cè)溫及液位自動(dòng)控制系統(tǒng),水位和水溫都可以在一定范圍內(nèi)由人工設(shè)定,當(dāng)液位低于設(shè)定下限值時(shí),系統(tǒng)能自動(dòng)加水,以保持設(shè)定液位高度不變。當(dāng)溫度低于設(shè)定值時(shí),系統(tǒng)能實(shí)現(xiàn)自動(dòng)加熱,以保持設(shè)定的溫度基本不變。

系統(tǒng)設(shè)計(jì)具體要求如下:


(1)液位可在正常工作范圍內(nèi)任意設(shè)定,上、下限之間最大高度差為100mm;


(2)自動(dòng)完成注水(液位偏差小于5mm),達(dá)到設(shè)定液位時(shí)要有明顯的聲音提示;


(3)具有液位超下限(可設(shè))自動(dòng)注水功能,自動(dòng)保持設(shè)定液位高度,偏差小于2mm;


(4)加熱溫度可在室溫至100℃之間任意設(shè)定;


(5)自動(dòng)完成加熱(溫度偏差小于5℃),達(dá)到設(shè)定溫度時(shí)要有明顯的、有別于液位的聲音提示;


(6) 具有溫度超下限(可設(shè))自動(dòng)加熱功能,自動(dòng)保持設(shè)定溫度,偏差小于1℃;


(7) 通過(guò)手機(jī)完成對(duì)該裝置工作參數(shù)無(wú)線監(jiān)控。


整個(gè)系統(tǒng)采用單片機(jī)作為系統(tǒng)核心控制器,接+5V直流電壓源。按下系統(tǒng)總電源開關(guān)后,系統(tǒng)開始運(yùn)行,顯示器顯示系統(tǒng)當(dāng)前狀態(tài)。用戶可以通過(guò)藍(lán)牙手機(jī)遙控預(yù)置溫度和液位高度值。接下來(lái)系統(tǒng)會(huì)對(duì)容器內(nèi)的水溫和水位進(jìn)行檢測(cè),判斷溫度和水位是否低于設(shè)定值,當(dāng)?shù)陀谒辉O(shè)定值時(shí),單片機(jī)會(huì)通過(guò)控制繼電器的閉合來(lái)啟動(dòng)水泵給容器內(nèi)上水;若是低于溫度設(shè)定值,則單片機(jī)會(huì)通過(guò)控制繼電器的閉合來(lái)啟動(dòng)電熱壺進(jìn)行加熱操作。每次完成任務(wù)后系統(tǒng)都會(huì)有相應(yīng)的語(yǔ)音提示,讓用戶在操作過(guò)程中擁有良好的聽覺感受,這使整個(gè)系統(tǒng)的設(shè)計(jì)更加具有人性化。

溫度采集電路

本設(shè)計(jì)中對(duì)容器內(nèi)溫度的采集在控制系統(tǒng)中占有很重要的一部分,要想得到精準(zhǔn)的控制效果,精確的溫度信號(hào)是關(guān)鍵所在,因此在本設(shè)計(jì)中采用DS18B20溫度傳感器進(jìn)行溫度采集。DS18B20溫度傳感器具有獨(dú)特的單線接口,只需1個(gè)接口引腳即可通信,信息通過(guò)單線接口即可送入DS18B20或從DS18B20送出。與單片機(jī)電路連接圖如圖所示。

DS18B20與單片機(jī)的硬件連接圖


液位檢測(cè)電路

本設(shè)計(jì)中采用了US-100超聲波傳感器來(lái)檢測(cè)容器內(nèi)的水位,由單片機(jī)控制超聲波模塊****并進(jìn)行檢波接收,通過(guò)串口RX(P3.0引腳)輸出指令0x55到超聲波的Trig/TX管腳,超聲波傳感器會(huì)驅(qū)動(dòng)超聲波****探頭向外****出超聲波,遇到障礙物后****出去的超聲波會(huì)被反射回來(lái),超聲波傳感器檢測(cè)和處理后,結(jié)果會(huì)通過(guò)Echo/RX管腳輸出到單片機(jī)的P3.1口,共輸出包含兩個(gè)字節(jié)的距離值,前一字節(jié)代表距離高8位(HDate),后者代表距離低8位(LData),計(jì)算出(HData*256 +LData)的值即為傳感器距容器內(nèi)液面的高度,由單片機(jī)處理后控制顯示出來(lái),其硬件連接圖如圖所示。

顯示電路

本設(shè)計(jì)中顯示模塊采用的是型號(hào)為L(zhǎng)CD12864的液晶,通過(guò)它可以顯示出當(dāng)前水溫和水位的狀態(tài),使容器內(nèi)的水溫水位狀態(tài)有了一個(gè)更為直觀的顯示。串行連接除電源線接地線外,只連接3個(gè)管腳即可與單片機(jī)進(jìn)行通信。液晶的片選信號(hào)端CS、數(shù)據(jù)口SID端以及同步時(shí)鐘端SCLK分別按順序與單片機(jī)的P2.0、P2.1、P2.2口相連接,連接電路圖如圖所示。

藍(lán)牙傳輸電路

智能手機(jī)已經(jīng)成為了當(dāng)代人們必備的信息交流工具,而現(xiàn)在的智能手機(jī)都具有藍(lán)牙功能,本設(shè)計(jì)中利用外圍單片機(jī)通過(guò)串口對(duì)藍(lán)牙模塊進(jìn)行開發(fā),使藍(lán)牙模塊和藍(lán)牙手機(jī)建立連接,實(shí)現(xiàn)藍(lán)牙設(shè)備與藍(lán)牙手機(jī)之間的無(wú)線通信,使用者通過(guò)藍(lán)牙手機(jī)即可對(duì)該系統(tǒng)進(jìn)行參數(shù)設(shè)置,從而實(shí)現(xiàn)用手機(jī)完成對(duì)裝置工作參數(shù)的無(wú)線監(jiān)控的目的。系統(tǒng)采用型號(hào)為HC-06的藍(lán)牙模塊,該型號(hào)藍(lán)牙模塊結(jié)構(gòu)功能簡(jiǎn)單合理,成本低且能滿足需求。

繼電器控制電路

繼電器實(shí)際上是一種用小電流控制大電流的“自動(dòng)開關(guān)”,通常應(yīng)用在自動(dòng)控制電路中,起著安全保護(hù)、自動(dòng)調(diào)節(jié)等作用,是一種電子控制器件。本控制系統(tǒng)利用固態(tài)繼電器的常開觸點(diǎn)來(lái)作為接通輔助加熱器和加水裝置的開關(guān)。水溫的加熱是通過(guò)電熱壺來(lái)實(shí)現(xiàn)的,對(duì)于電熱壺這種大功率交流元件,STC12C5A60S2是不可能通過(guò)自己的引腳來(lái)完成的,而需要通過(guò)功率放大元件利用220V的交流電來(lái)實(shí)現(xiàn)加熱和加水。對(duì)繼電器動(dòng)作與否的總控制信號(hào)是P1.3口。當(dāng)CPU向P1.3發(fā)高電平信號(hào)時(shí),進(jìn)入三極管Q2,此時(shí)固態(tài)繼電器導(dǎo)通,同時(shí)D2發(fā)光二極管點(diǎn)亮,指示工作狀態(tài)為正在輔助加熱。

電加熱控制電路

水位的補(bǔ)償則是通過(guò)水泵來(lái)實(shí)現(xiàn)的,水泵是大功率交流元件,STC12C5A60S2無(wú)法通過(guò)自己的引腳來(lái)完成對(duì)它的控制,而需要通過(guò)控制繼電器的閉合220V的交流電來(lái)實(shí)現(xiàn)水泵加水,控制電路如圖所示。對(duì)繼電器動(dòng)作與否的總控制信號(hào)是STC12C5A60S2的P1.4口線。當(dāng)CPU向P1.4發(fā)高電平信號(hào)時(shí),進(jìn)入三極管Q1,此時(shí)固態(tài)繼電器導(dǎo)通,同時(shí)D1發(fā)光二極管點(diǎn)亮,指示工作狀態(tài)為正在加水。

水泵上水控制電路


主程序設(shè)計(jì)

主程序是整個(gè)系統(tǒng)軟件中的管理者,它管理著程序的走向以及各個(gè)子程序的調(diào)用。系統(tǒng)啟動(dòng)時(shí),程序開始運(yùn)行對(duì)各個(gè)I/O口進(jìn)行初始化操作,然后啟動(dòng)超聲波傳感器和DS18B20溫度傳感器對(duì)容器內(nèi)的水溫水位進(jìn)行采集測(cè)量,并做出相應(yīng)的處理。然后將采集到的數(shù)據(jù)與設(shè)定值進(jìn)行比較,通過(guò)計(jì)算后根據(jù)PWM脈沖控制繼電器的閉合程度,從而控制水泵和電熱壺來(lái)實(shí)現(xiàn)水溫水位的調(diào)整。主程序流程圖如圖所示。



溫度控制程序設(shè)計(jì)

本系統(tǒng)的水溫采集系統(tǒng)是實(shí)時(shí)的,系統(tǒng)初始化時(shí),將水溫監(jiān)測(cè)模塊對(duì)應(yīng)的DS18B20啟用。DS18B20測(cè)出的實(shí)際溫度送入單片機(jī)中與目標(biāo)值相比較,調(diào)用PWM脈沖產(chǎn)生子程序?qū)﹄姛釅厮鶎?duì)應(yīng)的繼電器進(jìn)行控制。溫度控制流圖如圖所示。

水位控制程序設(shè)計(jì)

首先我們需要對(duì)串口進(jìn)行初始化設(shè)置好定時(shí)器的工作方式,然后通過(guò)程序驅(qū)動(dòng)讓單片機(jī)向超聲波傳感器的Trig/TX管腳發(fā)送指令0x55,此時(shí)超聲波會(huì)****8個(gè)40KHZ的超聲波脈沖,檢測(cè)到回波信號(hào)后,將包含兩個(gè)字節(jié)的距離值傳送給單片機(jī),通過(guò)計(jì)算得出容器內(nèi)的液位高度,由單片機(jī)控制調(diào)用PWM脈沖產(chǎn)生子程序?qū)λ盟鶎?duì)應(yīng)的繼電器進(jìn)行控制,并將當(dāng)前水位狀況送到液晶顯示出來(lái)。液位控制流程圖如圖所示。


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: 單片機(jī) 自動(dòng)控制

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉