d2c PID-Conversion
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Christoph Fleischmann
hace alrededor de 15 horas
Comentada: Walter Roberson
hace alrededor de 6 horas
Hi,
I'm trying to convert a discrete-time PID-controller to a continuous-time PID using the d2c function.
c_discrete = pid(4.406,0.0114,0.0112,0,0.0050) %Kp, Ki, Kd, Tf, Ts
c_continuous = d2c(c_discrete)
But I keep getting the following Error:
The "d2c" conversion failed because the result cannot be expressed as a PID controller.
Does anyone have an Idea, where my mistake is?
0 comentarios
Respuestas (1)
Walter Roberson
hace 10 minutos
That error is given when Tf < Ts, and apparently exists in order to avoid getting complex-valued outputs.
Your Tf is 0, certainly less than Ts.
Example with Tf > Ts
c_discrete = pid(4.406,0.0114,0.0112,0+0.01,0.0050) %Kp, Ki, Kd, Tf, Ts
c_continuous = d2c(c_discrete)
1 comentario
Walter Roberson
hace 6 minutos
c_discrete = pid(4.406,0.0114,0.0112,0,0.0050) %Kp, Ki, Kd, Tf, Ts
c_continuous = d2c(c_discrete, d2cOptions(method='matched'))
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!