What happens if the controller of a closed-loop system is placed in the feedback path before the summation point, instead of between the summation point and the plant to control? Are we allowed to do so? If so, what are the main differences? Thanks!

  • 2
    $\begingroup$ Is this homework? Whether or not it is, why don't you try putting a PID controller in the feedback path of some system, then adjust the "error" signal. What long-term change in the output would you expect to see? $\endgroup$
    – TimWescott
    Nov 2, 2020 at 21:24
  • $\begingroup$ I will try to answer later, but basically at a first glance you will lose the ability to place zeros and poles where you want (assuming a controllable system( $\endgroup$
    – Ben
    Nov 3, 2020 at 0:04
  • $\begingroup$ You can control poles just the same, but the zeros end up where they will -- and usually not where you want them. $\endgroup$
    – TimWescott
    Nov 3, 2020 at 17:48

1 Answer 1


Assuming $P$ is the transfer function of your process and $C$ the transfer function of your controller.

The closed-loop transfer function of a standard control loop, with the controller in the normal path, is

$$ G(s) = \frac{C(s)P(s)}{1+C(s)P(s)}$$

while the transfer function of your alternative controller is $$G_{alt}(s) = \frac{P(s)}{1+C_{alt}(s)P(s)} $$

If you set your new alternative to controller to

$$ C_{alt}(s) = \frac{1+P(s)C(s)-C(s)}{P(s)C(s)} $$

You will get the same closed-loop transfer function (G(s))

That being said, not sure it's a good idea for 2 reasons

1 - To get to same result as the original controller, you need to cancel poles and zeros in the alternative closed-looped transfer function. If you cancel a RHP zero with a RHP pole, your final transfer function will seem stable however your controller will not be, the output of your alternative controller could become unbounded.

2 - Even if you don't cancel RHP zeros with RHP poles, this method is way more complicated.

  • $\begingroup$ Apologies for the late comment but point 1 above is unclear to me. If we designed the controller $C$ to satisfy all design requirements in the standard loop and $C$ is known, then it seems to me that implementing $C_{alt}$ given above on the non-standard path instead of implementing $C$ will obtain precisely the same CL transfer function as resulting from the standard design. It is unclear whether RHP zeros necessarily arise and are needed to be to canceled them. For instance when implementing in code, it seems to me that there would be no difference when implementing either controller. (1/3) $\endgroup$
    – kbakshi314
    Apr 5, 2021 at 10:16
  • $\begingroup$ For instance, let $P=\frac{1}{s}$ and let $C=\frac{s+1}{s}$ be the standard loop controller which satisfies all design requirements. The CL transfer function is then $\frac{s+1}{s^2+s+1}$. In order to obtain the identical CL transfer function we require $C_{alt}=\frac{-s^2+1}{s+1}=-\frac{s^2-1}{s+1}=s-1$ (which seems strange for a compensator, but did not require canceling any RHP zeros. Please comment on the example so that the answer is clearer. (2/3) $\endgroup$
    – kbakshi314
    Apr 5, 2021 at 10:17
  • $\begingroup$ Perhaps the answer meant to highlight the situation where we know the CL obtained by $C$ and need to design $C_{alt}$ to replicate it (in contrast to the situation where we know the well designed $C$ and can directly obtain $C_{alt}$ as $C_{alt}=\frac{1+PC-C}{PC}$). (3/3) $\endgroup$
    – kbakshi314
    Apr 5, 2021 at 10:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.