NI DCPOWER Query Functions - ni/grpc-device GitHub Wiki
- niDCPower_QueryMaxCurrentLimit
- niDCPower_QueryMaxVoltageLevel
- niDCPower_QueryMinCurrentLimit
- niDCPower_QueryLatchedOutputCutoffState
- niDCPower_ClearLatchedOutputCutoffState
ViStatus niDCPower_QueryMaxCurrentLimit(ViSession vi, ViConstString channelName, ViReal64 voltageLevel, ViReal64 *maxCurrentLimit);
Queries the maximum current limit on an output channel if the output channel is set to the specified voltageLevel.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies a particular instrument session. vi is obtained from the niDCPower_InitializeWithIndependentChannels function. |
channelName | ViConstString |
Specifies the output channel to query. The maximum current limit may only be queried for one channel at a time. Specify the channel using the form PXI1Slot3/0, where PXI1Slot3 is the instrument resource name and 0 is the channel. |
voltageLevel | ViReal64 | Specifies the voltage level to use when calculating the maxCurrentLimit. |
Output | ||
Name | Type | Description |
maxCurrentLimit | ViReal64* | Returns the maximum current limit that can be set with the specified voltageLevel. |
Name | Type | Description |
---|---|---|
Status | ViStatus | Reports the status of this operation. To obtain a text description of the status code, call the niDCPower_error_message function. To obtain additional information concerning the error condition, call the niDCPower_GetError function. |
ViStatus niDCPower_QueryMaxVoltageLevel(ViSession vi, ViConstString channelName, ViReal64 currentLimit, ViReal64 *maxVoltageLevel);
Queries the maximum voltage level on an output channel if the output channel is set to the specified currentLimit.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies a particular instrument session. vi is obtained from the niDCPower_InitializeWithIndependentChannels function. |
channelName | ViConstString |
Specifies the output channel to query. The maximum voltage level may only be queried for one channel at a time. Specify the channel using the form PXI1Slot3/0, where PXI1Slot3 is the instrument resource name and 0 is the channel. |
currentLimit | ViReal64 | Specifies the current limit to use when calculating the maxVoltageLevel. |
Output | ||
Name | Type | Description |
maxVoltageLevel | ViReal64* | Returns the maximum voltage level that can be set on an output channel with the specified currentLimit. |
Name | Type | Description |
---|---|---|
Status | ViStatus | Reports the status of this operation. To obtain a text description of the status code, call the niDCPower_error_message function. To obtain additional information concerning the error condition, call the niDCPower_GetError function. |
ViStatus niDCPower_QueryMinCurrentLimit(ViSession vi, ViConstString channelName, ViReal64 voltageLevel, ViReal64 *minCurrentLimit);
Queries the minimum current limit on an output channel if the output channel is set to the specified voltageLevel.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies a particular instrument session. vi is obtained from the niDCPower_InitializeWithIndependentChannels function. |
channelName | ViConstString |
Specifies the output channel to query. The minimum current limit may only be queried for one channel at a time. Specify the channel using the form PXI1Slot3/0, where PXI1Slot3 is the instrument resource name and 0 is the channel. |
voltageLevel | ViReal64 | Specifies the voltage level to use when calculating the minCurrentLimit. |
Output | ||
Name | Type | Description |
minCurrentLimit | ViReal64* | Returns the minimum current limit that can be set on an output channel with the specified voltageLevel. |
Name | Type | Description |
---|---|---|
Status | ViStatus | Reports the status of this operation. To obtain a text description of the status code, call the niDCPower_error_message function. To obtain additional information concerning the error condition, call the niDCPower_GetError function. |
ViStatus niDCPower_QueryLatchedOutputCutoffState(ViSession vi, ViConstString channelName, ViInt32 outputCutoffReason ViBoolean* outputCutoffState);
Discovers if an output cutoff limit was exceeded for the specified reason. When an output cutoff is engaged, the output of the channel(s) is disconnected. If a limit was exceeded, the state is latched until you clear it with niDCPower_ClearLatchedOutputCutoffState or niDCPower_ResetWithChannels.
outputCutoffReason specifies the conditions for which an output is disconnected.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies a particular instrument session. vi is obtained from the niDCPower_InitializeWithIndependentChannels function. |
channelName | ViConstString |
Specifies the channel(s) to use. Specify the channel(s) using the form PXI1Slot3/0,PXI1Slot3/2-3,PXI1Slot4/2-3 or PXI1Slot3/0,PXI1Slot3/2:3,PXI1Slot4/2:3, where PXI1Slot3 and PXI1Slot4 are instrument resource names and 0, 2, and 3 are channels. If you pass "" for this control, all channels in the session are used. |
outputCutoffReason | ViInt32 | Specifies which output cutoff conditions to query. Defined Values: |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_ALL (-1) | Any output cutoff condition was met. |
---|---|
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_VOLTAGE_OUTPUT_HIGH (1) | The output exceeded the high cutoff limit for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_VOLTAGE_OUTPUT_LOW (2) | The output fell below the low cutoff limit for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_CURRENT_MEASURE_HIGH (4) | The measured current exceeded the high cutoff limit for current output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_CURRENT_MEASURE_LOW (8) | The measured current fell below the low cutoff limit for current output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_POSITIVE_VOLTAGE_CHANGE (16) | The voltage slew rate increased beyond the positive change cutoff for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_NEGATIVE_VOLTAGE_CHANGE (32) | The voltage slew rate decreased beyond the negative change cutoff for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_POSITIVE_CURRENT_CHANGE (64) | The current slew rate increased beyond the positive change cutoff for current output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_NEGATIVE_CURRENT_CHANGE (128) | The current slew rate decreased beyond the negative change cutoff for current output. |
Output | ||
Name | Type | Description |
outputCutoffState | ViBoolean* | Specifies whether an output cutoff has engaged. Defined Values: |
VI_TRUE | An output cutoff has engaged for the conditions in outputCutoffReason. |
---|---|
VI_FALSE | No output cutoff has engaged. |
Name | Type | Description |
---|---|---|
Status | ViStatus | Reports the status of this operation. To obtain a text description of the status code, call the niDCPower_error_message function. To obtain additional information concerning the error condition, call the niDCPower_GetError function. |
ViStatus niDCPower_ClearLatchedOutputCutoffState(ViSession vi, ViConstString channelName, ViInt32 outputCutoffReason);
Clears the state of an output cutoff that was engaged.
To clear the state for all output cutoff reasons, use NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_ALL.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies a particular instrument session. vi is obtained from the niDCPower_InitializeWithIndependentChannels function. |
channelName | ViConstString |
Specifies the channel(s) to use. Specify the channel(s) using the form PXI1Slot3/0,PXI1Slot3/2-3,PXI1Slot4/2-3 or PXI1Slot3/0,PXI1Slot3/2:3,PXI1Slot4/2:3, where PXI1Slot3 and PXI1Slot4 are instrument resource names and 0, 2, and 3 are channels. If you pass "" for this control, all channels in the session are used. |
outputCutoffReason | ViInt32 | Specifies the reasons for which to clear the output cutoff state. Defined Values: |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_ALL (-1) | Clears all output cutoff conditions. |
---|---|
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_VOLTAGE_OUTPUT_HIGH (1) | Clears cutoffs caused when the output exceeded the high cutoff limit for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_VOLTAGE_OUTPUT_LOW (2) | Clears cutoffs caused when the output fell below the low cutoff limit for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_CURRENT_MEASURE_HIGH (4) | Clears cutoffs caused when the measured current exceeded the high cutoff limit for current output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_CURRENT_MEASURE_LOW (8) | Clears cutoffs caused when the measured current fell below the low cutoff limit for current output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_POSITIVE_VOLTAGE_CHANGE (16) | Clears cutoffs caused when the voltage slew rate increased beyond the positive change cutoff for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_NEGATIVE_VOLTAGE_CHANGE (32) | Clears cutoffs caused when the voltage slew rate decreased beyond the negative change cutoff for voltage output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_POSITIVE_CURRENT_CHANGE (64) | Clears cutoffs caused when the current slew rate increased beyond the positive change cutoff for current output. |
NIDCPOWER_VAL_OUTPUT_CUTOFF_REASON_NEGATIVE_CURRENT_CHANGE (128) | Clears cutoffs caused when the voltage slew rate decreased beyond the negative change cutoff for current output. |
Name | Type | Description |
---|---|---|
Status | ViStatus | Reports the status of this operation. To obtain a text description of the status code, call the niDCPower_error_message function. To obtain additional information concerning the error condition, call the niDCPower_GetError function. |