用AT89單片機構建的水文纜道測驗系統
摘 要:介紹了一種基于A(yíng)TMEL89單片機的水文纜道測驗系統,本系統保留原有的人工纜道設備的結構和資源條件,實(shí)現流量測驗、水位監測、流量計算自動(dòng)化,還能與PC機串行通信打印結果。
關(guān)鍵詞:單片機;水文纜道;控制;自動(dòng)測驗
早期的中小河道水文測驗一般是采用人工操作的水文纜道測驗系統,操作時(shí)間長(cháng)、勞動(dòng)強度大、主觀(guān)誤差大。為此我們對原有的人工測驗系統進(jìn)行了改造,采用單片機控制替代人工進(jìn)行自動(dòng)水文測驗。本文介紹了基于A(yíng)TMEL89單片機的水文纜道自動(dòng)測驗系統,系統的設計是構建在原有設施基礎上,而且盡量不改變系統結構并能兼容手動(dòng)操作方法,自動(dòng)地完成流量的測驗計算和打印,適用于中小河道的懸索和懸桿兩種類(lèi)型的水文纜道。
根據水利部頒發(fā)的《水文纜道測驗規范》及人工控制水文纜道的結構和測驗要求,單片機控制系統的主要功能有:自動(dòng)進(jìn)行河道斷面的面積、平均流速、流量測驗和計算打??;河道斷面任一垂線(xiàn)上水深、水面偏角、河底偏角、垂線(xiàn)平均流速的自動(dòng)測驗;干繩、濕繩和位移修正;測驗期間水位自動(dòng)監測等。系統的硬件以單片機為核心以及輸入/輸出接口,存儲器系統和打印顯示電路等部分組成;軟件部分由系統控制、數據采集存儲、誤差修正、流量計算4個(gè)主要軟件模塊組成。
下面介紹本系統的原理和設計要點(diǎn)。
1 系統構成
系統框圖如圖1所示。
采用AT89S8252單片機。由于河道測驗的數據量大且運算比較復雜,而單片機內部的存儲器容量有限。故增加外部存儲器RAM6116和ROM6264。外部信號的輸入采集接口是以多路A/D片ADC0809為核心,將纜道信號和水位信號送到單片機P1口和P3口承擔其他輸入、輸出信號的接口。下面根據水文測驗的特點(diǎn),介紹主要的接口電路和工作過(guò)程。
1.1 ADC0809接口電路
以ADC0809為中心的接口電路如圖2所示。
他將電傳水位計的水位變化信號和纜道送來(lái)的流速、偏角、水面水底信號經(jīng)變換后傳送到單片機。該接口具有電路簡(jiǎn)單、穩定可靠、抗干擾強等特點(diǎn)。
1.1.1 水位信號的獲取
電傳水位計是用來(lái)監測水位的變化,為了獲取水位信號對電傳水位計的傳感器部分進(jìn)行了改造。在傳感器內部增加了干簧繼電器J3,J4,J5,取消內部電池而直接由系統供電。電阻R5~R8組成分壓器,分壓器輸出到ADCIN2口電路如圖2所示。當水位變化時(shí)浮子隨之升降,浮子升降3 cm,傳感器內部的磁鋼旋轉一周,即每變化1 cm有一個(gè)干簧繼電器會(huì )通斷一次。J3,J4,J5分別吸合時(shí)IN2口的電壓分別為1.6 V,2.5 V,3.2 V左右,無(wú)繼電器吸合時(shí)IN2口電壓為+5 V。根據ADCIN2口的電壓數值可以判斷是哪個(gè)干簧繼電器通斷,由IN2端電壓變化規律可以知道水位的上升或下降如圖3所示,圖3中(a)為上升,(b)為下降。
1.1.2 水面水底信號的獲取
進(jìn)行垂線(xiàn)水深測量時(shí),鉛魚(yú)運行到河道斷面的指定垂線(xiàn)位置后開(kāi)始下降,一旦鉛魚(yú)接觸水面則啟動(dòng)水深計數器開(kāi)始水深計數,當鉛魚(yú)繼續下降接觸水底時(shí),水底開(kāi)關(guān)閉合停止計數,該計數值即為本條垂線(xiàn)的水深初值。工作過(guò)程如下:在鉛魚(yú)下降過(guò)程中單片機不斷地讀取ADCIN1口電壓,鉛魚(yú)入水前繼電器J1,J2處于常閉位置,ADC0809輸入端IN1的電壓是由R3,R4分壓決定為2.5 V,一旦鉛魚(yú)接觸水面+5 V電壓通過(guò)水下極板→河水→鉛魚(yú)→副索1→ADC0809使IN1端電壓上升到3 V以上。單片機根據IN1口的電壓判斷鉛魚(yú)已接觸水面啟動(dòng)水深計數,同時(shí)令P3.4輸出高電平繼電器J1接通常開(kāi)觸點(diǎn),由電路圖可知河水電阻與R4并聯(lián)使IN1口的電壓為1.5 V左右。當鉛魚(yú)繼續下降直到接觸河底,河底開(kāi)關(guān)K2被壓通,鉛魚(yú)內部4.5 V電池E1接入電路中ADCIN1口電壓下降到0 V以下,單片機判斷已達到河底停止水深計數并通過(guò)P1口輸出信號使水深電動(dòng)機停止運行。
1.1.3 偏角信號的獲取
懸索纜道配有專(zhuān)門(mén)的偏角儀,用來(lái)修正水流導致鉛魚(yú)不能垂直下降到水底而產(chǎn)生的水深測量誤差。偏角儀可以測量出鉛魚(yú)受水流影響偏離正常位置的角度,再根據偏角的大小通過(guò)查表或公式計算來(lái)修正水深誤差。人工測量是用眼睛根據偏角儀的刻度估測偏角的大小,誤差較大。我們對偏角儀稍做改動(dòng)增加一個(gè)電位器W1和相應的電路如圖1所示,通過(guò)機械聯(lián)動(dòng)裝置將偏角的位移轉換成電位器的轉動(dòng)從而改變W1的阻值,利用副索2將因偏角變化導致的電壓變化送到ADCIN0口??紤]到野外工作的特殊性,采用性能穩定密封性好的線(xiàn)繞電位器,由于IN0口的電壓變化與偏角之間不是線(xiàn)性關(guān)系用軟件查表方式確定偏角值。為了減少機械位移、纜索電阻等因素的影響,實(shí)際操作時(shí)當鉛魚(yú)未入水時(shí)測一次偏角作基準,達到水面和水底時(shí)分別測一次水面偏角和水底偏角,經(jīng)修正后即得到較精確的偏角值。
1.1.4 流速信號的獲取
流速的測量是由流速儀完成,測量流速時(shí)繼電器J1,J2均接通常開(kāi)觸點(diǎn)-5 V電壓加于水下極板,K1為流速儀內部開(kāi)關(guān),流速儀每轉動(dòng)一圈K1通斷一次。K1斷開(kāi)時(shí)ADCIN0口的電壓為1.5 V左右,K1接通后ADCIN0口的電壓變化大于0.5 V,只要監測IN0口的電壓差就可以判斷流速儀的轉動(dòng)情況。實(shí)際測量中IN0口的電壓差大小與測點(diǎn)垂線(xiàn)的距離和水質(zhì)有關(guān),距離越大電壓差越小,在150 m的河道中流速信號的電壓差大于0.5 V。用ADC0809監測流速信號,當VREF=5V時(shí)分辨率為0.02 V足以區別流速儀的轉動(dòng),考慮到某些不確定的干擾因素將電壓差的分辨率定在0.1 V,可以滿(mǎn)足一般中、小河道的測驗要求。對于較寬的河道可以通過(guò)改進(jìn)電路或提高工作電壓的方法來(lái)增加電壓差。與PC機通信接口等部分組成的接口信息如:
(1)行程信號如水深、水平距離;
?。?)水位信號;
?。?)輸出控制信號用來(lái)控制電動(dòng)機進(jìn)行正轉、反轉、停止,使鉛魚(yú)按要求運動(dòng)做定點(diǎn)測量。
接口電路如圖1所示,電路充分利用ADC0809多路模數變換器將復雜的接口信息轉換成數字信號。同時(shí)還利用光電門(mén)將工作索行程(水深和水平距離的移動(dòng))轉換成電脈沖信號,送到ATMEL89單片機進(jìn)行處理、顯示、控制完成自動(dòng)測驗。
1.2 行程信號的獲取接口電路
鉛魚(yú)的行程信號包括鉛魚(yú)水平往返移動(dòng)的行程信號,和鉛魚(yú)測量水深時(shí)垂直移動(dòng)的水深信號。位移信號的獲取如圖4所示。他是由加裝在機械傳動(dòng)裝置上的切光板和光電門(mén)獲得。設計為纜索每移動(dòng)1 cm切光板遮光一次,光電門(mén)產(chǎn)生一個(gè)脈沖。水深和往返信號分別從光敏二極管D3,D4上取出,經(jīng)過(guò)異或門(mén)后加到單片機P3.2外部中斷0輸入端,每移動(dòng)1 cm產(chǎn)生一個(gè)中斷,中斷服務(wù)程序可以區別鉛魚(yú)此時(shí)作水平往返移動(dòng)還是垂直移動(dòng),兩者只取其一。
1.3 其他電路部分
P1口的輸入功能是從控制面板讀入操作命令和初始化數值,輸出功能是輸出控制信號。一是控制行程電動(dòng)機正、反轉和停機,使鉛魚(yú)按測驗要求進(jìn)行垂直和水平運動(dòng);二是在水深測量過(guò)程中控制繼電器J1、J2的閉合與斷開(kāi)獲取水面水底信號。顯示打印電路部分用6個(gè)LED管顯示和微型打印機進(jìn)行簡(jiǎn)單打印。用 P3.1串口與PC機相連可以進(jìn)行數據的轉存和進(jìn)一步處理,顯示和打印。
2 系統軟件流程圖
本系統的軟件約占7 kB,系統程序流程圖如圖5所示。
程序分為系統管理、運算處理、測驗控制3大模塊。系統管理模塊包括:初始化、系統監控、操作切換、緊急處理等程序。運算處理模塊包括:數據運算、誤差修正、顯示打印等程序。測驗控制模塊是由包括:測垂線(xiàn)到起始點(diǎn)距離、測垂線(xiàn)水深、測垂線(xiàn)流速、測垂線(xiàn)水位、接口數據采集等諸多子程序組成。
為了盡量減少測量誤差保證測量精度嚴格符合水文規范要求,在測垂線(xiàn)水深子程序中采用了二次入水操作,程序流程如圖6所示。
實(shí)際水深測量中由于鉛魚(yú)的運動(dòng)會(huì )引起纜索的起伏跳動(dòng)而造成測量誤差,我們在程序中設定的操作是:當鉛魚(yú)入水后暫停在水面10 s不進(jìn)行水深計數,待其穩定后升出水面20 cm,再第二次進(jìn)入水面。鉛魚(yú)第二次到達水面后啟動(dòng)水深計數暫停下降,測量水面偏角θA,鉛魚(yú)繼續下降直到河底停止水深計數,測量水底偏角θB。最后根據干繩長(cháng)度(纜索到水面的高度)、濕繩長(cháng)度(水深初值)、θA,θB計算出實(shí)際的該條垂線(xiàn)水深值。
3 結 語(yǔ)
ATMEL89單片機水文纜道測驗系統具有較強的兼容性,適合中、小河道的自動(dòng)或半自動(dòng)測驗,操作方便性能穩定,測驗精度達到部頒《規范》要求,有效地減少了操作者的勞動(dòng)強度和工作時(shí)間。
參考文獻
[1] 余永權.ATMEL89系列單片機應用技術(shù)[M].北京:航空航天大學(xué)出版社,2002.
[2] 胡漢才.單片機原理與接口技術(shù)[M].北京:清華大學(xué)出版社,1996.
[3] 李廣第.單片機基礎[M].北京:航空航天大 學(xué)出版社,1998.
[4] 何立民.單片機應用技術(shù)選編[M].北京:航空航天大學(xué)出版社,1998.
水位傳感器相關(guān)文章:水位傳感器原理
評論