04-30-2013 02:28 PM
Hello,
I have a linear stage that I'd like to move sinusoidally at frequencies of up to 100Hz. I'd like to determine the best way to accomplish this.
Here's one idea I had: generate the sinusoidal signal with an external function generator (e.g., HP 33120), feed that into my DAQ card, then set that as my target position using the Load Target Position vi. Problem is, I did some experiments with a simple VI and determined that the fastest I can read a voltage and update the target position is ~250Hz. So that would give very poor sampling of the incoming 100Hz wave.
I thought about using the Basic Function Generator vi, but that would still require the Load Target Position vi, so I would run into the same problem.
Would there be any way to directly feed in the HP Function Generator signal to the target position on the motion card's control loop? Could I use any of the PXI chassi's capabilities?
Hardware:
Linear voice coil stage
Analog potentiometer position feedback
PXI-7358 motion card
UMI-7764 and SCB-68 screw-terminal boards
PXIe-1071 chassis
PXIe-6363 DAQ card
PXIe-8370 MXI x4 pc/chassis link
HP 33120A function generator
Windows desktop PC
Copley Accelus amplifier
Thanks!
Matthew
05-01-2013 05:08 PM
You should be able to generate a sine wane in LabVIEW and take the value for the height of that sine wave and feed it into the Target Position of the Load Target Position.flx and have the position configured as Absolute Position. You can look at the Simple One-Axis Move.vi in the NI Example Finder to see how the target position is fed to the Load Target Position.flx.
I don't think you'll need the intricacies that you've mentioned. The was I understand it, it shouldn't be too complicated. I might not have a proper understanding of what you're trying to communicate though.
Hope this helps.