Counter/Timer

cancel
Showing results for 
Search instead for 
Did you mean: 

Continuously Measure RMP of BLDC Motor: 3,000RPM Max, 24 Pluses per revolution. NI 6009

Hello,

 

Can someone please help, I need to measure the RMP of 2 BLDC Motors they are 3,000RPM Max, 24 Pluses per revolution from the encoder. I have the NI 6009 and I'm using LabView 2017.

 

Can the NI 6009 effectively measure the RMP of these motors accurately and can someone please post a VI of the solution to doing this.

 

Thanks.

0 Kudos
Message 1 of 8
(3,399 Views)

What are your specs for "accurately"?

 

We'd need to know both the normal accuracy specs but also some stuff related to update speed.  How often must the measurement be updated with this accuracy?  What latency is allowed between the moment the speed is true and the moment your measurement task can establish the speed value?

 

The USB-6009 is a poor choice of hardware for this kind of task, you'd be much better off with a device containing at least 2 general-purpose counters.  You only have 1 counter and its dedicated to the wrong kind of purpose.

 

If you need USB, I'd advise something in the X-series line.  Some M-series devices would work too, though some would be more suitable than others (look for larger FIFO size on the counter).

 

 

-Kevin P

CAUTION! New LabVIEW adopters -- it's too late for me, but you *can* save yourself. The new subscription policy for LabVIEW puts NI's hand in your wallet for the rest of your working life. Are you sure you're *that* dedicated to LabVIEW? (Summary of my reasons in this post, part of a voluminous thread of mostly complaints starting here).
0 Kudos
Message 2 of 8
(3,379 Views)

Thanks for your reply, my specs for accuracy isn't very high, I know my hardware is limited, my goal is basically experimental. Reading the speed every second would do. Can this be achieved using the digital ports only and performing the counting at the software side?

0 Kudos
Message 3 of 8
(3,373 Views)

No, you really can't do that with digital inputs on a USB-6009 device.  It doesn't support hardware-timed, buffered digital I/O.  And neither Windows timing nor USB latency will reliably support the > 2.4 kHz software-timed sampling you'd need to capture the ~1.2 kHz encoder square wave.

 

 

-Kevin P

CAUTION! New LabVIEW adopters -- it's too late for me, but you *can* save yourself. The new subscription policy for LabVIEW puts NI's hand in your wallet for the rest of your working life. Are you sure you're *that* dedicated to LabVIEW? (Summary of my reasons in this post, part of a voluminous thread of mostly complaints starting here).
0 Kudos
Message 4 of 8
(3,365 Views)

Is there a way I can perhaps overcome the limitation of the 6009 by using a dedicated external IC that does the HZ to Voltage conversion and feed that into the DAQ? Eg. using the LM331 or related chips. I'm hoping I can get an inexpensive way that doesn't involve buying another DAQ.

0 Kudos
Message 5 of 8
(3,362 Views)

I don't know details about that chip or other frequency-to-voltage converters, but that seems like a viable way to get some reasonable data using your board's analog inputs. 

 

Accuracy may suffer a little, but the chips you look at should have specs for that to help you make an informed decision.  Realize too that the physical encoder and assembly tolerances will add their own error term no matter how you do the measurement.  So the F-to-V may not even be the dominant part of the inaccuracy.

 

 

-Kevin P

CAUTION! New LabVIEW adopters -- it's too late for me, but you *can* save yourself. The new subscription policy for LabVIEW puts NI's hand in your wallet for the rest of your working life. Are you sure you're *that* dedicated to LabVIEW? (Summary of my reasons in this post, part of a voluminous thread of mostly complaints starting here).
0 Kudos
Message 6 of 8
(3,358 Views)

Hi Kevin,

 

I came across this thread; https://www.labviewmakerhub.com/forums/viewtopic.php?f=11&t=362

 

Is this a viable approach for solving my problem?

 

0 Kudos
Message 7 of 8
(3,344 Views)

I don't know and can't know.  That's one of the problems with screenshots of Express vi's and DAQ Assistant vi's -- the behavior greatly depends on hidden configuration options.  Same for those blue "Dynamic Data" wires.  Further, the code over there wasn't working correctly for a much slower 15 Hz signal, parts of it that I *can* interpret look a bit haphazard, and there really isn't much "code" there anyway.  I would advise starting from scratch rather than trying to use that code as a starting point to build from.  Shipping examples for AI would be a good starting point, the post-processing would be up to you.

 

More generally, capturing the encoder signal using AI is at least feasible to try to do with a USB-6009.  The posted code shows a PID node though, implying a desire to run a control loop.  *That* part probably will *not* be viable with your USB-6009.   

 

Previously you narrowed your question to the use of digital inputs for acquisition.  *That* is still *NOT* viable with the 6009.

 

 

-Kevin P

CAUTION! New LabVIEW adopters -- it's too late for me, but you *can* save yourself. The new subscription policy for LabVIEW puts NI's hand in your wallet for the rest of your working life. Are you sure you're *that* dedicated to LabVIEW? (Summary of my reasons in this post, part of a voluminous thread of mostly complaints starting here).
0 Kudos
Message 8 of 8
(3,334 Views)