水質(zhì)自動(dòng)監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
摘要:介紹了基于單片機(jī)的水質(zhì)監(jiān)控系統(tǒng)的實(shí)施方法。該方法克服了傳統(tǒng)儀器的不足,可實(shí)現(xiàn)水質(zhì)監(jiān)控的智能化,滿足了水產(chǎn)科研及環(huán)境監(jiān)測發(fā)展的需要。
本文引用地址:http://www.ex-cimer.com/article/255581.htm關(guān)鍵詞:水質(zhì)監(jiān)測 單片機(jī) 自動(dòng)控制
水產(chǎn)科研的不斷深入以及環(huán)境保護(hù)的不斷加強(qiáng)對(duì)水質(zhì)各參數(shù)的連續(xù)實(shí)時(shí)監(jiān)測提出了更高的要求,如:在水產(chǎn)養(yǎng)殖研究中,要求對(duì)池塘、水庫、工廠化養(yǎng)魚池等多種水體的水質(zhì)連續(xù)監(jiān)控;在環(huán)境保護(hù)方面,建立各種水質(zhì)無人測站以監(jiān)測和記錄江、河、湖泊、地下水以及海岸沿線各點(diǎn)的水質(zhì)變化,把數(shù)據(jù)通過各種通訊方式實(shí)時(shí)傳輸?shù)奖O(jiān)控中心進(jìn)行處理等。傳統(tǒng)的水質(zhì)監(jiān)測方式由于測試周期長、不能實(shí)時(shí)監(jiān)測等原因,已不能適應(yīng)水產(chǎn)科研以及環(huán)境保護(hù)等方面的需求。
本系統(tǒng)以單片機(jī)為主控制器,結(jié)合最新的外圍器件,可實(shí)現(xiàn)同時(shí)監(jiān)測溶解氧、溫度、pH值、電導(dǎo)率、氨氮等11路參數(shù)的變化,同時(shí)顯示在液晶顯示器上,并按設(shè)定的時(shí)間間隔記錄在EEPROM中;也可通過RS-232串口與遠(yuǎn)程計(jì)算機(jī)通信,完成數(shù)據(jù)傳輸、遠(yuǎn)程控制、遠(yuǎn)程校正等功能;還可以通過控制接口控制報(bào)警器、增氧機(jī)、循環(huán)泵等設(shè)備,完成自動(dòng)控制功能。
1 系統(tǒng)原理
系統(tǒng)硬件結(jié)構(gòu)框圖如圖1所示。主控制芯片選用ATMEL公司的89C52。系統(tǒng)主要組成部分包括:傳感器、信號(hào)調(diào)理部分、單片機(jī)、非易失EEPROM、模/數(shù)轉(zhuǎn)器、實(shí)時(shí)時(shí)鐘、液晶顯示器、電源監(jiān)控、鍵盤、8位雙向I/O口、8位開關(guān)控制輸出以及同計(jì)算機(jī)連接的通信接口等。
傳感器信號(hào)將各參數(shù)的變化轉(zhuǎn)變?yōu)橄鄳?yīng)的微弱的電流或電壓信號(hào),經(jīng)精密放大器調(diào)理是標(biāo)準(zhǔn)的0~5V電壓后,送到模/數(shù)轉(zhuǎn)換器轉(zhuǎn)換成相應(yīng)的數(shù)字電壓值,再送入單片機(jī)中進(jìn)行處理。單片機(jī)依據(jù)不同的傳感器進(jìn)行數(shù)值濾波、補(bǔ)償?shù)冗\(yùn)算后送入液晶顯示屏實(shí)時(shí)顯示,同時(shí)按照設(shè)定值,定時(shí)存入在非易失EEPROM中。這些數(shù)據(jù)可以通過本機(jī)按鍵在液晶顯示屏上直接讀取或清除,還可以通過RS-232接口由計(jì)算機(jī)直接讀取數(shù)據(jù)。
系統(tǒng)由4個(gè)按鍵完成自動(dòng)校準(zhǔn)、校零、采集數(shù)據(jù)及存儲(chǔ)數(shù)據(jù)時(shí)間間隔設(shè)定、數(shù)據(jù)讀取及清除等功能。電源可用交流電或電池供電,由專門的電源監(jiān)控電路監(jiān)測供電狀況并自動(dòng)切換。當(dāng)電池電壓低于所定標(biāo)準(zhǔn)電壓時(shí),在液晶顯示上顯示出來,表明需要更換電池。
2 關(guān)鍵器件及關(guān)鍵技術(shù)
2.1 傳感器
2.1.1 溫度傳感器
根據(jù)水質(zhì)監(jiān)測的需要,我們選用了美國Dallas公司一線數(shù)字溫度計(jì)DS1820,大小如一個(gè)三極管,為單總線數(shù)字傳輸。讀寫溫度變換的功率來自來數(shù)據(jù)線而不需要額外電源,每一個(gè)DS1820含有一個(gè)唯一的硅串行數(shù),同一總線上可有多個(gè)DS1820。這些特點(diǎn)可滿足多種需要,如不增加信號(hào)線,在探頭按需要可串接多個(gè)DS1820,以便同時(shí)對(duì)上、中、下各層水的溫度以及氣溫等進(jìn)行監(jiān)測。在使用中發(fā)現(xiàn),DS1820的測量值與實(shí)際值有一定的誤差,每個(gè)誤差都不一樣。為了能夠互換而不修改程序或進(jìn)行校準(zhǔn),把誤差值經(jīng)特殊變換存在DS1820中原來作為存儲(chǔ)高低溫度觸發(fā)的TH、TL兩個(gè)字節(jié)中,這兩個(gè)字節(jié)為EEPROM,即使掉電也不會(huì)丟失,在單片機(jī)讀取測量溫度的同時(shí)一并讀入,去除誤差,得到實(shí)際值。這樣就可以更換探頭或DS1820而不需要重新校準(zhǔn)。
2.1.2 溶解氧傳感器
溶解氧傳感器為自制的極譜型薄膜電極。儀器對(duì)電極加上0.7V的直流電壓稱為極化電壓,水或空氣中的氧透過薄膜在電極上產(chǎn)生如下反應(yīng):
陰極:O2+2H2O+4e---- >4OH-
陽極:4Ag+4Cl- ---- >4AgCl+4e
氧在陰極上還原,電極輸出電流,在一定溫度下其大小與被測樣品氧濃度呈線性關(guān)系。以輸出電流為y軸,氧濃度為x軸作圖可得一直線,該直線通過零點(diǎn)。不同的溫度其直線的斜率不同,這就是溶氧電極的溫度系數(shù)。產(chǎn)生溫度系數(shù)的原因有兩個(gè):一是電極薄膜氧的透過速率隨溫度而變化,溫度每升高一度大約變化3%,氧電極的電流也相應(yīng)增加,即溶解氧濃度不變而溫度變化,引起電極靈敏度變化,造成讀數(shù)誤差;二是水中的溶解氧的飽和溶解度隨溫度的不同而不同,由于此種電極是對(duì)氧分壓敏感元件,因此不同的溫度下相同的氧分壓輸出相同的電流,但其溶解氧實(shí)際濃度值不是同的。為了準(zhǔn)確讀出溶解氧值,在傳統(tǒng)的儀器中把熱敏電阻做在電路中進(jìn)行溫度補(bǔ)償,但需要對(duì)電路反復(fù)調(diào)試,其補(bǔ)償范圍及精度受到限制。在本系統(tǒng)中對(duì)溫度和溶氧分別采集,用軟件進(jìn)行補(bǔ)償,不需要對(duì)電路進(jìn)行溫度補(bǔ)償調(diào)試。在軟件設(shè)計(jì)中采取三種方法對(duì)溫度系數(shù)進(jìn)行補(bǔ)償:第一,根據(jù)國標(biāo)中有關(guān)各溫度下被空氣飽和的水中溶解氧的實(shí)際值,做出溫度與飽和溶解氧的曲一,得到擬合方程存到單片機(jī)中,消除影響溫度系數(shù)的第二個(gè)原因;第二,測出探頭在各溫度下被空空氣飽和的水中的模/數(shù)轉(zhuǎn)換值,做出溫度與轉(zhuǎn)換值的曲線,得到擬合方程存到單片機(jī)中,消除影響溫度系數(shù)的第一個(gè)原因;第三,實(shí)際使用時(shí)把在空氣中進(jìn)行飽和校正時(shí)的參數(shù)實(shí)時(shí)加入到擬方程中,消除了探頭使用中的誤差。在軟件中還加入了對(duì)鹽度、氣壓的補(bǔ)償。正是利用單片機(jī)的運(yùn)算功能,使得溫度變化可以得到補(bǔ)償,這些功能在傳統(tǒng)的儀器中是很難做到的。
pH值、電導(dǎo)等選用成品探頭,根據(jù)不同探頭的特點(diǎn),設(shè)計(jì)不同的信號(hào)調(diào)理電路,變換為0~5V的標(biāo)準(zhǔn)輸入電壓,接入系統(tǒng)的A/D轉(zhuǎn)換器中。
2.2 主要芯片
2.2.1 主控芯片
主控芯片選用ATMEL公司的AT89C52,內(nèi)部有8k字節(jié)的Flash程序存儲(chǔ)器,免去了擴(kuò)展外部存儲(chǔ)器的麻煩,在系統(tǒng)開發(fā)過程中可以十分容易地進(jìn)行程序的修改,縮短了系統(tǒng)開的周期,而且還可以隨用戶的需要和發(fā)展對(duì)程序進(jìn)行修改或升級(jí),使系統(tǒng)不斷地滿足用戶的最新要求。
2.2.2 實(shí)時(shí)時(shí)鐘芯片
實(shí)時(shí)時(shí)鐘芯片選用的是美國Dallas公司的DS12C887,內(nèi)部包含晶體振蕩器、振蕩電路、充電電路和可充鋰電池等。其內(nèi)有非易失時(shí)鐘、百年歷、警報(bào)器、可編程中斷、方波發(fā)生器以及114字節(jié)非易失靜態(tài)RAM供用戶使用。
2.2.3 A/D轉(zhuǎn)換
A/D轉(zhuǎn)換選用美國TI公司的TLC2543。片內(nèi)含有一個(gè)14通道多路器,可從11個(gè)外部模擬輸入或三個(gè)內(nèi)部自測電壓中選擇一路進(jìn)行轉(zhuǎn)換輸出,片內(nèi)設(shè)有采樣保持電路,主處理器只需發(fā)出讀某一通道命令即可。
2.2.4 顯示器
顯示器選用香港精電公司的液晶顯示模塊MDLS-16165,它可同時(shí)顯示16個(gè)ASCⅡ碼或自定義的特殊字符和圖形符號(hào)。它把LCD控制器、點(diǎn)陣驅(qū)動(dòng)器、字符存儲(chǔ)器全部做在一塊線路板上,構(gòu)成了便于應(yīng)用的液晶顯示模塊,在應(yīng)用上已經(jīng)規(guī)范化。
2.2.5 數(shù)據(jù)記錄芯片
數(shù)據(jù)記錄芯片選用美國Xicor公司推出的新型結(jié)構(gòu)的節(jié)省接口的串行EEPROM器件X84641。它不需要微處理器的連接邏輯或系統(tǒng)總線接口,直接利用一般的微處理器的控制信號(hào)(OE、WE、CE)以及簡單的讀寫時(shí)序與大多數(shù)微處理器接口。本系統(tǒng)設(shè)定每批測量數(shù)據(jù)為32字節(jié),包括測量的日期、時(shí)間以及所測的各項(xiàng)參數(shù)。其中日期、時(shí)間占4字節(jié),每個(gè)參數(shù)為浮點(diǎn)數(shù),占4字節(jié),可以存放7個(gè)測量值,基本滿足需要,在8K EEPROM中可存儲(chǔ)240組數(shù)據(jù)。在剩余256字節(jié)中存儲(chǔ)設(shè)置信息、狀態(tài)和軟件運(yùn)行時(shí)的中間狀態(tài)值等,還可存儲(chǔ)24次控制設(shè)備開關(guān)的時(shí)間,包括設(shè)備名及其開、關(guān)的日期和時(shí)間等。
2.2.6 串行通信
為了對(duì)所采集數(shù)據(jù)實(shí)時(shí)傳送或連接遠(yuǎn)距離計(jì)算機(jī),利用89C52的串行通信接口的標(biāo)準(zhǔn)異步通信方式,通過接口芯片MAX232轉(zhuǎn)換為標(biāo)準(zhǔn)RS-232接口。
3 軟件設(shè)計(jì)
軟件所要實(shí)現(xiàn)的功能是將通過精密放大器的各路傳感器信號(hào)進(jìn)行A/D轉(zhuǎn)換,把轉(zhuǎn)換后的數(shù)字量進(jìn)行補(bǔ)償轉(zhuǎn)換處理,最后送液晶顯示器顯示、存儲(chǔ)或送通信口遠(yuǎn)距離傳輸。其主控程序流程圖及鍵盤分析模塊流程圖分別如圖2和圖3所示。
本監(jiān)控儀的軟件采用C語言與匯編語言混合編程。對(duì)時(shí)序要求較嚴(yán)的部分如DS1820、TLC2543、X84641等用匯編語言編寫成相應(yīng)的獨(dú)立模塊供主程序調(diào)用,主控程序、顯示控制、鍵盤程序、各路數(shù)據(jù)的補(bǔ)償運(yùn)算,在對(duì)各路數(shù)據(jù)進(jìn)行補(bǔ)償處理時(shí),其精度得到保證。
在程序的編寫過程中,考慮到可移值性和以后的功能升級(jí)以及調(diào)試的方便,采用模塊化設(shè)計(jì)。
4 系統(tǒng)測試及結(jié)果
我們在研制過程中首先對(duì)溶解氧探頭進(jìn)行測試,研制出溫度、溶解氧及pH模塊,并進(jìn)行應(yīng)用試驗(yàn)。測定溶解氧時(shí)需要水有一定的流速,而在池塘中一般為靜止水,所以在探頭上附加一只小型魚缸用水循環(huán)泵,并用軟件控制其開關(guān),同時(shí)把增氧機(jī)開關(guān)信號(hào)送入本監(jiān)控儀,能夠同時(shí)監(jiān)測記錄增氧機(jī)開停時(shí)間以便于研究增氧機(jī)對(duì)溶氧及其它各參數(shù)的影響,設(shè)定采集數(shù)據(jù)間隔為15分鐘,可連續(xù)監(jiān)測記錄60個(gè)小時(shí),其使用效果良好。
評(píng)論