Skip to main content

DAQ control using National Instruments DAQmx framework

Project description

Purpose

To create a python API for working with National Instruments NIDAQmx.

Installation

python -m pip install daqmx

Usage

You must first import the package:

from ni import NIDAQmxInstrument

You can then allocate the hardware without any further specifiers. Note that, if there is more than one DAQmx instrument available on your PC, the hardware allocated may not be the one you are expecting! Be sure to specify the device name, model number, or serial number to make the hardware acquisition process more deterministic.

daq = NIDAQmxInstrument()  # hardware with no specifiers

daq = NIDAQmxInstrument(device_name='Dev3')  # hardware specified by the device name

daq = NIDAQmxInstrument(model_number='USB-6001')  # hardware specified by model number

daq = NIDAQmxInstrument(serial_number=1234)  # hardware specified by serial number

Once you have the NIDAQmxInstrument instance, then you can use it to operate the instrument. See the examples directory for complete examples.
Some snippets to demonstrate common usages:

daq = NIDAQmxInstrument()  # automatic acquisition of hardware

daq.ao0 = 2.7V  # set the analog out 0 to 2.7V
daq.ao1 = 1.3V  # set the analog out 1 to 1.3V

print(f'daq.ai0.value: {daq.ai0.value:.3f}V')  # print a single sample 
                                               # from analog input 0

values = daq.ai1.capture(
    sample_count=10, rate=100,
    max_voltage=10.0, min_voltage=-10.0,
    mode='differential', timeout=3.0
)  # capture 10 samples from ai1 at a rate of 100Hz in differential mode
print(values)

daq.port0.line2 = True  # set the daq.<port>.<line> to True or False to write
print(daq.port0.line3)  # read the daq.<port>.<line> to read state of line

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Built Distribution

daqmx-0.4.1-py3-none-any.whl (8.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page