GY-DAQ-2480 | 双通道 250M 采样率 PCIe 高速 DAS 采集卡

2026年05月29日 03:22

关键词: GY-DAQ-2480

一、核心功能

  • 双通道 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℃


三、接口定义与引脚说明

2026-05-29_220414_530.jpg

  • PCIe 接口:用于数据传输和参数设定
  • 万兆光口:保留
  • Ch1:采集通道 1
  • Ch2:采集通道 2
  • Trig-in:外部触发,3.3V 输入
  • Trig-out:内部采集触发输出,3.3V/5V 可选


四、典型接线说明

采集主流单模的 Φ-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() - 关闭采集卡,只需在软件退出时调用一次

2026-05-30_154436_913.jpg

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 
/****************************************************************/

联系电话 13427781756