Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

PCI-7344: How to access the raw encoder pulses (A and B).

Hello,

 

I have a six of PCI-7344 boards and each one controls four actuators. The actuators have incremental encoders, which are wired to UMI-7774. The UMI-7774 converts the encoder pulses into single eneded and then sends it to the PCI-7344 via a high density cable. Then I use LabWindows/CVI and NI-Motion 15 to perform closed loop feedback.

 

How can I access the raw encoder pulses from the PCI-7344 using the LabWindows/CVI and NI-Motion 15? I already use the counts. However, I need to get the raw single ended pulses (A and B). So is there a function to access these parameters?

 

These pulses are going into the PCI-7344 FPGA chip. So I am hoping there is function to access these pulses.

 

Thank you.

 

 

0 Kudos
Message 1 of 4
(2,983 Views)

Hi,

 

 

I took a look through the PCI-7344 to see if there were available properties that would allow you to read the raw encoder signals. I found this picture on pg. 5-9 in the Motion Control 7344/7334 Hardware User Manual which shows that the signals are altered by a digital filter in the FPGA before usage.

 

encoder.PNG

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Looking through the NI-Motion manual, you could disable this filter by using Configure Encoder Filter and its C-equivalent flex_configure_encoder_filter. However, this would most likely lead to a lot of noise on the encoder.

 

An easier method would be to wire the A and B signals directly as digital inputs. 

 

Josh

Applications Engineer

National Instruments 

0 Kudos
Message 2 of 4
(2,940 Views)

Hi,

Unfortunately, wiring A and B pulses into a digital input is not a good option. We don’t have any spare digital inputs and we don’t have any spare PCI slots to add additional Digital Input Boards. All PCI slots are filled with boards. Also, we have several of these systems all over. So that makes any hardware upgrade costly and difficult.  

 

We are hoping to find a way to read the A and B pulses using the NI-motion software with our LabWindows/CVI function.

 

We can disable the filter you mentioned. However, how will that give us access to the raw A and B pulses? It seems this function (flex_configure_encoder_filter) will let you only set the maximum count frequency for an encoder channel.

 

Thank you.

 

0 Kudos
Message 3 of 4
(2,934 Views)

I am not a specialist for software issues of these devices but I do not think that it is possible to get access to the "raw" A and B lines, or, in other words (if I understood you correctly) to count the A and B pulses separately. I never ran across an application where this was needed but this does not mean that there are no such applications. 

Only solution I can think of is to wire the A and B lines to separate digital inputs or to a counter device.

Don't forget that when just counting A and B pulses you do not get any information about the position of your encoding device since just counting these pulses does not give any information about the direction of travel. So if you travel 100 pulses forward and 100 backward you will count 200 pulses but you will still be at the same position. 

0 Kudos
Message 4 of 4
(2,901 Views)