Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Encoder with Ni PCI-6122

Solved!
Go to solution

Hello,

 

I have a PCI-6122 card and I'd like to use one of the counters as CI Angular Encoder, but I got -200431 error code. Is it any way to use this card counter as encoder?

 

"Error -200431 occurred at DAQmx Create Channel (CI-Position-Angular Encoder).vi:3840002
Possible reason(s):
Selected physical channel does not support the measurement type required by the virtual channel you are creating.
Create a channel of a measurement type that is supported by the physical channel, or select a physical channel that supports the measurement type.
Property: CI.MeasType
Requested Value: Position:Angular Encoder
Possible Values: Frequency, Period, Pulse Width, Semi Period, Count Edges"
 
The second part I tried to trigger continous analog read to the ticks out of the motor encoder, but it hasn't worked. So how can I trigger analog read to counter input ticks? I need to get analog data for every tick.
 
Thanks,
Peter
0 Kudos
Message 1 of 3
(4,037 Views)

Hi Peter! It looks like the Angular Encoder measurement is not supported on the S series devices (61xx). It is supported on the M series devices however (62xx).

0 Kudos
Message 2 of 3
(3,945 Views)
Solution
Accepted by topic author hex_c

Peter:

 

Two main thoughts:

 

1. If you have unidirectional motion, you could set up an edge counting task and do your own conversion to angle.  

 

2. You should be able to configure your AI task to use a digital TTL input signal as its sample clock.  If your encoder signal is TTL, 

wire it to any of the PFI input pins of your card and configure the AI task to use that PFI input as its sample clock.   By the way, this

makes the edge counting kinda unnecessary, as the # of samples captured by the AI task *is* the edge count.

 

 

-Kevin P

ALERT! LabVIEW's subscription-only policy coming to an end (finally!). Permanent license pricing remains WIP. Tread carefully.
Message 3 of 3
(3,923 Views)