我们在做分布式光纤振动DVS监测系统的时候,会对原始的振动信号进行解调,然后获取振动的曲线图,时域图,频谱图,这样更方便上层应用的使用。下面我们介绍一款分布式光纤振动的DLL商业库——DXSLib,目前是支持免费试用的,但是好试用版本有解调点数的限制。
DXSLib:从名字看估计是做DVS,DAS,DTS的一个Lib库,采用DLL动态链接库的形式调用。查看了API文档,核心接口如下,大概就是输入原始的振动值,解调后输出解调后的值。
void single_demodulation(const double *in, double *out, int seg_len);
/*****************************************************************/
函数说明:
单次解调一个脉冲促发所采集的数据。
函数参数:
in:待解调的单次脉冲触发所采集的原始数据,长度为 seg_len;
out:解调后的单次脉冲所采集的振动数据,长度为 seg_len;
seg_len: 单次脉冲触发所采集的数据长度,必须与解调器初始化的解调数目 demodNum 相等。
函数返回值:
无
/*****************************************************************/
void multi_demodulation(const double *in, double *out, int seg_num, int seg_len);
/*****************************************************************/
函数说明:
一次同时解调多个脉冲促发所采集的数据。
函数参数:in:待解调的多次脉冲触发所采集的原始数据,长度为 seg_len*seg_num;
out:解调后的多次脉冲所采集的振动数据,长度为 seg_len*seg_num;
seg_len: 单次脉冲触发所采集的数据长度,必须与解调器初始化的解调数目 demodNum 相等。
seg_sum: 总解调的脉冲触发采集数据段数目。
函数返回值:
无
/*****************************************************************/
解调的一些数据图展示
采集到的原始振动信号
用DXSLib解调后的振动信号
振动的时域信号图
振动的瀑布图,频谱图