Identification and Control of a Cantilever Beam's Vibrations using PiezoElectric Actuator

In this experiment, a beam has been attached to a shaker and an IMU sensor has been used to read the linear acceleration of beams free end.
By investigating and analyzing IMU data in the frequency domain a linear transfer function has been approximated which described systems dynamics. (In this part MATLAB frf and fitmag functions were used)
Here the system input is the voltage applied to piezoelectric and the output is the accelerometer's data. (both acceleration and position is available through integrating)
In the left-hand side bode diagram, blue curves are from sensor readings and the orange curve is fitted function.
​​​​​​​

In the next part, with employing several MatLab toolboxes a PID controller has been designed to attenuate the beam's vibration by adjusting the piezoelectric voltage.
Controllers have been designed using SISO Tools and SimuLink PID Block built-in functions. Effects of changing controller gains and time constant have been investigated too.
To the left, you can see some of the plots used for evaluating and observing system behaviors used in this project (Root-Locus, Bode, time domain response, and Nyquist)