水電機組是電力網絡中的重要元件,保證大型水電機組的正常運行,對其運行狀態進行監測,及時發現故障征兆,做到“事前檢修”是工程界夢寐以求的理想,也是大型電站機組檢修的發展方向。實時狀態監測可以減少機組停機時間,提高利用率。
這里所說的狀態監測實際上是對水輪機組眾多參數進行的實時在線監測。水輪機組的參數較多,為了分析方便,對部分參數還需要進行高速采樣。這樣,一個監測系統通常要由分布在不同現場位置的多個采集節點組成。各節點將大量的采集數據傳送到上位機,由上位機從多角度評估機組的運行狀態。采用全數字化通信的現場總線整合整個監測系統可以實現徹底的分散控制,抵抗各種干擾因素,簡化系統的結構,提高數據傳輸效率。于是,本文設計實現了一種基于lonworks現場總線的水輪機組狀態監測系統。
1 lonworks現場總線的技術特點
lonworks總線是美國echelon公司推出的一種現場總線技術。具有開放性、高速性和互操作性;采用面向對象的設計方法,使網絡通信的設計簡化為參數設置,降低了開發難度;支持多種傳輸介質,網絡容量可達32000個節點,網絡通信速率可達1.25mbps/130m,直接通信距離可達2700m/78kbps;其網絡采取了配置1500v直流隔離變壓器進行隔離等適合于工業現場環境的措施,具有很強的抗干擾、抗振動能力,適合于水電廠等較惡劣的工業環境。
在水輪機組狀態監測系統中,有幾十個現場數據采集節點,它們通過現場總線將采樣結果傳送到距離較遠的上位機,并且數據通信頻繁。考慮到lonworks總線技術具有強大的強信能力,以lon總線來組成系統的實時數據通信網絡,極大地簡化了系統的通信軟、硬件設計,使數據的傳輸與通訊變得十分便捷。
2 系統構成
基于lonworks現場總線的水輪機組狀態監測系統由上位監控機和多個現場監測單元組成。
每個現場監測單元監測三個現場數據采集節點,現場數據采集節點的現場監測單元主要負責對現場數據進行采集、存儲和傳送。現場監測包括壓力監測;溫度監測;水位及油位等液位監測;水流量監測;機組振動擺度監測、機組電氣監測、機組轉速及導葉開度監測、效率監測;水淪機氣蝕監測;發電機氣隙監測;發電機絕緣監測;尾水管真空監測等。
各個現場采集節點通過lonworks總線組成一個現場監測網絡。用開發的lonworks-ethernet互連適配器把lon總線上采集節點發送的數據轉換為udp格式,利用速度較高的工業以太網將其發送到上位同,再把上位下達的命令轉換為lontalk協議的形式發給各個現場節點,從而實現上位機和底層各個現場節點之間的通信。與以短訓班采用昂貴的lon總線適配器的方法相比,這種方法既提高了數據的傳輸速度又節省了方法費用。上位機將現場節點傳送上來的各種監測數據存進ms-sqlserver2000數據庫,提供人機交互的界面,并完成實時數據的圖形化、格式化顯示,同時用傅立葉變、換(ft)和小波變換(wt)對數據進行分析。
2.1 現場節點設計
現場節點既要接收上位機發出的采集命令,命令標準傳感器采集現場信號;又要把采集到的現場信號通過lon總線送到上位機,由上位機進行處理。
2.1.1 節點組成
節點由神經元芯片neuron 3150、lonworks雙絞線、網絡收發器、程序程序器、數據存儲器、十二位a/d轉換芯片ad1674等組成。其中,3150神經元芯片選用toshiba公司生產的tmpn3150;flash rom選用at29c512;數據存儲器(ram)選用issi公司的is61c256;neuron 3150芯片與lon總線的網絡介質接口選用echelon公司的自由拓撲型收發器ftt 10a,它是一種變壓器耦合收發器,可提供一個與雙絞線的無及性接口,且支持網絡的自由拓撲結構;網絡通訊介質采用最常用的雙絞線;a/d轉換芯片采用性價比較高的ad1674芯片,其轉換精度為1/2lsb,轉換速率為100ksps,具備三態輸出緩沖區。
2.1.2 存儲空間分配
neuron 3150芯片片內存儲器的地址范圍為e800h~ffffh,包含2kb的ram(e800~efff)、0.5kb的eeprom(f000~f1ff)、2.5kb的保留空間(f200~fbff)和1kb的用于存儲器映像i/o的空間(fc00~ffff)。外部擴展存儲器的地址由neuron3150的地址引腳和控制引腳來確定:給flash rom分配的地址空間為0000~7fff,其中,0000~3fff的16kb空間用于系統固件(firmware),系統固件實現了lontalk協議,4000~7fff的16kb空間用于用戶程序代碼;給ram分配的地址空間為8000~e7ff的24kb地址空間;將e000~e7ff的2kb地址空間分配為外部設備的內存映像i/o的空間。
2.1.3 a/d轉換接口方案
本文在設計時曾考慮過使用neuron芯片為a/d轉換電路提供串行i/o及并行i/o接口方式。然而串行i/o方式速度太慢;并行i/o方式實現起來需要占用neuron芯片全部11個i/o接口,同時還要編程實現neuron芯片的握手/令牌傳遞算法,開發費用和難度比較高。因此本文將節點保留的e000~e7ff的2kb地址空間分配給a/d轉換芯片,作為ad1674的端口地址,采用內存映像的方法直接讀取ad1674的數據。對于本設計而言,ad1674轉換數據的高8位地址為e002h,低4位數據地址為e003h。由于實現軟件沒有使用neuron c的內嵌函數,因此執行速度得到大幅度的提升,實驗證明,對同樣采用ad1674轉換芯片的節點而言,采用這種方法設計的節點,采集速度超過了其它兩種方法設計的采集節點的采集速度,而且節省了neuron芯片的全部11個i/o引腳。
3 系統通信程序的設計
3.1 現場節點通信程序
現場節點向上位機發送的數據首先發送到lonworks-ethernet互連適配器,該適配器實際上是一個特殊的lonworks節點,它把接收到的lon總線上的數據用udp封裝,然后通過以太網發送到上位機。
lonworks網絡的節點之間的通信方式主要有兩種方式:網絡變量和顯式消息。使用網絡變量不必考慮消息的打包、發送以及接收問題,可以大大簡化編程,縮短應用開發周期,但每個周期變量的數據長度一經確定就不能改變,且最多只有31字節。而顯式消息的數據長度則是靈活可變的,最長可以是228字節,但實現方法更為復雜。鑒于水輪機組狀態監測系統對數據傳輸的實時性要求較高,同時需要提高足球場采集數據的上傳速度,因此希望每一次傳送的報文包含盡量多的數據,因而在設計中采用顯示消息的方式實現與上位機的通信,每個顯式消息報文攜帶134個字節的數據,其中的128個字節為傳送的數據,另外6個字節為附加信息。
顯示報文的初始化和發送部分的實現程序如下:
初始化節點地址
#include<addrdefs.h> 所需頭文件
#include<access.h>
#include<msg_addr.h>
domain_struct mydomain; //定義域結構
mydomain=*(access_domain(0));//讀節點域表
mydomain.subnet=0; //設置節點子網號
mydomain.node=5; //設置節點號
update_damain(&mydomain,0); //寫節點域表
發送數據報文
msg_tag test_out; //聲明報文標簽
msg_out.tag=test_out; //傳遞報文標簽
msg_out.dest_addr.snode.node=0; //定義目的地址節點號
msg_out.dest_addr.snode.subnet=0; //定義目的地址子網號
msg_out.code=0x0c; //定義報文碼
msg_out.service=ackd; //定義報文服務類型
msg_out.dest_addr.snode.type=1; //定義目的節點類型
memcpy(msg_out.data,a0,nlength);//填充報文內容
msg_send();//發送報文
在初始化程序中,用數據結構domain_struct定義節點的子網號、節點號,即設置節點在lon總線上的地址。在發送程序中利用msg_out結構構造報文,其中,目的地址指向適配器。顯示報文的接收程序與發送部分類似,不再多述。
3.2 上位機通信程序
上位機與現場節點通訊的數據通過適配器轉發,適配器的ip必須事先指定。上位機利用msg_out變量(如前所述)創建顯示報文,將目標節點的地址、需要改變的參數或要下達的命令填充到該變量中,然后用udp封裝該變量,通過以太網發往適配器;適配器解析上位機發來的數據包,得到顯示報文,將該顯示報文直接向相應的節點發送。同樣,適配器也將現場節點發來的顯示報文通過udp封裝后發往上位機,上位機解包后根據節點等信息將數據存入相應的數據庫,等待后后續的信號處理模塊和故障診斷模塊調用。
4 故障診斷
系統采用連續小波變換對采集的信號進行處理,通過變換結果進行故障診斷。下面以采集到的水輪機的主軸上導y軸方向徑向擺度信號的數據為例說明通過小波變換進行故障診斷的結果。
選用消息矩為4的雙正交樣條小波,在[1:1:48]的尺度上對時域信號進行連續小波變換。周期性出現的四條模極大值曲線,且總是第三條斜率較小,而正常情況下三維圖中將出現平穩的錐全,這說明這些點的奇異性較強。事實上這正是由于水輪機主軸滑動摩擦造成的。通過設置閾值算法得到小波的模極大值曲線,兩條模極大值曲線的相交點即可以精確地指向故障點。
本文結合水輪發電機組狀態監測的實際需要,研究開發了一種基于lonworks現場總線技術的水輪發電機組狀態監測系統,完成了現場數據采集節點的軟硬件開發,設計了系統數據通訊的報文協議和通信軟件。系統上位機軟件利用ms-sqlserver2000數據庫進行數據存儲,通過小波變換初步實現了故障診斷。