I have been developing and using a vibration control rig on and off for a year now. I am using a DAQ (4461)and LabVIEW to output a sine wave frequency sweep to a shaker and then read back both the test sample output voltage and an attached accelerometer. The sample under test is piezoelectric so as the frequency sweep goes through it's resonant frequency lots of energy is taken from the mechanical input vibrations and converted into electrical energy, this has a significant effect on the acceleration of the driving vibrations and means that they decrease quite a lot very quickly - once out of resonance the acceleration of the input vibrations returns to the desired level.
Until now this has not been an issue, we have run the tests without trying to control the acceleration and letting it do it's thing. Now however we need to control the acceleration level so that it is always at a constant level (say 300mg) even through the resonance of the device being tested. I have tried using the PID block to control the output amplitude of the driving sine wave but it's very difficult to control and the system keeps becoming unstable or simply not responding quickly enough.
Can anyone suggest a way to effectively control the acceleration so that it is roughly constant ( +/- 25mg) please?
There are several approachs you could take to solve this issue:
Please give us a bit more information so we can be more specific. How fast are you sweeping the frequency? Approximately what masses are involved? What operating system are you using? etc.