NI DAQMX Scale Configuration - ni/grpc-device GitHub Wiki

Scale Configuration

DAQmxCalculateReversePolyCoeff

int32 DAQmxCalculateReversePolyCoeff (float64 forwardCoeffs[], uInt32 numForwardCoeffsIn, float64 minValX, float64 maxValX, int32 numPointsToCompute, int32 reversePolyOrder, float64 reverseCoeffs[]);

Purpose

Computes a set of coefficients for a polynomial that approximates the inverse of the polynomial with the coefficients you specify with forwardCoeffs. The function generates a table of x versus y values over the range of x. The function then finds a polynomial fit, using the least squares method to compute a polynomial that computes an x given a y.

Parameters

Input
Name Type Description
forwardCoeffs float64 [] The array of the forward coefficients for the polynomial that computes y given a value of x. Each element of the array corresponds to a term of the equation. For example, if index 3 of the array is 9, the fourth term of the equation is 9x3.
numForwardCoeffsIn uInt32 The number of elements in forwardCoeff.
minValX float64 The minimum value of x for which you use the polynomial. This is the smallest value of x for which the function generates a y value in the table.
maxValX float64 The maximum value of x for which you use the polynomial. This is the largest value of x for which the function generates a y value in the table.
numPointsToCompute int32 The number of points in the table of x versus y values. The function spaces the values evenly between minValX and maxValX.
reversePolyOrder int32 The order of the reverse polynomial to compute. For example, an input of 3 indicates a 3rd order polynomial. An input of -1 indicates to compute a reverse polynomial of the same order as the forward polynomial.
Output
reverseCoeffs float64 [] The array of the reverse coefficients of the polynomial. Each element of the array corresponds to a term of the equation. For example, if index 3 of the array is 9, the fourth term of the equation is 9y3.
reverseCoeffs will be one greater than what you passed for reversePolyOrder. If you pass -1 for reversePolyOrder, the array must be the size of forwardCoeffs. Otherwise, the behavior is undefined.

Return Value

Name Type Description
status int32 The error code returned by the function in the event of an error or warning. A value of 0 indicates success. A positive value indicates a warning. A negative value indicates an error.

DAQmxCreateLinScale

int32 DAQmxCreateLinScale (const char name[], float64 slope, float64 yIntercept, int32 preScaledUnits, const char scaledUnits[]);

Purpose

Creates and configures a scale that uses the equation y=mx+b, where x is the prescaled value and y is the scaled value. The equation is identical for input and output. If your equation is in the form x=my+b, you must first solve for y in terms of x.

Parameters

Input
Name Type Description
name const char [] Identifies the custom scale for later use, such as when you create channels.
slope float64 The slope, m, in the equation.
yIntercept float64 The y-intercept, b, in the equation.
preScaledUnits int32 The units of the values to scale.
Value Description
DAQmx_Val_Volts volts
DAQmx_Val_Amps amperes
DAQmx_Val_DegF degrees Fahrenheit
DAQmx_Val_DegC degrees Celsius
DAQmx_Val_DegR degrees Rankine
DAQmx_Val_Kelvins kelvins
DAQmx_Val_Strain strain
DAQmx_Val_Ohms ohms
DAQmx_Val_Hz hertz
DAQmx_Val_Seconds seconds
DAQmx_Val_Meters meters
DAQmx_Val_Inches inches
DAQmx_Val_Degrees degrees
DAQmx_Val_Radians radians
DAQmx_Val_g G. 1 g is approximately equal to 9.81 m/s2.
DAQmx_Val_MetersPerSecondSquared meters per second per second
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_KilogramForce kilograms-force
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_PoundsPerSquareInch pounds per square inch
DAQmx_Val_Bar bar
DAQmx_Val_Pascals pascals
DAQmx_Val_VoltsPerVolt volts per volt
DAQmx_Val_mVoltsPerVolt millivolts per volt
DAQmx_Val_NewtonMeters newton meters
DAQmx_Val_InchOunces ounce-inches
DAQmx_Val_InchPounds pound-inches
DAQmx_Val_FootPounds pound-feet
DAQmx_Val_Strain strain
DAQmx_Val_FromTEDS Units defined by TEDS information associated with the channel.
scaledUnits const char [] The units you want to use for the scaled value. You can use an arbitrary value.

Return Value

Name Type Description
status int32 The error code returned by the function in the event of an error or warning. A value of 0 indicates success. A positive value indicates a warning. A negative value indicates an error.

DAQmxCreateMapScale

int32 DAQmxCreateMapScale (const char name[], float64 prescaledMin, float64 prescaledMax, float64 scaledMin, float64 scaledMax, int32 preScaledUnits, const char scaledUnits[]);

Purpose

Creates and configures a scale that scales values proportionally from a range of prescaled values to a range of scaled values.

Parameters

Input
Name Type Description
name const char [] Identifies the custom scale for later use, such as when you create channels.
prescaledMin float64 The smallest value in the range of prescaled values. NI-DAQmx maps this value to scaledMin.
prescaledMax float64 The largest value in the range of prescaled values. NI-DAQmx maps this value to scaledMax.
scaledMin float64 The smallest value in the range of scaled values. NI-DAQmx maps this value to prescaledMin. Read operations clip samples that are smaller than this value. Write operations generate errors for samples that are smaller than this value.
scaledMax float64 The largest value in the range of scaled values. NI-DAQmx maps this value to prescaledMax. Read operations clip samples that are larger than this value. Write operations generate errors for samples that are larger than this value.
preScaledUnits int32 The units of the values to scale.
Value Description
DAQmx_Val_Volts volts
DAQmx_Val_Amps amperes
DAQmx_Val_DegF degrees Fahrenheit
DAQmx_Val_DegC degrees Celsius
DAQmx_Val_DegR degrees Rankine
DAQmx_Val_Kelvins kelvins
DAQmx_Val_Strain strain
DAQmx_Val_Ohms ohms
DAQmx_Val_Hz hertz
DAQmx_Val_Seconds seconds
DAQmx_Val_Meters meters
DAQmx_Val_Inches inches
DAQmx_Val_Degrees degrees
DAQmx_Val_Radians radians
DAQmx_Val_g G. 1 g is approximately equal to 9.81 m/s2.
DAQmx_Val_MetersPerSecondSquared meters per second per second
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_KilogramForce kilograms-force
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_PoundsPerSquareInch pounds per square inch
DAQmx_Val_Bar bar
DAQmx_Val_Pascals pascals
DAQmx_Val_VoltsPerVolt volts per volt
DAQmx_Val_mVoltsPerVolt millivolts per volt
DAQmx_Val_NewtonMeters newton meters
DAQmx_Val_InchOunces ounce-inches
DAQmx_Val_InchPounds pound-inches
DAQmx_Val_FootPounds pound-feet
DAQmx_Val_Strain strain
DAQmx_Val_FromTEDS Units defined by TEDS information associated with the channel.
scaledUnits const char [] The units you want to use for the scaled value. You can use an arbitrary value.

Return Value

Name Type Description
status int32 The error code returned by the function in the event of an error or warning. A value of 0 indicates success. A positive value indicates a warning. A negative value indicates an error.

DAQmxCreatePolynomialScale

int32 DAQmxCreatePolynomialScale (const char name[], float64 forwardCoeffs[], uInt32 numForwardCoeffsIn, float64 reverseCoeffs[], uInt32 numReverseCoeffsIn, int32 preScaledUnits, const char scaledUnits[]);

Purpose

Creates and configures a scale that uses an nth order polynomial equation. NI-DAQmx requires both a polynomial to convert prescaled values to scaled values (forward) and a polynomial to convert scaled values to prescaled values (reverse). If you know only one set of coefficients, use DAQmxCalculateReversePolyCoeff to generate the other set.

Parameters

Input
Name Type Description
name const char [] Identifies the custom scale for later use, such as when you create channels.
forwardCoeffs float64 [] An array of coefficients for the polynomial that converts prescaled values to scaled values. Each element of the array corresponds to a term of the equation. For example, if index 3 of the array is 9, the fourth term of the equation is 9x3.
numForwardCoeffsIn uInt32 The number of elements in forwardCoeff.
reverseCoeffs float64 [] An array of coefficients for the polynomial that converts scaled values to prescaled values. Each element of the array corresponds to a term of the equation. For example, if index 3 of the array is 9, the fourth term of the equation is 9y3.
numReverseCoeffsIn uInt32 The number of elements in reverseCoeff.
preScaledUnits int32 The units of the values to scale.
Value Description
DAQmx_Val_Volts volts
DAQmx_Val_Amps amperes
DAQmx_Val_DegF degrees Fahrenheit
DAQmx_Val_DegC degrees Celsius
DAQmx_Val_DegR degrees Rankine
DAQmx_Val_Kelvins kelvins
DAQmx_Val_Strain strain
DAQmx_Val_Ohms ohms
DAQmx_Val_Hz hertz
DAQmx_Val_Seconds seconds
DAQmx_Val_Meters meters
DAQmx_Val_Inches inches
DAQmx_Val_Degrees degrees
DAQmx_Val_Radians radians
DAQmx_Val_g G. 1 g is approximately equal to 9.81 m/s2.
DAQmx_Val_MetersPerSecondSquared meters per second per second
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_KilogramForce kilograms-force
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_PoundsPerSquareInch pounds per square inch
DAQmx_Val_Bar bar
DAQmx_Val_Pascals pascals
DAQmx_Val_VoltsPerVolt volts per volt
DAQmx_Val_mVoltsPerVolt millivolts per volt
DAQmx_Val_NewtonMeters newton meters
DAQmx_Val_InchOunces ounce-inches
DAQmx_Val_InchPounds pound-inches
DAQmx_Val_FootPounds pound-feet
DAQmx_Val_Strain strain
DAQmx_Val_FromTEDS Units defined by TEDS information associated with the channel.
scaledUnits const char [] The units you want to use for the scaled value. You can use an arbitrary value.

Return Value

Name Type Description
status int32 The error code returned by the function in the event of an error or warning. A value of 0 indicates success. A positive value indicates a warning. A negative value indicates an error.

DAQmxCreateTableScale

int32 DAQmxCreateTableScale (const char name[], float64 prescaledVals[], uInt32 numPrescaledValsIn, float64 scaledVals[], uInt32 numScaledValsIn, int32 preScaledUnits, const char scaledUnits[]);

Purpose

Creates and configures a scale that maps an array of prescaled values to an array of corresponding scaled values. NI-DAQmx applies linear interpolation to values that fall between the values in the table. Read operations clip scaled samples that are outside the maximum and minimum scaled values found in the table. Write operations generate errors for samples that are outside the minimum and maximum scaled values found in the table.

Parameters

Input
Name Type Description
name const char [] Identifies the custom scale for later use, such as when you create channels.
prescaledVals float64 [] An array of prescaled values. These values map directly to the values in scaledVals.
numPrescaledValsIn uInt32 The number of elements in prescaledVals.
scaledVals float64 [] An array of scaled values. These values map directly to the values in prescaledVals.
numScaledValsIn uInt32 The number of elements in scaledVals.
preScaledUnits int32 The units of the values to scale.
Value Description
DAQmx_Val_Volts volts
DAQmx_Val_Amps amperes
DAQmx_Val_DegF degrees Fahrenheit
DAQmx_Val_DegC degrees Celsius
DAQmx_Val_DegR degrees Rankine
DAQmx_Val_Kelvins kelvins
DAQmx_Val_Strain strain
DAQmx_Val_Ohms ohms
DAQmx_Val_Hz hertz
DAQmx_Val_Seconds seconds
DAQmx_Val_Meters meters
DAQmx_Val_Inches inches
DAQmx_Val_Degrees degrees
DAQmx_Val_Radians radians
DAQmx_Val_g G. 1 g is approximately equal to 9.81 m/s2.
DAQmx_Val_MetersPerSecondSquared meters per second per second
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_KilogramForce kilograms-force
DAQmx_Val_Newtons newtons
DAQmx_Val_Pounds pounds
DAQmx_Val_PoundsPerSquareInch pounds per square inch
DAQmx_Val_Bar bar
DAQmx_Val_Pascals pascals
DAQmx_Val_VoltsPerVolt volts per volt
DAQmx_Val_mVoltsPerVolt millivolts per volt
DAQmx_Val_NewtonMeters newton meters
DAQmx_Val_InchOunces ounce-inches
DAQmx_Val_InchPounds pound-inches
DAQmx_Val_FootPounds pound-feet
DAQmx_Val_Strain strain
DAQmx_Val_FromTEDS Units defined by TEDS information associated with the channel.
scaledUnits const char [] The units you want to use for the scaled value. You can use an arbitrary value.

Return Value

Name Type Description
status int32 The error code returned by the function in the event of an error or warning. A value of 0 indicates success. A positive value indicates a warning. A negative value indicates an error.
⚠️ **GitHub.com Fallback** ⚠️