基于AT89C51單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)_第1頁(yè)
基于AT89C51單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)_第2頁(yè)
基于AT89C51單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)_第3頁(yè)
基于AT89C51單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)_第4頁(yè)
基于AT89C51單片機(jī)的水位控制系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單片機(jī)原理及系統(tǒng)課程設(shè)計(jì)報(bào)告1 引言1.1 設(shè)計(jì)目的在工農(nóng)業(yè)生產(chǎn)中,常常需要測(cè)量液體液位。隨著國(guó)家工業(yè)的迅速發(fā)展,液位測(cè)量技術(shù)被廣泛應(yīng)用到石油、化工、醫(yī)藥、食品等各行各業(yè)中。低溫液體(液氧、液氮、液氬、液化天然氣及液體二氧化碳等)得到廣泛的應(yīng)用,作為貯存低溫液體的容器要保證能承受其載荷;在發(fā)電廠、煉鋼廠中,保持正常的鍋爐汽包水位、除氧器水位、汽輪機(jī)凝氣器水位、高、低壓加熱器水位等,是設(shè)備安全運(yùn)行的保證,因此一個(gè)安全合適的水位系統(tǒng)是很必要的。1.2 設(shè)計(jì)要求利用單片機(jī)設(shè)計(jì)一個(gè)水位控制系統(tǒng),要求用開(kāi)關(guān)來(lái)模擬水位的狀態(tài),當(dāng)設(shè)定完水位后,系統(tǒng)根據(jù)水位情況控制電磁閥的開(kāi)啟和關(guān)斷。具體要求如下:1、設(shè)計(jì)單

2、片機(jī)工作系統(tǒng)電路。2、通過(guò)鍵盤設(shè)置其預(yù)定水位,根據(jù)水位不同控制電機(jī)的旋轉(zhuǎn)。5、利用proteus進(jìn)行仿真。1.3 設(shè)計(jì)方法本設(shè)計(jì)是采用at89c51單片機(jī)為核心芯片,及其相關(guān)硬件來(lái)實(shí)現(xiàn)的水體液位控制系統(tǒng),采用八個(gè)鍵盤來(lái)模擬水位, cpu循環(huán)檢鍵盤輸入狀態(tài),并用3位七段led顯示示液位高度,檢測(cè)液位數(shù)據(jù),實(shí)施報(bào)警安全提示,當(dāng)水體液位低于用戶設(shè)定的值時(shí),系統(tǒng)自動(dòng)打開(kāi)泵上水,當(dāng)水位到達(dá)設(shè)定值時(shí),系統(tǒng)自動(dòng)打開(kāi)排水泵。2 設(shè)計(jì)方法和原理2.1 水塔水位的控制原理單片機(jī)水塔水位控制原理如圖l所示,圖中的虛線表示允許水位變化的上、下限位置。在正常情況下水位應(yīng)控制在虛線范圍之內(nèi)。為此,在水塔內(nèi)的不同高度處,安

3、裝固定不變的3根金屬棒a、b、c。用以反映水位變化的情況。其中,a棒在下限水位b棒在上、下限水位之間,c棒在上限水位(底端靠近水池底部不能過(guò)低,要保證有足夠大的流水量)。水塔由電機(jī)帶動(dòng)水泵供水。單片機(jī)控制電機(jī)轉(zhuǎn)動(dòng),隨著供水,水位不斷上升當(dāng)水位上升到上限水位時(shí),由于水的導(dǎo)電作用。使b、c棒均與+5 v連通。因此b、c兩端的電壓都為+5 v,即為“l(fā)”狀態(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ù)維持原有工

4、作狀態(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)水泵給水塔注水,然后重復(fù)原來(lái)的過(guò)程,這就是簡(jiǎn)單的水位控制原理。圖1 水位控制原理2.2 總體設(shè)計(jì)方案系統(tǒng)的原理是采用8個(gè)按鈕進(jìn)行水位檢測(cè),在現(xiàn)場(chǎng)的3個(gè)不同的位置,由下至上測(cè)量水體的液位值。并把這八個(gè)液位狀態(tài)通過(guò)模數(shù)轉(zhuǎn)換器傳到單片機(jī)中(在本系統(tǒng)中采用開(kāi)關(guān)的打開(kāi)與閉合來(lái)模擬),在通過(guò)3位七段led顯示器顯示出液位的八種狀態(tài)并通過(guò)led燈報(bào)警提示。當(dāng)水位過(guò)低(在3水位)時(shí)燈就會(huì)變亮,當(dāng)水位較高(在7水位時(shí))等也會(huì)變亮,用來(lái)讓用戶察覺(jué)。在水位過(guò)高和過(guò)低時(shí)電磁閥都會(huì)自動(dòng)的抽水或排水,其具體的抽水和排

5、水位置可以設(shè)定,此系統(tǒng)中采用的是7水位和3水位。3 硬件設(shè)計(jì)3.1 硬件設(shè)計(jì)方案系統(tǒng)方案設(shè)計(jì)液位控制是利用把液位的利用來(lái)管進(jìn)行模擬,再通過(guò)at89c51把輸出狀態(tài)直接接到單片機(jī)的i/o接口,單片機(jī)經(jīng)過(guò)運(yùn)算控制,輸出數(shù)字信號(hào),輸出接口接led進(jìn)行顯示,實(shí)現(xiàn)液位的報(bào)警和鍵盤的顯示與控制。由下圖可觀察到水位由鍵盤控制輸入以后,通過(guò)at89c51單片機(jī)的運(yùn)算控制,在通過(guò)led進(jìn)行顯示,通過(guò)報(bào)警裝置進(jìn)行報(bào)警,報(bào)警顯示之后再通過(guò)對(duì)閥門的開(kāi)啟實(shí)現(xiàn)對(duì)水體的液位進(jìn)行調(diào)節(jié)控制,閥門的驅(qū)動(dòng)設(shè)備是電動(dòng)機(jī)。圖2即是液位控制系統(tǒng)。圖2 水位控制系統(tǒng)分析3.2 主芯片at89c51本系統(tǒng)采用at89c51作為主要芯片,at

6、89c51是一種帶4k字節(jié)flash存儲(chǔ)器的低電壓、高性能cmos 8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用atmel高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的mcs-51指令集和輸出管腳相兼容。由于將多功能8位cpu和閃爍存儲(chǔ)器組合在單個(gè)芯片中,atmel的at89c51是一種高效微控制器。at89c51單片機(jī)為很多嵌入式系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。在本系統(tǒng)設(shè)計(jì)中采用at89c51作為主要的芯片,它具有p0、p1、p2、p3四個(gè)i/o口,每個(gè)口又有8個(gè)接口,32個(gè)接口可以滿足外接電路的需要,更方便的顯示系統(tǒng)。本設(shè)計(jì)中采用了單片機(jī)at89c

7、51的p0、p1、p3口,分別完成了顯示和控制以及報(bào)警功能的實(shí)現(xiàn)。下圖為單片機(jī)at89c51的引腳圖。圖3 at89c51引腳圖3.3 光報(bào)警及顯示電路 圖4所示為系統(tǒng)的光報(bào)警及顯示電路,三段led數(shù)碼管于單片機(jī)的p0-p7口相連,同時(shí)排阻的把根線也連在單片機(jī)的p0口上,作為上拉電阻。圖4 光報(bào)警及顯示電路3.4 鍵盤連接電路鍵盤連接電路如圖5所示,八個(gè)鍵盤k1-k8分別與單片機(jī)的p1口的p1-p7相連,這八個(gè)鍵盤的按下與否用來(lái)模擬的是水位的高低,k1鍵代表水位最低點(diǎn),k8鍵代表的是水位最高點(diǎn),當(dāng)k1鍵按下時(shí),指示燈亮,電機(jī)正轉(zhuǎn),開(kāi)始加水,一直加水至水位7(即7鍵按下時(shí)),電機(jī)開(kāi)始停止轉(zhuǎn)動(dòng),并

8、反向轉(zhuǎn)動(dòng)抽水,水位開(kāi)始降低,直至到達(dá)3水位,燈亮電機(jī)開(kāi)始自動(dòng)加水,加水水位可以由用戶自己設(shè)定,本系統(tǒng)中采取的是3水位便開(kāi)始加水,7水位開(kāi)始抽水。本系統(tǒng)采用的是獨(dú)立式鍵盤結(jié)構(gòu),每個(gè)按鍵單獨(dú)占用一根i/o口線,每個(gè)按鍵的工作不會(huì)影響其它i/o口線的狀態(tài)。它軟件是采用查詢式結(jié)構(gòu),首先逐位查詢每根i/o口線的輸入狀態(tài),如某一根i/o口線輸入為低電平,則可確認(rèn)該i/o口線所對(duì)應(yīng)的按鍵已按下,然后,再轉(zhuǎn)向該鍵的功能處理程序。圖5 鍵盤連接電路3.5 復(fù)位電路系統(tǒng)的復(fù)位電路如圖6所示。復(fù)位電路中上端于單片機(jī)的復(fù)位引腳相連,下面與與ea端相連,要使cpu只訪問(wèn)外部程序存儲(chǔ)器(地址為0000hffffh),則e

9、a端必須保持低電平(接到gnd端)。然而要注意的是,如果保密位lb1被編程,復(fù)位時(shí)在內(nèi)部會(huì)鎖存ea端的狀態(tài)。當(dāng)ea端保持高電平(接vcc端)時(shí),cpu則執(zhí)行內(nèi)部程序存儲(chǔ)器中的程序。其復(fù)位電路部分用來(lái)對(duì)系統(tǒng)進(jìn)行復(fù)位操作,末端與單片機(jī)的復(fù)位相連,按下復(fù)位鍵,當(dāng)振蕩器運(yùn)行時(shí),在該引腳上出現(xiàn)兩個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。圖6 復(fù)位電路3.6 晶振電路晶體振蕩電路的兩個(gè)端口分別連接在單片機(jī)的xtal1和xtal2上。晶振電路的作用是為本系統(tǒng)提供基本的時(shí)鐘信號(hào)。通常一個(gè)系統(tǒng)共用一個(gè)晶振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,而通過(guò)電子調(diào)整頻率的方法保持同步。晶振電路通常與鎖相環(huán)

10、電路配合使用,以提供系統(tǒng)所需的時(shí)鐘頻率。如果不同子系統(tǒng)需要不同頻率的時(shí)鐘信號(hào),可以用與同一個(gè)晶振相連的不同鎖相環(huán)來(lái)提供。圖7 晶振電路4 軟件設(shè)計(jì)4.1 程序流程圖及其分析水位檢測(cè)是通過(guò)7個(gè)按鈕進(jìn)行水位檢測(cè)的,當(dāng)水位到檢測(cè)位置其輸出端口就向單片機(jī)輸出低電平。由上至下的第一個(gè)位置為水位上限報(bào)警線,即當(dāng)水位高于此位置時(shí),開(kāi)水閥控制系統(tǒng)就會(huì)自動(dòng)報(bào)警,提醒工作人員注意,加水電磁閥有可能出故障;第二個(gè)位置是自動(dòng)停止加水線,即當(dāng)水位高于此位置時(shí),控制系統(tǒng)會(huì)自動(dòng)關(guān)閉加水電磁閥,停止加水;第三個(gè)位置是自動(dòng)加水線,即當(dāng)水位低于此位置時(shí),控制系統(tǒng)會(huì)自動(dòng)接通加水電磁閥,開(kāi)始加水;第四個(gè)位置是水位下限報(bào)警線,即當(dāng)水位

11、低于此位置時(shí),控制系統(tǒng)就會(huì)自動(dòng)報(bào)警,提醒工作人員。本設(shè)計(jì)的一個(gè)較大的優(yōu)點(diǎn)是可以設(shè)置多個(gè)水位,既用戶可根據(jù)自己需要設(shè)定加水時(shí)的水位。根據(jù)所分析的該系統(tǒng)的具體功能,可以畫出該系統(tǒng)的流程圖,流程圖應(yīng)該盡量力求簡(jiǎn)便,而且從中可以較容易的看出設(shè)計(jì)者的目的,充分的了解所需設(shè)計(jì)的系統(tǒng)的功能,從而根據(jù)流程圖編寫程序。圖8 水位控制流程圖5 系統(tǒng)仿真及實(shí)際調(diào)試5.1 元器件清單7seg-com-cat-grnled數(shù)碼管at89c1單片機(jī)button按鈕cap電容g2rl-1a-cf-dc5繼電器2n6609三極管cap-elec陶瓷電容crystal31兆晶振led-red發(fā)光二極管motor電機(jī)res電阻r

12、espack-8排阻5.2 系統(tǒng)調(diào)試及仿真將所有的硬件按照上面所說(shuō)的方法連接起來(lái),將源程序在keil c中生成.hex文件,放在在proteus中連接好的電路圖中,運(yùn)行,則可得到正確的結(jié)果。圖9 水位控制系統(tǒng)仿真圖6 總結(jié) 設(shè)計(jì)過(guò)程中我遇到了很多的困難,因?yàn)橹R(shí)是不連貫的,所以需要準(zhǔn)備很多方面的知識(shí)去融合,去聯(lián)系。由于在學(xué)習(xí)的時(shí)候更注重的是書(shū)面上的東西,而本次課程設(shè)計(jì)更多的是鍛煉了我的動(dòng)手動(dòng)腦能力,讓我有機(jī)會(huì)把課上學(xué)習(xí)的知識(shí)轉(zhuǎn)化為可以在實(shí)際生產(chǎn)生活中應(yīng)用的技術(shù)。本次課程設(shè)計(jì)的系統(tǒng)主要介紹了水體的液位檢測(cè)控制,介紹了at89c51單片機(jī)和其它一些單片機(jī)在液位控制系統(tǒng)中的應(yīng)用,介紹了它們的引腳和在

13、系統(tǒng)中的電路圖,利用led來(lái)進(jìn)行信號(hào)的輸出顯示,我設(shè)計(jì)的硬件系統(tǒng)的結(jié)構(gòu)簡(jiǎn)化,系統(tǒng)精度高,具有良好的人機(jī)交互功能,并設(shè)有液位報(bào)警,有問(wèn)題立即就能發(fā)現(xiàn)。通過(guò)自動(dòng)調(diào)節(jié)控制液位并實(shí)現(xiàn)水體的液位報(bào)警。液位控制在設(shè)定值上正常運(yùn)行不需要人工干預(yù),操作人員勞動(dòng)強(qiáng)度小。通過(guò)本次課程設(shè)計(jì),我了解到自己的知識(shí)應(yīng)該充分利用在實(shí)踐上,在實(shí)踐中把書(shū)本上的知識(shí)固化成自己的能力。在設(shè)計(jì)系統(tǒng)的時(shí)候也有很多的想法,但是有一些想法被否定了,最終完成設(shè)計(jì)的時(shí)候優(yōu)先考慮了在課程上學(xué)習(xí)到的知識(shí),并且和單片機(jī)、電子電路的知識(shí)結(jié)合起來(lái)。這次設(shè)計(jì)之后,我感覺(jué)到自己在自動(dòng)化專業(yè)上的學(xué)習(xí)應(yīng)該還有很長(zhǎng)的路走,自動(dòng)化是一個(gè)很有前途的行業(yè),它涉及了生產(chǎn)

14、生活的多個(gè)方面,對(duì)人們的影響可想而知,所以,學(xué)好自動(dòng)化專業(yè)的知識(shí)不僅僅是對(duì)自己能力提升和自我價(jià)值的實(shí)現(xiàn),更是一件很有意義,可以讓自己有所感觸,有所收獲的事業(yè)。參考文獻(xiàn)1 王思明. 單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì).科學(xué)出版社.2012.2 陳明熒. 8051單片機(jī)課程設(shè)計(jì)實(shí)訓(xùn)教材. 清華大學(xué)出版社. 2004.3 丁明亮. 單片機(jī)原理及應(yīng)基于keil c 與proteus. 北京航空航天大學(xué)出版社. 2009-2.4 梅麗鳳. 單片機(jī)原理及接口技術(shù). 清華大學(xué)出版社.2006-8. 附錄源程序清單#include #define uchar unsigned char /*以后定義的uchar都認(rèn)為是

15、unsigned char*/#define uint unsigned int /*以后定義的uint都認(rèn)為是unsigned int*/sbit mor=p27; /*電機(jī)正極為p2.7口*/sbit mot=p26; /*電機(jī)負(fù)極為p2.6口*/sbit led=p20; /*led燈為p2.0口*/code uchar tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /*定義一個(gè)碼存表*/void delay (uint n)while(n-); /*10ms的延時(shí)*/void led_show() if(p1=0xfe)

16、/*如果k8鍵按下*/ p0=tab8;/*p0=0x7f*/ led=0;/*led為低電平*/ mor=0;/*電機(jī)正極為低電平*/ mot=1;/*電機(jī)負(fù)極為高電平*/ if(p1=0xfd)/*如果k7鍵按下*/ p0=tab7;/*p0=0x07*/ led=0;/*p2.0為低電平*/ mor=0;/*電機(jī)正極為低電平*/ mot=1;/*電機(jī)負(fù)極為高電平*/ if(p1=0xfb) /*如果k6鍵按下*/ p0=tab6; /*p0=0x7d*/ led=1; /*p2.0為高電平*/ mor=1; /*電機(jī)正極為高電平*/ mot=1; /*電機(jī)負(fù)極為高電平*/ if(p1=0xf7) /*如果k5鍵按下*/ p0=tab5; /*p0=0x6d*/ led=1; /*p2.0為高電平*/ mor=1; /*電機(jī)正極為高電平*/ mot=1; /*電機(jī)負(fù)極為高電平*/ if(p1=0xef) /*如果k4鍵按下*/ p0=tab4; /*p0=0x66*/ led=1; /*p2.0為高電平*/ mor=1; /*電機(jī)正極為高*/ mot=1; /*電機(jī)負(fù)極為高*/ if(p1=0xdf)/*如果k3鍵按下*/ p0=tab3;/*p0=0x4f*/ led=0;/*p2.0為低*/ mor=1;/*電機(jī)正極為高*

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論