I have a stationary model for a plant(a valve) given by $y=a \exp(bx)$. I linearised this by taking log on both sides:

$$\ln(y) = b\cdot x + \ln(a).$$

Then, I estimated the plant transfer function(1st order with lag) from the step response. Then I used Ziegler-Nicols tuning rules to get a first guess for $K_p$, $T_i$ and $T_d$. My dilemma begins after this.

How do I modify my resulting controller output obtained from the above parameters to feed it to my plant. Note, the error input to the controller is the difference between the log of set point (SP) and the log of the process variable (PV).

error, $$e = \ln(SP) - \ln(PV).$$

Thus, the controller output is calculated for that modified error. The real error, obviously, is $SP-PV$.

I thought of just taking the exponential of the controller output, but could not justify the Maths involved.

I would be grateful for some feedback.

  • 1
    $\begingroup$ This is not a dynamical system at all as far as I understand. Also, what is your input and output? $\endgroup$
    – obareey
    Commented Jul 20, 2015 at 15:03

1 Answer 1


I failed to understand why you think that by taking the $ln$ of your model you would obtain a linearized expression. Because your output is now $ln(y)$ which is definitely not linear. Could you cite a reference/source that you are using?

Usually, a linearization of a single function involves taking the first order Maclaurin's series and keeping the linear terms

In your example $y = ae^{bx}$ would equal to $y = 1 + abx$, $y$ is your output, $x$ is your state variable

You are using Ziegler Nichols which means you are tuning a PID controller. You need to simulate this system somewhere, do you have a model of the system? What software/hardware are you using to simulate your system? You need to increase your $Kp$ value until your output becomes sinusoidal with a constant amplitude, that is your ultimate gain $Ku$.

You need to find $Tu$, which is the period of oscillation at $Ku$.

After that follow the heuristic below to find your PID gain. enter image description here https://en.wikipedia.org/wiki/Ziegler%E2%80%93Nichols_method

Please attach a model of your system (plant + controller) and let me know if you encounter any other question

  • $\begingroup$ My idea was to consider $ln(y)$ as a new dummy variable, say, $y'$. Then get a step response at the actual plant in the lab(In the lab I measure $y$ and then take its $ln$ which effectively gives me a step response with $y'$). Estimate the plant with as first-order system with lag in the s-domain using that step response.(I don't have a dynamic plant model. All I have is a stationary model of the plant given by $y=a \exp(bx)$; thus the step response approach to model the dynamics of the plant). Design a controller with initial parameters using Z-N. ....(1 of 2) $\endgroup$
    – Shoneil
    Commented Jul 18, 2015 at 13:20
  • $\begingroup$ $y=a \exp(bx)$ where, $a=2.842$ $b=0.2993$ $x \cong MV$ $y \cong PV$ Then modify the controller output, which is for an error in $y'$, to a value suitable for the actual error in $y$ possibly via certain mathematical operation. But, like I said, this is just an idea and not something I have read anywhere in literature or reference book. Now I see that its not that straight-forward. For the suggestion you made of Maclaurin expansion, I will have to linearise the plant along the range of the measured variable(MV), effectively leading to gain scheduling. Correct me if I'm wrong. (2 of 2) $\endgroup$
    – Shoneil
    Commented Jul 18, 2015 at 13:34

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .