赞
踩
NI 是一家从事与测试、控制、设计领域相关的公司,包括虚拟仪器和电子测试设备等工程软件的开发,生产和销售软件或者硬件,其中最著名的产品是 LabVIEW 软件,LabVIEW 是一种流行的图形编程语言。 通常用LabVIEW 来使用NI DAQ 硬件,但 NI DAQmx 也可通过 C、C#,Python 等语言进行控制。
下面将介绍如何使用 Python 和 NI DAQmx 来控制 NI DAQ 设备。
首先在NI官网上下载NI-DAQmx的驱动,它是免费的。链接:NI-DAQ™mx-Download - NI
比如免费下载Pycharm社区版,然后新建一个pyproject,后面就可安装python。或者在python 社区下载相应版本安装即可。 Download Python | Python.org
下面代码是举例如何用python控制NI USB6008设备
首先可以打开命令提示符cmd, 安装nidaqmx
python -m pip install nidaqmx
如果是在pycharm里面的话可以直接import nidaqmx,在里面安装nidaqmx即可:
import nidaqmx
接下来是从NI USB6008设备的模拟信号口读取数据并输出:
- # read from ni usb 6008
- with nidaqmx.Task() as task:
- task.ai_channels.add_ai_voltage_chan("Dev1/ai0")
- t = task.read(number_of_samples_per_channel=2)
- print(t)
- task.stop
- task.close()
从NI USB6008设备的模拟信号口写入值如下:
- # write to ni usb 6008
-
- with nidaqmx.Task() as task:
- task.ao_channels.add_ao_voltage_chan("Dev1/ao0", min_val= 0.0, max_val= 5.0)
- task.write([2])
- task.stop
- task.close()
上面需要妥当地设置好信道口的最大和最小值,这里最小值0V,最大值5V.写入值为2V.
除了自己编写python 来控制NI USB6008外还可以使用NI的测试面板,首先安装NI max, 在这里面可以找到NI USB6008设备,其设备名Dev1也对应上面python代码里的名字。
这个测试界面在Analog input 模拟输入选项也可以显示出绘出采集数据变化曲线,非常好用。本文只粗略介绍下运用python来控制NI硬件,以后再更再添加具体内容。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。