Programming States

NI DC Power Supplies and SMUs Help (NI-DCPower 17.6.1)

Edition Date: January 2018

Part Number: 370736U-01

View Product Info

DOWNLOAD (Windows Only)


NI-DCPower 18.5 (English | Japanese)

 

As illustrated in the following image, an NI-DCPower session can be in one of three programming states:

NI-DCPower Programming Model

Uncommitted

A session enters the Uncommitted state when you call the niDCPower Initialize With Channels VI or the niDCPower_InitializeWithChannels function.

Note Note  If you open a session with the niDCPower Initialize with Channels VI or the niDCPower_InitializeWithChannels function, all outputs are enabled when you call the niDCPower Initiate VI or the niDCPower_Initiate function to place to transition to the Running state.

The niDCPower Reset VI, niDCPower_Reset function, niDCPower Reset Device VI, and niDCPower_ResetDevice function also place a session in the Uncommitted state.

Although you can configure properties and attributes in the Uncommitted state, they are not applied until the Committed or Running states. Thus, in the Uncommitted state, the device remains configured as it was the last time a session was committed.

Call the niDCPower Commit VI or the niDCPower_Commit function from the Uncommitted state to verify all properties and attributes, apply a select group of settings to the device, and transition to the Committed state.

Committed

Call the niDCPower Commit VI or the niDCPower_Commit function to apply a select group of settings to the device and transition to the Committed state.

The following table lists the properties and attributes NI-DCPower applies upon entering the Committed state.

Property Attribute
niDCPower Aperture Time NIDCPOWER_ATTR_APERTURE_TIME
niDCPower Aperture Time Units NIDCPOWER_ATTR_APERTURE_TIME_UNITS
niDCPower Auto Zero NIDCPOWER_ATTR_AUTO_ZERO
niDCPower Current Compensation Frequency NIDCPOWER_ATTR_CURRENT_COMPENSATION_FREQUENCY
niDCPower Current Gain Bandwidth NIDCPOWER_ATTR_CURRENT_GAIN_BANDWIDTH
niDCPower Current Pole Zero Ratio NIDCPOWER_ATTR_CURRENT_POLE_ZERO_RATIO
niDCPower Measure When NIDCPOWER_ATTR_MEASURE_WHEN
niDCPower Measure Record Length NIDCPOWER_ATTR_MEASURE_RECORD_LENGTH
niDCPower Measure Record Length Is Finite NIDCPOWER_ATTR_MEASURE_RECORD_LENGTH_IS_FINITE
niDCPower Output Capacitance NIDCPOWER_ATTR_OUTPUT_CAPACITANCE
niDCPower Output Connected NIDCPOWER_ATTR_OUTPUT_CONNECTED
niDCPower Output Resistance NIDCPOWER_ATTR_OUTPUT_RESISTANCE
niDCPower Power Line Frequency NIDCPOWER_ATTR_POWER_LINE_FREQUENCY
niDCPower Power Source NIDCPOWER_ATTR_POWER_SOURCE
niDCPower Reset Average Before Measurement NIDCPOWER_ATTR_RESET_AVERAGE_BEFORE_MEASUREMENT
niDCPower Samples to Average NIDCPOWER_ATTR_SAMPLES_TO_AVERAGE
niDCPower Sense NIDCPOWER_ATTR_SENSE
niDCPower Sequence Loop Count Is Finite NIDCPOWER_ATTR_SEQUENCE_LOOP_COUNT_IS_FINITE
niDCPower Sequence Loop Count NIDCPOWER_ATTR_SEQUENCE_LOOP_COUNT
niDCPower Source Delay NIDCPOWER_ATTR_SOURCE_DELAY
niDCPower Source Mode NIDCPOWER_ATTR_SOURCE_MODE
niDCPower Transient Response NIDCPOWER_ATTR_TRANSIENT_RESPONSE
niDCPower Voltage Compensation Frequency NIDCPOWER_ATTR_VOLTAGE_COMPENSATION_FREQUENCY
niDCPower Voltage Gain Bandwidth NIDCPOWER_ATTR_VOLTAGE_GAIN_BANDWIDTH
niDCPower Voltage Pole Zero Ratio NIDCPOWER_ATTR_VOLTAGE_POLE_ZERO_RATIO
Source:Pulse Voltage:Pulse Bias Voltage Level NIDCPOWER_ATTR_PULSE_BIAS_VOLTAGE_LEVEL
Source:Pulse Current:Pulse Bias Voltage Limit NIDCPOWER_ATTR_PULSE_BIAS_VOLTAGE_LIMIT
Source:Pulse Current:Pulse Bias Voltage Limit High NIDCPOWER_ATTR_PULSE_BIAS_VOLTAGE_LIMIT_HIGH
Source:Pulse Current:Pulse Bias Voltage Limit Low NIDCPOWER_ATTR_PULSE_BIAS_VOLTAGE_LIMIT_LOW
Source:Pulse Current:Pulse Bias Current Level NIDCPOWER_ATTR_PULSE_BIAS_CURRENT_LEVEL
Source:Pulse Voltage:Pulse Bias Current Limit NIDCPOWER_ATTR_PULSE_BIAS_CURRENT_LIMIT
Source:Pulse Voltage:Pulse Bias Current Limit High NIDCPOWER_ATTR_PULSE_BIAS_CURRENT_LIMIT_HIGH
Source:Pulse Voltage:Pulse Bias Current Limit Low NIDCPOWER_ATTR_PULSE_BIAS_CURRENT_LIMIT_LOW
All trigger, events, and routing related properties All trigger, events, and routing related properties
Note Note  NI-DCPower applies any properties and attributes not listed in the table above to the device in the Running state.

If you configure a property or attribute multiple times, NI-DCPower applies only the most recent configuration upon entering the Committed state. If you modify any properties or attributes in the Committed state, the session implicitly transitions back to the Uncommitted state, and the device configuration continues to reflect the previously committed properties and attributes.

Call the niDCPower Initiate VI or the niDCPower_Initiate function from the Committed state to transition to the Running state.

Running

Call the niDCPower Initiate VI or the niDCPower_Initiate function to place a session in the Running state. In the Running state, the device begins output signal generation and can acquire measurements.

Note Note  If you open a session with the niDCPower Initialize with Channels VI or the niDCPower_InitializeWithChannels function, all outputs are enabled when you call the niDCPower Initiate VI or the niDCPower_Initiate function to place to transition to the Running state.

In the Running state, the device configuration determines the behavior of the device. For example, the device can either configure a single output point or step through a sequence of points. Additionally, the device can be configured to wait for triggers before performing an operation.

While running in Single Point source mode some properties and attributes can be reconfigured dynamically. Properties and attributes reconfigured dynamically (in the Running state) are immediately applied to the device.

Refer to Dynamic Reconfiguration for a list of the properties, attributes, VIs, and functions that can be dynamically reconfigured.

Note Note While running in Sequence source mode, you can disable device output after the Sequence Engine Done Event. No other properties and attributes are dynamically configurable while running a sequence.

In the Running state, there are several VIs and functions that you can use to take measurements, fetch buffered measurements, query the output state, or query the device state. The following table lists VIs and functions that can only be called in the Running state.

VI Function
niDCPower Measure niDCPower_Measure
niDCPower Measure Multiple niDCPower_MeasureMultiple
niDCPower Fetch Multiple niDCPower_FetchMultiple
niDCPower Send Software Edge Trigger niDCPower_SendSoftwareEdgeTrigger
niDCPower Query In Compliance niDCPower_QueryInCompliance
niDCPower Query Output State niDCPower_QueryOutputState
niDCPower Wait For Event niDCPower_WaitForEvent
Tip Tip  Call the niDCPower Abort VI or the niDCPower_Abort function to transition from the Running state to the Committed state. If Running in Sequence source mode, aborting cancels a sequence even if it has not yet run to completion.

Related Topics

Single Point Source Mode

Sequence Source Mode

Advanced Sequencing

Using the Device

WAS THIS ARTICLE HELPFUL?

Not Helpful