Unless you are using LabVIEW RT on a PXI system it's not a good idea to do control loops in LabVIEW or any other Windows based software. On Windows the timing behavior is not deterministic. That means the loop cycle time varies. The loop cycle time directly influences the control algorithm. The faster a PID loop runs, the lower your Kp, Kd, Ki values need to be. Thus on a system like Windows without deterministic timing it's hard or even impossible to get a stable system.
A much better choice is the use of a motion control board, e. g. the PCI-7344 or PCI-7342 board. These devices run the PID loop onboard in realtime and you only need to set parameters like travel distance, speed and acceleration. You can use quadrature encoders or analog signals as feedback signals and
with the latest release of the driver software, NI-Motion 6.0 there is also an assistant included that helps you to eliminate the effects caused by static friction that are immanent to piezo systems.
Please visit the following link to get more information:
http://www.ni.com/motion
Best regards,
Jochen Klier
Applications Engineering Group Leader
National Instruments GERmany GMbH