2026年05月29日 03:22
双通道 250MS/s 同步采样
PCIe x8 Gen2 接口,DMA 高速传输
适配主流 Φ-OTDR DAS 系统
支持单模的DAS系统,也支持偏振分集的DAS系统
| 参数类别 | 规格详情 |
|---|---|
| 采样率 | 250 MS/s(单/双通道同步) |
| 垂直分辨率 | 14-bit |
| 模拟带宽 | 0-100MHz 模拟带宽 |
| 通道数 | 2 通道同步 |
| 耦合方式 | 直流耦合,50Ω输入阻抗 |
| 输入量程 | 2Vpp 输入电压范围 |
| 接口总线 | PCIe Gen2 x8 |
| 外部触发 | 支持外部触发输入,3.3V输入 |
| 触发输出 | 支持内部采集触发输出,3.3V/5V可选 |
| 软件支持 | Windows/Linux,提供Dll动态链接库,Python例程,支持二次开发 |
| 供电 | PCIe x8 金手指, 供电:12V,0.6A |
| 功耗 | 12W(Max) |
| 工作温度 | -20~60℃ |
| 存储温度 | -40~85℃ |

采集主流单模的 Φ-OTDR DAS 系统
Ch1 接 DAS光路的 BPD单端平衡探测器输出接口。当有2通道的DAS时,可以Ch2接入另外一个BPD的输出接口。
Trig-out接DAS光路的AOM驱动TTL调制输入接口,采集卡可以往外触发TTL信号。
采集保偏分集的 Φ-OTDR DAS 系统
Ch1 和 Ch2 接DAS光路 偏振分集的S跟P输出端口。
Trig-out接DAS光路的AOM驱动TTL调制输入接口,采集卡可以往外触发TTL信号。
5.1、驱动安装
支持操作系统:Windows 10/11 64-bit, Ubuntu 20.04/22.04等
PCIe型DAS采集卡Windows和Linux下安装驱动
5.2、SDK与API参考
采集卡的软件调用接口以dll动态链接库提供,正常情况下大部分主流的开发语言都能够调用。
编程语言支持:C/C++, Python,java, C#等
SDK包内容说明(头文件、库文件、示例代码、API手册)
核心API函数说明:DasCardOpen() - 初始化采集卡,只需在软件启动时调用一次DasCardSetDemodGauge() - 设置解调标距DasCardSetPulseWidth() - 设置脉冲宽度DasCardSetPulseFrq() - 设置脉冲频率DasCardSetResolution() - 设置采样分辨率DasCardSetSampleNum() - 设置采样点数DasCardSetPulseNum() - 设置脉冲数目DasCardSetTrigSource() - 设置触发源DasCardSetDataSel() - 设置数据类型DasCardStart() - 开始采样DasCardQueryFifo() - 查询缓存数据DasCardReadFifo() - 读取数据DasCardStop() - 停止采集DasCardClose() - 关闭采集卡,只需在软件退出时调用一次

5.3、接口函数详细说明
GY-DAQ-2480 内置 IQ 解调及相干衰落抑制功能,适用于平衡探测器的 DAS 系统,既支持单通道的 IQ 解调,也支持双通道的 IQ 解调,实现全光缆实时解调,相位数据即振动数据(音频数据)。每次脉冲触发最大上传点数为32768,因此不同分辨率率下最大监测距离分别为:
0.4m:0.4*32768=13107.2m
0.8m:0.8*32768=26214.4m
1.6m:1.6*32768=52428.8m
3.2m:3.2*32768=104857.6m
为降低上传数据量和获取更大监测距离,建议采样分辨率选择1.6m以上。
int DasCardOpen()
/****************************************************************/
函数说明:
打开设备,程序启动时调用,直到程序退出,整个过程只需调用一次,与DasCardClose成对调用。
函数参数:
无
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
void DasCardClose();
/****************************************************************/
函数说明:
关闭设备,程序退出时调用,整个过程只需调用一次,与DasCardOpen成对调用。
函数参数:
无
函数返回值:
无
/****************************************************************/
int DasCardStart()
/****************************************************************/
函数说明:
开始采集数据,调用该函数后采集卡将根据设定的参数开始采集数据,并将数据写入缓存中供用户读取,该函数在所有参数设置完成后调用,与DasCardStop成对调用。
函数参数:
无
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardStop()
/****************************************************************/
函数说明:
停止采集数据,该函数调用后采集卡将停止采集数据,与DasCardStart函数成对调用。
函数参数:
无
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetDemodGuage(int width)
/****************************************************************/
函数说明:
设置解调标距,即解调的空间分辨率,必须大于脉冲宽度,例如100ns脉冲对应10m宽度,那么标距设置应大于10m,建议取脉宽的1.5倍,即15m。
函数参数:
width:解调标距点数,乘以采样分辨率得到实际的米数。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetPulseWidth(int width)
/****************************************************************/
函数说明:
设置脉冲宽度,单位ns,当采用内部触发时有效,trig-out端口将输出设定宽度的触发脉冲。
函数参数:
width,输出触发脉冲宽度,单位ns,按4ns步进。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetPulseFrq(int frq)
/****************************************************************/
函数说明:
设置触发脉冲频率,当采用内部触发时有效,trig-out端口将输出设定频率的触发脉冲。
函数参数:
frq,触发脉冲输出频率,单位Hz。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetResolution(int id)
/****************************************************************/
函数说明:
设置采集卡的采样分辨率,即一个采样点对应的光纤长度,采样分辨率决定了上传信号的速率,分辨率越大上传信号速率越小,上传的数据量越小。分辨率与上传速率对应关系如下:
0.4m:250M/s
0.8m:125M/s
1.6m:62.5M/s
3.2m:31.25M/s
6.4m:15.625M/s
注意:这里的分辨率为近似分辨率,光纤折射率n取1.5计算得到,如需要精确计算光缆长度,需采用实际的光纤折射率进行换算,即实际分辨率=1.5/nr*分辨率,nr为采用的实际光纤折射率,通常为1.467。
函数参数:
id,采样分辨率序号,0:0.4m,1:0.8m,2:1.6m,3:3.2m,4:6.4m。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetSampleNum(int num)
/****************************************************************/
函数说明:
设置采样点数,即一次脉冲触发采样的数据点数,采样点数乘以分辨率应该覆盖需要监测的光缆长度。
函数参数:
num,触发采样点数,必须为256的整数倍,最大值为32768。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetPulseNum(int num)
/****************************************************************/
函数说明:
设置一次写入缓存的数据段数目,每次脉冲触发采样一段数据,采样num段数据后一次性写入缓存供用户读取,用户读取时也应按照num段数据进行一次读取。
函数参数:
num,一次写入缓存的数据段数目,建议值100。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetDataSel(int sel)
/****************************************************************/
函数说明:
板卡上已经做了内置解调算法,sel参数用于选择读取解调算法中对应的数据类型。
函数参数:
编号sel值上传数据类型解析规则
11双通道原始数据ch1_data,ch2_data,ch1_data,ch2_data……
22通道1幅度相位数据|幅度1|相位1|幅度1|相位1|……
33双通道相位数据|相位1|相位2|相位1|相位2|……
原始数据和相位数据按照符号16位整型(short)解析,幅度数据按照无符号16位整型(unsigned short)解析;相位数据为有符号16位整型(short),需除以512.0归一化成浮点数才能对应到弧度单位。相位数据已经完成全光纤解调,可以直接当作振动数据(音频数据)进行后续应用开发。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardQueryFifo()
/****************************************************************/
函数说明:
查询采集卡缓存有效数据,单位Byte,最大1GBytes,当有效数据足够时,可调用DasCardReadFifo函数进行读取,用于后续处理或存盘。
函数参数:
无
函数返回值:
成功,返回有效缓存数据大小,单位Byte
失败,返回-1
/****************************************************************/
int DasCardReadFifo(char *data, int len)
/****************************************************************/
函数说明:
读取采集卡数据,采集卡开始采集后可以调用该函数读取采集到的数据,数据缓存最大1GByte,需要及时读取产生的数据,否则缓存溢出后数据将会被丢弃,读取前需调用DasCardQueryFifo函数查询缓存的数据大小,查询到足够数据后再读取。
函数参数:
data:指向用于保存读取数据的指针,由用户分配和释放;
len:一次读取的数据长度,单位为byte,需按照DasCardSetPulseNum函数设定的脉冲数产生的数据量进行一次读取。
函数返回值:
成功,返回1
失败,返回0
/****************************************************************/
int DasCardCacheClear()
/****************************************************************/
函数说明:
清除数据缓存,新采样开始时默认调用,可清除上次采集卡的数据缓存。
函数参数:
无
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetOffsetVoltage(int offset)
/****************************************************************/
函数说明:
设置偏置电压,通过设置偏置电压可以调整采集卡的输入范围。
函数参数:
默认0偏置,可设置范围±1V,对应offset值±8192。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetTrigerSoure(int trig)
/****************************************************************/
函数说明:
设置触发源,可以设置使用内部触发或者外部触发,当使用内部触发时,trig-out输出触发脉冲,供AOM或者SOA产生光脉冲,脉冲频率和脉宽为采集卡设定的频率和脉宽;当使用外部触发时,采集卡trig-in接收外部触发脉冲,脉冲上升沿采集卡开始采样,脉冲频率和脉宽由外部触发源决定。
函数参数:
trig=0,内部触发;trig=1,外部触发。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/
int DasCardSetDelay(int num)
/****************************************************************/
函数说明:
设置延迟采样点,跳过光头部光纤长度
函数参数:
跳过的采样点数,乘以分辨率即可得到跳过的光缆长度。
函数返回值:
成功,返回0
失败,返回-1
/****************************************************************/