DAQ 和 I/O模块
NI 有许多 DAQ 设备(或 I/O 模块)可与 NI-DAQmx Python API 配合使用。NI 的低成本 USB DAQ 设备示例:USB-6001、... ,USB-6008, USB-6009。
下面将以USB-6008为例,其官网产品链接:USB-6008 - NI
USB-6008 是一款低成本、多功能 DAQ 设备。它提供模拟输入/输出、数字输入/输出和 32 位计数器。它有 8 个AI 单端或 4个 AI 差分(12 位,10 kS/s), 2 个 AO(150 Hz),12 个 DIO(可选择 DI 或 DO)。产品说明书链接:http://www.ni.com/pdf/manuals/375295c.pdf
如何使用Python 来控制 NI DAQ 设备? 下图是使用结合Python的 NI DAQ 从应用层到底层硬件的描述:
数据采集 (DAQ)
要读取传感器数据,通常需要 DAQ 也就是将数据采集设备连接到个人电脑,当然也可以使用 Arduino 、 Raspberry Pi 等设备。在这些情况下,通常需要安装供应商提供的驱动程序,如NI-DAQmx.
一个DAQ 系统由 4 个部分组成:1. 物理输入/输出信号、传感器 2.DAQ 设备/硬件 3.驱动软件
4. 软件应用程序(应用软件),这里指的是Python应用程序。
I/O 模块
I/O模块分为模拟或数字I/O。
NI-DAQmx 驱动
NI-DAQmx 是用于与 NI 数据采集 (DAQ) 设备进行通信和控制的软件。NI-DAQmx 仅支持 Windows 操作系统。通常情况下,可以将 LabVIEW 与 NI DAQ 硬件结合使用,但也可以通过 C、C#、Python 等语言使用 NI-DAQmx。此外NI-DAQmx 驱动程序是免费的!可以在NI官网上下载最新版本的 NI-DAQmx。
nidaqmx Python API
nidaqmx 是 与 NI DAQmx 驱动程序通信的 Python 库/API。在运行 nidaqmx 需要先安装好 NI-DAQmx 。可使用 pip 安装 nidaqmx:
pip install nidaqmx
之后将在(三)中介绍具体的Python 代码,来自Hans-Petter Halvorsen。