From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.


Showing results for 
Search instead for 
Did you mean: 

Labview Quadrature Encoder

Hello everybody, 

I am trying to use a qudrature Encoder to read the current position of a servo motor (Minas A5). The encoder is a differential ecoder as far as I can tell, because there are positive and negative outputs for the phases A and B (see Picture below)


Unfortunately the Quadrature_Encoder.VI I am using does not work. It does not recognise and count the number of counts. 

I dont really understand why. Hopefully somebody can help.

Below I will attach the VI. 


Thanks in advance for the help.



Download All
0 Kudos
Message 1 of 11

Have a look at this example.

0 Kudos
Message 2 of 11

What are you using for data acquisition? The DAQ card may not be compatible with the VI. Only some of the cards available can do quad encoder.

0 Kudos
Message 3 of 11

I am using a FPGA Card and the NI9375 Digital Input/Output Module

Is this Module also compatible with the example VI?

Do I have to put the Encoder on the Real-Time or on the FPGA?


I have tried it, but the Encoder does not count. 

Below are Screenshots of the Encoder built into our FPGA VI as a SubVI.


Thank you 🙂

0 Kudos
Message 4 of 11

It doesn't look like the NI9375 has high speed counters. You are going to need a card that has at least 2 high speed counters to set it up as an quad encoder.

0 Kudos
Message 5 of 11

thank you for the answer. 

I will order a new NI9411 Module. 

It should work with that right? 


Is the VI correct?




0 Kudos
Message 6 of 11

What chassis are you using for your C series?

0 Kudos
Message 7 of 11

The Chassis are cRio-9151

And the Controller is a PXI-8108

The FPGA Card is NI PXI-7842R




0 Kudos
Message 8 of 11

You are using obsolete hardware. Here is my suggestion to know if you can do what you are trying to do:


Open NI Max and try to create a global virtual channelNi Max Global.png:


Right click and add channel:


Create Channel.png

Choose counter input and position or angle depending on what you are trying to set up. It should show you the available channels if you have any. You can create a simulated device that is compatible with you system and check until you see the channels that you need. Once you create the channel it will ask you to set up the quad encoder.


This would be the best way I know to make sure you are getting something that will work.



0 Kudos
Message 9 of 11

It says, there are no supported devices found. Also not for any other functions like Analog Input,....

But we know, that it is possible to in and output Volages via a NI9263/ NI9215 Module. 


Do I first have to create any Virtual Channels? 

If so, how do I do that?


Sorry, I am still very new to LabVIEW.


0 Kudos
Message 10 of 11