神电测控:新品发布
国产新型三合一PCIe+USB3.0+Ethernet多功能PG-785xR-786xR
FPGA RIO板卡
1、三合一,同时支持PCIe总线、USB3.0总线、Ethernet千兆以太网总线通信的PG-785x-786x R系列FPGA板卡诞生了,后发优势,覆盖NI-7856/7857/7858等R系列FPGA板卡,兼容LabVIEW My FPGA开发环境。
2、通信接口:PCIe总线带宽实测:720MB/s;USB3.0总线实测带宽:320MB/s;Ethernet千兆以太网实测带宽:96MB/s。
3、新增特性:相比上一代产品,新款PG-785xR我们特地新增同时支持“连续采集”和指定点数或者指定时间的“可重触发采集”模式的LabVIEW FPGA上下位机VI案例程序,方便多个子系统同步控制领域使用。
4、指标:18位16通道同步并行AI(1MS/s采样率)、16位16通道同步并行AO(1MS/s更新率)、37路双向高速DIO、8路LED灯、PCIe接口、USB3.0接口、Ethernet、真差分、量程自由切换。
5、超大FPGA加持:K7-325T,远超传统DAQ卡;更重要的是:用户可以使用图形化LabVIEW在FPGA里面自由翱翔,实现各种采集、模型、算法、测试、锁相、3C、PID等闭环应用。
6、相比于之前发布的4通道250MS/sAI和2通道250MS/s AO板卡来说,PG-785xR更适合常规us量级的自动化、HIL硬件在环、高密度数采等测控类项目和仪器开发。
7、价格亲民,彻底摆脱NI FPGA RIO板卡高昂成本造成的困局、释放大家的开发潜能,大胆放心用。
图1:神电测控PCIe+USB3.0+Ethernet三合一版本PG-785xR板卡实物图(正面)
图2(a):神电测控PCIe+USB3.0+Ethernet三合一版本PG-785xR板卡实物图(通信口)
图2(b):神电测控PCIe+USB3.0+Ethernet三合一版本PG-785xR板卡实物图(AI/AO/DIO接口)
1、性能简介
1)模拟电压输入AI
ADC采集通道数:16
分辨率:18 bit
采样率:1MS/s
输入量程3种模式支持动态任意切换(总共12个档位):
l 单端双极性模式(5种):±2.5V/±5V/±6.25V/±10V/±12.5V
l 单端单极性模式(3种):0~5V/0~10V/0~12.5V
l 差分双极性模式(4种):±5V/±10V/±12.5V/±20V
底噪:Vpp:800uV Vrms:120uV
零点误差:1mV
线性误差:千分之5
接线:单端/真差分
2)模拟电压输出AO
DAC输出通道数:16
分辨率:16bit
更新率:1MS/s
输出量程:±10V/±5V
3)双向高速数字IO(DIO)
DIO通道数:37路
DIO读写速率:200MHz
DIO访问:直接FPGA读写,可接入CLK、编码器、转速计、扭矩等脉冲信号,也可以产生高速同步、PWM等脉冲信号。
4)8路用户LED指示灯,挂在FPGA上,支持用户自己使用LabVIEW直接编程控制
5)3路用户按键KEY,挂在FPGA上,支持用户自己使用LabVIEW直接编程控制
6)板卡主控芯片
FPGA型号:Xilinx Kintex7-325T-2FFG900I工业级(可替换成国产FPGA)
板载DDR3容量:2GB 64BIT
板载Flash芯片型号:N25Q128A13 SPIx4
通信接口:PCIe2.0x8、USB3.0、Ethernet千兆以太网
7)板卡供电
直流电压:12V(支持单独供电或者PCIe直接供电)
静态电流: 0.7A
2、接口简介
图3:神电测控PCIe+USB3.0+Ethernet三合一版本PG-785xR板卡接口示意图
1)模拟电压输入AI/模拟电压输出AO接口
接线方式:AD/DA通过VHDCI扩展线接出(赠送SCB-68-68线缆和接线盒)。
注意:AI/AO 均为真差分方式。
2)模拟电压ADC输入等效结构如下:
对于差分信号:需要接入AIN+ AIN-GND(GND可以不接)
对于单端信号:需要接入AIN+ GND(同时AIN-需要跟GND短接)
图4:模拟电压输入AI差分等效结构
3)模拟电压DAC输出等效结构:
对于单端输出应用:接 DAC+ GND(DAC-悬空)。
对于差分输出应用:则接DAC+ DAC-(GND可不接)。
图5:模拟电压输出AO差分等效结构
3、模拟信号接线盒端子信号说明
图6:配套的模拟信号接线盒实物图
表1:接线盒信号引脚定义说明
模拟电压输出通道 | DAC+标号 | DAC-标号 | 模拟电压输入通道 | AIN+ | AIN- | 地 | 序号 | |
DAC0 | 34 | 33 | ADC0 | 2 | 1 | GND | 17 | |
DAC1 | 32 | 31 | ADC1 | 36 | 35 | GND | 18 | |
DAC2 | 30 | 29 | ADC2 | 4 | 3 | GND | 51 | |
DAC3 | 28 | 27 | ADC3 | 38 | 37 | GND | 52 | |
DAC4 | 26 | 25 | ADC4 | 6 | 5 | |||
DAC5 | 24 | 23 | ADC5 | 40 | 39 | |||
DAC6 | 22 | 21 | ADC6 | 8 | 7 | |||
DAC7 | 20 | 19 | ADC7 | 42 | 41 | |||
DAC8 | 68 | 67 | ADC8 | 10 | 9 | |||
DAC9 | 66 | 65 | ADC9 | 44 | 43 | |||
DAC10 | 64 | 63 | ADC10 | 12 | 11 | |||
DAC11 | 62 | 61 | ADC11 | 46 | 45 | |||
DAC12 | 60 | 59 | ADC12 | 14 | 13 | |||
DAC13 | 58 | 57 | ADC13 | 48 | 47 | |||
DAC14 | 56 | 55 | ADC14 | 16 | 15 | |||
DAC15 | 54 | 53 | ADC15 | 50 | 49 |
4、数字信号DIO接线端子说明
图7:PG-785xR板卡上的DIO信号(SCSI接口)
图8:PG-785xR板卡推荐的DIO数字信号线缆和接线盒
图9:PG-785xR板卡上的DIO数字信号引脚定义
(左侧为SCSI接口里面的24路DIO、右侧为顶部预留的13路DIO)
SCSI端口一共引出12V、GND与24个单端I/O,加上上方13个DIO,一共37路双向DIO接口;为了方便用户使用,我们将这些DIO信号对应的FPGA引脚全部拖到了LabVIEW FPGA环境下,非常直观,如图10所示,用户只需要会一点LabVIEW基础知识就可以在FPGA里面编程操作这些DIO信号了。
图10:PG-785xR板卡上的DIO数字信号所在FPGA终端下的EIO节点(一目了然)
5.1、模拟电压输入AI量程控制
AI输入量程3种模式支持动态任意切换(总共12个档位):
l 单端双极性模式(5种):±2.5V/±5V/±6.25V/±10V/±12.5V
l 单端单极性模式(3种):0~5V/0~10V/0~12.5V
l 差分双极性模式(4种):±5V/±10V/±12.5V/±20V
图11:三合一版本PG-785xR板卡模拟电压采集量程范围支持单端和差分
5.2、模拟电压输出AO量程控制
拉高DAC_Range_Select,则模拟电压输出量程为±5Vpp
拉低DAC_Range_Select,则模拟电压输出量程为±10Vpp
控制DAC量程的IO引脚,可以将其拖拽到PG-785xR对应的FPGA终端下面,如图12所示。
图12:PG-785xR板卡AO输出量程控制引脚位于FPGA终端下的EIO节点
6、用户LED灯控制(共阳模式,低电平点亮)
8路用户LED对应的FPGA引脚对应LabVIEW FPGA环境下的EIO节点,如图13所示。
图13:PG-785xR板卡用户LED引脚位于FPGA终端下的EIO节点
7、PG-785xR Demo硬件测试接线实物图
图14(a):新款三合一PG-785xR板卡通过USB3.0接口与笔记本通信
图14(b):新款三合一PG-785xR板卡通过Ethernet千兆以太网接口与笔记本通信
图14(c):新款三合一PG-785xR板卡通过PCIe接口与笔记本通信
图15:三合一PG-785xR板卡Demo实验接线实物图(信号发生器和示波器)
8、PG-785xR软件开发简介
1)模式1(不推荐)
直接将785xR当成传统意义上的数据采集卡DAQ,我们提供配套的Windows、Linux驱动,WindowsQT、C++语言和LabVIEW上位机开发例程,如图16所示。图16:PG-785xR板卡配套的上位机开发例程(模式1-不推荐)
2)模式2(推荐,当成类似NI FPGA R系列板卡自主开发,充分发挥FPGA的优势)
提醒:关于LabVIEW如何开发任意第三方下位机FPGA芯片程序及其原理和开发过程,可以参考神电测控编写的《LabVIEW FPGA开发宝典》
a)首先,启动打开LabVIEW软件,如图17所示;然后新建一个空白的LabVIEW项目,如图18所示。
图17:启动LabVIEW软件
图18:新建一个空白的LabVIEW项目
b)右击LabVIEW项目下的“我的电脑”,选择新建“终端和设备”,如图19所示。
图19:右击新建“终端和设备”
c)在弹出来的FPGA终端列表中找到K7家族,展开之后,找到里面的“KINTEX7_XC7K325T_2FFG900_PCIe_PG_785xR”这个终端设备,如图20所示。
图20:在设备列表中找到神电测控研发的新款三合一PG-785xR这块板卡
d)然后展开FPGA终端,可以看到里面同时存在PCIe总线、USB3.0总线和Ethernet千兆以太网总线接口对应的CLIP传输通道,用户只需要通过LabVIEW直接访问这些通道就可以实现上下位机PCIe、USB3.0和Ethernet以太网高速交互、数据传输和通信了,如图21所示。
图21:PG-785xR我们提前封装好了PCIe、USB3.0和Ethernet以太网传输通道
e)同时,里面还有2个名为PG785x_ADCData和PG785x_DAC Data的CLIP节点,展开可以看到,里面就是16通道的AI和16个通道的AO,如图22所示。
图22(a):PG-785xR我们提前封装好了16个模拟输入AI通道
图22(b):PG-785xR我们提前封装好了16个模拟输出AO通道
f)为了方便初学者入门,这里我们给大家提供了一个针对新款三合一PG-785xR这块板卡出厂的LabVIEW FPGA Demo范例程序,支持连续采集和可重触发采集两种模式,如图23所示。另外,我们提前将用户LED灯、量程控制IO、双向数字DIO等引脚对应的EIO节点和相关的FIFO、Memory放到这个例程里面,供大家参考。
图23:神电测控PG-785xR板卡出厂配套的LabVIEW FPGA Demo范例程序
g)下面,我们简单验证一下Demo里面的AI采集和AO输出功能(连续采集和可重触发采集)。
先验证PG-785xR模拟电压采集功能,由于我们的信号发生器产生的信号属于单端信号,所以按照前面的端子接线说明,应该将信号发生器的正极接到模拟接线盒端子的AI+(比如ADC0正极对应的标识是2),负极接到AI-上(比如ADC0负极对应的标识是1),然后将AI-与接线盒的GND(标识是17)短接,如图24所示。如果用户测量的是类似电池这样的被测对象,那么就需要按照差分方式接入,因为电池两端是没有参考地的,二者之间的电压差可以看成是真正意义上的差分信号,那么对于电池这类原始信号,GND是不需要短接的。
图24:将信号发生器输出的单端信号接到PG-785xR配套的模拟接线盒上(AI0通道)
1)验证通过USB3.0总线接口实现上下位机板卡之间的AI连续与可重触发采集
打开下位机FPGA终端里面的“实验6.2-16通道AD+DA-同步并行-1M-Continue+Triggered-FPGA+USB3.0.vi”这个VI,如图25所示,对应的程序框图,如图26所示;直接点击左上角的运行箭头即可启动编译,然后会自动下载到板卡的FPGA芯片里面运行,同时FPGA VI会进入在线前面板运行模式。
图25:打开下位机FPGA终端里面的实验6.2
(基于USB3.0接口的AI采集FPGA程序前面板)
图26:打开下位机FPGA终端里面的实验6.2
(基于USB3.0接口的AI采集FPGA程序框图)
然后,打开运行“我的电脑”下面的“实验6.2-16通道ADC+DAC并行同步-真差分+连续+可重触发+USB3.0-PC.vi”上位机程序,如图27所示;根据外部被测信号极性和最大幅值选择合适的量程(785x_ADC_Range_Set)、采样率(分频系数(1uS))、单次读取点数(上位机每次读取的点数)等参数。
下面,验证一下“连续采集”方式。
先按下点亮前面板的“连续采集/可重触发采集”按钮,然后点击前面板上的“Send”发送开始采集指令和参数给FPGA板卡(PG-785xR),此时,可以看到上位机前面板左上角第一个波形图里面出现了正弦波,如图28所示;这是因为,我们在接线盒对应的AI0通道上接入了一个单端Sine信号,该信号频率为10KHz,峰峰值为±5V,如图29所示;将这个波形放大之后,可以看到里面每个周期的量化点数正好是100个点,因为PG-785xR模拟电压最大采样率是1MS/s(默认分频系数为199,200MHz进行分频得到1MS/s=200MHz/(199+1)),除以10KHz,正好就是100个点。由于ADC分辨率是有符号18位,也就是I18。另外前面板上的“采样率(Byte/S)”显示控件里面显示的数据吞吐率在64MB/s波动,因为我们16个通道同时按照1MS/s并行采集,每个通道上传的时候用的U32类型,所以一共就是16×4Bytes×1MS/s=64MB/s。
图27:打开LabVIEW项目里面“我的电脑”下的上位机实验2.6
(通过USB3.0上传FPGA采集的模拟电压信号)上位机程序
图28:上位机前面板上实时显示出来PG-785xR板卡当前采集的原始电压波形信号
(通过USB3.0总线连续采集传输)
图29:因为信号发生器实际产生的正弦信号频率是10KHz(单端信号)
接着,验证一下“指定点数的可重触发采集”方式。
先熄灭前面板的“连续采集/可重触发采集”按钮,在“可重触发点数”输入控件里面填写需要触发采集的点数,按下点亮右侧的“触发模式读取”按钮,然后点击前面板上的“Send”发送开始采集指令和参数给FPGA板卡(PG-785xR),此时,可以看到上位机前面板“循环间隔s”显示控件里面的时间间隔差不多是1s说明,说明读取超时了,同时前面板上的“ReadPipe”显示控件出现了“FT_TIMEOUT”,说明上位机没有读到下位机FPGA采集的数据,此时,我们可以按压一下FPGA板卡上的KEY1按键,因为我们在下位机FPGA VI程序里面通过这个按键来模拟外部触发脉冲,实际应用中,大家可以直接将外面实际的触发脉冲信号通过SCSI DIO接口接进来即可,然后将FPGA VI程序里面的按键引脚改成实际接的DIO引脚,再重新编译下载一下即可。
每按压一次KEY1按键,左上角第一个波形图里面出现了正弦波,如果大家将所有分段读取的波形数据进行前后拼接的话,应该就是指定采集的点数,如图30所示。
图30:上位机前面板上实时显示出来PG-785xR板卡当前采集的原始电压波形信号
(通过USB3.0总线可重触发采集传输)
2)验证通过Ethernet千兆以太网总线接口实现上下位机板卡之间的AI连续与可重触发采集
打开下位机FPGA终端里面的“实验6.3-16通道AD+DA-同步并行-1M-Continue+Triggered-FPGA+Ethernet.vi”这个VI,如图31所示,对应的程序框图,如图32所示;直接点击左上角的运行箭头即可启动编译,然后会自动下载到板卡的FPGA芯片里面运行,同时FPGA VI会进入在线前面板运行模式。
图31:打开下位机FPGA终端里面的实验6.3
(基于Ethernet千兆以太网接口的AI采集FPGA程序前面板)
图32:打开下位机FPGA终端里面的实验6.3
(基于Ethernet千兆以太网接口的AI采集FPGA程序框图)
然后,打开运行“我的电脑”下面的“实验6.3-16通道ADC+DAC并行同步-真差分+连续+可重触发+千兆以太网UDP-PC.vi”上位机程序,如图33所示;根据外部被测信号极性和最大幅值选择合适的量程(785x_ADC_Range_Set)、采样率(分频系数(1uS))、单次读取点数(UDP数据包长度(≤1500))等参数。
下面,验证一下“连续采集”方式。
先按下点亮前面板的“连续采集/可重触发采集”按钮,然后点击前面板上的“Send”发送开始采集指令和参数给FPGA板卡(PG-785xR),此时,可以看到上位机前面板左上角第一个波形图里面出现了正弦波,如图34所示;这是因为,我们在接线盒对应的AI0通道上接入了一个单端Sine信号,该信号频率为10KHz,峰峰值为±5V;将这个波形放大之后,可以看到里面每个周期的量化点数正好是100个点,因为PG-785xR模拟电压最大采样率是1MS/s(默认分频系数为199,200MHz进行分频得到1MS/s=200MHz/(199+1)),除以10KHz,正好就是100个点。由于ADC分辨率是有符号18位,也就是I18。
另外,由于我们16个通道同时按照1MS/s并行采集,每个通道上传的时候用的U32类型,所以一共就是16×4Bytes×1MS/s=64MB/s,此时,打开任务管理器里面的网卡性能展示框,可以看到上行吞吐率差不多在532Mbps波动,与预期相符。
图33:打开LabVIEW项目里面“我的电脑”下的上位机实验6.3
(通过Ethernet千兆以太网上传FPGA采集的模拟电压信号)上位机程序
图34:上位机前面板上实时显示出来PG-785xR板卡当前采集的原始电压波形信号
(通过Ethernet千兆以太网总线连续采集传输)
接着,验证一下“指定点数的可重触发采集”方式。
先熄灭前面板的“连续采集/可重触发采集”按钮,在“可重触发点数”输入控件里面填写需要触发采集的点数,然后点击前面板上的“Send”发送开始采集指令和参数给FPGA板卡(PG-785xR),可以看到上位机没有读到下位机FPGA采集的数据;此时,用户可以按压一下FPGA板卡上的KEY1按键,因为我们在下位机FPGA VI程序里面通过这个按键来模拟外部触发脉冲,实际应用中,大家可以直接将外面实际的触发脉冲信号通过SCSI DIO接口接进来即可,然后将FPGA VI程序里面的按键引脚改成实际接的DIO引脚,再重新编译下载一下即可。
每按压一次KEY1按键,左上角第一个波形图里面出现了正弦波,如果大家将所有分段读取的波形数据进行前后拼接的话,应该就是指定采集的点数,如图35所示。
图35:上位机前面板上实时显示出来PG-785xR板卡当前采集的原始电压波形信号
(通过Ethernet千兆以太网总线可重触发采集传输)
3)验证通过PCIe总线接口实现上下位机板卡之间的AI连续与可重触发采集
打开下位机FPGA终端里面的“实验6.1-16通道AD+DA-同步并行-1M-Continue+Triggered-FPGA+PCIe-PXIe.vi”这个VI,如图36所示,对应的程序框图,如图37所示;直接点击左上角的运行箭头即可启动编译,然后会自动下载到板卡的FPGA芯片里面运行,同时FPGA VI会进入在线前面板运行模式。
图36:打开下位机FPGA终端里面的实验6.1
(基于PCIe接口的AI采集FPGA程序前面板)
图37:打开下位机FPGA终端里面的实验6.1
(基于PCIe接口的AI采集FPGA程序框图)
然后,打开运行“我的电脑”下面的“实验6.1-16通道ADC+DAC并行同步-真差分+连续+可重触发+PCIe-PXIe-PC.vi”上位机程序,如图38所示;根据外部被测信号极性和最大幅值选择合适的量程(785x_ADC_Range_Set)、采样率(分频系数(1uS))、单次读取点数等参数。
下面,验证一下“连续采集”方式。
先按下点亮前面板的“连续采集/可重触发采集”按钮,然后点击前面板上的“Send”发送开始采集指令和参数给FPGA板卡(PG-785xR),此时,可以看到上位机前面板左上角第一个波形图里面出现了正弦波,如图39所示;这是因为,我们在接线盒对应的AI0通道上接入了一个单端Sine信号,该信号频率为10KHz,峰峰值为±5V;将这个波形放大之后,可以看到里面每个周期的量化点数正好是100个点,因为PG-785xR模拟电压最大采样率是1MS/s(默认分频系数为199,200MHz进行分频得到1MS/s=200MHz/(199+1)),除以10KHz,正好就是100个点。由于ADC分辨率是有符号18位,也就是I18。另外我们16个通道同时按照1MS/s并行采集,每个通道上传的时候用的U32类型,所以一共就是16×4Bytes×1MS/s=64MB/s,这个对于PCIe总线来说,小case。
图38:打开LabVIEW项目里面“我的电脑”下的上位机实验6.1
(通过PCIe上传FPGA采集的模拟电压信号)上位机程序
图39:上位机前面板上实时显示出来PG-785xR板卡当前采集的原始电压波形信号
(通过PCIe总线连续采集传输)
接着,验证一下“指定点数的可重触发采集”方式。
先熄灭前面板的“连续采集/可重触发采集”按钮,在“可重触发点数”输入控件里面填写需要触发采集的点数,然后点击前面板上的“Send”发送开始采集指令和参数给FPGA板卡(PG-785xR),可以看到上位机前面板上的“内存池”并没有任何数据,说明上位机没有读到下位机FPGA采集的数据;此时,我们可以按压一下FPGA板卡上的KEY1按键,因为我们在下位机FPGA VI程序里面通过这个按键来模拟外部触发脉冲,实际应用中,大家可以直接将外面实际的触发脉冲信号通过SCSI DIO接口接进来即可,然后将FPGA VI程序里面的按键引脚改成实际接的DIO引脚,再重新编译下载一下即可。
每按压一次KEY1按键,左上角第一个波形图里面出现了正弦波,如果大家将所有分段读取的波形数据进行前后拼接的话,应该就是指定采集的点数,如图40所示。
图40:上位机前面板上实时显示出来PG-785xR板卡当前采集的原始电压波形信号
(通过PCIe总线可重触发采集传输)
h)最后,验证一下PG-785xR的AO模拟电压输出功能将示波器探头的正极接到模拟接线盒的34号端子上(对应DAC0通道的正极),将示波器探头的负极接到模拟接线盒的18号端子上(GND引脚),如图41所示。注意,其中模拟接线盒上的33号端子悬空不要接,这是因为我们的简易示波器探头是单端的,不是那种差分探头,所以按照前面的模拟电压输出接线方法,这里AO应该按照单端方式去接;如果大家手头有专用的差分探头,可以直接将差分探头正负极分别接到接线盒的正负极上,那么GND就不需要了。
图41:将PG-785xR板卡的模拟电压输出通道0接到示波器上(单端方式观察)
打开下位机FPGA终端里面的“实验3-16通道16位DAC-任意波形发生器AWG-真差分-同步并行输出-FPGA.vi”这个FPGA VI,如图42所示,对应的FPGA程序框图,如图43所示;直接点击左上角的运行箭头即可启动编译,然后会自动下载到板卡的FPGA芯片里面运行,同时FPGA VI会自动进入在线前面板运行模式。
图42:打开下位机FPGA终端里面的实验3(FPGA模拟电压输出前面板)
图43:打开下位机FPGA终端里面的实验3(FPGA模拟电压输出程序框图)
然后,打开运行“我的电脑”下面的“实验3-PCIe_DMA_16位ADC-16通道并行同步输出-真差分-PC.vi”上位机程序,如图44所示;设置好任意波形参数之后,点击前面板上的“发送参数和指令”按钮,将上位机的AWG波形数据下发给FPGA板卡(PG-785xR),如图45所示,此时,示波器上出现了一个频率为2KHz、峰峰值为±5V的Sine正弦信号,如图46所示;这是因为,上位机生成的正弦信号和三角波信号点数是500,PG-785xR板卡的AO更新率是1MS/s,所以1M/500正好就是2KHz。
图44:打开LabVIEW项目下的实验3(模拟电压AO输出)上位机程序
图45:将上位机AWG任意波形数据下发给FPGA板卡(PG-785xR)
图46(a):PG-785xR实际生成的Sine正弦信号
图46(b):示波器上实际观察到的PG-785xR生成的Sine信号频率为2KHz,±5V峰峰值
更多详细内容也可以观看视频演示,B站视频链接如下: