波浪骑士数据详细处理分析过程

[复制链接]
波浪骑士是测量海浪的经典设备,目前市场最常见的有荷兰Datawell公司的Waverider产品,其成熟产品主要有两种:加速度计类型和GNSS类型。
8e1f777920a971e260ee65a4158a5514.png
Datewell Waverider
! s5 T2 y0 n# u5 H- [
波浪骑士采集的数据有专门的软件进行读取和处理,本文以Datawell 数据为例简单总结处理方法。
; q/ f$ q" O4 v) b" D2 o1 n8 P
软件下载
下载Waves5软件并安装,安装无需注册。
下载地址:www.52ocean.cn
9 ^( u" s# c4 @5 o
导入数据新建项目,并将存放数据的文件夹导入。之后,数据文件将在左侧栏的Logged中显示。
5cb9cc9ee2cded07cb6c1140c90c523a.png
其数据格式主要有raw,hxv,wvs,spt。
7 D5 h! P7 ?: D9 U0 r: j+ {6 L
3 u$ r, ?  `- H8 e$ A# R7 J数据格式
0 j5 G. w/ Y6 t1 B1、hxv:Raw buoy messages
/ |8 l# r9 E+ U$ J: s  l
[C] 纯文本查看 复制代码
Meaning: HeXadecimal Vectors
Description: Stream of raw buoy messages
Buoys: DWR MkI, MkII, MkIII
From: HF receiver
Format: Ascii/Text, hexadecimal
070363e0276be031ff209c6886d3e314.png
该数据包含了浮标的原始记录,半小时一个文件,通过右侧工具栏可以查看统计信息、波浪功率密度谱、二维和三维方向谱。
数据样例
[C] 纯文本查看 复制代码
00A4,8B53,80C0,0501,92B7
00A5,A1AB,8040,0101,A978
00A6,C3D7,00D0,0502,5EDF
00A7,65C6,0160,1C01,8E58
数据格式
[C] 纯文本查看 复制代码
Format
SSNN,YYYY,HHHN,NNWW,WPPP
SS: status
00: correct
01: transmission error, repaired
02: transmission error, not repaired
03: all-0 or all-1 vector
04: synchronizing
05: = 04 + 01
06: = 04 + 02
07: = 04 + 03
NN: index, 0-255, modulo 256
YYYY: spectral/system word
HHH: heave (vertical displacement), 12 bit, sign-magnitude
NNN: north displacement, 12 bit, sign-magnitude
WWW: west displacement, 12 bit, sign-magnitude
PPP: Parity, BCH(63,51)-code
9 G, |1 ~* f, ~  e3 @
2、raw: raw buoy displacements; `3 h" e  N) J/ E
[C] 纯文本查看 复制代码
Meaning: RAW displacements
Description: the heave, north, west displacements @ 1.28 Hz
Buoys: DWR MkI, MkII, MkIII
From: post-processing
Format: Ascii/Text, decimal
/ |# d+ T' S9 ^9 e; y, v% @
956cc7ed4563894df2a1ea44df87c935.png
7838180119a7d7b22ee8d667b58c3495.png
该数据包含了浮标的位移信息,通过右侧工具栏可以查看时间序列、波浪功率密度谱、二维和三维方向谱。
数据样例:
[C] 纯文本查看 复制代码
0, 13, 3, -13
0, 3, 13, -13
0, 15, 17, -11
0, -10, 2, -1

4 _0 Z' `% w) _" E6 L9 a/ y$ ~
数据格式
[C] 纯文本查看 复制代码
Format sta, hv, no, we
sta: status
0 to 7: see *.HXV
16: one of the three displacements outside +/- 4s.
32: two of the three displacements outside +/- 4s.
48: all three displacements outside +/- 4s.
64: dummy vector to replace unreceived vector
128: gap in GPS link (DWR-G buoys only)
hv: heave [cm]
no: north displacement [cm]
we: west displacement [cm]
# ]2 d1 m. z: b4 W1 r, o1 t
3、WVS:the chronological list of upcross waves/ b( J6 \5 |. f5 @$ [! A. e/ b
[C] 纯文本查看 复制代码
Meaning: upcross WaVeS data
Description: the chronological list of upcross waves
Buoys: DWR MkI, MkII, MkIII
From: post-processing
Format: Ascii/Text, decimal

+ B; l5 T+ H( t" p7 r* u& X该数据包含了按时间排列的波浪主要信息,通过右侧工具栏可以查看波峰、波谷和周期信息。
数据样例
[C] 纯文本查看 复制代码
2012-01-25T05:00:00.000,100, 116, 4.1, 78, 4.0, 62, 3.9, 40, 3.2, 0.534,553
171, 28, -21, 4.071
451, 14, -7, 2.835
385, 8, -20, 2.637
15, 32, -49, 3.230
& \- R" n& ~/ K8 P
数据格式
[C] 纯文本查看 复制代码
FormatSummary (12 parameters) .

Timestamp: date and time (ISO8601)

Coverage: percentage of raw data used in constructing the upcross waves [%]

Hmax: maximum wave height [cm]

T(Hmax): period of the highest wave

H[1/10]: mean height of the highest 1/10 of the waves [cm]

T(H[1/10]): mean period of the highest 1/10 of the waves

H[1/3]: mean height of the highest third of the waves [cm]

T(H[1/3]): mean period of the highest third of the waves

Hav: mean height of all waves [cm]

Tav: mean period of all waves

eps: bandwidth parameter [-]

NumWaves: number of upcross waves [-]


List of upcross waves (NumWaves x 4 matrix) .

rank, crest, trough, period


rank: index of wave when sorted ascendingly (1 = highest)

crest: maximum heave within present upcross wave

trough: minimum heave within present upcross wave

period: duration of present upcross wave

NB: the wave height of an upcross wave is the difference between crest and trough.
6 q' o' a8 h! H9 {, f6 E% V
4、spt:the heave and directional spectrum

+ `6 u$ C$ C% z2 q9 D1 S/ b. I9 C. z
[C] 纯文本查看 复制代码
Meaning: SPecTral data

Description: the heave and directional spectrum

Buoys: DWR MkI, MkII, MkIII

From: post-processing

Format: Ascii/Text, decimal
5 `; Z/ W0 a+ D( f' a* k
e94e8f9a339329754e671842e42b55fb.png
该数据包含了按时间排列的波浪谱信息。
数据样例:
[C] 纯文本查看 复制代码
10

22.0

3.774

1.7287E-2

25.00

14.30

7

0.04125

-0.04500

0.07750

260.2

53.833

0.025,9.9040E-5,60.5,78.6,-2.95,1.71

0.030,6.6547E-4,99.8,69.2,3.77,2.47

0.035,7.6734E-3,279.8,46.3,-0.37,4.47

0.040,8.4804E-3,292.5,67.5,4.55,2.50

: ]2 t. J2 D* H0 P1 @
数据格式
[C] 纯文本查看 复制代码
Format

System file (12 parameters)

tn: transmission index (1 to 8)Hs: significant wave height [cm]

Tz: zero-upcross period

Smax: maximum of the psd S(f) [m^2/Hz]

Tref: reference temperature [°C, centigrade]

Tsea: Sea surface temperature [°C, centigrade]

Bat: Battery status (0 = empty to 7 = full)

Av: offset of the vertical accelerometer

Ax: offset of the x-accelerometer

Ay: offset of the y-accelerometerOri: buoy orientation [°]

Incli: magnetic inclination [°]


Spectrum file (64 x 6 array)

f, S(f) / Smax, Dir(f), Spr(f), Skew(f), Kurt(f)
f: wave frequency [Hz]

S(f) / Smax: relative psd (power spectral density) [-]

Dir(f): wave direction [°]

Spr(f): directional spread [°]

Skew(f): skewness of the directional distribution [-]

Kurt(f): kurtosis of the directional distribution [-]
1 l# @5 l5 y& [: k$ Q/ w& d9 B
波浪能量密度谱计算方法
能量密度谱主要包含一下信息:

9 J  D& B6 D8 d& N
能量:海面高度波动的方差。
能量密度谱:积分之后即能量。
周期:峰值即周期(频率)。

" q" c, }, }! m: S. \
使用Matlab可做如下计算和测试:
[C] 纯文本查看 复制代码
% Load spectral density data From SPT file
TrPath='test.spt';
TrFid = fopen(TrPath,'r'); % 路径
FormatString='%f,%f %*[^\n]'; % 读取数据的类型
Ctr = textscan(TrFid, FormatString, 'HeaderLines', 12,'EndOfLine','\r\n');
Ctr = cell2mat(Ctr); % 转矩阵
fclose(TrFid);
% Load max value of spectral density form SPT file
TrPath='test.spt';
TrFid = fopen(TrPath,'r');
FormatString='%f'; % 读取数据格式
smax = textscan(TrFid, FormatString, 'HeaderLines', 3);
smax = cell2mat(smax); % 转矩阵
fclose(TrFid);
% Calculate PSD using RAW data
wb=load('test.raw');
fs_g=1.28;% hz
len=length(wb(:,2));
[Pxx_wb,fxx_wb]=pwelch(wb(:,2)/100,fix(len/20),[],[],fs_g,'onesided');
% Plot
figure('name','wavebuoy')
plot(Ctr(:,1),Ctr(:,2)*smax(1));hold on
plot(fxx_wb, Pxx_wb);
legend('From SPT file','By matlab pwelch')
: \0 T' X; O, {% V- x
caeb75cad90e43419c2272853679a86b.png
可见使用波浪骑士的原始波动数据计算PSD和SPT文件中的PSD是符合的。所以采集数据之后,既可以使用wave5进行数据处理,也可以自己编程实现,二者一致。
方向谱
波浪骑士可观测海浪的三个方向的加速度,进而可以通过交叉谱确定方向谱。
Maltab开源程序包diwasp也可以独立计算方向谱,下面比较Wave5软件和diwasp计算方向谱的差异。
Matlab程序
[C] 纯文本查看 复制代码
% WB的方向谱
folder ='C:\Users\lei\Documents\MATLAB\diwasp';
addpath( genpath(folder) );   
ID.fs=1.28;
ID.depth=25;
ID.datatypes={'elev','dspx','dspy'};
ID.layout=repmat([0 0 25]',[1 length(ID.datatypes)]);
wb=load('C:\Users\lei\Documents\wavebuoy\2021\November\2021-10-24T06h30Z.raw');
ID.data=wb(:,2:4)/100;
SM.freqs = [0.01:0.002:0.7];
SM.dirs = [-180:1:180];
SM.xaxisdir = 0 ;
EP.dres = 180 ;
EP.nfft = 64;
EP.iter = 100;
EP.smooth = 'ON';
EP.method = 'DFTM';
[SMout,EPout]=dirspec(ID,SM,EP,{'PLOTTYPE',2,'FILEOUT','sampleout.spec'});

" P. `; {+ R7 L& }; u5 i结果为:
092fa92c6a7d79354f544dcd5bc98641.png
MATLAB计算的方向谱和波浪骑士自带工具显示的方向谱形态大致符合,但是角度相差了90度。原因不确定,但可能是参考轴的差异引起。后面需要进一步分析差异原因。
9 [3 G$ {* y6 u, J& d; F: P& }% C1 z
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
夏光成
活跃在2022-11-25
快速回复 返回顶部 返回列表