史磊
(陜西機(jī)電職業(yè)技術(shù)學(xué)院 電子與信息學(xué)院,陜西寶雞,721000)
在工農(nóng)業(yè)生產(chǎn)中,大型的水庫、水箱是重要的蓄水工具,對水情進(jìn)行有效的實(shí)時監(jiān)控、可靠控制將直接關(guān)系到工廠生產(chǎn)效率以及農(nóng)業(yè)生產(chǎn)質(zhì)量[1]。以前,對于水庫和水箱的控制一般是基于人工,但由于人工操作存在不及時、不準(zhǔn)確等弊端,所以對于水情的控制,如果能夠使用一種能自動且不間斷的監(jiān)測系統(tǒng),將對生產(chǎn)生活帶來很大的便利。此系統(tǒng)要求能夠?qū)崟r反應(yīng)水情信息,并根據(jù)當(dāng)前水情信息自動與預(yù)設(shè)的水情進(jìn)行對比分析,從而自動向管理人員提供水情超上限和超下限的聲光報警,并自動控制相應(yīng)的閘門或閥門電機(jī)進(jìn)行蓄水和放水[2]。這不僅提高了水情監(jiān)控的安全性,實(shí)時性,更大程度提高了可靠性,對于節(jié)約水資源和合理利用水資源有著不可代替的意義。
水情監(jiān)測系統(tǒng)選用單片機(jī)STC89C52作為控制器。利用壓力傳感器受到來自于水的壓力和水面上大氣壓的壓差,再通過AD轉(zhuǎn)換電路將壓差模擬信號轉(zhuǎn)換為與水面高度成比例的電壓信號,進(jìn)而完成水位高度的檢測。濁度檢測是水質(zhì)分析中的必檢項(xiàng)目,因此,水質(zhì)檢測將利用濁度傳感器來完成。從功能要求角度看,本系統(tǒng)能實(shí)現(xiàn)水位檢測、水質(zhì)檢測、液晶顯示、按鍵設(shè)置、水位控制等功能。因此,水情監(jiān)測系統(tǒng)由單片機(jī)控制部分,水位檢測部分,水質(zhì)檢測部分,AD采集部分和顯示部分等構(gòu)成,系統(tǒng)的總體設(shè)計框圖如圖1所示。
圖1 系統(tǒng)總體設(shè)計框圖
水情監(jiān)測系統(tǒng)利用壓力傳感器測量出水位的具體高度,利用按鍵設(shè)置水位的上、下限值;當(dāng)水位高度低于下限值時,報警提醒,繼電器工作打開水泵進(jìn)行抽水,當(dāng)水位高度高于上限值時,繼電器斷開,自動關(guān)閉水泵停止抽水,同時,報警解除;濁度檢測是利用一個紅外對管,當(dāng)光線穿過一定量的水時,光線的透過量取決于該水的污濁程度,水越污濁,透過的光就越少。具體能實(shí)現(xiàn)的功能有以下幾點(diǎn):(1)利用水壓傳感器檢測水位值;(2)利用濁度傳感器檢測當(dāng)前水的污濁程度;(3)利用液晶顯示器顯示當(dāng)前檢測值與閥值;(4)水位低于下限值或高于上限值時,水泵開始加水或排水,同時報警電路工作;(5)設(shè)定濁度閥值,當(dāng)濁度高于閥值時,水泵啟動開始排水,同時報警提醒。
本次設(shè)計的系統(tǒng)硬件部分主要包括STC89C52單片機(jī)主控模塊、壓力傳感器模塊、濁度傳感器模塊,ADC0832模數(shù)轉(zhuǎn)換模塊,按鍵模塊,蜂鳴器報警模塊、LCD1602顯示模塊和電機(jī)驅(qū)動模塊等。
單片機(jī)最小系統(tǒng)主要是由STC89C52單片機(jī)組成的一個最小系統(tǒng),一塊單片機(jī)只有把它接入相應(yīng)的電源,相應(yīng)的晶振電路,再加入相應(yīng)的復(fù)位電路然后下載相應(yīng)的程序,通過這樣組合的單片機(jī)才能正常的按照所寫的程序要求來執(zhí)行操作[3]。
單片機(jī)只有滿足相應(yīng)的時鐘信號才能進(jìn)行工作,時鐘信號由時鐘電路產(chǎn)生,通過在STC89C52的 XT1、XT2引腳上接入11.0592MHz的石英晶振外加兩個電容器(電容器根據(jù)經(jīng)驗(yàn)一般取30pF)組成的電路為單片機(jī)提供時鐘信號。
單片機(jī)的復(fù)位有上電復(fù)位和按鍵復(fù)位兩種模式,當(dāng)出現(xiàn)死機(jī)和運(yùn)行錯誤的時候,一般采用按鍵方式對單片機(jī)進(jìn)行復(fù)位操作,對于本系統(tǒng)所采用的單片機(jī)需要在復(fù)位管腳RST上產(chǎn)生兩個周期的高電平才能使單片機(jī)復(fù)位[4]。
水情監(jiān)測系統(tǒng)利用單片機(jī)的 P3.0/RXD 引腳、P3.1/TXD引腳以及電源接地引腳與下載模塊相連接,通過專用的下載連接線就可以對單片機(jī)進(jìn)行下載操作,能很方便的對系統(tǒng)進(jìn)行程序升級。
對于水位監(jiān)測電路,本系統(tǒng)使用的是壓力傳感器,眾所周知,水越深,壓力越大,水的深度與壓力成正比,因此可通過測量壓力換算為液面高度。壓力傳感器由敏感元件、轉(zhuǎn)換元件、后續(xù)處理部分組成,壓力傳感器采用應(yīng)變片來實(shí)現(xiàn)壓力的測量,應(yīng)變片的制造原理是依據(jù)橋式電路,當(dāng)應(yīng)變片上沒有壓力時,輸出的電壓為零;當(dāng)有壓力作用時,電橋不平衡,有一定的電壓輸出,輸出的電壓與電阻的變化量成線性關(guān)系,這樣通過測電壓就間接測量出壓力的大小[5]。
濁度傳感器內(nèi)部是一個IR958與PT958封裝的紅外線對管,當(dāng)光線穿過一定量的水時,光線的透過量取決于該水的污濁程度,水越污濁,透過的光就越少。光接收端把透過的光強(qiáng)度轉(zhuǎn)換為對應(yīng)的電流大小,透過的光多,電流大,反之,透過的光少,電流小[6]。通過測量接收端電流的大小,就可以間接計算出水的污濁程度。
水位電壓信號和濁度電流信號(濁度電流信號經(jīng)過電阻轉(zhuǎn)換為0 V~5V電壓信號),通過A/D轉(zhuǎn)換器進(jìn)行采樣處理,單片機(jī)就可以獲知當(dāng)前水的水位和污濁度。
液晶顯示電路主要通過USB轉(zhuǎn)串口線來與LCD1602液晶顯示屏通信將ADC0832采集和轉(zhuǎn)換的數(shù)據(jù)傳給LCD1602,顯示出所測得液面高度和濁度。液晶顯示電路分別將單片機(jī)的P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7口分別接到液晶顯示模塊的信號端口RB0~RB7。
軟件設(shè)計主要包括單片機(jī)主程序模塊、顯示程序模塊、模數(shù)轉(zhuǎn)化程序模塊和其他簡單程序模塊。依據(jù)硬件電路,為每個模塊進(jìn)行程序編寫開發(fā)。在本系統(tǒng)的軟件設(shè)計編寫過程中,先使用C語言編寫每個模塊自身的程序,再將各個部分的程序結(jié)合起來實(shí)現(xiàn)整體功能。
在水情監(jiān)測系統(tǒng)中,水位信息和濁度信息通過ADC0832模數(shù)處理之后,單片機(jī)就可以獲知當(dāng)前水的水位和污濁度,然后根據(jù)設(shè)置的閾值,將當(dāng)前值與閾值進(jìn)行對比,進(jìn)而對水泵的啟停做出判定[7]。同時主程序還具有液晶顯示當(dāng)前采集到的水位值、濁度值和閾值的功能,報警功能和閾值設(shè)置等功能,這樣使用戶操作更為方便。主程序設(shè)計流程圖如圖2所示。
圖2 主程序設(shè)計流程圖
當(dāng)使用檢測水位的壓力傳感器檢測到信號后,會將模擬信號傳輸?shù)紸DC8032中,實(shí)現(xiàn)模數(shù)轉(zhuǎn)化,然后單片機(jī)將實(shí)時采集到的信號與設(shè)定的閾值進(jìn)行對比,并做出對應(yīng)的處理[8]。如果當(dāng)前水位低于設(shè)定值,水泵將會啟動加水,蜂鳴器報警。如果檢測到當(dāng)前水位值高于設(shè)定的上限值時,水泵停止加水。水位檢測流程圖如圖3所示。
圖3 水位檢測流程圖
濁度的測量也是由單片機(jī)進(jìn)行控制,用濁度傳感器檢測濁度值,然后經(jīng)過A/D轉(zhuǎn)換之后將檢測的數(shù)據(jù)送至單片機(jī)并通過LCD進(jìn)行顯示。當(dāng)濁度值高于設(shè)定的上限值時,打開水泵開始排水,同時蜂鳴器報警。水質(zhì)檢測流程圖與水位檢測流程圖類似,這里將不再贅述。
系統(tǒng)硬件電路調(diào)試首先要對焊接好的各個電路進(jìn)行直觀檢查,具體可以參考以下幾步[9]:
(1)連線是否正確,在通電之前應(yīng)先檢查一下電路的連線是否正確,包括錯線,多線等情況。查找的方法有:按一定的順序逐一檢查安裝好的線路,由此,可容易查出錯線、少線的情況;還有一種方法就是按照實(shí)際的線路來對照原理電路圖進(jìn)行查線,這是一種以元件為中心進(jìn)行查線的方法。把每個元件引腳的連線一次查清,檢查每個接線處在電路圖上是否存在,這種方法不但可以查出錯線和少線,還容易查出多線的情況。
(2)檢查元器件引腳之間有無短路;連接處有無接觸不良;二極管和電容極性等是否連接有誤。電源、信號源連接是否正確。
(3)電源端對地是否存在短路,在通電前,斷開一根電源線,用萬用表檢查電源對地端是否存在短路。
其中在硬件調(diào)試的過程中不免會出現(xiàn)一些問題,水情檢測系統(tǒng)在制作過程中就出現(xiàn)了以下兩個問題:
(1)液晶顯示屏不顯示
由于顯示模塊是設(shè)計中最直觀的,也是驗(yàn)證其它功能是否正常的前提,因此,在本設(shè)計中首先檢測的就是顯示模塊。在系統(tǒng)焊接完成之后,給系統(tǒng)上電,發(fā)現(xiàn)顯示屏不能顯示,只是背光亮但是沒有數(shù)字顯示。首先是查看電路有沒有連接錯誤,焊接過程中焊錫短路或斷路等情況,但是最終經(jīng)過檢測之后排除了這些問題。然后查閱資料后發(fā)現(xiàn)是顯示屏的對比度,是需要調(diào)節(jié)的,然后在調(diào)節(jié)端增加了10k電位器進(jìn)行調(diào)節(jié),經(jīng)過緩慢調(diào)節(jié),顯示屏上的數(shù)字逐漸顯示出來。經(jīng)過這樣修改之后顯示模塊正常工作。
(2)繼電器模塊
在顯示模塊調(diào)試完成之后,在進(jìn)行電機(jī)抽水檢測時,發(fā)現(xiàn)當(dāng)繼電器吸合之后液晶屏顯示正常,當(dāng)按下按鍵,繼電器關(guān)閉時,液晶屏就容易出現(xiàn)花屏(概率40%,沒顯示任何內(nèi)容,就亮著背光燈,系統(tǒng)功能可以正常工作,按下按鍵一樣可以操作繼電器,只有斷電重啟后,液晶屏才又正常)。經(jīng)過查閱資料后發(fā)現(xiàn)繼電器閉合時,負(fù)載充電電流較大,導(dǎo)致電源電壓跌落,LCD復(fù)位;最后給LCD電源處并聯(lián)100μF的電容,經(jīng)過這樣修改之后模塊顯示正常[10]。
使用proteus仿真軟件對電路進(jìn)行軟件仿真,查看仿真電路是否可以正常運(yùn)行。在仿真電路中利用滑動變阻器模擬經(jīng)過AD轉(zhuǎn)換后的水位信號和水質(zhì)信號。仿真電路圖如圖4所示。
圖4 電路仿真圖
仿真調(diào)試也是要模塊化調(diào)試,一個程序塊一個程序塊的調(diào)試,例如,先寫一個液晶顯示程序,看顯示屏是否正常工作,從單個到整體,在本系統(tǒng)的軟件調(diào)試中分別對水位水質(zhì)檢測系統(tǒng)的各個子程序進(jìn)行調(diào)試,直到系統(tǒng)功能全部均能實(shí)現(xiàn)。
本系統(tǒng)由單片機(jī)、檢測水位的壓力傳感器、檢測水質(zhì)的濁度傳感器、LCD1602顯示屏、繼電器、水泵等組成。實(shí)物圖如圖5所示。
圖5 電路實(shí)物圖
在完成硬件電路檢查和軟件仿真調(diào)試后,就要將軟硬結(jié)合在一起進(jìn)行調(diào)試了,也就是讓編寫好的程序代碼直接在所焊接好的硬件電路中運(yùn)行,觀察現(xiàn)象,當(dāng)系統(tǒng)的運(yùn)行狀況與之前設(shè)計要求的思路不一致時,就要對系統(tǒng)硬件或者軟件進(jìn)行修改了。綜合調(diào)試步驟如下:
(1)將壓力傳感器、濁度傳感器、水泵和電源線連在電路板上。
(2)插上電源線之后按下電源開關(guān)。
(3)4個功能按鍵,分別為功能加鍵、功能減鍵、模式選擇鍵和確定鍵,首先按“模式選擇鍵”選擇進(jìn)入水位檢測模式還是水質(zhì)檢測模式狀態(tài),再按加、減按鍵可以調(diào)節(jié)水位和水質(zhì)的上限值及下限值。
(4)液晶顯示屏應(yīng)顯示當(dāng)前水位值和水質(zhì)值。
滅菌后不可強(qiáng)行開鍋冷卻,?;?小時后趁熱出鍋,放置在冷卻室或接種室內(nèi),當(dāng)料袋溫度冷卻到25~28℃或常溫時開始接種。接種室、接種箱及接種帳在接種前要選用規(guī)定的無公害藥劑進(jìn)行噴霧或熏蒸消毒處理后再進(jìn)行接種作業(yè)。栽培種菌齡30~35天,750克菌種瓶每瓶可接10~12袋。
(5)當(dāng)水位當(dāng)前檢測值小于設(shè)定的下限值時,水泵開始抽水,報警系統(tǒng)工作。當(dāng)水位當(dāng)前檢測值大于設(shè)定的上限閾值時,水泵停止抽水。當(dāng)濁度值高于設(shè)定的上限值時,打開水泵開始排水,同時蜂鳴器報警。
4.4.1 水位高度的檢測
向量杯中分別倒入不同體積的水,通過讀取量杯外壁的刻度值測量出當(dāng)前水位的實(shí)際值,同時可以從LCD1602顯示屏讀取當(dāng)前水位的測量值,將6次測量結(jié)果記錄在表1中。
表1 水位檢測數(shù)據(jù)
4.4.2 濁度的檢測
表2 濁度檢測數(shù)據(jù)
本系統(tǒng)利用單片機(jī)完成了基于水情監(jiān)測系統(tǒng)的設(shè)計,實(shí)現(xiàn)了當(dāng)水塔或水箱中的水位低于所設(shè)定的一個臨界值時,報警裝置啟動,同時繼電器吸合,水泵開始抽水,當(dāng)水泵加水水量達(dá)到所設(shè)定的上限值時,報警解除,同時水泵停止工作,并擴(kuò)展到了液晶顯示屏上。為適應(yīng)市場需求還擴(kuò)充了水質(zhì)檢測,水質(zhì)檢測是保證安全用水的前提, 在本系統(tǒng)中利用濁度傳感器檢測當(dāng)前水質(zhì),當(dāng)檢測到的當(dāng)前濁度值高于設(shè)定的上限值時,打開水泵開始排水,同時蜂鳴器報警。
本次設(shè)計的水情監(jiān)測系統(tǒng)電路實(shí)現(xiàn)簡單,操作容易,穩(wěn)定性比較高,測量準(zhǔn)確,實(shí)用性比較強(qiáng)。因此,該系統(tǒng)可使用在農(nóng)村儲水、水庫水位監(jiān)測以及城市水源的控制檢測等領(lǐng)域。