Matlab and simulink giving different results - FOPID controller (Files attached)

5 views (last 30 days)
Please find attached the simulink and matlab files, wherein a simple FOPID controller is designed for a system. Both the files find the closed loop response of the same system but give different results. The simulink file leads to an unstable system, whereas the matlab file leads to a stable system. Ideally speaking, this should not be possible. Both the matlab and simulink files should give a same step response as the system is same. Can someone please tell as in why I am getting entirely different results.

Answers (1)

Birdman
Birdman on 28 Mar 2018
It should be happening due to the solver selection and sampling time issue. You need to discretize the system and make your calculations accordingly. Since I do not have library for fractional PID, this will be a trivial answer:
1-When the Bode is plotted for your plant, it can be seen that the sampling time must be selected at least 0.02 seconds. To make things sure and guaranteed, let's choose it 0.001 seconds.
2-Afterwards, go to your Simulink model, open Configuration Parameters->Solver and change your solver type to fixed step and your solver to ode5. Set your sampling time as 0.001.
After doing these things, run the model and observe the results. Let me know if it works.
  9 Comments
Birdman
Birdman on 29 Mar 2018
Probably it has to do something with Simulink's solver engine differs from MATLAB's.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!