How to calculate rise time, settling time, and overshoot based on real data measurements

102 visualizaciones (últimos 30 días)
Hi,
I have taken real measurements from my temperature control system. I do not now the system, transfer function, etc. since I have not modeled this in MATLAB.
I have measurement data of the setpoint, the pid controllerd output heat (voltage) and my process variable (temperature).
Is there a built-in MATLAB function or any other function that calculates the PID performance (rise time, overshoot, settling time) for me based on real measurements. Again, I do not now the system, transferfunction.
I am looking for a function that will have the real measurement data as an input and give me the performance statistics as an output.
Thanks.

Respuesta aceptada

Sam Chak
Sam Chak el 15 de Abr. de 2022
The rise time, settling time, and percentage overshoot can directly obtained from measured step response data.
If your measured data are sinusoidal sweeps, then you can estimate the system model, either in state-space or transfer function, if you have the System Identification Toolbox.
For more info, please check ssest() and tfest() functions.
  1 comentario
Konvictus177
Konvictus177 el 17 de Abr. de 2022
I ended up using the functions risetime, settlingtime, overshoot and undershoot that I applied on my measured output data.
However, the links you provided are very helpful to go deeper into the area of system identification.

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by