常 敏,崔永進(jìn),王昊遠(yuǎn)
(上海理工大學(xué) 光電信息與計(jì)算機(jī)工程學(xué)院,上海 200093)
基于單片機(jī)的水位監(jiān)控系統(tǒng)仿真設(shè)計(jì)
常敏,崔永進(jìn),王昊遠(yuǎn)
(上海理工大學(xué) 光電信息與計(jì)算機(jī)工程學(xué)院,上海200093)
摘要文中論述了以STC89C52單片機(jī)為核心的水位監(jiān)控系統(tǒng),水位信號(hào)由超聲波測(cè)距模塊DYP-ME007采集,通過(guò)單片機(jī)及LCD1602實(shí)時(shí)顯示水位。針對(duì)其特點(diǎn)設(shè)計(jì)電路接口,運(yùn)用相關(guān)算法進(jìn)行軟件編程,并在Proteus環(huán)境下進(jìn)行實(shí)際仿真測(cè)試。仿真結(jié)果表明,該系統(tǒng)能實(shí)現(xiàn)對(duì)水位的實(shí)時(shí)顯示、處理和報(bào)警功能,且具有簡(jiǎn)單可靠,抗干擾性及可移植性強(qiáng)等特點(diǎn)。
關(guān)鍵詞單片機(jī);水位監(jiān)測(cè)控制;1602液晶顯示;Proteus仿真
Simulation Design of Water Level Monitoring System Based on MCU
CHANG Min,CUI Yongjin,WANG Haoyuan
(School of Optical-Electrical and Computer Engineering,University of Shanghai for
Science and Technology,Shanghai 200093,China)
AbstractThe water level monitoring system based on STC89C52 microcontroller is discussed in this paper.The water level signal is gathered by the ultrasonic ranging module DYP-ME007 and the level displayed continuously through the monolithic integrated circuit and LCD1602.The software programming of the interface circuit is performed using the related algorithm and simulated in Proteus.The result indicates that this system can realize real-time display,processing and alarm functions,and has the characteristics of simple structure,reliable operation,good anti-interference performance and portability.
KeywordsMCU;water level monitoring and control;LCD1602;Proteus simulation
水是生產(chǎn)、生活中必不可少的物質(zhì),而對(duì)水位的檢測(cè)與控制關(guān)系到生產(chǎn)、生活正常進(jìn)行[1]。隨著新型電子技術(shù)和微型計(jì)算機(jī)的應(yīng)用,單片機(jī)控制系統(tǒng)以其控制精度高、造價(jià)低等特點(diǎn),被廣泛應(yīng)用于水位系統(tǒng)控制中[2]。
1系統(tǒng)硬件設(shè)計(jì)
該系統(tǒng)由電源電路、超聲波測(cè)距模塊[3-4]、單片機(jī)系統(tǒng)、1602液晶顯示電路、光報(bào)警電路、繼電器控制水泵加水電路以及串口通訊電路等共同組成,實(shí)現(xiàn)對(duì)水位的實(shí)時(shí)顯示、處理和報(bào)警功能。系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 水位監(jiān)控系統(tǒng)結(jié)構(gòu)框圖
系統(tǒng)正常工作時(shí),單片機(jī)STC89C52[5]編程產(chǎn)生10 μs以上的高電平信號(hào),由P1.0端口[6]輸送給超聲波測(cè)距模塊的Trig端口,觸發(fā)超聲波測(cè)距模塊發(fā)射超聲波,當(dāng)超聲波遇到被測(cè)水面時(shí),會(huì)被反射回到超聲波測(cè)距模塊的接收探頭;超聲波測(cè)距模塊的Echo端口與單片機(jī)P3.2端口連接,利用單片機(jī)記錄超聲波發(fā)射的時(shí)間和接收到回波的時(shí)間,進(jìn)而計(jì)算得到水位高度。當(dāng)水位處于下限時(shí),單片機(jī)輸出一個(gè)低電平信號(hào),驅(qū)動(dòng)水泵加水并使紅燈變亮;當(dāng)水位在設(shè)定的正常范圍內(nèi)時(shí),綠燈變亮;當(dāng)水位處于設(shè)定上限時(shí),單片機(jī)停止驅(qū)動(dòng),黃燈亮。如此不斷地周期測(cè)量,便可達(dá)到實(shí)時(shí)顯示水位及處理報(bào)警功能。系統(tǒng)硬件電路如圖2所示。
圖2 水位監(jiān)控系統(tǒng)硬件電路圖
2系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)[7]主要包括程序初始化、時(shí)間設(shè)定子程序、水位信號(hào)處理程序、液晶顯示程序、繼電器控制程序和光報(bào)警程序等。系統(tǒng)程序流程如圖3所示。
圖3 程序流程圖
水位監(jiān)控系統(tǒng)主要算法實(shí)現(xiàn):
在初始化以及調(diào)用激發(fā)超聲波模塊程序后,單片機(jī)T1開(kāi)始計(jì)時(shí),待接收信號(hào)完成后,激發(fā)外部中斷0,響應(yīng)中斷子程序,T1計(jì)時(shí)停止,此時(shí)進(jìn)行數(shù)據(jù)調(diào)控并實(shí)時(shí)顯示水位。其中,系統(tǒng)處于正常水位時(shí)有兩種情況:由下限水位到正常水位時(shí),繼電器不會(huì)斷開(kāi),驅(qū)動(dòng)水泵繼續(xù)加水;由上限水位變?yōu)檎K?繼電器斷開(kāi),水泵不工作。水位控制實(shí)現(xiàn)算法如圖4所示。
圖4 水位控制實(shí)現(xiàn)
3Protues系統(tǒng)仿真
由于Protues中沒(méi)有超聲波模塊:DYP-ME007,根據(jù)系統(tǒng)工作原理,在P1.0端口給DYP-ME007發(fā)射端加一個(gè)20 μs以上的高電平,然后在接收端P3.2端口開(kāi)始計(jì)時(shí)等待高電平輸出,當(dāng)此端口變低電平讀出定時(shí)器的值即為測(cè)距時(shí)間,因此可用不同頻率脈沖代替超聲波測(cè)距模塊所發(fā)出信號(hào)輸送給單片機(jī)的P3.2端口,實(shí)現(xiàn)對(duì)水位各狀態(tài)的仿真。
將Keil軟件編譯生成的hex文件加載到單片機(jī)芯片中,設(shè)定單片機(jī)時(shí)鐘工作頻率為12 MHz,在Proteus軟件環(huán)境下進(jìn)行實(shí)際仿真測(cè)試[8-10]。待機(jī)狀態(tài)下,P1.0和P3.2端口均顯示低電平,LCD顯示W(wǎng)L:CM,符合設(shè)計(jì)要求。待機(jī)狀態(tài)仿真結(jié)果如圖5所示。
圖5 待機(jī)狀態(tài)仿真結(jié)果
系統(tǒng)處于下限水位時(shí),紅燈亮,LCD實(shí)時(shí)顯示水位并標(biāo)記狀態(tài)“L”,光電耦合器工作,繼電器閉合,水泵處于運(yùn)行狀態(tài)。下限水位狀態(tài)仿真結(jié)果如圖6所示。
圖6 下限水位狀態(tài)仿真結(jié)果
正常水位分兩種情況:由上限水位變?yōu)檎K粫r(shí),綠燈亮,LCD實(shí)時(shí)顯示水位并標(biāo)記狀態(tài)“M”,繼電器斷開(kāi),水泵不工作;由下限水位變?yōu)檎K粫r(shí),繼電器依舊處于閉合狀態(tài),水泵處于運(yùn)行狀態(tài),水塔水位會(huì)繼續(xù)增高。正常水位狀態(tài)仿真結(jié)果如圖7所示。
圖7 正常水位狀態(tài)仿真結(jié)果
系統(tǒng)處于上限水位時(shí),黃燈亮,LCD實(shí)時(shí)顯示水位并標(biāo)記狀態(tài)“H”,光電耦合器未導(dǎo)通,繼電器處于斷開(kāi)狀態(tài),水泵不工作。上限水位狀態(tài)仿真結(jié)果如圖8所示。
圖8 上限水位狀態(tài)仿真結(jié)果
4結(jié)束語(yǔ)
該系統(tǒng)能成功實(shí)現(xiàn)水位的實(shí)時(shí)顯示、處理和報(bào)警功能,控制水位高度始終處于較理想的范圍內(nèi),且具有結(jié)構(gòu)簡(jiǎn)單、制造成本低、靈敏度高、可移植性強(qiáng)等優(yōu)點(diǎn),對(duì)實(shí)現(xiàn)水位自動(dòng)檢測(cè)和控制具有實(shí)際的應(yīng)用價(jià)值。該系統(tǒng)不僅可用于水位監(jiān)控,在其他液位檢測(cè)控制系統(tǒng)中同樣適用。
參考文獻(xiàn)
[1]唐靈軍,唐杰,諶超,等.基于單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2012,20(8):62-64.
[2]馬俊,陳靖.基于單片機(jī)的水塔水位檢測(cè)控制系統(tǒng)仿真設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009,17(4):85-89.
[3]郁友文,常建.傳感器原理及工程應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2008.
[4]王俊杰.傳感器與檢測(cè)技術(shù)[M].北京:清華大學(xué)出版社,2011.
[5]汪桂平,李登峰.新編單片機(jī)原理及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2009.
[6]李朝青.單片機(jī)原理及接口技術(shù)[M].3版.北京:北京航空航天大學(xué)出版社,2005.
[7]周雅靜.C語(yǔ)言程序設(shè)計(jì)實(shí)用教程[M].北京:清華大學(xué)出版社,2011.
[8]周潤(rùn)景.Proteus入門(mén)實(shí)用教程[M].北京:機(jī)械工業(yè)出版社,2007.
[9]周潤(rùn)景.基于Proteus的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006.
[10]陳朝元,魯五一.Proteus軟件在自動(dòng)控制系統(tǒng)仿真中的應(yīng)用[J].系統(tǒng)仿真學(xué)報(bào),2008,20(2):318-320.
作者簡(jiǎn)介:崔永進(jìn)(1983—),男,碩士研究生。研究方向:光電檢測(cè)與光電信息處理。
收稿日期:2015- 06- 05
中圖分類號(hào)TP277
文獻(xiàn)標(biāo)識(shí)碼A
文章編號(hào)1007-7820(2016)01-111-04
doi:10.16180/j.cnki.issn1007-7820.2016.01.030