DAQmx Create Channel (CI-Position-Angular Encoder) VI
- Updated2025-07-28
- 6 minute(s) read
Creates a channel that uses an angular encoder to measure angular position. With the exception of devices that support multi-counter tasks, you can create only one counter input channel at a time with this VI because a task can contain only one counter input channel. To read from multiple counters simultaneously, use a separate task for each counter. Connect the input signals to the default input terminals of the counter unless you select different input terminals.

Inputs/Outputs
decoding type
—
decoding type specifies how to count and interpret the pulses the encoder generates on signal A and signal B. X1, X2, and X4 are valid for quadrature encoders only. Two Pulse Counting is valid only for two-pulse encoders. X2 and X4 decoding are more sensitive to smaller changes in position than X1 encoding, with X4 being the most sensitive. However, more sensitive decoding is more likely to produce erroneous measurements if vibration exists in the encoder or other noise exists in the signals.
z index phase
—
z index phase specifies the states at which signal A and signal B must be while signal Z is high for NI-DAQmx to reset the measurement. If signal Z is never high while signal A and signal B are high, for example, you must choose a phase other than A High B High. When signal Z transitions to high and how long it stays high varies from encoder to encoder. Refer to the documentation for the encoder to determine the timing of signal Z with respect to signal A and signal B.
z index value
—
z index value specifies in units the value to which to reset the measurement when signal Z is high and signal A and signal B are at the states you specify with z index phase.
z index enable
—
z index enable specifies whether to use Z indexing for the channel.
task in
—
task in specifies the task to which to add the virtual channels this VI creates. If you do not specify a task, NI-DAQmx creates a task for you and adds the virtual channels this VI creates to that task.
counter
—
counter specifies the name of the counter to use to create the virtual channel. The DAQmx physical channel constant lists all physical channels, including counters, for devices installed in the system.
name to assign
—
name to assign specifies a name to assign to the virtual channel this VI creates. If you do not wire a value to this input, NI-DAQmx uses the physical channel name as the virtual channel name. If you use this input to provide your own names for the virtual channels, you must use the names when you refer to these channels in other NI-DAQmx VIs and Property Nodes, such as the source input of the DAQmx Trigger VI. If you create multiple virtual channels with one DAQmx Create Virtual Channel VI, you can specify a comma-separated list of names to assign to the virtual channels. If you provide fewer names than the number of virtual channels you create, NI-DAQmx automatically assigns names to the virtual channels.
units
—
units specifies the units to use to return angular position measurements from the channel.
error in
—
error in describes error conditions that occur before this VI or function runs. The default is no error. If an error occurred before this VI or function runs, the VI or function passes the error in value to error out. If an error occurs while this VI or function runs, the VI or function runs normally and sets its own error status in error out. Use the Simple Error Handler or General Error Handler VIs to display the description of the error code. Use error in and error out to check errors and to specify execution order by wiring error out from one node to error in of the next node.
custom scale name
—
custom scale name specifies the name of a custom scale for the channel. If you want the channel to use a custom scale, wire the name of the custom scale to this input and set units to From Custom Scale.
pulses per revolution
—
pulses per revolution is the number of pulses the encoder generates per revolution. This value is the number of pulses on either signal A or signal B, not the total number of pulses on both signal A and signal B.
initial angle
—
initial angle is the starting angle of the encoder. This value is in the units you specify with the units input.
task out
—
task out is a reference to the task after this VI runs. The task contains any newly created virtual channels. If you did not wire a value to task in, NI-DAQmx automatically creates the task this output refers to.
error out
—
error out contains error information. If error in indicates that an error occurred before this VI or function ran, error out contains the same error information. Otherwise, error out describes the error status that this VI or function produces. Right-click the error out indicator on the front panel and select Explain Error from the shortcut menu for more information about the error. |
decoding type
—
z index value
—
z index enable
—
task in
—
counter
—
name to assign
—
error in
—
pulses per revolution
—
task out
—
error out
—