I want to design a PID controller for a shaker. But I don't have the system's differential equation or transfer function. I find the system identification algorithms complicated. Can I design a controller based only on the input and output data and without the plant model?
Yes! There are several methods for PID tuning based on the output of the system for specific input. These methods will require you to choose input that is close to the operation conditions of the system and will determine the PID parameters based on the output from the system for the inputs you chose.
Keep in mind that each of these methods tune the PID controller optimally for some performance indicators (depends on the method), and that the tuning is optimal only for input close to the one you chose, so none of these methods will actually work very well for very non linear systems that have to work with a large variation of input.
Some methods that may help you:
- Ziegler-Nichols Continuous Cycling Method
- Ziegler-Nichols Reaction Curve Method
- Aström-Hägglund Relay Method
- Tyreus-Luyben Method
- Chien, Hrones and Reswick (CHR) Method
- Cohen-Coon Method
- 3C Method
- Lambda Tuning Method
Some of these methods are in the book Advanced PID Control, by Karl J. Astrom and Tore Hagglund, which in my opinion is a very good book in this subject.
Hope I could help!