Labjack系列-数据采集卡,USB数据采集卡与 Labview对接的编程操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Labjack系列-数据采集卡,USB数据采集卡与 Labview对接的编程操作相关的知识,希望对你有一定的参考价值。
LabJack数据采集卡公司,总部位于美国科罗拉多州雷克伍德,是连接到计算机和互联网数据采集硬件和软件的领先制造商,帮助客户通过电脑或手机监控物理世界的变化.下面介绍如何用Labjack数据采集卡与Labview 接驳的方法,并实现采集功能。
其系列采集卡如下:
Labjack应用——labjack安装
首先,安装labjack驱动程序。虽然Windows已包含了LabJack所需的USB底层驱动程序,但是它还需要高级驱动程序来进行数据的传送和接收。随机提供的安装光盘将安装高级驱动程序、一些应用程序和一些范例程序的源代码。
插入安装光盘前,关闭所有打开的应用程序,特别是与LabJack相关的软件。安装程序通常会开始运行。如果安装程序没自动运行,你可用鼠标双击在光盘上的LabJackVXXX.exe。
LabJack安装结束后会安装美国国家仪器仪表公司的LabView运行引擎(LVRTE)。所安装的应用程序是需要该引擎才能运行的。如果有重启的提示,请照办。一些病毒扫描程序和LVRTE的安装可能有冲突。如果运行应用程序出错,重复以上安装直到LVRTE正确为止。
安装完驱动程序后,将C:/Program Files/labjack/drivers/labview/vi.lib/addons文件夹复制粘贴到labview所在文件夹下的vi.lib文件夹中。重新启动labview就可以在后面板的Functions→All Functions中看到labjack的所有函数。
将labjack通过USB线与PC连接,要测试安装正确与否,运行LJTEST程序。 开始=>程序=>LabJack=>LJtest 确定没选择“Test Fixture Installed”和“Continuous”,按运行(RUN)按钮,LJtest应该一项项地测试并通过8个独立的测试。
Labjack应用——AIBurst函数介绍
从1,2,或4个模拟通道,以指定的扫描率(可高到8192赫兹)读取指定扫描数的电压。首先采集的数据是放在LabJack的4096个内存缓冲器中。然后才被传送到计算机上。 如果发光二极管被启用,那么它在等待出发期间会以4赫兹的频率闪烁,在采集过程中会暗掉,在数据传送到计算机的过程中会快速地闪烁,结束后再变暗。
该函数的执行时间取决于指令本身,可以用下面的公式来估计。实际采样的样本数是2的次方,从64到4096。 它大于或等于numScans*numChannels。 在下面该值被表示成 numSamplesActual。
正常模式:运行时间 = 30+(1000numSamplesActual/sampleRate)+(2.5numSamplesActual)
快速模式:运行时间 = 30+(1000numSamplesActual/sampleRate)+(0.4numSamplesActual)
参数说明:
返回值: LabJack 的错误码,无错时为0。
输入:
? *idnum – 设备号,系列号或-1(所能找到的第一个设备)
? demo – 正常操作时为0,大于0时为演示模式。演示模式允许用户在没有 LabJack的情况下调用该函数。
? *stateIOin –要输出的IO0-IO3的状态。如果IO是被设置成输入口,输出状态位对其没有作用。可以用其他的函数来把它们设置成输出方向。
? updateIO – 大于0,则输出状态值,否则只进行读操作。
? ledOn – 大于0时,LabJack的发光二极管被点亮。
? numChannels – 要读取的模拟通道数(1,2, 或 4)。
? *channels – 这是一个数组的指针,该数组至少要有numChannels 个单元。 单端输入用0-7,差动输入用 8-11。
? *gains – 这是一个数组的指针,该数组至少要有numChannels 个单元。个单元值是响应通道的增益指令。0=〉1, 1=〉2, ?, 7=〉20。 只在差动通道采集时有效。
? scanRate – 每秒的扫描数。一个扫描意味着对所有指定通道的一次采集。 采样频率(等于 scanRate numChannels) 必须在 400 和 8192 之间。
? disableCal – 大于0时,返回的电压是没有用校正系数进行校正计算的值。(叫做原始值)。
? triggerIO – 出发信号的IO口号。(0=不用触发,1=IO0,2=IO1)。
? triggerState – 大于0时,采集将在所选的IO口变高电平时开始。
? numScans – 指定多少个扫描将被返回。最小值为1。numSamples 最大值为4096,其中 numSamples = numScans * numChannels。
? timeout – 超时时间(单位为秒)。该函数执行时间超过规定的超时时间时,即使还没有采到一个扫描,也会立即退出,同时返回超时错误码。
? *voltages – 这是一个指向一个 4096 乘 4 数组的指针。该数组用于放置采集的电压值。 将该数组元素置零输出。
? transferMode – 0=自动,1=正常,2=快速。如果是自动,当 timeout >= 4 或 numScans/scanRate >=4 时,实际使用模式是正常,否则是快速。
输出:
? *idnum – 返回设备号或-1(如果没有找到LabJack的话)
? *scanRate – 返回实际的扫描频率。由于时钟的分辨率的原因,实际的扫描率不会完全和希望的扫描率相同。
? *voltages – 这是一个数组的指针,返回的numChannels个电压值在该数组中。
? *stateIOout – 这是一个指向一个大小为4096的数组的指针。读取的IO状态值存在该数组中。没有用到单元的值是9999.0。
? *overVoltage – 如果大于0, 则说明在被选择的通道上信号超界。
Labjack应用——用Labjack采集波形
输入部分:由numChannels、channels、gains组成簇Analog Input Commands,定义波形由A∣0输入LABJACK,通过scanRate、numScans定义LABJACK的采样频率和采样点数。
输出部分:voltages输出的是一个二位数组,但是其中只有一维有效,我们通过函数
将其有用部分分离出来,作为纵轴(幅值)与scanRate输出的返回实际的扫描频率的倒数作为横轴(时间),通过函数
打包组成波形并显示出来。
更多在:www.pc17.com.cn 下载 www.labjack.com 下载
请看下一篇:
以上是关于Labjack系列-数据采集卡,USB数据采集卡与 Labview对接的编程操作的主要内容,如果未能解决你的问题,请参考以下文章
HS6 USB数据采集卡USB高速数据采集卡,高级触发功能图解