Homework Help: Feed-forward control system: heating an oven with outside temperature disturbance

1. May 2, 2012

vicjun

1. The problem statement, all variables and given/known data

I am supposed to design a control system with feedback and disturbance feed-forward, with all relevant transfer functions.

The system consists of an oven where the temperature $T$ is controlled by an electric heater that dissipates power $P_{in}$. The temperature outside the oven is $T_0$. Consequently, the oven dissipates heat to the environment, at a rate $P_{loss}$ depending on the temperature difference. The outside temperature is considered to be a disturbance, and is considered not to be affected by the temperature inside the oven.

2. Relevant equations

We are given the rate of loss as

$P_{loss}=\alpha (T-T_0)$

where $\alpha=0.05 \: W/K$. We are also given the oven's heat capacity as $C=25 \: J/K$

3. The attempt at a solution

I started out trying to find the transfer function of the process, i.e the temperature inside the oven. To do this I have defined a differential equation using energy balance $E$ inside the oven:

$\dfrac{dE}{dt}=P_{in}-P_{loss}$

where $E=C \cdot T$ and $P_{loss}$ as above. This gives the differential equation as

$C \cdot \dfrac{dT}{dt}=P{in}-\alpha(T-T_0)$

Calculating the Laplace transforms then gives (a "bar" signifies the transform), assuming that the initial temperature inside the oven is $T_0$ because of equilibrium, so that $T(0)=T_0=0^{\circ} C$:

$(C \cdot s+\alpha)\bar{T}(s)=\bar{P}_{in}(s)+\alpha \bar{T_0}(s)$

Surely then, the transfer function $G_P(s)$ is the quotient between the output $\bar{T}(s)$ and the input $\bar{P}_{in}(s)$. But I can't get rid of $T_0$. Is the outside temperature supposed to just be considered in the transfer function of the disturbance?

Alternatively, I tried modeling the process without heat loss (assuming heat loss is a disturbance), that is, writing the differential equation as

$\dfrac{dE}{dt}=P_{in}$

and then assume that the initial temperature is 0 degrees outside and inside the oven, for simplicity. This gives me the transfer function

$G_P(s)=\dfrac{1}{C \cdot s}$

which feels insufficient as I feel there should be some time delay due to some time constant. I then model the disturbance (i.e heat loss) as

$C \cdot \dfrac{dT}{dt}=-P_{loss}=\alpha (T_0-T)$

that is, how the heat loss affects the temperature in the oven. Using the laplace transform gives

$C \cdot s \cdot \bar{T}(s)=\alpha \bar{T}_0(s)-\bar{T}(s))$

Giving the transfer function of the disturbance as

$G_V(s)=\dfrac{\bar{T}(s)}{\bar{T}_0(s)}=\dfrac{ \alpha }{C \cdot s + \alpha}$

which looks more like a transfer function. This is then added to the process through summation.

I'm completely stuck on this exercise. I don't want an entire solution, just a hint to guide me into the right direction. I feel I am pretty close to solving it, I just need to separate the disturbance from the process somehow. Thanks in advance.

Last edited: May 2, 2012
2. May 2, 2012

rude man

Yes, T0 is a source of disturbance to your controller.

If you're going to design a control system you also have to allow for a temperature reference Tr. So there is T, T0 and Tr.

I don't tknow what the problem requires, but I would think a system block diagram is indicated. In which case:

Provide for Tr - T to be zero averaged over time. What block ("first block") does that suggest?

Then model the heater as a 2nd block with transfer function (dQin/dt)/x where x is the output of your first block, since the heater generates heat rate into the oven.

The heater output dQin/dt is then combined with the heat outflow rate, and the result is the net heat input rate to the oven. The oven is a third block which you have already characterized above. Same goes for dQout/dt. The oven output is T. So complete the picture.

Have they discussed P vs. I vs. PI vs. PID controllers? If not, never mind. (What I have in mind for you is an I controller, giving zero temperature error over time. By adding P and D terms one can adjust the dynamic response of T to disturbances in T0 and Tr. Just FYI.)

3. May 3, 2012

vicjun

Thanks, I'll look into it later. The problem requires me to, as you wrote, produce a block system diagram and calculate all the transfer functions in it.

But I'm not sure I need to introduce new variables such as TR or the heat output, especially if I don't know their value (I am already given a minimal amount of information). I'm afraid they won't cancel out and that I'll be stuck in the end with expressions with unknown variables. I don't really understand why I need to have an extra transfer function between the heater and the oven, is it because the input is power and the output is temperature?

I also forgot to mention that there is a sensor measuring the outside temperature, with the time constant 30 seconds. But this is not relevant to finding the transfer function for the oven.

I plan to design a PID controller for the system using the Ziegler-Nichols method (not very accurate but simple) but this is the next step. In order to do this I first need the transfer function for the process.

4. May 3, 2012

rude man

The heater is an integral part of your system so you need to inlude it in your block diagram.

There are two transfer functions in your system, T/Tr and T/T0. You need to determine them both. You're building a controller, controlling temperature, so if I change the temperature setting I need to know the time response of T ...
really, the basic transfer function is T/Tr; T0 is just a disturbance input.

Tr is an independent variable. You can make it anything you want, including a constant. To determine the dynamic response of your system, a step change ΔTr would be one way to do that.

5. May 4, 2012

vicjun

OK thanks, I think I've figured out how to calculate the transfer functions from the heater to the oven.

I still don't understand how to find the transfer function from the disturbance to the oven, however. Is it just 1, or is there a more complex relationship, involving $\alpha$?

As for the controller, I'm not sure how to find its parameters. I didn't manage to find them using the Ziegler-Nichols method as no matter what value I choose for the initial proportional part K, I never manage to make the system unstable. Maybe I'll try with Simulink.

6. May 4, 2012

rude man

The transfer function from T0 to the oven input includes your 30 second time constant: (dQ0/dt)/T0 = α/(τs+1) where τ = 30 s.

Your famous Ziegler-Nichols method just gives you the open-loop gains (P,I and/or D) for various static and dynamic responses to an input change in Tr. You need to concentrate on coming up with your block diagram first. How's it look so far?

If you make it just a P controller then it can't possibly go unstable, since there is only one pole in the open-loop transfer function Tr in to T out, provided by the oven.

7. May 4, 2012

vicjun

I thought I would find my PID controller by identifying step response, using a Silab Xcos diagram (similar to Matlab's Simulink), and play around with the PID parameters until I get a good result.

I've included the feed-forward part and set the disturbance as a step function that goes from 0 to -10 degrees. My feedback sensor transfer function I've set to 1, as there is nothing else indicated in the problem. I am however, having some trouble finding the right feed-forward transfer function GF. I want to include the diagram I drew but I don't have enough posts yet to post a link...

I calculated the transfer function from the heater to the oven as

Gh=1/α=20

and the transfer function accounting for the heater and the disturbance as

Gh,out=α/(C*s+α)=1/(500*s+1)

The sensor's transfer function I calculated to G2=1/(1+30*s)

Anyway, according to my block diagram the disturbance transfer function is given by

T0+G2 * GF * (1/α)*T0

which gives

GF= -α*(1+30*s)

or with values,

GF= -(0.05+1.5*s)

However, Xcos won't let me use this transfer function as it's not proper, so I'm guessing my transfer function is incorrect. This is the only thing missing before I can find the PID controller parameters.

I guess the transfer function from the disturbance to the oven isn't just "1", as I assumed in my block diagram... How did you calculate the transfer function from the outside temperature to the oven, the one you wrote? Why do I have to account for the time constant of the sensor?

Last edited: May 4, 2012
8. May 4, 2012