《單片機課程設計 水位控制系統(tǒng)》由會員分享,可在線閱讀,更多相關《單片機課程設計 水位控制系統(tǒng)(9頁珍藏版)》請在裝配圖網上搜索。
1、單片機原理及系統(tǒng)設計課程設計報告
單片機原理及系統(tǒng)課程設計
評語:
考勤10分
守紀10分
過程30分
設計報告30分
答辯20分
總成績(100)分
專 業(yè): 電氣工程及其自動化
班 級: 電氣
姓 名: xxx
學 號:
指導教師: xxx
蘭州交通大學自動化與電氣工程學院
2014 年 1月
2、13日
基于單片機的水位控制系統(tǒng)設計
1 設計目的
水位控制系統(tǒng)是以水位為被控參數的控制系統(tǒng),它在工業(yè)生產的各個領域都有廣泛的應用。在工業(yè)生產過程中,有很多地方需要對容器內的介質進行水位控制,使之高精度地保持在給定的數值,如在建材行業(yè)中,玻璃窯爐水位的穩(wěn)定對窯爐的使用壽命和產品的質量起著至關重要的作用。水位控制一般指對某一水位進行控制調節(jié),使其達到所要求的控制精度。液體的水位的自動控制,是近年來新開發(fā)的一項新技術,它是微型計算機軟件、硬件、自動控制等幾項技術緊密結合的產物,工程作業(yè)采用的是微機控制和原有的儀表控制,微機控制有以下明顯優(yōu)勢:
(1) 直觀而集中的顯示各運行參數,能顯示水位
3、狀態(tài)。
(2) 在運行中可以隨時方便的修改各種各樣的運行參數的控制值,并修改系統(tǒng)的控制參數,可以方便的改變水位的上限、下限。
(3) 具有水體控制過程的自動化處理以及監(jiān)控軟件良好的人機界面,操作人員在監(jiān)控計算機上能根據控制效果及時修運行參數,這樣能有效地減少工人的疲勞和失誤,提高生產過程的實時性、安全性。
綜合以上的種種優(yōu)點可以預見采用計算機控制系統(tǒng)是行業(yè)的大勢所趨。單片機是在一塊芯片上集成了一片微型計算機所需的CPU、存儲器、輸入、輸出等部件。單片機自問世以來,性能不斷提高和完善,體積小、速度快、功耗低的特點使它的應用領域日益廣泛。一般,工業(yè)控制系統(tǒng)的工作環(huán)境差,干擾強,利用單片機控制
4、就能克服這些缺點,因此單片機在控制領域得到廣泛的應用,使用單片機控制液體水位是很好的選擇。
2 設計任務和基本要求
設計一種基于單片機水位檢測控制系統(tǒng)。該系統(tǒng)能實現水位檢測、電機故障檢測、處理和報警等功能,實現超高、低警戒水位報警,超高警戒水位處理。介紹電路接口原理圖,給出相應的軟件設計流程圖和匯編程序,并用Proteus軟件仿真。實驗結果表明,該系統(tǒng)具有良好的檢測控制功能,可移植性和擴展性強。
本設計為一個實際應用系統(tǒng)的水塔水位控制部分。在此水塔水位控制系統(tǒng)中,檢測信號來自插入水中的3個金屬棒,以感知水位變化情況。 工作正常情況下,應保持水位在某一范圍內,當水位變化發(fā)生故障的時候
5、,及時關斷電機電源,發(fā)出聲、光報警信號。
(1)完成單片機硬件的設計,包括:CPU、存儲器(外擴ROM、RAM)、輸入/輸出接口(外擴并行I/O口)以及總線連接部分(附控制電路原理圖)。
(2)完成控制軟件的設計(附控制軟件清單)。
3 水位控制原理
以水塔水位控制為例。
單片機水塔水位控制原理圖1所示,圖中的A、B表示允許水位變化的上、下限位置。由于題目中所要求的金屬導體在長時間置于水和空氣中會被氧化,因此導電性會下降,這樣會影響系統(tǒng)的正常工作,所以本設計需要改動部分控制硬件,上部兩個導體分別用浮子開關代替,第三個不需要置于水中,而將它直接接地然后串入電阻接入電路中。在正常情況下,
6、水位應控制在上下限的范圍之內。為此,在水塔內的不同高度處,安裝固定不變的兩個浮子開關A、B,利用杠桿原理, A浮子控制開關A,B浮子控制開關B,受到浮力時開關打開,A靠近水塔上部,B靠近水池底部,A、B之間足夠距離,要保證有足夠大的流水量。水塔由電機帶動水泵供水,單片機控制電機轉動,隨著供水,水位不斷上升,當水位上升到上限水位時,由于水的浮力作用,使浮子開關A,B均斷開。因此b、c兩端的電壓都為+5 V即為“1”狀態(tài).此時應停止電機和水泵工作,不再向水塔注水;當水位處于上、下限之間時,B開關斷開和A開關閉合, b端為1狀態(tài),c端為0狀態(tài)。此時電機保持原來的運行狀態(tài),使水位上升或下降,當水位處于
7、下限位置以下時,A,B開關都斷開,b、c均為0狀態(tài),此時應啟動電機轉動,帶動水泵給水塔注水。當開關A斷開B閉合(這種狀態(tài)在正常情況下不會出現,因此必有一浮子出現故障停止電機運轉,報警器打開。
圖1所示水塔浮子的控制原理。
圖1 控制原理圖
4 系統(tǒng)總體方案
4.1電路設計
水塔水位控制系統(tǒng)主要由CPU(80C31)、水位檢測接口電路、報警接口電路、存儲器擴展接口電路、復位電路、時鐘振蕩等部分組成,圖2為系統(tǒng)硬件電路。
圖2 系統(tǒng)硬件電路
4.2 水位檢測接口電路
為了便于實現水位檢測功能,用一個兩位的浮子開關A,B模擬P1.1和P1.0端的狀態(tài)(0、1),浮子開關另
8、一端接地,每個負電極分別通過4.7 k的電阻(R1,R2)接+5V電源。將單片機的P1.0端口接開關B,P1.1端口接開關A。假設被水淹沒的負電極都為高電平,此時開關置1;露在水面的負電極都為低電平,開關此時置為0。單片機通過負電極重復采集檢測水位,當缺水時(此時兩個開關均置0),電機必須帶動水泵抽水;若水位在正常范圍內時,檢測信號為高,低電平(此時開關B置1,開關A置0);當水位過高時,檢測信號為高電平(此時開關A和B都置1),單片機檢測到P1.0和P1.1為高電平后,立即停機。
4.3 報警接口電路
為了避免系統(tǒng)發(fā)生故障時,水位失去控制造成嚴重后果,在超出、低于警戒界水位時,報警信號直
9、接從高、低警界水位電極獲得。單片機P1.3端口為啟動電機命令輸出端口,P1.3=0為低電平,經過非門和驅動器7406后與電機的另一端接地導通,啟動電機工作;P1.3=l為高電平,反之,電機停止工作。電機故障報警由單片機控制,電機故障報警信號由P1.3輸人。當P1.3為高電平時蜂鳴器報警。水位超過高警戒水位,單片機控制系統(tǒng)使電機停止轉動,向水塔內供水工作也停止。
4. 4存儲器擴展接口電路
為了便于系統(tǒng)擴展,存放大容量應用程序,系統(tǒng)設計擴展一片程序存儲器,用于存放源程序代碼。74LS373用于鎖存地址,單片機的P0.0~P0.7通過復用方式分別接鎖存器74LS373的DO~D7和存儲器273
10、2的D0~D7端,地址鎖存信號線ALE接鎖存器的OE端,通過軟件設置實現地址和數據信息的傳輸,鎖存器的輸出端Q0~Q7與存儲器地址線A0~A7相連,剩余的3根地址線A8~A11接P2.0~P2.2.單片機選通引腳接存儲器OE端,因只擴展一片存儲器,片選端CE接地。
4.5 各設備的地址分配
各元件所接端口以及對應地址如表1 所示
表1 元件所接端口以及對應地址表
序號 1 2 3 4
P1口 P1.0 P1.1
11、 P1.2 P1.3
元件 開關B 開關A 電動機 報警
地址 90H 91H 92H 93H
4.6 軟件設計
4.6.1設計思路描述
當水塔水位處于上、下限之間時,P1.0=l,P1.1=0,此時無論電機是在帶動水泵給水塔供水使水位不斷上升還是電機沒有工作使水位不斷下降,都應繼續(xù)維持原有工作狀態(tài);當水位低于下限時,P1.0
12、=0,P1.1=0,此時啟動電機轉動,帶動水泵給水塔供水。
4.6.2 設計程序流程圖
為實現表2的各個控制,要求程序選擇P1.0和P1.1的高低電平,以及當出現故障時控制P1.3為低電平報警同時關閉電機。
程序流程圖如圖3所示:
圖3 程序流程圖
4.6.3 主程序
根據圖3的流程,首先將P1口寫1,為檢查P1.0和P1.1狀態(tài)做準備,然后選擇P1.0和P1.1的高低電平,實現控制P1.2和P1.3的7高低電平的變化,在沒有改變開關的狀態(tài)之前,為了保持各個端口的電平,需要調用延時程序,主程序以及延時程序見附錄一。
5 結論
控制系統(tǒng)有四種運行狀態(tài)
13、,當水塔里的水面低于最低限時即低于浮子B時,A、B浮子開關均閉合,電機運轉,向水塔注水;直到水面超過浮子B,B開關打開,電機任然保持原來的運行的狀態(tài);隨著水面上升,浮子開關A被打開,此時水面達到上限,因此關閉電機,停止向水塔里注水;隨著向外部供水,水面逐漸下降,浮子開關A閉合,但此時不需要再往水塔里注水,因此電機任然維持原來的停止狀態(tài)不變。而當不屬于上述的任何閉合情況時,報警器打開。
對四種不同狀態(tài)的仿真見附錄二。
6 結語
本系統(tǒng)就是充分利用了80C31和2732芯片的I/O引腳。系統(tǒng)采用MSC-51系列單片機Intel80C31和可編程并行I/O接口芯片2732為中心器件來設計
14、水塔水位控制系統(tǒng),實現了能根據水位的高低通過80C31芯片的P1口設置電動機的抽水和報警工作功能;通過二極管的發(fā)光來報警以及兩個開關來模擬水位的控制,二極管由驅動系統(tǒng)驅動發(fā)光。
參考文獻
[1] 張毅坤 單片微型計算機原理及應用[M],西安電子科技大學出版社,1998
[2] 雷麗文 等 微機原理與接口技術[M],電子工業(yè)出版社,1997.2
[3] 王思明,張金敏 等 單片機原理及應用[M],科學出版社,2012.9
[4] 馮育長主編 單片機系統(tǒng)設計與實例分析[M],西安電子科技大學出版社,2007
[5] 謝維成,楊加國主編 單片機原理與應用及C51程序設計[M
15、],清華大學出版社,2006
附錄一
實驗程序如下:
ORG 0000H
AJMP LOOP
ORG 0100H
LOOP: SETB 93H
ORL P1,#03H ;為檢查水位狀態(tài)做準備
MOV A,P1
JNB ACC.0,ONE ;P1.0=0則轉移
JB ACC.1,TWO ;P1.1=1則轉移
BACK: ACALL DELAY ;調用延時
AJMP LOOP
ON
16、E: JNB ACC.1,THREE ;P1.1=0則轉移
CLR 93H ;P1.3←0,啟動報警裝置
SETB 92H ;P1.2←1,停止電機工作
AJMP LOOP
THREE: CLR 92H ;啟動電機
AJMP BACK
TWO: SETB 92H ;停止電機工作
AJMP BACK
延時子程序(延時10s):
DELAY:
ORG
17、 8030H
MOV R3,#19H
LOOP3: MOV R1,#85H
LOOP1: MOV R2,#0FAH
LOOP2: DJNZ R2,LOOP2
DJNZ R1,LOOP1
DJNZ R3,LOOP3
RET
END
附錄二
對四種不同狀態(tài)的仿真如下圖所示:
(1)當A,B兩開關都閉合,即水位未到達開關B時,電機運轉。
如圖4所示:
圖4 仿真電路1
(2)當A開關閉合,B開關斷開,即水位適中,電機維持原狀。
如圖5所示:
圖5仿真電路2
(3)當兩開關都斷開即水位超過了上線時,電機停轉。
如圖6所示:
圖6仿真電路3
(4)當A斷開B閉合即浮子開關出現故障,電機停轉且系統(tǒng)報警。
如圖7所示:
圖7仿真電路4
8