液位控制系統(tǒng)lyx_第1頁
液位控制系統(tǒng)lyx_第2頁
液位控制系統(tǒng)lyx_第3頁
液位控制系統(tǒng)lyx_第4頁
液位控制系統(tǒng)lyx_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、XXXX大學(xué)本科生畢業(yè)論文(設(shè)計(jì))題 目: 基于單片機(jī)的液位控系統(tǒng) 學(xué)生姓名: XXX 指導(dǎo)教師: XXX 二級院系: XXXXXXXXXX 專業(yè)班級: XXXXXXXXX 完成時間: 2011年X月XX日 摘要:隨著電子技術(shù)的迅速發(fā)展,以單片機(jī)控制的智能型控制器廣泛應(yīng)用于電子產(chǎn)品中。而液位控制是現(xiàn)代工業(yè)業(yè)中常見的參數(shù),有著直接觀察、容易測量的優(yōu)點(diǎn),本系統(tǒng)采用AT89S52單片機(jī)為主控制器,設(shè)計(jì)一個對供水箱水位進(jìn)行監(jiān)控的系統(tǒng)。根據(jù)監(jiān)控對象的特征,要求實(shí)時檢測水箱的液位高度,并與開始預(yù)設(shè)定值作比較,由單片機(jī)控制繼電器的開斷進(jìn)行液位的調(diào)整,最終達(dá)到液位的預(yù)設(shè)定值。檢測值若高于上限設(shè)定值,要求報(bào)警,

2、開啟水位控制電路,控制水泵開始抽水水,檢測液位若低于下限設(shè)定值,要求報(bào)警,開啟水位控制電路,控制水泵開始上水。現(xiàn)場實(shí)時顯示測量值,從而實(shí)現(xiàn)對水箱液位的監(jiān)控。比較適合用于一般的液位控制,如自來水廠蓄水槽、污水處理廠的污水槽等都需要液位檢測裝置來檢測液位。關(guān)鍵字:AT89S52 液位監(jiān)測 數(shù)碼管顯示目 錄摘要:2第一章 緒論51.1課題背景51.2研究目的和意義51.3基本章節(jié)安排6第二章 總體方案設(shè)計(jì)72.1系統(tǒng)總體結(jié)構(gòu)規(guī)劃72.2單片機(jī)的選擇72.3顯示方式的選擇8第3章 中央控制器 AT89S52及其外圍電路的設(shè)計(jì)與分析9第4章 系統(tǒng)硬件設(shè)計(jì)164.1 系統(tǒng)主電路圖164.2 顯示電路設(shè)計(jì)1

3、64.3 液位采集電路設(shè)計(jì)184.5控制部分電路設(shè)計(jì)19第5章 系統(tǒng)軟件設(shè)計(jì)2051軟件設(shè)計(jì)應(yīng)用環(huán)境簡介2052系統(tǒng)程序設(shè)計(jì)流程圖2253總體程序設(shè)計(jì)225.5液位采集程序設(shè)計(jì)24第6章 系統(tǒng)調(diào)試256.1系統(tǒng)原理圖設(shè)計(jì)2562系統(tǒng)測試方法256.3開始測試266.4系統(tǒng)功能測試27總 結(jié)28參考文獻(xiàn)30附錄31第一章 緒論1.1課題背景現(xiàn)如今自動化、信息化程度越來越高,單片機(jī)的應(yīng)用領(lǐng)域也就越來越廣,成為人們生活不可或缺的一部分。隨著社會的發(fā)展、科技的進(jìn)步以及人們生活水平的逐步提高,各種方便于生活的自動控制系統(tǒng)開始進(jìn)入了人們的生活,以單片機(jī)為核心的自動門系統(tǒng)就是其中之一。同時也標(biāo)志了自動控制領(lǐng)

4、域成為了數(shù)字化時代的一員。它實(shí)用性強(qiáng),功能齊全,技術(shù)先進(jìn),這是科技進(jìn)步的成果。它更讓人類懂得,數(shù)字時代的發(fā)展將改變?nèi)祟惖纳?,將加快科學(xué)技術(shù)的發(fā)展。經(jīng)濟(jì)飛速發(fā)展的中國,高樓聳立的大都市,自動門已經(jīng)是隨處可見,在各大廈、賓館、酒店、銀行、商場、醫(yī)院、寫字樓等場所,自動門更是得到大范圍的普及使用。自動門不但能給我們帶來人員進(jìn)出方便、節(jié)約空調(diào)能源、防風(fēng)、防塵、降低噪音等好處,更令我們的建筑增添了不少高貴典雅的氣息。1.2研究目的和意義 我國水資源嚴(yán)重短缺同時又存在嚴(yán)重浪費(fèi)現(xiàn)象,兩方面因素制約了國民經(jīng)濟(jì)的可持續(xù)發(fā)展,使社會經(jīng)濟(jì)建設(shè)受到巨大挑戰(zhàn)。提高生產(chǎn)、生活用水水價以及對大型工、礦企業(yè)強(qiáng)制安裝中水處理

5、設(shè)備,都是國家不得己而為之的重大節(jié)水舉措,然而由于變送器在水位控制系統(tǒng)中普遍存在著時漂、溫漂、精確度、抗干擾能力、穩(wěn)定性等一系列問題,尤其在惡劣氣候條件下的電閃、雷擊,易造成水位交送器的故障頻發(fā),使監(jiān)控設(shè)施失控,形成跑、冒水現(xiàn)象,進(jìn)一步加劇了寶貴水資源的大量浪費(fèi),僅水資源浪費(fèi)一項(xiàng)每年就占到全國用水量的40%以上,新型自動水位測控系統(tǒng)的設(shè)計(jì)研制工作正是在這一契機(jī)下應(yīng)運(yùn)而生的。1.3基本章節(jié)安排 本設(shè)計(jì)通過分析液位控制系統(tǒng)的發(fā)展和現(xiàn)狀來規(guī)劃液位控制的智能功能,從而對電動液位控制器進(jìn)行設(shè)計(jì)。采用直流電機(jī)作為執(zhí)行元件。89S52單片機(jī)作為控制芯片,通過液位采集電路,采集液位信息,通過數(shù)碼管顯示電路,實(shí)

6、時顯示水位情況,根據(jù)水位的情況實(shí)現(xiàn)自動抽排水功能,最終實(shí)現(xiàn)了液位控制器的多項(xiàng)智能項(xiàng)目。主要章節(jié)分為:(1)緒論:介紹設(shè)計(jì)目標(biāo)國內(nèi)外的發(fā)展現(xiàn)狀和研究意義目的,設(shè)計(jì)的基本內(nèi)容和本文的章節(jié)安排。(2)總體設(shè)計(jì)方案:給出了液壓控制器的器的總體方案設(shè)想,智能項(xiàng)目,和設(shè)計(jì)結(jié)構(gòu)規(guī)劃。(3)單片機(jī)最小系統(tǒng)介紹:中央控制器 AT89S52及其外圍電路的設(shè)計(jì)與分析(4)系統(tǒng)硬件設(shè)計(jì):介紹各部分模塊電路的功能(5)系統(tǒng)軟件設(shè)計(jì):主要介紹了各項(xiàng)功能的設(shè)計(jì)流程。(6)總結(jié)與展望第二章 總體方案設(shè)計(jì)2.1系統(tǒng)總體結(jié)構(gòu)規(guī)劃 液位控制器的總體結(jié)構(gòu)框圖如下圖2-1所示。液位采集電路信號調(diào)理電路單片機(jī)指示燈顯示電路電機(jī)模擬圖2-

7、1液位控制器機(jī)構(gòu)框圖由液位判斷電路來實(shí)現(xiàn)對液位的實(shí)時檢測,經(jīng)過信號調(diào)理電路的處理,轉(zhuǎn)換后的信號由單片機(jī)控制器,并通過數(shù)碼管顯示水位,來實(shí)現(xiàn)繼電器的吸合與斷開。來模擬電機(jī)的抽放水功能。2.2單片機(jī)的選擇 20世紀(jì)80年代以來,單片機(jī)的發(fā)展非常迅速,就通用單片機(jī)而言,世界上一些著名的計(jì)算機(jī)廠家已投入市場的產(chǎn)品就有50多個系列,數(shù)百個品種。盡管單片機(jī)的品種很多,但是在我國使用的最多的是INTER公司的MCS-51系列單片機(jī),直到現(xiàn)在MCS-51系列單片機(jī)仍不失為主流系列。在最近的若干年仍是工業(yè)檢測控制的主角。AT89S52采用0.35新工藝,成本降低,而且將功能提升,增加了競爭力。89SXX可以向下

8、兼容89CXX等51系列芯片。AT89S51/LS51單片機(jī)是低功耗的、具有4KB在線課編程Flash存儲器的單片機(jī)。它與通用80C51系列單片機(jī)的指令系統(tǒng)和引腳兼容。片內(nèi)的Flash可允許在線重新編程,也可使用非易失性存儲器編程。他將通用CPU和在線可編程Flash集成在一個芯片上,形成了功能強(qiáng)大、使用靈活和具有較高性能性價比的微控制器2。2.3顯示方式的選擇該系統(tǒng)可以使用液晶來顯示液位信息,也可以采用數(shù)碼管顯示,但考慮到就顯示一個液位,用液晶會增大系統(tǒng)的體積,還會增加成本。采用數(shù)碼管顯示亮度高,易于觀察,成本低,故選用數(shù)碼管顯示。第3章 中央控制器 AT89S52及其外圍電路的設(shè)計(jì)與分析3

9、.1 芯片AT89S52的性能及其參數(shù)的分析圖3-1 AT89S51單片機(jī)引腳圖AT89S52是51系列單片機(jī)的一個型號,它是ATMEL公司生產(chǎn)的。AT89S52是一個低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的Flash只讀程序存儲器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,功能強(qiáng)大的AT89S51單片機(jī)可為您提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場合。AT89S52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內(nèi)含2個外中斷

10、口,3個16位可編程定時計(jì)數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89S51可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。AT89S52為40腳雙列直插封裝的8位通用微處理器如圖3-3所示,采用工業(yè)標(biāo)準(zhǔn)的C52內(nèi)核,在內(nèi)部功能及管腳排布上與通用的8xc51相同,其主要用于會聚調(diào)整時的功能控制。功能包括對會聚主IC內(nèi)部寄存器、數(shù)據(jù)RAM及外部接口等功能部件的初始化,會聚調(diào)整控制,會聚測試圖控制,紅外遙控信號IR的接收解碼及與主板CPU通信等5。AT89S52時鐘有兩種方式產(chǎn)生,即內(nèi)部方式和外

11、部方式,如下圖3-4 a所示。AT89S52中有一個構(gòu)成內(nèi)部震蕩器的高增益反向放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英或陶 瓷震蕩器一起構(gòu)成自激震蕩器震蕩電路。外接石英晶體(或陶瓷震蕩器)及電容C1、C2接在放大器的震蕩回路中構(gòu)成并聯(lián)震蕩電路。對外接電容C1、C2雖然沒有非常嚴(yán)格的要求,但電容的大小會輕微影響震蕩頻率的高低、震蕩工作的穩(wěn)定性、起震的難易程序及溫度穩(wěn)定性,。還可以采用外部時鐘,采用外部時鐘,如圖3-4 b所示。在這種情況下,外部時鐘脈沖接到XTAL1端,既內(nèi)部時鐘發(fā)生器的輸入端,XTAL2懸空。由于外部時鐘信號是通過一個

12、2分頻的觸發(fā)器后作為內(nèi)部時鐘信號的所以外部時鐘的占空比沒有特殊要求,但最小高電平持續(xù)的時間和最大低電平持續(xù)的時間應(yīng)符合技術(shù)條件的要求5。a 內(nèi)部震蕩電路 b 外部震蕩電路圖3-2 時鐘電路圖3.2 單片機(jī)時鐘電路的設(shè)計(jì)電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產(chǎn)生基準(zhǔn)頻率的。通過基準(zhǔn)頻率來控制電路中的頻率的準(zhǔn)確性。同時,它還可以產(chǎn)生振蕩電流,向單片機(jī)發(fā)出時鐘信號。圖3-3是單片機(jī)的晶振電路。電路中的電容C1和C2的典型值通常選擇為30PF左右,該電容的大小會影響振蕩電路頻率的高低、振蕩器的穩(wěn)定性和起振的快速性。晶體振蕩頻

13、率的范圍通常在1.212MHz。晶體的頻率越高,系統(tǒng)的時鐘頻率越快,單片機(jī)的運(yùn)行速度越快。AT89S51常選擇振蕩頻率12MHz的石英晶體。圖3-3 單片機(jī)晶振電路圖3.3 單片機(jī)復(fù)位電路的設(shè)計(jì)復(fù)位是單片機(jī)的初始化操作,只需要給AT89S51的復(fù)位引腳RST加上大于2個機(jī)器周期(即24個時鐘振蕩周期)的高電平就可以使AT89S51復(fù)位。復(fù)位時,單片機(jī)初始化為0000H,從0000H單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)程序運(yùn)行錯誤(如程序跑飛)或操作錯誤使系統(tǒng)處于鎖死狀態(tài)時,也需要復(fù)位鍵使RST腳為高電平,使AT89S52擺脫“跑飛”或“死鎖”狀態(tài)而重新啟動。圖3-4是復(fù)位電路圖。

14、圖3-4 復(fù)位電路圖3.4 單片機(jī)復(fù)位后的狀態(tài)分析表3-1 特殊功能寄存器與初始狀態(tài)表特殊功能寄存器初始狀態(tài)特殊功能寄存器初始狀態(tài)A00HTMOD00HB00HTCON00HPSW00HTH000HSP07HTL000HDPL00HTH100HDPH00HTL100HP0P3FFHSBUF不定IP*00000BSCON00HIE0*00000BPCON0*B說明:表中符號*為隨機(jī)狀態(tài)。單片機(jī)的復(fù)位操作使單片機(jī)進(jìn)入初始化狀態(tài),其中包括使程序計(jì)數(shù)器PC0000H,這表明程序從0000H地址單元開始執(zhí)行。單片機(jī)冷啟動后,片內(nèi)RAM為隨機(jī)值,運(yùn)行中的復(fù)位操作不改變片內(nèi)RAM區(qū)中的內(nèi)容,21個特殊功能寄

15、存器復(fù)位后的狀態(tài)為確定值,見上表3-1所示。系統(tǒng)復(fù)位是任何微機(jī)系統(tǒng)執(zhí)行的第一步,使整個控制芯片回到默認(rèn)的硬件狀態(tài)下。51單片機(jī)的復(fù)位是由RESET引腳來控制的,此引腳與高電平相接超過24個振蕩周期后,51單片機(jī)即進(jìn)入芯片內(nèi)部復(fù)位狀態(tài),而且一直在此狀態(tài)下等待,直到RESET引腳轉(zhuǎn)為低電平后,才檢查EA引腳是高電平或低電平,若為高電平則執(zhí)行芯片內(nèi)部的程序代碼,若為低電平便會執(zhí)行外部程序5。51單片機(jī)在系統(tǒng)復(fù)位時,將其內(nèi)部的一些重要寄存器設(shè)置為特定的值,內(nèi)部RAM內(nèi)部的數(shù)據(jù)則不變。3.5 電源電路電源是提供電壓的裝置。把其他形式的能轉(zhuǎn)換成電能的裝置叫做電源。電源是向電子設(shè)備提供功率的裝置,也稱電源供

16、應(yīng)器,它提供計(jì)算機(jī)中所有部件所需要的電能。電源功率的大小,電流和電壓是否穩(wěn)定,將直接影響計(jì)算機(jī)的工作性能和使用壽命。有條件的可以使用電源模塊來為系統(tǒng)供電。由于該系統(tǒng)中的步進(jìn)電機(jī)要求用12V電源供電,而單片機(jī)的需要5V供電,所以需要加個穩(wěn)壓芯片這里采用LM7805進(jìn)行穩(wěn)壓處理。把12V穩(wěn)降至5V來供給單片機(jī)及各芯片的使用。經(jīng)測試12V完全滿足各器件的運(yùn)行要求。調(diào)整管放大電路保護(hù)電路采樣電路基準(zhǔn)電源啟動電路+-U0UI圖3-5 三端集成穩(wěn)壓器7805內(nèi)部結(jié)構(gòu)此設(shè)計(jì)的電源電路是由7805集成穩(wěn)壓器,橋式整流,濾波電容及電源指示燈組成的。電源電路的核心元件是7805,其內(nèi)部結(jié)構(gòu)如圖3-5所示。(1)調(diào)

17、整管調(diào)整管接在輸入端與輸出端之間,當(dāng)電網(wǎng)電壓或負(fù)載電流波動時,調(diào)整自身的集-射壓降使輸出電壓保持不變。在7805三端集成穩(wěn)壓電路中,調(diào)整管由兩個三極管組成的復(fù)合管充當(dāng),這種結(jié)構(gòu)只要求放大電路用較小的電流即可驅(qū)動調(diào)整管發(fā)射極回路中較大的輸出電流,而且提高了調(diào)整管的輸入電阻。(2)放大電路放大電路將基準(zhǔn)電壓與從輸出端得到的采樣電壓進(jìn)行比較,然后再放大并送到調(diào)整管的基極。放大倍數(shù)愈大,則穩(wěn)定性能愈好。在7805三端集成穩(wěn)壓器中,放大管也是復(fù)合管,電路組態(tài)為共射接法,并采用有源負(fù)載,可以獲得較高的電壓放大倍數(shù)。(3)基準(zhǔn)電源基準(zhǔn)電壓的穩(wěn)定性將直接影響穩(wěn)壓電路輸出電壓的穩(wěn)定性。在7805中,采用一種能帶

18、間隙式基準(zhǔn)源,這種基準(zhǔn)源具有低噪聲,低溫漂的特點(diǎn),在單片式大電流集成穩(wěn)壓器中被廣泛應(yīng)用。(4)采樣電路采樣電路由兩個分壓電阻組成,它將輸出電壓變化量的一部分送到放大電路的輸入端。(5)啟動電路啟動電路的作用是在剛接通直流輸入電壓時,使調(diào)整管,放大電路和基準(zhǔn)電源等建立起各自的工作電流,而當(dāng)穩(wěn)壓電路正常工作時啟動電路被斷開,以免影響穩(wěn)壓電路的性能。(6)保護(hù)電路在7805中,已將三種保護(hù)電路集成在芯片內(nèi)部,它們是限流保護(hù)電路,過熱保護(hù)電路和過壓保護(hù)電路6。圖3-6 電源電路電源電路如圖3-6所示,此電源電路能輸出穩(wěn)定的+5V電壓,可以給整機(jī)電路上電,所以在電路中起到至關(guān)重要的作用。其中7805三端

19、集成穩(wěn)壓器的1腳為輸入,3腳為輸出,2腳為接地。作用是將由橋式整流電路,整流濾波后得到的直流輸入電壓轉(zhuǎn)變成穩(wěn)定的直流+5V輸出電壓,為了改善紋波電壓,常在輸入端接入電容CJ3,我所選用的電容容量為100uF。同時,在輸出端接上電容CJ2,以改善負(fù)載的瞬態(tài)響應(yīng),CJ2的容量為100uF。兩個電容應(yīng)直接接在穩(wěn)壓器的引腳處。在穩(wěn)壓管的輸入端還要接二極管,方向如圖3-8所示,起到對7805集成穩(wěn)壓器的一種保護(hù)作用。第4章 系統(tǒng)硬件設(shè)計(jì)4.1 系統(tǒng)主電路圖圖4.1系統(tǒng)總電路圖4.2 顯示電路設(shè)計(jì)本設(shè)計(jì)中壓力大小采用4位LED數(shù)碼管顯示。在單片機(jī)系統(tǒng)中,通常用LED數(shù)碼顯示器來顯示各種數(shù)字或符號。由于它具

20、有顯示清晰、亮度高、使用電壓低、壽命長的特點(diǎn),因此使用非常廣泛。八段LED顯示器由8個發(fā)光二極管組成。其中7個發(fā)光二極管構(gòu)成字型“8”的各個筆畫段,另一個小數(shù)點(diǎn)為dp發(fā)光二極管。LED顯示器有兩種不同的形式:一種是發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED顯示器;另一種是發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED顯示器。如圖4.2所示。本次設(shè)計(jì)采用共陽極極接法。LED顯示方式有動態(tài)顯示和靜態(tài)顯示兩種方式。本系統(tǒng)采用動態(tài)掃描顯示接口電路,動態(tài)顯示接口電路是把所有顯示器的8個筆劃段a-h同名端連在一起,而每一個顯示器的公共極COM各自獨(dú)立地受I/O線控制。CPU向字段輸出口送出字型碼時

21、,所有顯示器接收到相同的字型碼,但究竟是哪個顯示器亮,則取決于COM端。也就是說我們可以采用分時的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點(diǎn)亮。在輪流點(diǎn)亮掃描過程中,每位顯示器的點(diǎn)亮?xí)r間是極為短暫的(約1ms),由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位顯示器并非同時點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。圖4.2 七(八)段LED顯示器本設(shè)計(jì)P2.0、P2.1、P2.2、P2.3信號一起組成位選通的位選信號,P0.0P0.7信號一起組成段碼選通的段選信號,通過軟件編程,先把所要顯示的數(shù)據(jù)放入存儲單元,然后把數(shù)據(jù)送入段選通對應(yīng)的

22、地址,再選通某一個LED,逐步完成四個LED的顯示。由于采用4位共陽數(shù)碼管。用單片機(jī)吸收電流驅(qū)動,列掃描驅(qū)動使用三極管,按每段6mA電流算,全顯示字型“8”時,每個數(shù)碼管需6mA8=48mA。由于四位數(shù)碼管的驅(qū)動電流相同,4組需192mA,因此設(shè)計(jì)中采用功率三極管S9012驅(qū)動。由于單片機(jī)每個段碼輸出口需吸收48mA電流,因此在電路設(shè)計(jì)中要在P0口加一個上拉電阻。其顯示驅(qū)動電路如圖4.3所示。圖4.3顯示電路4.3 液位采集電路設(shè)計(jì)圖4.4液位采集電路液位檢測電路的的檢測原理,首先先將一根VCC線放到水底如圖4.4所示,然后將A、B、C三根線分別放入水中,當(dāng)水位到A點(diǎn)時A1為高電平,B1和C1

23、低電平,三極管導(dǎo)通A2變?yōu)楦唠娖?,此時繼電器動作抽水并伴隨報(bào)警聲,當(dāng)水位到達(dá)B點(diǎn)時,此時A1和B1為高電平,C1為低電平,A2,B2,都為高電平,此時狀態(tài)良好,當(dāng)水位到C點(diǎn)時,此時A1、B1、C1都為高電平,A2、B2、C2都為低電平繼電器動作,電機(jī)放水并伴隨報(bào)警聲。4.5控制部分電路設(shè)計(jì) 控制驅(qū)動電路主要電動機(jī)、繼電器及相應(yīng)的元件構(gòu)成,它根據(jù)液位檢測電路的實(shí)際需要控制電機(jī)的啟動、停止,從而能自動地控制液位的高度。第5章 系統(tǒng)軟件設(shè)計(jì)該系統(tǒng)硬件完全,但系統(tǒng)的運(yùn)算與控制必須靠軟件支持,系統(tǒng)硬件組態(tài)完后,根據(jù)I/O地址分配和功能要求便可以進(jìn)行軟件編程。軟件編程是系統(tǒng)完全控制的一個重要部分。系統(tǒng)軟件

24、程序主要完成初始化工作,輸入輸出控制,子程序主要完成數(shù)據(jù)采集處理的功能包括采集的液位數(shù)據(jù)與給定的液位值的比較,是否需要報(bào)警,以及處理完成顯示部分與調(diào)節(jié)閥的信號輸出。在該系統(tǒng)的軟件部分的設(shè)計(jì)中,第一部分主要是對流程圖的介紹,其中包括了對誰位的檢測,對水泵的控制和開關(guān),以及水泵是否正常工作的報(bào)警。通過對水體液位進(jìn)行的簡易方便的操縱,可以準(zhǔn)確得控制水泵進(jìn)行添加水或放水以適應(yīng)工作的需要,第二部分是系統(tǒng)工作編程內(nèi)容,由于全部編程比較多,只取重要的水位檢測主程序段和部分控制程序。51軟件設(shè)計(jì)應(yīng)用環(huán)境簡介Keil C51的V8. xx是目前世界上最好的51單片機(jī)的匯編和C語言的開發(fā)工具。它支持匯編、C語言以

25、及混合編程,同時具備強(qiáng)大的軟件仿真和硬件仿真功能。在此次設(shè)計(jì)中采用開發(fā)環(huán)境的正是此項(xiàng)。1、創(chuàng)建項(xiàng)目:執(zhí)行Project|NewVision Project菜單命令,將新創(chuàng)建一個項(xiàng)目。為項(xiàng)目建一個單獨(dú)的文件夾,然后選擇子文件夾并鍵入項(xiàng)目的名稱。在項(xiàng)目創(chuàng)建之前,需要為新建的項(xiàng)目選擇一個CPU。在命名項(xiàng)目名稱后,彈出的對話框,其中顯示的是器件數(shù)據(jù)庫,用戶只要選擇所需要的MCU就可以了。選擇AT89S52之后,右邊一欄是對這個單片機(jī)的基本的說明,然后單擊確定按鈕。2、添加配置啟動代碼:啟動文件STARTUP.C中包含了目標(biāo)啟動代碼,可在每個project中加入這個文件。 3、項(xiàng)目設(shè)置:Vision 3

26、允許用戶為目標(biāo)硬件設(shè)置選項(xiàng),可以通過工具條圖標(biāo)打開,也可以用鼠標(biāo)右擊項(xiàng)目窗口中的Files標(biāo)簽頁中的Target1,在右鍵菜單中選擇Options for Targe1命令: Output:定義Keil工具的輸出文件,并定義生成處理后的執(zhí)行用戶程序;Listing:定義Keil工具輸出的所有列表文件;C51:設(shè)置C51編譯器的特別工具選項(xiàng);A51:設(shè)置匯編器的特殊工具選項(xiàng);BL51 Locate:定義不同類型的存儲器和存儲器的不同段位置;BL51 Misc:其他的與連接器相關(guān)的設(shè)置,如警告或存儲器指示;Debug:Vision 3的Debugger設(shè)置;Utilities:文件及其Group的

27、特別選項(xiàng)。4、Target標(biāo)簽:單擊Target標(biāo)簽,其中各參數(shù)設(shè)置如下:1)Xtal(MHz):設(shè)置單片機(jī)的工作的頻率,默認(rèn)值是24.0MHz。2)Use On-chip ROM(0x00x1FFF): Flash ROM。單片機(jī)的EA引腳接高電平,則一定需要選中這個選項(xiàng)。3)Memory Model:變量存儲空間。5、Output標(biāo)簽:1)Select Folder for Objects:選擇編譯之后的目標(biāo)文件存儲在哪個目錄。2)Name of Executable:設(shè)置生成的目標(biāo)文件的名字。3)Create Executable:生成omf以及hex文件。4)Create Hex Fi

28、le:要生成hex文件一定要選中該選項(xiàng)。5)Create Library:生成lib庫文件。6、Listing標(biāo)簽:Keil C51在編譯之后除了聲稱目標(biāo)文件之外,還生成*.lst、*.m51的文件。用戶可以在Listing標(biāo)簽中設(shè)置*.lst、*.m51文件的各種選項(xiàng)。7、C51標(biāo)簽:用戶通過C51標(biāo)簽來設(shè)置C51編譯器的特別的工具選項(xiàng)。8、A51標(biāo)簽:A51標(biāo)簽用來設(shè)置匯編器的特別工具選項(xiàng),如宏處理和條件匯編等。9、BL51 Locate標(biāo)簽:BL51是具有代碼分段功能的連接器/重定位器,它組合一個或多個目標(biāo)模塊成一個MCS-51的執(zhí)行程序。此連接器處理外部和全局?jǐn)?shù)據(jù),并將可重定位的段分配

29、到固定的地址上。連接器自動選擇適當(dāng)?shù)倪\(yùn)行庫并連接那些用到的模塊。也可以在命令行上輸入相應(yīng)的目標(biāo)模塊的名字的組合來運(yùn)行本連接器。10、BL51 Misc標(biāo)簽:Misc標(biāo)簽是對BL51 Locate標(biāo)簽的補(bǔ)充設(shè)置。11、Debug 標(biāo)簽:該標(biāo)簽對Vision 3的調(diào)試器進(jìn)行設(shè)置。12、項(xiàng)目編譯:項(xiàng)目一旦設(shè)置完成,就可以開始編譯。單擊調(diào)試工具條上的圖標(biāo),編譯項(xiàng)目中所有的源文件并生成應(yīng)用。當(dāng)應(yīng)用中有語法錯誤時,Vision 3將在Output Window的Build標(biāo)簽頁顯示這些錯誤和告警信息。雙擊一個信息將打開此信息對應(yīng)的文件并定位到語法錯誤處。在編譯項(xiàng)目時,會在輸出窗口中出現(xiàn)錯誤信息,單擊其中一

30、條錯誤信息,將在源代碼窗口中出現(xiàn)錯誤的地方出現(xiàn)一個小箭頭。13、列表文件(C語言):如果在對話框中選中了C Compiler Listing選項(xiàng)下的各種復(fù)選框和Assembler Listing 選項(xiàng)下的各種復(fù)選框,Vision 3在編譯時將產(chǎn)生C語言和匯編語言的列表文件,該文件中包含了源代碼文件中的各種指示信息,這些信息對分析源代碼非常重要。14、列表文件(匯編語言):在Vision 3中,集成的A51宏匯編譯器是一個8051 MCU系列的宏匯編器。它把匯編語言翻譯成機(jī)器代碼。A51匯編器允許用戶定義程序中的每一個指令,在需要極快的運(yùn)行速度、很小的代碼空間、精確的硬件控制時使用。因此用戶可以

31、利用Vision 3的集成開發(fā)環(huán)境進(jìn)行匯編語言代碼的編譯和調(diào)試。在匯編語言列表文件中,宏匯編編譯器報(bào)告所有必要的信息,如變量名、函數(shù)名、行數(shù)以及Vision 3調(diào)試器或其他仿真器用來詳細(xì)調(diào)試和分析程序所需要的信息。52系統(tǒng)程序設(shè)計(jì)流程圖通過軟件控制單片機(jī)的功能是單片機(jī)的主要特點(diǎn)和優(yōu)點(diǎn),程序的設(shè)計(jì)要考慮合理性和可讀性,遵循模塊化設(shè)計(jì)的原則,采用自頂向下的設(shè)計(jì)方法。模塊化設(shè)計(jì)使程序的可讀性好、修改及完善方便。軟件設(shè)計(jì)包括主程序、水位采集、按鍵掃描子程序、延時子程序、中斷服務(wù)子程序、顯示子程序、報(bào)警程序等等。水位采集子程序是將傳感器產(chǎn)生的信號經(jīng)單片機(jī)處理之后,經(jīng)顯示子程序可以顯示出來。延子程序時MC

32、S-51的工作頻率為2-12MHZ,我們選用的89S52單片機(jī)的工作頻率為12MHZ。機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12倍,所以一個機(jī)器周期的時間為12*(1/12M)=1us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間。中斷服務(wù)子程序用來實(shí)現(xiàn)數(shù)碼管的動態(tài)掃描。顯示子程序是將數(shù)據(jù)處理的結(jié)果送顯示器顯示。系統(tǒng)軟件總體流程圖如圖5.1所示。開始初始化液位檢測報(bào)警電路顯示程序處理53總體程序設(shè)計(jì)本軟件流程圖設(shè)計(jì)簡易合理,方便易于操控,能夠針對水位的不同狀態(tài)和不同外界條件進(jìn)行控制,水位運(yùn)行穩(wěn)定、控制品質(zhì)良好、控制效果明顯改善,同時大大提高了控制的抗干擾能力

33、,保證了工業(yè)水體液位方面作業(yè)的穩(wěn)定運(yùn)行。下圖即為水位檢測主程序流程圖。 圖5.2總程序流程圖5.5液位采集程序設(shè)計(jì) 當(dāng)液位在A點(diǎn)以下時紅燈連續(xù)亮并且發(fā)出頻率較高的報(bào)警聲顯示00,電機(jī)正轉(zhuǎn);當(dāng)A液位B時,顯示A0,繼電器1吸合,電機(jī)正轉(zhuǎn);當(dāng)B液位C時,顯示OB,電機(jī)不轉(zhuǎn);液位在C點(diǎn)及以上時,綠燈連續(xù)亮并且發(fā)出報(bào)警聲,顯示C0,電機(jī)反轉(zhuǎn)。圖5.4液位采集子程序流程圖第6章 系統(tǒng)調(diào)試6.1系統(tǒng)原理圖設(shè)計(jì) 利用Altium designer6.9軟件來進(jìn)行原理圖的繪制,先將原理圖做出,然后將其轉(zhuǎn)化成相應(yīng)的PCB圖,布繪制過程中要注意布置線要求:銅箔厚度為00 5mm、寬度為11. 5mm時,通過2A的

34、電流,溫度不會高于3,因此導(dǎo)線寬度為1. 5mm (60mil)可滿址要求。對于集成電路,尤其是數(shù)字電路,通常選0. 020.3mm(0.812mil)導(dǎo)線寬度。當(dāng)然,只要允許,還是盡可能用寬線尤其是電源線和地線。導(dǎo)線的最小間距主要由最壞情況下的線間絕緣電阻利擊穿電壓決定。對于集成電路,尤其是數(shù)字電路,只要工藝允許,可使問距至58mm。62系統(tǒng)測試方法在水塔中經(jīng)常要根據(jù)水面的高低進(jìn)行水位的自動控制,同時進(jìn)行水位壓力的檢測和控制。本液位器具有水位檢測、報(bào)警、自動上水和排水(上水用電機(jī)正轉(zhuǎn)模擬,下水用電機(jī)反轉(zhuǎn)模擬)。該控制器主要由89S52單片機(jī),A、B、C三點(diǎn)水位檢測電路、數(shù)碼顯示電路、報(bào)警電路

35、和電源電路組成。由三路“傳感器”(三根插入水中的導(dǎo)線)檢測液位的變化,由89S52控制液位的顯示及電泵的抽放水。 三路液位檢測都采用簡單的三極管檢測電路檢測液位變化,將電平信號分別送入單片機(jī)。實(shí)際檢測時,從P3焊接出四根導(dǎo)線,分別將接A、B、C和VCC的導(dǎo)線放入水杯(模擬水塔)中,位置如圖6.2所示。當(dāng)液位在A點(diǎn)以下時紅燈連續(xù)亮并且發(fā)出頻率較高的報(bào)警聲顯示00,電機(jī)正轉(zhuǎn);當(dāng)A液位B時,顯示OA,繼電器1吸合,電機(jī)正轉(zhuǎn);當(dāng)B液位C時,顯示OB,電機(jī)不轉(zhuǎn);液位在C點(diǎn)及以上時,綠燈連續(xù)亮并且發(fā)出報(bào)警聲,顯示OC,電機(jī)反轉(zhuǎn)。6.3開始測試1整個電路安裝焊接之后,開始調(diào)試。硬件電路的檢查。先斷電觀察有無

36、斷路和短路現(xiàn)象;檢查元件足否安裝正確,有無損壞;檢查電路部分是否有虛焊、脫焊現(xiàn)象;榆查電源系統(tǒng)等,然后接通電源,用萬用表等測試工具測試電路的通斷情況;檢查芯片、按鍵、數(shù)碼管等元器件能否正常工作等。2軟件的調(diào)試檢查。首先對程序進(jìn)行調(diào)試,沒有芯片的支持,系統(tǒng)將無法正常運(yùn)行,而一個程序是否能正常運(yùn)行,首先要檢查它的語法上有沒有錯誤,檢查程序語法的錯誤。利用Keil uVision4軟件對程序進(jìn)行調(diào)試。首先將程序在程序編輯器中編輯,因?yàn)樵谡{(diào)試時沒有實(shí)驗(yàn)箱,所以在調(diào)試時只能看有沒有錯誤,即只能對程序進(jìn)行編譯連接,如果有編譯連接錯誤,將鼠標(biāo)指向窗口內(nèi)的錯誤提示信息,雙擊左鍵,光標(biāo)將自動跳到編輯窗口源程序文

37、件發(fā)生錯誤的地方,對程序進(jìn)行修改。在修改正確之后就可以產(chǎn)生一個HEX文件,該文件就是程序的代碼文件。將程序燒入電路,按功能要求對電路進(jìn)行調(diào)試,并反復(fù)對程序進(jìn)行修改調(diào)試,以達(dá)到基本功能要求。然后把程序燒制程序成功之后,開始進(jìn)行硬件調(diào)試。導(dǎo)通電源之后,數(shù)碼管不顯示,6個燈全亮現(xiàn)象,在老師的指導(dǎo)下找到了問題,復(fù)位電路有虛焊點(diǎn),造成一直復(fù)位狀態(tài),單片機(jī)不工作。在調(diào)試監(jiān)測水壓功能時發(fā)現(xiàn)根本無法實(shí)現(xiàn),接著對水壓傳感器接口進(jìn)行電平測試,測得該口的VCC總處于低電平電平,最后檢查檢查主電路,發(fā)現(xiàn)電路板上有斷線。把所有問題都處理好,系統(tǒng)運(yùn)行正常,很好地實(shí)現(xiàn)了設(shè)計(jì)的各個功能。6.4系統(tǒng)功能測試 (1)測試在lOc

38、m-40cm范圍內(nèi)任務(wù)設(shè)定水箱的上、下水位,當(dāng)水箱的水位下降到設(shè)定水位時,繼電器1吸合水泵電機(jī)可自動起動運(yùn)轉(zhuǎn)工作,給水箱補(bǔ)水;當(dāng)水箱的水位上升到設(shè)定水位高度時,繼電器2吸合水泵電機(jī)倒轉(zhuǎn)可自動放水。 (2)測試在設(shè)定報(bào)警的液位上下限值,當(dāng)水管水位降到或升到設(shè)定的報(bào)警水位時,能發(fā)山報(bào)警聲,同時能起動水泵和排水閥進(jìn)行自動調(diào)節(jié)。 (3)測試用數(shù)碼管顯示器件顯示水位高度,分辨率1ccm。(4)測試當(dāng)水泵電機(jī)工作時如果無水泵出或水管液位不變化報(bào)警???結(jié)本設(shè)計(jì)是采用一個單片機(jī)系統(tǒng)來進(jìn)行根據(jù)水位大小自動抽水放水的液位控制器設(shè)計(jì)與制作,它具有全集成化,智能化,高精度,高性能,高可靠性和低價格等優(yōu)點(diǎn),是一個值得

39、推廣的一種方法。在設(shè)計(jì)本作品時,我通過查閱網(wǎng)絡(luò)與圖書館搜集到的資料,再加上指導(dǎo)老師的耐心指導(dǎo)與資料提供,設(shè)計(jì)出了這一套根據(jù)水壓大小自動抽水放水的液壓控制系統(tǒng)的主要硬件結(jié)構(gòu)和軟件結(jié)構(gòu),基本完成了任務(wù)書的要求,但是由于設(shè)計(jì)的理論基礎(chǔ)尚淺,對課題的研究經(jīng)驗(yàn)還不成熟,使得在技術(shù)的解決與運(yùn)用上顯得粗糙了一些,在某些技術(shù)關(guān)鍵上的敘述不能達(dá)到詳細(xì)、精辟。但是這個系統(tǒng)的設(shè)計(jì)卻不缺乏自己的特點(diǎn)和創(chuàng)新點(diǎn),特歸納為以下幾點(diǎn): 該產(chǎn)品的互換性好,響應(yīng)速度快,抗干擾能力強(qiáng),外圍電路簡單易懂,體積小。 該系統(tǒng)能用軟件的方式設(shè)計(jì)硬件,所以用軟件方式設(shè)計(jì)的系統(tǒng)向硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)開發(fā)軟件自動完成的。 設(shè)計(jì)過程中可以對有關(guān)

40、軟件進(jìn)行各種仿真,且系統(tǒng)可現(xiàn)場編程,在線升級,所以有不同的功能可以實(shí)現(xiàn)。 可以從以前的組合設(shè)計(jì)轉(zhuǎn)向真正的自由設(shè)計(jì),所以設(shè)計(jì)的移植性好,效率高??蛇m合大規(guī)模的現(xiàn)場操作。 因?yàn)檎麄€系統(tǒng)可集成在一個芯片上,因此體積小,外圍電路簡單、功耗低,可靠邊性更高。在軟件上,充分利用了AT89C52的強(qiáng)大功能,實(shí)現(xiàn)了信息的快速處理和控制、顯示功能,能精確監(jiān)測。更進(jìn)一步實(shí)現(xiàn)了自動化,高效率。 由于本人的水平有限,設(shè)計(jì)當(dāng)中,難免會有不少的缺點(diǎn)和不足之處,懇請教導(dǎo)老師批評并改正。致 謝通過這次的畢業(yè)設(shè)計(jì),使自己大學(xué)四年以來所學(xué)的理論知識和實(shí)踐做到了有機(jī)結(jié)合,進(jìn)一步深化鞏固了自己的專業(yè)知識,同時也讓我深深體會到要想有更

41、好的發(fā)展,必須要通過自身不斷的學(xué)習(xí),才能為將來打下更加堅(jiān)定的基礎(chǔ)。 在完成本畢業(yè)設(shè)計(jì)之際,首先感謝我的導(dǎo)師 插入老師的名字老師對我在學(xué)業(yè)上的悉心指導(dǎo),某某老師淵博的理論知識、 熱心負(fù)責(zé)、無私的奉獻(xiàn)精神深深地感動了我,某某老師幫助解決了畢業(yè)設(shè)計(jì)中遇到的許多問題,使我能順利完成此次設(shè)計(jì),在這里,再一次對于某某老師的指導(dǎo)和幫助致以誠摯的謝意! 同時,學(xué)院各級領(lǐng)導(dǎo)、老師以及身邊的同學(xué)也給予了熱情關(guān)心和幫助。在此感謝學(xué)校四年的培養(yǎng),同時對關(guān)心和幫助過自己的領(lǐng)導(dǎo)、老師以及同學(xué)表示衷心的感謝!最后,感謝評審老師在百忙中抽出時間對我的論文進(jìn)行評審指正,謝謝!參考文獻(xiàn)1 蔡美琴,張為民,何金兒.MCS-51系列

42、單片機(jī)系統(tǒng)及其應(yīng)用M高等教育出版社,20092 毛謙敏,洪潭元,肖艷萍.單片機(jī)原理及應(yīng)用設(shè)計(jì)M國防工業(yè)出版社,社,20053 雷思孝,馮育長.單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用M.西安電子科技大學(xué)出版社,20054 何宏,龔?fù)?志宏.單片機(jī)原理與接口技術(shù)M.國防工業(yè)出版社,20065 張樹江,王成安.模擬電子技術(shù)M.大連理工大學(xué)出版社,20096 劉峰,孫艷萍.電力電子技術(shù)M.大連理工大學(xué)出版社,20077 陳小忠,黃寧.單片機(jī)接口技術(shù)實(shí)用子程序M.人民郵電出版社,2005:2-88 Charles K.Alexander,Matthew N.O.Sandiku.Fundamentals of elec

43、tric circuitM.清華大學(xué)出版社,2009:78-82 9 Janice Mazidi.8051 Microcontroller and Embedded SystemsM.Prentice Hall,2009:82-8410 Brian W.Kernighan.The C Programming LanguageM.Prentice Hall PTR,2009:69-71附錄程序清單/*=液位控制程序=*/#include /頭文件#define uchar unsigned char /宏定義#define uint unsigned intuchar discount;uint

44、 getdate;uchar disbuf4=0xc0,0xc0,0xc0,0xc0;uchar code FFW4=0x01,0x02,0x04,0x08;/ 正轉(zhuǎn)數(shù)組uchar code REV4=0x08,0x04,0x02,0x01; / 反轉(zhuǎn)數(shù)組uchar code dispcode=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0x88,0x83,0xc6;/共陽數(shù)碼管段碼表 /*端口定義*/sbit W0=P27; /數(shù)碼管位選端口定義sbit W1=P26;sbit W2=P25;sbit W3=P24; /繼電器端口定義/sbit M1=P10; /抽水電機(jī)控制口/sbit M2=P11; /排水電機(jī)控制口sbit BEEP=P17;sbit A1=P20; /水位測量端口定義sbit B1=P21;sbit C1=P22;bit MOTOR_Z=0;/電機(jī)正轉(zhuǎn)控制標(biāo)示位bit MOTOR_F=0;/電機(jī)反轉(zhuǎn)控制標(biāo)示位uchar num;uchar num1=0;/* 延時子程序*/void delayms(u

溫馨提示

  • 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

提交評論