液位控制系統(tǒng)設(shè)計(jì).doc
《液位控制系統(tǒng)設(shè)計(jì).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《液位控制系統(tǒng)設(shè)計(jì).doc(31頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
。 目 錄 第1章 緒論 1 第2章 設(shè)計(jì)方案 2 2.1 方案舉例 2 2.2 方案比較 3 2.3 方案確定 3 第3章 硬件設(shè)計(jì) 4 3.1 控制系統(tǒng) 4 3.1.1 AT89C51單片機(jī) 4 3.1.2 AT89C51的信號(hào)引腳 6 3.1.3 單片機(jī)最小系統(tǒng) 7 3.2 感應(yīng)系統(tǒng) 8 3.3 指示系統(tǒng) 9 3.4 液位控制系統(tǒng) 10 3.5 電機(jī)與報(bào)警系統(tǒng) 11 第4章 軟件設(shè)計(jì) 13 4.1 延時(shí)子程序 13 4.2 感應(yīng)系統(tǒng)程序 13 4.3 指示系統(tǒng)程序 14 4.4 電機(jī)和警報(bào)系統(tǒng)程序 14 4.5 液位預(yù)選系統(tǒng)程序 15 4.6 系統(tǒng)主流程圖 17 第5章 系統(tǒng)測(cè)試 18 5.1 仿真測(cè)試過程 19 5.2 仿真結(jié)果 21 總 結(jié) 22 致 謝 23 參考文獻(xiàn) 22 附錄1 系統(tǒng)仿真電路 25 附錄2 源程序 26 -可編輯修改- 第1章 緒論 21世紀(jì),電子技術(shù)獲得了飛速的發(fā)展,在其推動(dòng)下,現(xiàn)代電子產(chǎn)品幾乎滲透了社會(huì)的各個(gè)領(lǐng)域,有力地推動(dòng)了社會(huì)生產(chǎn)力的發(fā)展和社會(huì)信息化程度的提高,同時(shí)也使現(xiàn)代電子產(chǎn)品性能進(jìn)一步提高,產(chǎn)品更新?lián)Q代的節(jié)奏也越來越快。 目前,單片機(jī)正朝著高性能和多品種方向發(fā)展,它作為自動(dòng)控制中的一個(gè)核心器件在小型自動(dòng)控制系統(tǒng)及信號(hào)采集方面已被廣泛應(yīng)用,技術(shù)也相對(duì)成熟,向著CMOS化、低功耗、小體積、大容量、高性能、低價(jià)格和外圍電路內(nèi)裝化等幾個(gè)方面發(fā)展趨勢(shì)。單片機(jī)應(yīng)用的重要意義還在于它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在已能用單片機(jī)通過軟件方法來實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。 在傳統(tǒng)的液位控制系統(tǒng)中,存在著自動(dòng)化程度低、調(diào)節(jié)精度差的缺點(diǎn),已經(jīng)不符合當(dāng)今高效、低耗、低勞動(dòng)強(qiáng)度的要求,同時(shí)會(huì)產(chǎn)生大量的污染。對(duì)于小型測(cè)控系統(tǒng),一般可采用以單片機(jī)為核心、配以接口電路和外圍設(shè)備,在編制應(yīng)用程式的模式來實(shí)現(xiàn)。 下面將介紹一個(gè)簡(jiǎn)單的液位控制系統(tǒng),可用于容器內(nèi)液體存儲(chǔ),例工、農(nóng)用蓄水池,居民社區(qū)水箱等方面。此系統(tǒng)采用以單片機(jī)為控制中心的技術(shù),不僅能使控制系統(tǒng)具有精度高、功能強(qiáng)、經(jīng)濟(jì)性好的特點(diǎn),還節(jié)約能源、利于環(huán)保。 第2章 設(shè)計(jì)方案 2.1 方案舉例 方案一:液體流入容量控制方式。對(duì)輸入容器的液體的管道進(jìn)行監(jiān)控,根據(jù)流入體積推算出容器內(nèi)液體液位高度。 容量監(jiān)控系統(tǒng) 管道控制系統(tǒng) 液流停止 液位停止 圖2-1 液體流入容量控制系統(tǒng)結(jié)構(gòu)框圖 容量監(jiān)控系統(tǒng):對(duì)進(jìn)入容器的液體體積進(jìn)行監(jiān)控。 管道控制系統(tǒng):控制管道對(duì)液體的傳輸情況。 在液體向容器內(nèi)部輸入時(shí),通過對(duì)容量的監(jiān)控知道容器內(nèi)的液體體積,在液體進(jìn)入容器內(nèi)部的體積到達(dá)目標(biāo)時(shí),控制輸送液體的管道,使液流停止,最終達(dá)到目標(biāo)液位。 方案二:簡(jiǎn)單的連通器控制方式。在目標(biāo)容器內(nèi)連接連通器,使多余的液體導(dǎo)入副容器,以致目標(biāo)容器的液位達(dá)到目的液位。 導(dǎo)入液體 連通器 液位達(dá)標(biāo) 多余液體溢出 輸送停止 人工控制 圖2-2 連通器控制系統(tǒng)結(jié)構(gòu)框圖 在目標(biāo)液位位置給目標(biāo)容器連接連通器,在觀察到多余溢出的液體流入連通器內(nèi)后,停止液體輸送。 方案三:采用單片機(jī)技術(shù)來實(shí)現(xiàn)液位控制的功能。系統(tǒng)以AT89C51單片機(jī)為核心控制器件,它除具有靈活強(qiáng)大的控制功能,以便實(shí)時(shí)檢測(cè)液位的傳遞信號(hào)、控制液位到達(dá)的高低實(shí)現(xiàn)自動(dòng)控制。 控制指令 導(dǎo)入液體 指示系統(tǒng) 控制系統(tǒng) 電機(jī)與警報(bào)系統(tǒng) 感應(yīng)系統(tǒng) 圖2-3 基于單片機(jī)實(shí)現(xiàn)的液位控制系統(tǒng)結(jié)構(gòu)框圖 感應(yīng)系統(tǒng):將感應(yīng)到的液位信號(hào)傳遞給單片機(jī)控制器。 控制指令:將控制信息傳遞給單片機(jī),使液位到達(dá)預(yù)定位置。 顯示系統(tǒng):經(jīng)過單片機(jī)辨別后,顯示當(dāng)前系統(tǒng)工作和液位位置指示燈。 電機(jī)與報(bào)警控制系統(tǒng):?jiǎn)纹瑱C(jī)經(jīng)過信息處理后,決定是否啟動(dòng)電機(jī)和報(bào)警 2.2 方案比較 方案一結(jié)構(gòu)簡(jiǎn)單,操作方便。但是自動(dòng)化程度低,精度不高,控制響應(yīng)時(shí)間慢,且只能單獨(dú)控制。 方案二結(jié)構(gòu)簡(jiǎn)單,成本低廉。但精度不高,無法顯示,浪費(fèi)資源,自動(dòng)化程度低。 方案三不僅結(jié)構(gòu)簡(jiǎn)單,成本低廉,而且準(zhǔn)確度高,自動(dòng)化高,節(jié)省人力資源,更重要的是利用單片機(jī)控制后,由于其擁有多個(gè)引腳,在為添加功能時(shí)更改電路方便快捷,而且內(nèi)部程序可以進(jìn)行反復(fù)輸入和擦除,在以后更改控制方法時(shí)只要更改程序內(nèi)容就可以達(dá)到相對(duì)應(yīng)目的,省時(shí)省力,及其節(jié)約成本。 2.3 方案確定 綜合考慮以上方案的優(yōu)缺點(diǎn)以及題目的基本要求和發(fā)揮要求,在本設(shè)計(jì)中,我采用了第三種方案,即采用單片機(jī)來實(shí)現(xiàn)液位控制的功能為我此次設(shè)計(jì)的方案。主控制器AT89C51單片機(jī)與MCS51系列單片機(jī)產(chǎn)品兼容,內(nèi)部自帶有4KB的Flash存儲(chǔ)器及256KB RAM單元,不需另外擴(kuò)展EEPROM及靜態(tài)RAM,可以在線下載程序,易于日后的升級(jí)。 第3章 硬件設(shè)計(jì) 該系統(tǒng)硬件設(shè)計(jì)總體思想是以單片機(jī)為控制系統(tǒng),接受感應(yīng)信息并進(jìn)行處理后,將控制指令傳出,對(duì)各個(gè)系統(tǒng)進(jìn)行對(duì)應(yīng)操作。硬件設(shè)計(jì)總體框圖如圖3-1所示。 控制系統(tǒng) 復(fù)位、時(shí)鐘系統(tǒng) 指示系統(tǒng) 液位預(yù)選系統(tǒng) 電機(jī)與警報(bào)系統(tǒng) 感應(yīng)系統(tǒng) 圖3-1 硬件設(shè)計(jì)總體框圖 控制系統(tǒng):根據(jù)輸入信息進(jìn)行處理,并將控制數(shù)據(jù)傳出。 感應(yīng)系統(tǒng):將感應(yīng)到的液位信號(hào)傳遞給單片機(jī)控制器。 指示系統(tǒng):經(jīng)過單片機(jī)辨別后,顯示當(dāng)前系統(tǒng)工作和液位位置指示燈。 液位預(yù)選系統(tǒng):將控制信息傳遞給單片機(jī),使液位到達(dá)預(yù)定位置。 電機(jī)與報(bào)警控制電路:?jiǎn)纹瑱C(jī)經(jīng)過信息處理后,決定是否啟動(dòng)電機(jī)和報(bào)警 3.1 控制系統(tǒng) 該系統(tǒng)控制主要為單片機(jī)控制。單片機(jī)是單片微型計(jì)算機(jī)的簡(jiǎn)稱,是指集成在一個(gè)芯片上的微型計(jì)算機(jī),它的各種功能部件,包括CPU、存儲(chǔ)器、基本輸入/輸出接口電路、定時(shí)/計(jì)數(shù)器和終端系統(tǒng)等,都制作在一塊集成芯片上,構(gòu)成一個(gè)完整的微型計(jì)算機(jī)。 3.1.1 AT89C51單片機(jī) 單片機(jī)實(shí)質(zhì)上是一個(gè)芯片。它具有結(jié)構(gòu)簡(jiǎn)單、控制功能強(qiáng)、可靠性高、體積小、價(jià)格低等優(yōu)點(diǎn),單片機(jī)技術(shù)作為計(jì)算機(jī)技術(shù)的一個(gè)重要分支,廣泛的應(yīng)用于工業(yè)控制、智能化儀器儀表、家用電器、電子玩具等各個(gè)領(lǐng)域。 ATMEL公司生產(chǎn)的AT89C51單片機(jī)采用高性能的靜態(tài)80C51設(shè)計(jì),并采用先進(jìn)工藝制造,還帶有非易失性Flash程序存儲(chǔ)器。它是一種高性能、低功耗的8位CMOS微處理芯片,市場(chǎng)應(yīng)用最多。其主要特點(diǎn)如下:8KB Flash ROM,可以擦除1000次以上,數(shù)據(jù)保存10年。技術(shù)特點(diǎn)有:256字節(jié)內(nèi)部RAM;電源控制模式;時(shí)鐘可停止和恢復(fù);空閑/掉電模式;6個(gè)中斷源;4個(gè)中斷優(yōu)先級(jí);4個(gè)8位I/O口;全雙工增強(qiáng)型TUAR;3個(gè)16位定時(shí)/計(jì)數(shù)器:T0、T1(標(biāo)準(zhǔn)80C51)和增加的T2(捕獲和比較);全靜態(tài)工作方式:0~24MHZ;AT89C51單片機(jī)的基本結(jié)構(gòu)請(qǐng)參見圖3-2,各部分情況介紹如下: 中央處理器(CPU):中央處理器是單片機(jī)的核心,完成運(yùn)算和控制功能。AT89C51的CPU能處理8位二進(jìn)制數(shù)或代碼。 內(nèi)部數(shù)據(jù)存儲(chǔ)器(內(nèi)部RAM):AT89C51芯片中共有256個(gè)RAM單元,但其中后128單元被專用寄存器占用,能作為寄存器供用戶使用的只是前128單元,用于存放可讀寫的數(shù)據(jù)。因此通常所說的內(nèi)部數(shù)據(jù)存儲(chǔ)器就是指前128單元,簡(jiǎn)稱內(nèi)部RAM。 內(nèi)部程序存儲(chǔ)器(內(nèi)部ROM):AT89C51共有8KB掩膜ROM,用于存放程序、原始數(shù)據(jù)或表格,因此稱之為程序存儲(chǔ)器,簡(jiǎn)稱內(nèi)部ROM。 定時(shí)器/計(jì)數(shù)器:AT89C51共有2個(gè)16位的定時(shí)器/計(jì)數(shù)器,以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)功能,并以其定時(shí)或計(jì)數(shù)結(jié)果對(duì)計(jì)算機(jī)進(jìn)行控制。 T0 CPU 時(shí)鐘電路 ROM 定時(shí)/計(jì)數(shù)器 RAM 中斷系統(tǒng) 并行接口 串行接口 P3 TxD x P RxD INT0 INT1 P2 P1 P0 T1 圖3-2 AT89C51單片機(jī)結(jié)構(gòu)框圖 并行I/O口:AT89C51共有四個(gè)8位的I/O口(P0、P1、P2、P3),以實(shí)現(xiàn)數(shù)據(jù)的并行輸入輸出。 串行口:AT89C51單片機(jī)有一個(gè)全雙工的串行口,以實(shí)現(xiàn)單片機(jī)和其它設(shè)備之間的串行數(shù)據(jù)傳送。該串行口功能較強(qiáng),既可作為全雙工異步通信收發(fā)器使用,也可作為同步移位器使用。 中斷控制系統(tǒng):AT89C51單片機(jī)的中斷功能較強(qiáng),以滿足控制應(yīng)用的需要。AT89C51共有5個(gè)中斷源,即外中斷2個(gè),定時(shí)/計(jì)數(shù)中斷2個(gè),串行中斷1個(gè)。全部中斷分為高級(jí)和低級(jí)共二個(gè)優(yōu)先級(jí)別。 時(shí)鐘電路:AT89C51芯片的內(nèi)部有時(shí)鐘電路,但石英晶體和微調(diào)電容需外接。時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)鐘脈沖序列。系統(tǒng)允許的晶振頻率一般為6MHZ和12MHZ。 從上述內(nèi)容可以看出,AT89C51雖然是一個(gè)單片機(jī)芯片,但作為計(jì)算機(jī)應(yīng)該具有的基本部件它都包括,因此實(shí)際上它已是一個(gè)簡(jiǎn)單的微型計(jì)算機(jī)系統(tǒng)了。 3.1.2 AT89C51的信號(hào)引腳 AT89C51是標(biāo)準(zhǔn)的40引腳雙列直插式集成電路芯片,其引腳排列請(qǐng)參見圖3-3。引腳功能見表3-1。 引腳名稱 引腳功能 P0.0~P0.7 P0口8位雙向端口線 P1.0~P1.7 P1口8位雙向端口線 P2.0~P2.7 P2口8位雙向端口線 P3.0~P3.7 P3口8位雙向端口線 ALE 地址所存控制信號(hào) 外部程序存儲(chǔ)器讀選通信號(hào) 訪問程序存儲(chǔ)控制信號(hào) RST 復(fù)位信號(hào) XTAL1和XTAL2 外部晶體引線端 Vcc +5V電源 Vss 地線 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 RST/VPD 9 RXD P3.0 10 TXD P3.1 11 INT0 P3.2 12 INT1 P3.3 13 T0 P3.4 14 T1 P3.5 15 WR P3.6 16 RD P3.7 17 XTAL2 18 XTAL1 19 VSS 20 P2.0 21 P2.1 22 P2.2 23 P2.3 24 P2.4 25 P2.5 26 P2.6 27 P2.7 28 PSEN 29 ALE/PROG 30 EA/VPP 31 P0.7 32 P0.6 33 P0.5 34 P0.4 35 P0.3 36 P0.2 37 P0.1 38 P0.0 39 VCC 40 8051 表3-1 AT89C51引腳功能 圖3-3 MCS–51引腳 ALE:在系統(tǒng)擴(kuò)展時(shí),ALE用于控制把P0口輸出的低8位地址鎖存器鎖存起來,以實(shí)現(xiàn)低位地址和數(shù)據(jù)的隔離。此外由于ALE是以晶振六分之一的固定頻率輸出的正脈沖,因此可作為外部時(shí)鐘或外部定時(shí)脈沖使用。 :外部程序存儲(chǔ)器讀選通信號(hào)。在讀外部ROM時(shí)有效(低電平),以實(shí)現(xiàn)外部ROM單元的讀操作。 :訪問程序存儲(chǔ)控制信號(hào)。當(dāng)信號(hào)為低電平時(shí),對(duì)ROM的讀操作限定在外部程序存儲(chǔ)器;而當(dāng)信號(hào)為高電平時(shí),則對(duì)ROM的讀操作是從內(nèi)部程序存儲(chǔ)器開始,并可延至外部程序存儲(chǔ)器。 RST:復(fù)位信號(hào)。當(dāng)輸入的復(fù)位信號(hào)延續(xù)2個(gè)機(jī)器周期以上高電平即為有效,用以完成單片機(jī)的復(fù)位初始化操作。 XTAL1和XTAL2:外接晶體引線端。當(dāng)使用芯片內(nèi)部時(shí)鐘時(shí),此二引線端用于外接石英晶體和微調(diào)電容;當(dāng)使用外部時(shí)鐘時(shí),用于接外部時(shí)鐘脈沖信號(hào)。 VSS:地線。 VCC:+5V電源。 由于工藝及標(biāo)準(zhǔn)化等原因,芯片的引腳數(shù)目是有限制的。例如AT89C51系列把芯片引腳數(shù)目限定為40條,但單片機(jī)為實(shí)現(xiàn)其功能所需要的信號(hào)數(shù)目卻遠(yuǎn)遠(yuǎn)超過此數(shù),因此就需要給一些信號(hào)引腳賦以雙重功能。如果把前述的信號(hào)定義為引腳第一功能的話,則根據(jù)需要再定義的信號(hào)就是它的第二功能。最常用的是P3口線的第二功能詳見表3-2。 表3-2 P3口各引腳與第二功能表 第一功能 第二功能 第二功能信號(hào)名稱 P3.0 RXD 串行數(shù)據(jù)接收 P3.1 TXD 串行數(shù)據(jù)發(fā)送 P3.2 外部中斷0申請(qǐng) P3.3 外部中斷1申請(qǐng) P3.4 T0 定時(shí)器/計(jì)數(shù)器0的外部輸入 P3.5 T1 定時(shí)器/計(jì)數(shù)器1的外部輸入 P3.6 外部RAM寫選通 P3.7 外部RAM讀選通 3.1.3 單片機(jī)最小系統(tǒng) 單片機(jī)最小系統(tǒng)以AT89C51單片機(jī)為核心,由單片機(jī)、時(shí)鐘電路、復(fù)位電路等組成如圖3-4所示。主要負(fù)責(zé)各個(gè)模塊的初始化工作,讀取并處理時(shí)間、按鍵響應(yīng)、顯示等。 單片機(jī)的工作就是執(zhí)行用戶程序、指揮各部分硬件完成既定任務(wù)。單片機(jī)能夠工作的最小電路還包括時(shí)鐘和復(fù)位電路。 時(shí)鐘電路位單片機(jī)工作提供基本始終,復(fù)位電路用于將單片機(jī)內(nèi)部各電路的狀態(tài)恢復(fù)到初始值。 單片機(jī)是一個(gè)負(fù)載的同步時(shí)序電路,為了保證同步工作方式的實(shí)現(xiàn),電路應(yīng)在唯一的時(shí)鐘信號(hào)控制下嚴(yán)格的按時(shí)序進(jìn)行工作。時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。時(shí)鐘電路是由XTAL1和XTAL2之間跨接的晶體振蕩器和微調(diào)電容構(gòu)成。時(shí)鐘電路中晶體振蕩器的頻率高則系統(tǒng)的時(shí)鐘頻率就高,所以該系統(tǒng)采用12MHz晶振,工作周期為1us。 無論是在單片機(jī)剛開始接上電源時(shí),還是斷電后或者發(fā)生故障后都要復(fù)位。單片機(jī)復(fù)位是使CPU和系統(tǒng)中的其他功能部件都恢復(fù)到一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。本系統(tǒng)中采用的是12MHz晶振,時(shí)鐘頻率為12MHz,每個(gè)機(jī)器周期為1us,需要加上持續(xù)2us以上時(shí)間的高電平。 復(fù)位電路有兩種形式:手動(dòng)按鍵復(fù)位和上電復(fù)位,在本系統(tǒng)中采用的是手動(dòng)按鍵復(fù)位。如圖3-4所示,R1、C3和KEY1組成系統(tǒng)手動(dòng)按鍵復(fù)位電路。 圖3-4 單片機(jī)最小系統(tǒng) 3.2 感應(yīng)系統(tǒng) 為了使單片機(jī)在液位情況不同時(shí)進(jìn)行判定,從而決定工作情況,我們要給單片機(jī)傳遞液位的信息。感應(yīng)系統(tǒng)目的就是將感應(yīng)到的液位的信息傳遞給單片機(jī),所以需要在容器中放置能夠感應(yīng)出液位情況的感應(yīng)器件,此系統(tǒng)中我們選用浮球液位計(jì)。 浮球液位計(jì)由浮球、插桿等組成。根據(jù)排開液體體積相等原理浮于液面,當(dāng)容器的液位變化時(shí)浮球也隨著上下移動(dòng),由于磁性作用,浮球液位計(jì)的彈簧受磁性吸合,把液面位置變化成電信號(hào),通過磁耦合作用,使傳感器內(nèi)電阻成線性變化,由智能轉(zhuǎn)換器將電阻變化轉(zhuǎn)換成4~20mA標(biāo)準(zhǔn)電流信號(hào),傳供給控制系統(tǒng)可實(shí)現(xiàn)液位的自動(dòng)檢測(cè)、控制和記錄。該儀器適用于石油、化工、電力、輕工及醫(yī)藥等行業(yè)污水處理及各類常壓和承壓容器內(nèi)介質(zhì)液位的測(cè)量,尤其對(duì)于地下貯槽、貯罐的液位測(cè)量最為理想。 通過浮球液位計(jì)所傳出的電流信號(hào),傳遞給單片機(jī)。如圖3-5所示,P1.0、P1.1、P1.2、P1.3為液位檢測(cè)信號(hào)傳遞的接口。P1.0端口接a位,P1.1端口b位,P1.2端口接c位,P1.3端口接d位。 圖3-5 信號(hào)傳遞系統(tǒng) 3.3 指示系統(tǒng) 為了得知控制系統(tǒng)運(yùn)轉(zhuǎn)時(shí)的情況,我們需要給整個(gè)系統(tǒng)添加裝置來明示,表明系統(tǒng)的進(jìn)程、液體的位置,此系統(tǒng)中,采用連接指示燈來提供我們液位控制的必要的信息。如圖3-6所示,P0.0、P0.1、P0.2、P0.3、P0.4端口為單片機(jī)與液位位置和單片機(jī)工作指示燈的控制和通信的數(shù)據(jù)端口。在單片機(jī)工作期間,除了表明工作進(jìn)行的工作指示D5 會(huì)一直保持亮的狀態(tài),其它指示燈會(huì)為表明液位的情況相應(yīng)變亮,如表3-3所示。 表3-3 指示燈情況明示表 液位情況 亮狀態(tài)指示燈 液體到達(dá)a位 D1 液體到達(dá)b位 D1,D2 液體到達(dá)c位 D1,D2,D3 液體到達(dá)d位 D1,D2,D3,D4 圖3-6 指示系統(tǒng) 3.4 液位控制系統(tǒng) 在液位進(jìn)入容器時(shí),為了可以控制液體在容器內(nèi)液位的高度,選擇P2.0、P2.1、P2.2為預(yù)定液位的控制端口,在P2.0端口、P2.1端口、P2.2端口接入三個(gè)開關(guān)分別限定液體到達(dá)a位、b位和c位,如圖3-7所示。開關(guān)閉合時(shí)單片機(jī)會(huì)進(jìn)行判定,然后根據(jù)程序進(jìn)行液位控制,使進(jìn)入容器的液體停止在相應(yīng)位置。如果在單片機(jī)起動(dòng)后沒有開關(guān)閉合,那么液體直到d位才會(huì)停止。 圖3-7 液位控制系統(tǒng) 3.5 電機(jī)與報(bào)警系統(tǒng) 單片機(jī)在接受和判斷傳輸進(jìn)來的信息后根據(jù)程序來控制電機(jī)的運(yùn)轉(zhuǎn)和警報(bào)的鳴響。如圖3-7,P3.0、P3.1為電機(jī)和報(bào)警器的控制端口,P3.0端口連接電機(jī)控制電路,在端口發(fā)出高電平時(shí),會(huì)啟動(dòng)光耦合器,使電路中得電磁繼電器閉合,導(dǎo)通電機(jī)電路,使電機(jī)轉(zhuǎn)動(dòng)將液體送入容器。其工作狀態(tài)如表3-4。 圖3-7 電機(jī)與報(bào)警系統(tǒng)圖 表3-4 電動(dòng)機(jī)和報(bào)警器工作狀態(tài)表 液位情況 液位控制開關(guān)情況 電動(dòng)機(jī)及報(bào)警狀態(tài) 未檢測(cè)到液體 無開關(guān)閉合 D6亮,電動(dòng)機(jī)轉(zhuǎn),警報(bào)不響 液體到達(dá)a位 a位開關(guān)閉合 D6滅,電動(dòng)機(jī)停,警報(bào)響 無開關(guān)閉合 D6亮,電動(dòng)機(jī)轉(zhuǎn),警報(bào)不響 液體到達(dá)b位 b位開關(guān)閉合 D6滅,電動(dòng)機(jī)停,警報(bào)響 無開關(guān)閉合 D6亮,電動(dòng)機(jī)轉(zhuǎn),警報(bào)不響 液體到達(dá)c位 c位開關(guān)閉合 D6滅,電動(dòng)機(jī)停,警報(bào)響 無開關(guān)閉合 D6亮,電動(dòng)機(jī)轉(zhuǎn),警報(bào)響 液體到達(dá)d位 無開關(guān)閉合 D6滅,電動(dòng)機(jī)停,警報(bào)響 第4章 軟件設(shè)計(jì) 系統(tǒng)軟件設(shè)計(jì)的程序編寫內(nèi)容,可以監(jiān)控液位的不同位置,在液位處于不同狀態(tài)傳遞著不同信號(hào)而由程序控制指示燈、電機(jī)及報(bào)警器的狀態(tài)。系統(tǒng)設(shè)制了三個(gè)按鍵,是控制液位位置的。整個(gè)系統(tǒng)的軟件設(shè)計(jì)均采用C語言開發(fā),采用查詢的方式進(jìn)行液位和按鍵狀態(tài)進(jìn)行掃描,確保系統(tǒng)的實(shí)時(shí)性。系統(tǒng)框圖如圖4-1。 控制系統(tǒng) 復(fù)位、時(shí)鐘系統(tǒng) 指示系統(tǒng) 液位預(yù)選系統(tǒng) 電機(jī)與警報(bào)系統(tǒng) 感應(yīng)系統(tǒng) 圖4-1 控制系統(tǒng)框圖 4.1 延時(shí)子程序 電路中我們用的12MHz的晶體振蕩器,所以一個(gè)機(jī)器周期為1us,為了使電路中的報(bào)警器發(fā)出正常的鳴叫聲,需要一個(gè)延時(shí)子程序。內(nèi)容如下: void delay(unsigned int z) { unsigned int x,y; for(y=110;y>0;y--); for(x=z;x>0;x--); } 其中Z為自定義函數(shù),在調(diào)用時(shí)插入語句“delay(z)”即可啟動(dòng)延時(shí),而其中的延時(shí)時(shí)間為 Z×110us。 4.2 感應(yīng)系統(tǒng)程序 由硬件系統(tǒng)可知,單片機(jī)的P1端口接入的是液位的感應(yīng)端,由于感應(yīng)端的關(guān)系,在感應(yīng)高位的端口時(shí)低端的感應(yīng)器一定感應(yīng)到了液位,所以端口會(huì)由于液位上漲依次接收到電信號(hào),相對(duì)應(yīng)得函數(shù)程序,流程及其相應(yīng)程序?yàn)椋? 液位上升 液位到a位 液位到b位 液位到c位 液位到d位 P1==0xf0 //液位無感應(yīng)無信號(hào)。 P1==0xf1 // a位有感應(yīng)信號(hào)。 P1==0xf3 //a位、b位有感應(yīng)信號(hào)。 P1==0xf7 //a位、b位、c位有感應(yīng)信號(hào)。 P1==0xff //四個(gè)液位檔均有感應(yīng)信號(hào)。 圖4-2 液位感應(yīng)流程圖 4.3 指示系統(tǒng)程序 液位和單片機(jī)工作指示燈的控制和通信的數(shù)據(jù)接入單片機(jī)的P0端口。當(dāng)端口處于高電平時(shí)指示燈就會(huì)變亮,而控制端口的高低電平就是單片機(jī)和其內(nèi)部的程序,當(dāng)感應(yīng)到液位信號(hào)后,作出對(duì)應(yīng)指令。 P0.4端口的工作指示燈在單片機(jī)工作時(shí)一直都要保持亮的狀態(tài),所以我們需要P0.4一直為高電平。 P4端口的函數(shù)指令、流程及其相應(yīng)程序如下: 液位到達(dá)a位 液位到達(dá)b位 液位到達(dá)c位 液位到達(dá)d位 系統(tǒng)啟動(dòng) 液位指示燈D1亮 液位指示燈D2亮 液位指示燈D3亮 工作指示燈D5亮 液位指示燈D4亮 if(P1==0xf0) // 液位指感應(yīng)無信號(hào) P0=0xf0; // 只有工作指示燈亮 if(P1==0xf1) // a位有感應(yīng)信號(hào) P0=0xf1; // a位指示燈亮 if(P1==0xf3) // a位、b位有感應(yīng)信號(hào) P0=0xf3; // a位、b位指示燈亮 if(P1==0xf7) //a位、b位、c位有感應(yīng)信號(hào) P0=0xf7; // a位、b位、c位指示燈亮 if (P1==0xff) //四個(gè)液位檔均有感應(yīng)信號(hào) P0=0xff; //四個(gè)液位指示燈全亮 圖4-3 指示燈系統(tǒng)流程圖 4.4 電機(jī)和警報(bào)系統(tǒng)程序 單片機(jī)的P3.0、P3.1為電機(jī)和報(bào)警器的控制端口,利用程序語言將這兩個(gè)端口定義出來,更為方便簡(jiǎn)單的控制,例: sbit P30=P3^0; //電機(jī)端口,將P3.0接口定義為P30。 sbit P31=P3^1; //報(bào)警器端口,將P3.1接口定義為P31。 相應(yīng)端口為高電平時(shí)會(huì)導(dǎo)致電機(jī)啟動(dòng),報(bào)警器鳴叫,系統(tǒng)流程圖如下: 關(guān)閉電機(jī) 啟動(dòng)電機(jī) 電機(jī)轉(zhuǎn) 報(bào)警器不響 電機(jī)指示燈D6亮 電機(jī)停轉(zhuǎn) 報(bào)警器響 電機(jī)指示燈D6滅 P30=1; //電機(jī)指示燈D6亮,電機(jī)啟動(dòng) P31=0; //報(bào)警器不響 P30=0; //電機(jī)指示燈D6滅,電機(jī)停 P31=1; //報(bào)警器響 圖4-4 電機(jī)和警報(bào)系統(tǒng)流程圖 4.5 液位預(yù)選系統(tǒng)程序 P2.0、P2.1、P2.2為液位預(yù)選控制的數(shù)據(jù)傳送端口,不同的感應(yīng)端口接收到信號(hào)后,通過單片機(jī)控制電機(jī)和報(bào)警器。流程圖如下: N Y 電機(jī)轉(zhuǎn)動(dòng) 是否有按鍵按下 相應(yīng)液位是否有液體感應(yīng) Y N 電機(jī)停止 圖4-5 液位控制系統(tǒng)流程圖 a位控制: if(P1==0xf1) // a位有感應(yīng)信號(hào) { P0=0xf1; // a位指示燈亮 if(P20==0) // a位預(yù)選開關(guān)按下 { P30=0; // 電機(jī)停 P31=1; // 報(bào)警 } } b位控制: if(P1==0xf3) // a位、b位有感應(yīng)信號(hào) { P0=0xf3; // a位、b位指示燈亮 if(P21==0) // b位預(yù)選開關(guān)按下 { P30=0; // 電機(jī)停 P31=1; // 報(bào)警 } } c位控制: if(P1==0xf7) // a位、b位、c位有感應(yīng)信號(hào) { P0=0xf7; // a位、b位、c位指示燈亮 if(P22==0) // c位預(yù)選開關(guān)按下 { P30=0; // 電機(jī)停 P31=1; // 報(bào)警 } } 液位達(dá)到d位時(shí),點(diǎn)機(jī)會(huì)自動(dòng)停止,報(bào)警器鳴叫,程序如下: if (P1==0xff) // a位、b位、c位、d位均有感應(yīng)信號(hào) { P0=0xff; // a位、b位、c位、d位水指示燈全亮 { P30=0; //電機(jī)停 P31=1; //報(bào)警 } } 4.6 系統(tǒng)主流程圖 系統(tǒng)的軟件主流程圖如圖4-6所示。 讀取液位信息 指示燈顯示 初始化 液位控制鍵位按下 是否液位達(dá)標(biāo) 電機(jī)轉(zhuǎn) 電機(jī)停 N Y 結(jié)束 開始 圖4-6 主程序流程圖 系統(tǒng)程序詳見附錄2。 第5章 系統(tǒng)測(cè)試 本設(shè)計(jì)的核心是采用AT89C51單片機(jī),外部連接電子電路,構(gòu)成了一個(gè)多位控制的液位控制系統(tǒng)。 本系統(tǒng)的仿真采用PROTEUS軟件,由于軟件內(nèi)沒有浮球等液位感應(yīng)器,所以連接簡(jiǎn)單電路代替。如圖5-1所示,設(shè)有4個(gè)接地開關(guān)SW1-SW4,對(duì)液位進(jìn)行仿真控制如果沒有開關(guān)斷開,就相當(dāng)于液體低于a位,電機(jī)會(huì)自動(dòng)運(yùn)行。但要注意,在液位處于高液位時(shí)液位肯定浸沒過低液位,所以在表示高液位開關(guān)斷開時(shí),低于此液位的開關(guān)也要處于斷開狀態(tài),對(duì)應(yīng)仿真情況如表5-1。 圖5-1 信號(hào)傳遞仿真系統(tǒng) 表5-1 液位情況仿真表 液位情況 開關(guān)狀態(tài) 未檢測(cè)到液體 開關(guān)全部閉合 液體到達(dá)a位 SW1斷開,其他開關(guān)全閉合 液體到達(dá)b位 SW1,SW2斷開,其他開關(guān)閉合 液體到達(dá)c位 SW4閉合,其他開關(guān)全斷開 液體到達(dá)d位 開關(guān)全部斷開 5.1 仿真測(cè)試過程 進(jìn)行系統(tǒng)仿真。 運(yùn)行系統(tǒng),開始傳感器無感應(yīng)(如圖5-1),P0.4端口保持高電平,D5會(huì)保持亮的狀態(tài)說明系統(tǒng)正在運(yùn)行(如圖5-2所示),此時(shí)程序會(huì)使P3.0端口為高電平,P3.1端口為低電平,而當(dāng)P3.1端口為高低電平,會(huì)使報(bào)警電路導(dǎo)通,才能使報(bào)警器會(huì)鳴叫。 圖5-2 系統(tǒng)運(yùn)行工作指示燈D5亮 當(dāng)P3.0端口為高電平,D6會(huì)變亮,會(huì)啟動(dòng)光耦合器,電流同過電路三極管后會(huì)被放大到足夠大,以啟動(dòng)電磁繼電器使開關(guān)吸合,使電機(jī)電路導(dǎo)通,如圖5-3所示。 圖5-3 電機(jī)轉(zhuǎn)動(dòng) 當(dāng)開關(guān)SW1斷開時(shí),P1.0端口為高電平(如圖5-4),如果開關(guān)SW5于閉合狀態(tài)下,會(huì)使P2.0端口為低電平,此時(shí)程序會(huì)使P3.0端口為低電平,P3.1端口為高電平,則電機(jī)會(huì)停止,報(bào)警器會(huì)鳴叫,如圖5-5;開關(guān)SW5于斷開閉合狀態(tài)下,會(huì)使P2.0端口為高電平,此時(shí)程序會(huì)使P3.0端口為高電平,P3.1端口為低電平,則電機(jī)會(huì)轉(zhuǎn)動(dòng),報(bào)警器不會(huì)鳴叫。 圖5-4 模擬液位到達(dá)a位,SW1斷開 圖5-5 a位控制開關(guān)閉合 當(dāng)開關(guān)SW2斷開時(shí)(SW1已處于斷開),P1.1端口為高電平(P1.0端口已處于高電平)指示燈D1,D2會(huì)變亮,判斷此時(shí)開關(guān)SW6狀況,如果此時(shí)開關(guān)SW6處于閉合狀態(tài)下,電機(jī)則會(huì)停止,報(bào)警器會(huì)鳴叫;否則電機(jī)繼續(xù)轉(zhuǎn)動(dòng)。 同理,在開關(guān)SW3斷開時(shí),指示燈D1,D2,D3會(huì)變亮,判斷開關(guān)SW7的狀況。 而在開關(guān)SW4斷開時(shí),液位指示燈會(huì)全亮,電機(jī)會(huì)自動(dòng)停止且報(bào)警器鳴叫。 5.2 仿真結(jié)果 系統(tǒng)通過仿真調(diào)試后,可以穩(wěn)定運(yùn)行,進(jìn)行液位控置,且可以在系統(tǒng)進(jìn)行時(shí)更改預(yù)設(shè)液位。但要注意在運(yùn)用電磁繼電器時(shí),要使電路有足夠的電壓?jiǎn)?dòng)它;連接報(bào)警器時(shí),要考慮單片機(jī)內(nèi)部時(shí)鐘始終頻率。 總 結(jié) 本設(shè)計(jì)以功能齊全適用于大眾為指導(dǎo)思想,選取AT89C51單片機(jī)為控制核心。通過外圍元件構(gòu)成了一個(gè)具有容器內(nèi)液位不同位置控制的液位控制系統(tǒng)。 系統(tǒng)擁有指示燈顯示液位,鍵位預(yù)選液位,到目的液位的報(bào)警功能,軟件程序采用均采用C語言編寫,便于移植與升級(jí)。 整個(gè)系統(tǒng)是根據(jù)單片機(jī)對(duì)液位感應(yīng)信號(hào)和液位控制端口的循環(huán)判斷后,做出對(duì)電機(jī)的端口信號(hào)控制,控制液體的導(dǎo)入與否進(jìn)而控制了容器內(nèi)部的液位。 系統(tǒng)經(jīng)連接、調(diào)試后,可以穩(wěn)定運(yùn)行,同時(shí)可以對(duì)液體進(jìn)入容器位置進(jìn)行預(yù)先設(shè)置。系統(tǒng)具有線路簡(jiǎn)單、清晰、體積小、價(jià)格低等優(yōu)點(diǎn),但無法實(shí)時(shí)監(jiān)控液位情況,添加或更換不同的液位傳感器可以改進(jìn)這一情況,之后可以根據(jù)容器參數(shù)計(jì)算出液體體積 。 本設(shè)計(jì)系統(tǒng)主要的控制對(duì)象是電機(jī),在不同的情況下來選擇電機(jī)的啟動(dòng)和停止,沒有對(duì)液體流入容器的整個(gè)系統(tǒng)進(jìn)行多方面的控制,此系統(tǒng)可以在影響液位的其他方面的因素進(jìn)行提升和改進(jìn),形成多方向控制液位系統(tǒng)。 致 謝 在本次論文設(shè)計(jì)過程中,感謝我的學(xué)校,給了我學(xué)習(xí)的機(jī)會(huì),在學(xué)習(xí)中,老師從選題指導(dǎo)、論文框架到細(xì)節(jié)修改,都給予了細(xì)致的指導(dǎo),提出了很多寶貴的意見與建議,老師以其嚴(yán)謹(jǐn)求實(shí)的治學(xué)態(tài)度、高度的敬業(yè)精神、兢兢業(yè)業(yè)、孜孜以求的工作作風(fēng)和大膽創(chuàng)新的進(jìn)取精神對(duì)我產(chǎn)生重要影響。她淵博的知識(shí)、開闊的視野和敏銳的思維給了我深深的啟迪。這篇論文是在老師的精心指導(dǎo)和大力支持下才完成的 感謝所有授我以業(yè)的老師,沒有這些年知識(shí)的積淀,我沒有這么大的動(dòng)力和信心完成這篇論文。感恩之余,誠(chéng)懇地請(qǐng)各位老師對(duì)我的論文多加批評(píng)指正,使我及時(shí)完善論文的不足之處。 謹(jǐn)以此致謝最后,我要向百忙之中抽時(shí)間對(duì)本文進(jìn)行審閱的各位老師表示衷心的感謝。 -可編輯修改- 參考文獻(xiàn) [1] 介華.電子技術(shù)課程設(shè)計(jì)指導(dǎo).北京:高等教育出版社,2003 [2] 詩(shī)白.模擬電子技術(shù)基礎(chǔ)(第三版).北京:高等教育出版社,2004 [3] 旭東.實(shí)用電子電路精選.北京:化學(xué)工業(yè)出版社,1999 [4] 王漢才.單片機(jī)原理及接口技術(shù).北京:清華大學(xué)出版社,1996 [5] 李偉.單片機(jī)原理及應(yīng)用.北京:機(jī)械工業(yè)出版社,2002 [6] 張平.單片機(jī)原理與接口技術(shù).北京:電子工業(yè)出版社,2003 [7] 王新穎.單片機(jī)原理及應(yīng)用.北京:北京大學(xué)出版社,2008 [8] 陳忠平.單片機(jī)基礎(chǔ)與最小系統(tǒng)實(shí)踐.北京:北京航空航天大學(xué)出版社,2006 [9] 沈慶陽.8051單片機(jī)實(shí)踐與應(yīng)用.北京:清華大學(xué)出版社,2003 [10] 何立民.單片機(jī)應(yīng)用技術(shù)選編.北京:北京航空航天出版社,2006 [11] 楊振江.單片機(jī)實(shí)用子程序及應(yīng)用實(shí)例.西安:西安電子科技大學(xué)出版社,2007 附錄1 系統(tǒng)仿真電路 附錄2 源程序 #include- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
32 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 控制系統(tǒng) 設(shè)計(jì)
鏈接地址:http://zhongcaozhi.com.cn/p-1528204.html