鄭威,惠力
?
聲學(xué)坐底式波浪儀的上位機(jī)設(shè)計
鄭威,惠力
(山東省科學(xué)院海洋儀器儀表研究所,山東省海洋環(huán)境監(jiān)測技術(shù)重點實驗室,山東青島266001)
聲學(xué)坐底式波浪儀包括水下測量系統(tǒng)和陸上處理主機(jī),研究了陸上主機(jī)的上位機(jī)軟件設(shè)計方法,并重點研究波浪估計算法在上位機(jī)軟件的實現(xiàn)方法。波浪估計算法計算復(fù)雜,在上位機(jī)軟件開發(fā)環(huán)境delphi 7下實現(xiàn)困難,文章采用delphi7和matlab 7.0混合編程方法實現(xiàn)上位機(jī)中的波浪估計功能,該混合編程方法實現(xiàn)更為簡單,開發(fā)周期短。通過實測數(shù)據(jù)的驗證,上位機(jī)軟件與RD公司商用軟件WAVESMON的波浪估計結(jié)果是一致的,證明了上位機(jī)軟件的波浪估計結(jié)果是準(zhǔn)確的,所設(shè)計上位機(jī)軟件可有效滿足波浪儀陸上處理系統(tǒng)的波浪處理需求。
聲學(xué)坐底式波浪儀;方向譜估計;上位機(jī)軟件;Delphi;Matlab;WAVESMON
聲學(xué)多普勒流速剖面儀(Acoustic Doppler Current Profiler,ADCP)是利用聲學(xué)多普勒原理測量海水流速剖面的一種海洋儀器,可測量不同深度上海流的流速和流向,不干擾流場且不存在機(jī)械慣性,測量精度高,能夠真實測量海洋流場情況,是國際上認(rèn)可的先進(jìn)海洋儀器。海浪學(xué)者近年來利用ADCP進(jìn)行波浪估計的技術(shù)研究,ADCP波束方向上的每個測點相當(dāng)于一個獨立的傳感器,空間上多個測點組成的陣列具有類似于傳感器陣列一樣的波向估計能力。Terray利用JANUS配置ADCP進(jìn)行波浪測量,驗證了ADCP的波向測量能力[1]。美國RDI公司和Sontek公司、挪威Nortek公司都推出了新型的ADCP,在傳統(tǒng)測流功能上增加了波浪估計的功能[2-3]。多名海洋學(xué)者利用新型ADCP與波浪浮標(biāo)進(jìn)行估計對比,對比結(jié)果表明新型ADCP和浮標(biāo)的波浪估計精度是一致的,ADCP波浪估計是精確的[4-6]。到目前為止國內(nèi)使用的ADCP大多是國外的產(chǎn)品,國內(nèi)的ADCP技術(shù)水平距離國外先進(jìn)技術(shù)還有差距;中船重工集團(tuán)公司第715研究所是國內(nèi)提供商用ADCP的單位之一,其生產(chǎn)的相控陣ADCP產(chǎn)品已經(jīng)在國內(nèi)多家單位使用,但該產(chǎn)品只能測流并不具備波浪測量能力;國家海洋技術(shù)中心等多家院所進(jìn)行過ADCP波浪估計技術(shù)的研究,但都沒有推出相關(guān)產(chǎn)品[7-8];山東省科學(xué)院海洋儀器儀表研究所近年來一直從事ADCP技術(shù)研發(fā),目前在換能器陣設(shè)計、水下測量系統(tǒng)的嵌入式研發(fā)、上位機(jī)軟件研發(fā)等方面已經(jīng)取得了一定進(jìn)展,本文重點闡述現(xiàn)有ADCP系統(tǒng)的上位機(jī)設(shè)計方案。
新型坐底式ADCP可以測量波浪,可認(rèn)作是一種新型的聲學(xué)坐底式波浪測量儀器,該聲學(xué)坐底式波浪儀由水下測量模塊和陸上分析處理模塊兩大部分組成,如圖1所示。水下測量模塊主要由各種傳感器(聲學(xué)多普勒換能器、壓力傳感器、電子羅盤、傾斜傳感器、溫度傳感器等)、數(shù)據(jù)采集處理器、固態(tài)存儲器、電池、水密機(jī)箱、水下鎧裝電纜和水密接頭等部分組成,圖2為四個聲學(xué)多普勒換能器按一定方位角安裝在一個殼體內(nèi)組成的換能器陣,其中三個波束的傾角為30°,各波束在水平面投影的夾角為120°,在有效測量深度內(nèi)每個波束都能測得水流速度,三波束可測得三個波束對應(yīng)于各層的水流分速度,運用矢量合成原理得到各層的三維流場。另一個換能器垂直向上,用于測量波高和波浪周期。
(a) 水下測量系統(tǒng)
(b) 陸上處理系統(tǒng)
圖1 方案設(shè)計
Fig.1 Project design
水下測量系統(tǒng)進(jìn)行數(shù)據(jù)采集及測量數(shù)據(jù)的存儲,并計算各分層水流速度,最后將數(shù)據(jù)打包后傳輸?shù)疥懮咸幚硐到y(tǒng)。陸上處理系統(tǒng)主要由接收主機(jī)、上位機(jī)軟件組成,其任務(wù)是將收到信號進(jìn)行數(shù)據(jù)處理及分析,實時顯示每分鐘的海流值,通過上位機(jī)軟件估計每小時波浪的各種特征值,包括有義波高(1/3平均波高)、峰值周期、峰值方向、主波向。同時上位機(jī)軟件具備了歷史數(shù)據(jù)查詢、歷史曲線顯示功能。水下測量系統(tǒng)和陸上接收機(jī)通過小型鎧裝電纜連接,可保證數(shù)據(jù)的正確傳輸及供電系統(tǒng)的正常運轉(zhuǎn)。
本文主要研究上位機(jī)軟件設(shè)計方法。選擇delphi 7作為上位機(jī)軟件開發(fā)平臺。上位機(jī)軟件主要具備如下三種功能:(1) 水下測量系統(tǒng)定時每分鐘通過串口向陸上上位機(jī)發(fā)送數(shù)據(jù)包,如圖3所示。數(shù)據(jù)包包含了水下測量采集得到的壓力數(shù)據(jù)、姿態(tài)數(shù)據(jù)、羅經(jīng)數(shù)據(jù)、溫度數(shù)據(jù)及水下測量系統(tǒng)計算得到的海流數(shù)據(jù)。如圖4所示,陸上處理系統(tǒng)進(jìn)行實時串口接收,并對比數(shù)據(jù)包進(jìn)行解析,得到每分鐘的海流及各種傳感器數(shù)據(jù)。(2) 上位機(jī)軟件每小時計算波浪一次,在每小時的第50分鐘開始計算波浪的特征值,利用每小時的0分鐘到49分鐘的海流數(shù)據(jù)及其他各種傳感器數(shù)據(jù)進(jìn)行計算,即到每小時的第50分鐘,將海流及傳感器數(shù)據(jù)從數(shù)據(jù)庫讀取到內(nèi)存中,利用內(nèi)存中數(shù)據(jù)完成波浪特征值的計算(有義波高、峰值周期、峰值方向、主浪向)。計算完成后實時顯示波浪的特征值,并將波浪計算值進(jìn)行存儲。(3) 歷史數(shù)據(jù)查詢及歷史曲線顯示,主要完成海流及波浪數(shù)據(jù)的數(shù)據(jù)查詢及曲線顯示,即根據(jù)用戶需要,可在指定時間及指定數(shù)據(jù)類型的條件下進(jìn)行數(shù)據(jù)顯示,此時需要對于數(shù)據(jù)庫進(jìn)行讀出操作。
2.1 實時數(shù)據(jù)接收及歷史數(shù)據(jù)顯示實現(xiàn)
在delphi 7實現(xiàn)串口接收過程中,(1) 需要讀取上位機(jī)的注冊表,從注冊表中可以知道上位機(jī)的串口信息;(2) 配置串口信息,找到與水下測量系統(tǒng)相連的串口號,根據(jù)事先指定的通訊協(xié)議設(shè)定串口的波特率;(3) 打開串口,打開串口后定時讀取串口接收的二進(jìn)制數(shù)據(jù),首先進(jìn)行數(shù)據(jù)校驗,一般都選取異或校驗的方式,當(dāng)校驗位滿足要求后,認(rèn)定串口接收數(shù)據(jù)為正確數(shù)據(jù),后續(xù)進(jìn)行數(shù)據(jù)包的解析,而后進(jìn)行數(shù)據(jù)的實時顯示及儲存,如圖5所示。
歷史數(shù)據(jù)查詢及歷史曲線顯示的功能實現(xiàn)方法是類似的,(1) 需要指定查詢的數(shù)據(jù)時間及數(shù)據(jù)類型(海流或波浪),根據(jù)上述條件找到所對應(yīng)的數(shù)據(jù)庫儲存文件;(2) 打開數(shù)據(jù)庫存儲文件,從中讀出所需要的數(shù)據(jù)放入內(nèi)存中;(3) 將內(nèi)存中數(shù)據(jù)顯示在指定delphi stringgrid數(shù)據(jù)表格中即完成歷史數(shù)據(jù)查詢功能,而將內(nèi)存中數(shù)據(jù)在delphi dbchart圖表中進(jìn)行繪制即完成了歷史曲線顯示功能,如圖6所示。
圖6 歷史數(shù)據(jù)查詢及歷史曲線顯示
2.2 波浪估計功能實現(xiàn)
假定波浪振幅很小且由大量振幅不同、相位不同的波浪迭加而成,可推導(dǎo)出任意兩個波浪特性間的互譜等于相應(yīng)波浪特性與波面的傳遞函數(shù)的乘積的傅里葉變換[8],即
其中:代表海浪頻率;代表波數(shù);代表第個測點上和第個測點波浪特性之間的互譜;是測點對應(yīng)的傳遞函數(shù);代表海浪方向譜;、分別代表和測點之間的距離在和軸向上的投影距離。常用的方向譜估計算法有,最大似然算法、貝葉斯算法、最大熵算法、傅里葉算法等,其中最常用的是最大似然算法(Maximum Likelihood Method,MLM),MLM算法的方向譜估計值為
(2)
式(2)中,上標(biāo)H代表共軛轉(zhuǎn)置。
本文的上位機(jī)是在delphi 7平臺上進(jìn)行研發(fā)的,delphi 7軟件具備良好的人機(jī)交互界面,但不具備進(jìn)行大量科學(xué)計算的能力,直接在delphi 7軟件平臺上完成波浪估計功能是非常困難的。本文利用delphi 7和maltab 7.0混合編程的方法來實現(xiàn)波浪估計。Matlab 7.0是一種高效率的科學(xué)計算語言,它集成了矩陣運算、數(shù)值計算、數(shù)字信號處理、系統(tǒng)識別、自動控制、神經(jīng)網(wǎng)絡(luò)等大量功能強(qiáng)大的工具箱和函數(shù)庫,是用來實現(xiàn)波浪估計算法的最佳選擇。具體方法:(1) 在matlab 7.0下編寫波浪估計的函數(shù);(2) 通過matlab 7.0下的comtool工具將上述函數(shù)轉(zhuǎn)化成dll組件;(3) delphi 7可對于上述dll組件進(jìn)行注冊;(4) 在delphi 7即可以調(diào)用該dll組件,通過調(diào)用上述dll組件可在delphi 7軟件中實現(xiàn)波浪估計[9-10]。
本文選取一段數(shù)據(jù)驗證上位機(jī)軟件估計效果,ADCP數(shù)據(jù)選自美國NCCOOS(North Carolina Coastal Ocean Observing System)項目的lsrb試驗點數(shù)據(jù),從2005年9月14日15時至2005年9月17日23時,每個小時計算一組波浪特征值,共計算81組波浪特征值數(shù)據(jù)。本文選用的對比參數(shù)如下:
有義波高:1/3平均波高;
峰值周期:一維高度譜中最大值點對應(yīng)的波浪周期;
主浪向:在二維方向譜中所有最大值對應(yīng)的方向;
峰值浪向:在一維高度譜最大值點對應(yīng)的波浪方向。
選取了2005年9月17日23時50分的一組數(shù)據(jù),將該組數(shù)據(jù)制作成滿足通訊協(xié)議的數(shù)據(jù)包,并通過串口向上位機(jī)進(jìn)行發(fā)送。圖7是上位機(jī)軟件實時接收界面,界面主要包含了海流部分和波浪部分,海流部分只顯示了深度為6.58 m的流速和流向。波浪部分包含了有義波高、峰值周期、峰值方向和主浪向,上位機(jī)軟件分別采用了迭代最大似然算法(Iterative Maximum Likelihood MethodI,MLM)和水面、兩軸速度方法(Surface,Velocity U and V,SUV)進(jìn)行波浪估計,其中IMLM利用接近水面位置處的四個測點組成陣列,通過IMLM估計波浪;SUV利用水深和水平速度、,通過傅里葉級數(shù)展開算法估計波浪。兩種算法的有義波高、峰值周期、主浪向、峰值方向的估計結(jié)果是一致的。
圖8將本文中上位機(jī)軟件處理結(jié)果和RDI公司商用波浪處理軟件WAVESMON處理結(jié)果進(jìn)行對比,對比結(jié)果表明本文上位機(jī)軟件處理得到的有義波高、峰值周期、峰值方向和主波向曲線與商用WAVESMON軟件的結(jié)果是吻合的,證明了本文上位機(jī)軟件計算結(jié)果是正確的。
圖8 上位機(jī)軟件和WAVESMON計算結(jié)果對比
Fig.8 Calculation comparison between upper-computer software and WAVESMON
根據(jù)近海新型聲學(xué)坐底式波浪儀的研發(fā)要求,本文設(shè)計了新型聲學(xué)坐底式波浪儀波浪估計的技術(shù)方案,其中水下主機(jī)主要完成各種傳感器的數(shù)據(jù)采集和存儲,并根據(jù)換能器回波信號進(jìn)行海流估計,最后將各種傳感器數(shù)據(jù)及海流數(shù)據(jù)包發(fā)送到陸上主機(jī)中;而陸上主機(jī)的上位機(jī)軟件進(jìn)行數(shù)據(jù)接收及解析,具備了實時顯示、歷史數(shù)據(jù)顯示和歷史曲線顯示功能,本文給出了上位機(jī)軟件中的波浪估計實現(xiàn)方法,是基于delphi 7和matlab 7.0混合編程實現(xiàn)的,將本文上位機(jī)與RD公司商用軟件WAVESMON進(jìn)行對比分析,驗證了軟件的準(zhǔn)確性。本文設(shè)計的上位機(jī)軟件可有效滿足新型聲學(xué)坐底式波浪儀波浪估計技術(shù)的需求。
[1] Eugene A. Terray, Blair H.Brumley, Brandson Strong. Measuring waves and currents with an upward-looking ADCP[C]//Proceedings of the IEEE Sixth Working Conference on Current Measurement, 1999, (1): 66-71.
[2] Blair H Brumley, Eugene A Terray, Brandon S. Strong. System and method for measuring wave directional spectrum and wave height: United States of America, 6282151[P]. 2001-08-28.
[3] Atle Lohrmann, Torstein Kanstad Pedersen. System and method for determining directional and non-directional fluid wave and current measurements, US, 7613072 B2[P]. 2009-11-03.
[4] Gus Jeans, Cathryn Primrose, Brandson Strong.etc. A comparison between directional wave measurements from the RDI workhorse with waves and the data well directional waverider[C]//Proceeding of the IEEE/OES seventh working conference on current mearment, 2003, (3): 148-151.
[5] William R Dally, Daniel A Osiecki. Comparison of deep-water ADCP and NDBC buoy measurements to hindcast parameters[C]// Proceedings of International Workshop on Wave Hindcasting and Forecasting, 2004, (4): 12-16.
[6] Paul A Work. Nearshore directional wave measurements by surface-following buoy and acoustic Doppler current profiler[J]. Ocean Engineering, 2008, 35(8-9): 727-737..
[7] ADCP課題組. 坐底式波流測量儀[J]. 海洋技術(shù), 2001, 20(1): 88-92.
ADCP Research Group. Upward-looking wave and current meter[J]. Ocean Technology, 2001, 20(1): 88-92.
[8] 張道平, 梁婕. 坐底式聲學(xué)流速測量儀監(jiān)測波向[C]//2001全國水聲學(xué)術(shù)會議, 2001, (2): 205-207.
ZHANG Daoping, LIANG Jie. Wave direction monitoring using upward-looking acoustic current measuring equipment[C]//2001 National Conference on Underwater Acoustics, 2001, (2): 205-207.
[9] 姜銀方, 陳建希, 李璐娜. 基于COM的Delphi和Matlab接口編程研究[J]. 計算機(jī)應(yīng)用與軟件, 2008, 25(2): 31-34.
JIANG Yinfang, CHEN Jianxi, LI Luna. Study on the interface prgramming of delphi and matlab based on com[J]. Computer Applications and Software, 2008 , 25(2): 31-34.
[10] 吳小莉, 丁維明, 程力. Delphi動態(tài)調(diào)用Matlab COM組件實現(xiàn)二者混合編程[J]. 工業(yè)控制計算機(jī), 2011, 24(3): 1-3.
WU Xiaoli, DING Weiming, CHENG Li. Hybrid Programming by using com of matlab in delphi software[J]. Industrial Control Computer, 2011, 24(3): 1-3.
Upper computer software realization of upward-looking acoustic wave measurement equipment
ZHENG Wei, HUI Li
(The Institute of Oceanographic Instrumentation, Shandong Academy of Sciences,Shandong Provincial Key Laboratory of Ocean Environmental Monitoring Technology, Qingdao 266001, Shandong, China)
Acoustic Doppler upward-looking wave measurement equipment (ADCP) includes underwater measurement system and onshore processing system, the paper works on design technique of the onshore upper-computer software,mainly the wave estimation algorithm realization of the upper-computer software. Considering that the wave estimation algorithm is complicated and that the algorithm realization under the software development environment of delphi7 is difficult, this paper adopts mixed programming method based on delphi7 and matlab7.0 to realize wave estimation function, the mixed programming method is simple, the development cycle of this method is short. Through comparison between the upper-computer software in this paper and the commercial software WAVESMON of RD Company, both the wave estimation results are consistent, which shows that the wave estimation result of the upper-computer software in this paper is correct, can meet the need of onshore processing system.
acoustic Doppler upward-looking wave measurement equipment;wave directional spectrum estimation; upper-computer software; Delphi; Matlab;WAVESMON
P716
A
1000-3630(2016)-03-0260-05
10.16300/j.cnki.1000-3630.2016.01.015
2015-06-15;
2015-10-20
海洋公益性行業(yè)科研專項(201205039-3, 201505007-3)、山東省自主創(chuàng)新專項(2013CX80101)、青島市市南區(qū)發(fā)展基金(2013-12-001-XX)、山東省科學(xué)院青年基金(2014QN037)、山東省自然科學(xué)基金(ZR2015YL022)資助。
鄭威(1983―), 男, 遼寧遼陽人, 副研究員, 研究方向為ADCP波流觀測技術(shù)。
鄭威, E-mail: honestzheng123@163.com