基于虧單片機(jī)的水塔水位檢測控制系統(tǒng)仿真設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:設(shè)計(jì)一種基于單片機(jī)水塔水位檢測控制系統(tǒng)。該系統(tǒng)能實(shí)現(xiàn)水位檢測、電機(jī)故障檢測、處理和報(bào)警等功能,實(shí)現(xiàn)超高、低警戒水位報(bào)警,超高警戒水位處理。介紹電路接口原理圖,給出相應(yīng)的軟件設(shè)計(jì)流程圖和匯編程序,并用Proteus軟件仿真。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)具有良好的檢測控制功能,可移植性和擴(kuò)展性強(qiáng)。
關(guān)鍵詞:單片機(jī);水位檢測;控制系統(tǒng);仿真
l 引言
水塔供水的主要問題是塔內(nèi)水位應(yīng)始終保持在一定范圍,避免“空塔”、“溢塔”現(xiàn)象發(fā)生。目前,控制水塔水位方法較多,其中較為常用的是由單片機(jī)控制實(shí)現(xiàn)自動(dòng)運(yùn)行,使水塔內(nèi)水位保持恒定,以保證連續(xù)正常地供水。實(shí)際供水過程中要確保水位在允許的范圍內(nèi)浮動(dòng),應(yīng)采用電壓控制水位。首先通過實(shí)時(shí)檢測電壓,測量水位變化,從而控制電動(dòng)機(jī),保證水位正常。因此,這里給出以Atmel公司的AT89C5l單片機(jī)為核心器件的水塔水位檢測控制系統(tǒng)仿真設(shè)計(jì),實(shí)現(xiàn)水位的檢測控制、電機(jī)故障檢測、處理和報(bào)警等功能,并在Pmteus軟件環(huán)境下實(shí)際仿真。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)具有良好的檢測控制功能,可移植性和擴(kuò)展性強(qiáng)。
2 水塔水位控制原理
單片機(jī)水塔水位控制原理如圖l所示,圖中的虛線表示允許水位變化的上、下限位置。在正常情況下,水位應(yīng)控制在虛線范圍之內(nèi)。為此,在水塔內(nèi)的不同高度處,安裝固定不變的3根金屬棒A、B、C,用以反映水位變化的情況。其中,A棒在下限水位,B棒在上、下限水位之間,C棒在上限水位(底端靠近水池底部,不能過低,要保證有足夠大的流水量)。水塔由電機(jī)帶動(dòng)水泵供水,單片機(jī)控制電機(jī)轉(zhuǎn)動(dòng),隨著供水,水位不斷上升,當(dāng)水位上升到上限水位時(shí),由于水的導(dǎo)電作用,使B、C棒均與+5 V連通。因此b、c兩端的電壓都為+5 V即為“1”狀態(tài).此時(shí)應(yīng)停止電機(jī)和水泵工作,不再向水塔注水;當(dāng)水位處于上、下限之間時(shí),B棒和A棒導(dǎo)通,而C棒不能與A棒導(dǎo)通,b端為“1”狀態(tài),c端為“0”狀態(tài)。此時(shí)電機(jī)帶動(dòng)水泵給水塔注水,使水位上升,還是電機(jī)不工作,水位不斷下降,都應(yīng)繼續(xù)維持原有工作狀態(tài);當(dāng)水位處于下限位置以下時(shí),B、C棒均不能與A棒導(dǎo)通,b、c均為“0”狀態(tài),此時(shí)應(yīng)啟動(dòng)電機(jī)轉(zhuǎn)動(dòng),帶動(dòng)水泵給水塔注水。
3 電路設(shè)計(jì)
水塔水位控制系統(tǒng)主要由CPU(AT89C51)、水位檢測接口電路、報(bào)警接口電路、存儲(chǔ)器擴(kuò)展接口電路、復(fù)位電路、時(shí)鐘振蕩等部分組成,如圖2所示。圖3為系統(tǒng)硬件電路。
3.1 水位檢測接口電路
為了便于實(shí)現(xiàn)水位檢測功能,用一個(gè)兩位的撥碼開關(guān)模擬b、c端的狀態(tài)(1、0),正電極接+5 V電源,每個(gè)負(fù)電極分別通過4.7 kQ的電阻(尺1,R2)接地。將單片機(jī)的P1.0端口接開關(guān)1,P1.1端口接開關(guān)2。假設(shè)被水淹沒的負(fù)電極都為高電平,此時(shí)開關(guān)置1;露在水面的負(fù)電極都為低電平,開關(guān)此時(shí)置為0。單片機(jī)通過負(fù)電極重復(fù)采集檢測水位,當(dāng)缺水時(shí)(此時(shí)兩個(gè)開關(guān)均置0),電機(jī)必須帶動(dòng)水泵抽水;若水位在正常范圍內(nèi)時(shí),檢測信號為高,低電平(此時(shí)開關(guān)1置1,開關(guān)2置0);當(dāng)水位過高時(shí),檢測信號為高電平(此時(shí)開關(guān)l和2都置1),單片機(jī)檢測到P1.0和P1.1為高電平后,立即停機(jī)。
3.2 報(bào)警接口電路
為了避免系統(tǒng)發(fā)生故障時(shí),水位失去控制造成嚴(yán)重后果,在超出、低于警戒界水位時(shí),報(bào)警信號直接從高、低警界水位電極獲得。單片機(jī)P1.7端口為啟動(dòng)電機(jī)命令輸出端口,P1.7=0為低電平,經(jīng)過非門后與電機(jī)的另一端接地導(dǎo)通,啟動(dòng)電機(jī)工作;P1.7=l為高電平,反之,電機(jī)停止工作。電機(jī)故障報(bào)警由單片機(jī)控制,電機(jī)故障報(bào)警信號由P1.0和P1.1輸人.當(dāng)P1.5為高電平時(shí)蜂鳴器報(bào)警。水位超過高警戒水位,單片機(jī)控制系統(tǒng)使電機(jī)停止轉(zhuǎn)動(dòng),向水塔內(nèi)供水工作也停止。
3.3 存儲(chǔ)器擴(kuò)展接口電路
為了便于系統(tǒng)擴(kuò)展,存放大容量應(yīng)用程序,系統(tǒng)設(shè)計(jì)擴(kuò)展一片程序存儲(chǔ)器,用于存放源程序代碼。74LS373用于鎖存地址,單片機(jī)的P0.0~P0.7通過復(fù)用方式分別接鎖存器74LS373的DO~D7和存儲(chǔ)器2732的D0~D7端,地址鎖存信號線ALE接鎖存器的OE端,通過軟件設(shè)置實(shí)現(xiàn)地址和數(shù)據(jù)信息的傳輸,鎖存器的輸出端OQ0~O7與存儲(chǔ)器地址線A0~A7相連,剩余的3根地址線A8~A11接P2.0~P2.2.單片機(jī)選通引腳麗接存儲(chǔ)器OE端,因只擴(kuò)展一片存儲(chǔ)器,片選端CE接地。
4 系統(tǒng)軟件設(shè)計(jì)
當(dāng)水塔水位處于上、下限之間時(shí),P1.0=l,P1.1=0,此時(shí)無論電機(jī)是在帶動(dòng)水泵給水塔供水使水位不斷上升.還是電機(jī)沒有工作使水位不斷下降,都應(yīng)繼續(xù)維持原有工作狀態(tài);當(dāng)水位低于下限時(shí),P1.0=0,P1.1=0,此時(shí)啟動(dòng)電機(jī)轉(zhuǎn)動(dòng),帶動(dòng)水泵給水塔供水。水位檢測信號與輸出控制操作關(guān)系如表1所列,圖4為水塔水位控制程序流程。
5 實(shí)驗(yàn)仿真結(jié)果
根據(jù)所設(shè)計(jì)系統(tǒng)的軟件流程圖,編寫相應(yīng)的程序在Pro-teus軟件環(huán)境下實(shí)際仿真,實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)能成功實(shí)現(xiàn)了水位檢測、電機(jī)故障檢測、處理和報(bào)警等功能,具有良好的檢測控制功能,可移植性和擴(kuò)展性強(qiáng)。通過制作PCB板子,該系統(tǒng)已成功運(yùn)用于某實(shí)驗(yàn)水冷卻系統(tǒng)。
6 結(jié)語
該系統(tǒng)設(shè)計(jì)是基于在單片機(jī)嵌入式系統(tǒng)而設(shè)計(jì)的,充分利用單片機(jī)強(qiáng)大控制功能和方便通信接口,該檢測控制系統(tǒng)在實(shí)驗(yàn)室某實(shí)驗(yàn)水冷卻系統(tǒng)得到成功實(shí)踐,實(shí)現(xiàn)水位檢測、電機(jī)故障檢測、處理和報(bào)警等功能,提高了實(shí)驗(yàn)的自動(dòng)控制能力。進(jìn)一步優(yōu)化系統(tǒng)軟硬件設(shè)計(jì),可為實(shí)時(shí)實(shí)現(xiàn)遠(yuǎn)端控制,因此,該系統(tǒng)在農(nóng)村水塔,城市水源檢測控制等領(lǐng)域有著廣闊的應(yīng)用前景。