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

下載本文檔

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

文檔簡介

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

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

3、裝固定不變的3根金屬棒a、b、c。用以反映水位變化的情況。其中,a棒在下限水位b棒在上、下限水位之間,c棒在上限水位(底端靠近水池底部不能過低,要保證有足夠大的流水量)。水塔由電機(jī)帶動水泵供水。單片機(jī)控制電機(jī)轉(zhuǎn)動,隨著供水,水位不斷上升當(dāng)水位上升到上限水位時,由于水的導(dǎo)電作用。使b、c棒均與+5 v連通。因此b、c兩端的電壓都為+5 v,即為“l(fā)”狀態(tài),此時應(yīng)停止電機(jī)和水泵工作,不再向水塔注水;隨著水量的減少,當(dāng)水位處于上、下限之間時。b棒和a棒導(dǎo)通而c棒不能與a棒導(dǎo)通,b端為“1”狀態(tài)。c端為“0”狀態(tài)。此時電機(jī)帶動水泵給水塔注水,使水位上升,或是電機(jī)不工作,水位不斷下降,都應(yīng)繼續(xù)維持原有工

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

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

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

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

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

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

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

11、低于此位置時,控制系統(tǒng)就會自動報警,提醒工作人員。本設(shè)計的一個較大的優(yōu)點(diǎn)是可以設(shè)置多個水位,既用戶可根據(jù)自己需要設(shè)定加水時的水位。根據(jù)所分析的該系統(tǒng)的具體功能,可以畫出該系統(tǒng)的流程圖,流程圖應(yīng)該盡量力求簡便,而且從中可以較容易的看出設(shè)計者的目的,充分的了解所需設(shè)計的系統(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)試及仿真將所有的硬件按照上面所說的方法連接起來,將源程序在keil c中生成.hex文件,放在在proteus中連接好的電路圖中,運(yùn)行,則可得到正確的結(jié)果。圖9 水位控制系統(tǒng)仿真圖6 總結(jié) 設(shè)計過程中我遇到了很多的困難,因為知識是不連貫的,所以需要準(zhǔn)備很多方面的知識去融合,去聯(lián)系。由于在學(xué)習(xí)的時候更注重的是書面上的東西,而本次課程設(shè)計更多的是鍛煉了我的動手動腦能力,讓我有機(jī)會把課上學(xué)習(xí)的知識轉(zhuǎn)化為可以在實(shí)際生產(chǎn)生活中應(yīng)用的技術(shù)。本次課程設(shè)計的系統(tǒng)主要介紹了水體的液位檢測控制,介紹了at89c51單片機(jī)和其它一些單片機(jī)在液位控制系統(tǒng)中的應(yīng)用,介紹了它們的引腳和在

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

14、生活的多個方面,對人們的影響可想而知,所以,學(xué)好自動化專業(yè)的知識不僅僅是對自己能力提升和自我價值的實(shí)現(xiàn),更是一件很有意義,可以讓自己有所感觸,有所收獲的事業(yè)。參考文獻(xiàn)1 王思明. 單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計.科學(xué)出版社.2012.2 陳明熒. 8051單片機(jī)課程設(shè)計實(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; /*定義一個碼存表*/void delay (uint n)while(n-); /*10ms的延時*/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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論