Ni
hardware_control.instruments.ni.Ni_9000 module
- class hardware_control.instruments.ni.Ni_9000.Ni_9000(instrument_name: str = 'NI_9000', connection_addr: str = '', modules: List | None = None, analog_channels: Dict | None = None, digital_channels: Dict | None = None)
Bases:
InstrumentNative Instruments (NI) 9000 series DAQ Module instrument class.
NI objects require a name for the instrument, a connection address for the physical instrument, and a list of modules in the instrument. Each module contains a given number of analog and/or digital channels. These channels can be specified in the analog_channels and digital_channels dictionaries, which have module numbers as keys and a list of channel numbers (either analog or digital) as values. As an example, one can initialize an NI_9000 object like so:
Ni_9000(“Power_Supplies”, connection_addr = “cDAQ1”, modules = [1, 6], analog_channels = {1: [0, 1]}, digital_channels = {6: [6, 7]})
Channel names consist of a module number, a signal type (‘a’ for analog and ‘d’ for digital), and a channel number. For example, channel number 1 on module number 2 with an analog signal would be ‘Mod2/a-1’.
- PARAMETERS
- CH<X>_V_MAX (float)
Maximum analog voltage for channel ‘X’.
- CH<X>_V_MIN (float)
Minimum analog voltage for channel ‘X’.
- CH<X>_TERMINAL_CONFIG (DIFF, NRSE, RSE)
Method of determining electrical potential differences for channel ‘X’.
- CH<X>_ANALOG (float)
Analog input/output value for channel ‘X’.
- CH<X>_DIGITAL (bool)
Digital input/output value for channel ‘X’
- COMMANDS
- DISPLAY_CONFIGURATION
Log terminal configurations, voltage maxima, and voltage minima for each channel.
- check_connection_commands: None | str | Iterable[str]
- connection_type: str | None
- device: None | socket.socket | pyvisa.resources.Resource | ModbusClient
- manufacturer: str | None
- model: str | None
- try_connect()
Checks if the instrument is in communication with the driver and tries to re-establish communication if it not.
Certain instruments require that this function be overwritten.