• school Campus Bookshelves
• perm_media Learning Objects
• how_to_reg Request Instructor Account
• hub Instructor Commons
• Periodic Table
• Physics Constants
• Scientific Calculator
• Reference & Cite
• Tools expand_more

This action is not available.

## 10.2: Controllers for Discrete State Variable Models

• Last updated
• Save as PDF
• Page ID 24434

• Kamran Iqbal
• University of Arkansas at Little Rock

## Emulating an Analog Controller

The pole placement controller designed for a continuous-time state variable model can be used with derived sampled-data system model. Successful controller emulation requires a high enough sampling rate that is at least ten times the frequency of the dominant closed-loop poles of the system.

In the following we illustrate the emulation of pole placement controller designed for the DC motor model (Example 8.3.4) for controlling the discrete-time model of the DC motor. The DC motor model is discretized at two different sampling rates for comparison, assuming ZOH at the plant input.

## Example $$\PageIndex{1}$$

The state and output equations for a DC motor model are given as:

$\frac{\rm d}{\rm dt} \left[\begin{array}{c} {i_a } \\ {\omega } \end{array}\right]=\left[\begin{array}{cc} {-100} & {-5} \\ {5} & {-10} \end{array}\right]\left[\begin{array}{c} {i_a } \\ {\omega } \end{array}\right]+\left[\begin{array}{c} {100} \\ {0} \end{array}\right]V_a , \;\;\omega =\left[\begin{array}{cc} {0} & {1} \end{array}\right]\left[\begin{array}{c} {i_a } \\ {\omega } \end{array}\right]. \nonumber$

The motor model is discretized at two different sampling rates in MATLAB. The results are:

$T=0.01s: A_{\rm d} =\left[\begin{array}{cc} {0.367} & {-0.030} \\ {0.030} & {0.904} \end{array}\right],\; \; B_{\rm d} =\left[\begin{array}{c} {0.632} \\ {0.018} \end{array}\right],\; \; C_{\rm d} =\left[\begin{array}{cc} {0} & {1} \end{array}\right]. \nonumber$

$T=0.02s: A_{\rm d} =\left[\begin{array}{cc} {0.134} & {-0.038} \\ {0.038} & {0.816} \end{array}\right],\; \; B_{\rm d} =\left[\begin{array}{c} {0.863} \\ {0.053} \end{array}\right],\; \; C_{\rm d} =\left[\begin{array}{cc} {0} & {1} \end{array}\right]. \nonumber$

For a desired characteristic polynomial: $$\Delta _{\rm des} (s)=s^{2} +150\,s+5000$$, a state feedback controller for the continous-time state variable model was obtained as (Example 9.1.1): $$k^{T} =\left[\begin{array}{cc} {0.4} & {7.15} \end{array}\right]$$.

We can use the same controller to control the corresponding sample-data system models.

The unit-step response of the closed-loop system is simulated in Figure 10.2.1, where both state variables, $$i_a\left(t\right)$$ and $$\omega \left(t\right)$$, are plotted.

We observe from the figure that the armature current has a higher overshoot at the lower sampling rate, though both models display similar settling time of about 100 msec.

## Pole Placement Design of Digital Controller

Given a discrete state variable model $$\left\{A_{\rm d},\ B_{\rm d}\right\}$$, and a desired pulse characteristic polynomial $$\Delta _{\rm des} (z)$$, a state feedback controller for the system can be designed using pole placement similar to that of the continuous-time system (Sec. 9.1.1).

Let the discrete-time model of a SISO system be given as:

${\bf x}_{k+1} ={\bf A}_{\rm d} {\bf x}_{k} +{\bf b}_{\rm d} u_{k} , \;\; y_{k} ={\bf c}^T {\bf x}_{k} \nonumber$

A state feedback controller for the discrete state variable model is defined as:

$u_k=-{\bf k}^T{\bf x}_k+r_k \nonumber$

where $${\bf k}^{T}$$ represents a row vector of constant feedback gains and $$r_k$$ is a reference input sequence. The controller gains can be obtained by equating the coefficients of the characteristic polynomial with those of a desired polynomial:

$\Delta (z)=\left|z{\bf I-A}_{\rm d} \right|=\Delta _{\rm des} (z) \nonumber$

The $$\Delta _{\rm des} (z)$$ above is a Hurwitz polynomial (in $$z$$), with roots inside the unit circle that meet given performance (damping ratio and/or settling time) requirements. Assuming that desired $$s$$-plane root locations are known, the corresponding $$z$$-plane root locations can be obtained from the equivalence: $$z=e^{Ts}$$.

## Closed-loop System

The closed-loop system model is given as:

${\bf x}_{k+1} ={\bf A}_{\rm cl} {\bf x}_{k} +{\bf b}_{\rm d} r_{k} , \;\; y_{k} ={\bf c}^T {\bf x}_{k} \nonumber$

where $${\bf A}_{\rm cl} =({\bf A}_{\rm d}-{\bf b}_{\rm d}{\bf k}^T)$$.

Assuming closed-loop stability, for a constant input $$r_k=r_{\rm ss}$$, the steady-state response, $${\bf x}_{\rm ss}$$, of the system obeys:

${\bf x}_{ss} ={\bf A}_{\rm cl} {\bf x}_{ss} +{\bf b}_{\rm d} r_{ss} ,\;\; y_{\rm ss} ={\bf c}^T {\bf x}_{ss} \nonumber$

Hence, $$y_{\rm ss}={\bf c}^T\,({\bf A}_{\rm cl}-{\bf I})^{-1}\,{\bf b}_{\rm d}\,r_{\rm ss}$$.

## Example $$\PageIndex{2}$$

The discrete state variable model of a DC motor ($$T=0.02$$s) is given as: $\left[\begin{array}{c} {i_{k+1} } \\ {\omega _{k+1} } \end{array}\right]=\left[\begin{array}{cc} {0.134} & {-0.038} \\ {0.038} & {0.816} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right]+\left[\begin{array}{c} {0.863} \\ {0.053} \end{array}\right]V_{k} , \;\; y_{k} =\left[\begin{array}{cc} {0} & {1} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right] \nonumber$

The desired $$s$$-plane root locations for the model are given as: $$s=-50,\; -100.$$

The corresponding $$z$$-plane roots ($$T=0.02s$$) are obtained as: $$z=e^{-1} ,\; e^{-2}$$.

The desired characteristic polynomial is given as: $$\Delta _{\rm des} (z)=z^{2} -0.95z+0.05.$$

The feedback gains $$k^T =[k_{1} ,\; k_{2} ]$$, computed using the MATLAB ‘place’ command, are given as: $$k_{1} =0.247,\; k_{2} =4.435.$$

The closed-loop system matrix is given as: $$A_\rm d)= \left[\begin{array}{cc} {-0.080} & {-3.867} \\ {0.025} & {0.583} \end{array}\right]$$.

An update rule for implementation of the controller on computer is obtained as: $$u_{k} =-0.247\, i_{k} -4.435\, \omega _{k} .$$

The closed-loop response has steady-state value of $$\omega _{\rm ss}=0.143 \;\rm rad/s$$.

The step response of the closed-loop system is plotted in Figure 10.2.2, where the discrete system response was scaled to match the analog system response. The step response of the continuous-time system and that for the emulated controller gains are plotted alongside.

A discrete-time system is called deadbeat if all closed-loop poles are placed at the origin $$(z=0)$$.

A deadbeat system has the remarkable property that its response reaches steady-state in $$n$$-steps, where $$n$$ represents the model dimension.

The desired closed-loop pulse characteristic polynomial is selected as $$\Delta _{\rm des} (z)=z^{n}$$.

To design a deadbeat controller, let the closed-loop pulse transfer function be defined as: $T(z)=\frac{K(z)G(z)}{1+K(z)G(z)} \nonumber$

The above equation is solved for $$K(z)$$ to obtain: $K(z)=\frac{1}{G(z)} \frac{T(z)}{1-T(z)} \nonumber$

Let the desired $$T(z)=z^{-n}$$; then, the deadbeat controller is given as: $K(z)=\frac{1}{G(z)(z^{n} -1)} \nonumber$

## Example $$\PageIndex{3}$$

Let $$G(s)=\frac{1}{s+1} ;$$ then $$G(z)=\frac{1-e^{-T} }{z-e^{-T} }$$.

A deadbeat controller for the model is obtained as: $$K(z)=\frac{z-e^{-T} }{(1-e^{-T} )(z-1)}$$.

## Example $$\PageIndex{4}$$

The discrete state variable model of a DC motor for $$T=0.02\; \rm s$$ is given as: $\left[\begin{array}{c} {i_{k+1} } \\ {\omega _{k+1} } \end{array}\right]=\left[\begin{array}{cc} {0.134} & {-0.038} \\ {0.038} & {0.816} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right]+\left[\begin{array}{c} {0.863} \\ {0.053} \end{array}\right]V_{k} , \;\;y_{k} =\left[\begin{array}{cc} {0} & {1} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right] \nonumber$

The state feedback controller is given as: $$u_{k} =-\left[k_{1} ,\, \, k_{2} \right]x_{k}$$.

The closed-loop characteristic polynomial is obtained as: $\Delta (z)=z^{2} +(0.863k_{1} +0.053k_{2} -0.95)z-0.707k_{1} +0.026k_{2} +0.111 \nonumber$

For pole placement design, let $$\Delta _{\rm des} (z)=z^{2}$$. By equating the polynomial coefficients, the deadbeat controller gains are obtained as: $$k_{1} =0.501,\; k_{2} =9.702$$.

The update rule for controller implementation is given as: $u_{k} =0.501\, \, i_{k} +9.702\, \, \omega _{k} \nonumber$

The step response of the deadbeat controller (Figure 10.2.3) settles in two time periods. The response was scaled to match that of the continuous-time system.

An approximate deadbeat design can be performed by choosing distinct closed-loop eigenvalues close to the origin, e.g., $$z=\pm {10}^{-5}$$, and using the 'place' command from the MATLAB Control Systems Toolbox.

The feedback gains for the approximate design are obtained as: $$k_{1} =0.509,\; k_{2} =9.702$$. The resulting closed-loop system response is still deadbeat.

## Feedforward Tracking System Design

A tracking system was previously designed by using feedforward cancelation of the error signal (Section 9.2.1). A similar design can be performed in the case of discrete systems.

Towards this end, let the discrete state variable model be given as: ${\bf x}_{k+1} ={\bf A}_{\rm d} {\bf x}_{k} +{\bf b}_{\rm d} u_{k} , \;\;y_{k} ={\bf c}^T {\bf x}_{k} \nonumber$

A tracking controller for the model is defined as: $u_k=-{\bf k}^T{\bf x}_k+k_rr_k \nonumber$ where $${\bf k}^{T}$$ represents a row vector of feedback gains, $$k_r$$ is a feedforward gain, and $$r_k$$ is a reference input sequence.

Assuming that a pole placement controller for the discrete system has been designed, the closed-loop system is given as: ${\bf x}_{k+1}=\left({\bf A}_{\rm d}-{\bf b}_{\rm d}{\bf k}^T\right){\bf x}_k+{\bf b}_{\rm d}k_rr_k \nonumber$

The closed-loop pulse transfer function is obtained as: $T\left(z\right)={\bf c}^T_{\rm d}{\left(z{\bf I-A}_{\rm d}+{\bf b}_{\rm d}{\bf k}^T\right)}^{-1}{\bf b}_{\rm d}k_r \nonumber$ where $${\bf I}$$ denotes an identity matrix. The condition for asymptotic tracking is given as: $T\left(1\right)={\bf c}^T_{\rm d}{\left({\bf I-A}_{\rm d}+{\bf b}_{\rm d}{\bf k}^T\right)}^{-1}{\bf b}_{\rm d}k_r=1 \nonumber$

The feedforward gain for error cancelation is obtained as: $$k_r=\frac{1}{T\left(1\right)}$$.

## Example $$\PageIndex{5}$$

The discrete state variable model of a DC motor ($$T=0.02$$s) is given as: $\left[\begin{array}{c} {i_{k+1} } \\ {\omega _{k+1} } \end{array}\right]=\left[\begin{array}{cc} {0.134} & {-0.038} \\ {0.038} & {0.816} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right]+\left[\begin{array}{c} {0.863} \\ {0.053} \end{array}\right]V_{k} , \;\;y_{k} =\left[\begin{array}{cc} {0} & {1} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right] \nonumber$

A state feedback controller for the motor model was previously designed as: $$k^T =[k_{1} ,\; k_{2} ]$$, where $$k_{1} =0.247,\; k_{2} =4.435.$$

The closed-loop system is defined as: $T\left(z\right)=\frac{0.367z+0.179}{z^2-0.503z+0.05}k_r \nonumber$

From the asymptotic condition, the feedforward gain is solved as: $$k_r=6.98$$.

The step response of the closed-loop system is shown in Figure 10.2.4.

## Example $$\PageIndex{6}$$

The discrete state variable model of a DC motor ($$T=0.02$$s) is given as:

$\left[\begin{array}{c} {i_{k+1} } \\ {\omega _{k+1} } \end{array}\right]=\left[\begin{array}{cc} {0.134} & {-0.038} \\ {0.038} & {0.816} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right]+\left[\begin{array}{c} {0.863} \\ {0.053} \end{array}\right]V_{k} , \;\;y_{k} =\left[\begin{array}{cc} {0} & {1} \end{array}\right]\left[\begin{array}{c} {i_{k} } \\ {\omega _{k} } \end{array}\right] \nonumber$

A dead-beat controller for the motor model was designed as: $$k^T =[k_{1} ,\; k_{2} ]$$, where $$k_{1} =0.501,\; k_{2} =9.702$$.

The closed-loop system is defined as: $T\left(z\right)=\frac{0.672z+0.328}{z^2}k_r \nonumber$

From the asymptotic condition, the feedforward gain is solved as: $$k_r=12.77$$.

The step response of the closed-loop system is shown in Figure 10.2.5.

## Tracking PI Controller Design

A tracking PI controller for the discrete state variable model is designed similar to the design of continuous-time system (Figure 9.3.1). The tracking PI controller places an integrator in the feedback loop, thus ensuring that the tracking error goes to zero in the steady-state.

In the case of continuous-time system, the tracking PI controller was defined as: $$u=-{\bf k}^{T} {\bf x}+k_{i} \int (r-y)\rm dt$$.

Using the forward difference approximation to the integrator, given as: $$v_k=v_{k-1}+Te_k$$, an augmented discrete-time system model including the integrator state variable is formed as:

$\left[\begin{array}{c} {{\bf x}(k+1)} \\ {v(k+1)} \end{array}\right]=\left[\begin{array}{cc} {{\bf A}_{\rm d} } & {\bf 0} \\ {-{\bf c}^T T} & {1} \end{array}\right] \left[\begin{array}{c} {{\bf x}(k)} \\ {v(k)} \end{array}\right]+\left[\begin{array}{c} {{\bf b}_{\rm d} } \\ {0} \end{array}\right]u+\left[\begin{array}{c} {\bf 0} \\ {T} \end{array}\right]r \nonumber$

The state feedback controller for the augmented system is defined as:

$u(k)=\left[\begin{array}{cc} {-{\bf k}^T } & {k_ i } \end{array}\right]\, \left[\begin{array}{c} {{\bf x}(k)} \\ {v(k)} \end{array}\right] \nonumber$

where $$k_ i$$ represents the integral gain. With the addition of the above controller, the closed-loop system is described as:

$\left[\begin{array}{c} {{\bf x}(k+1)} \\ {v(k+1)} \end{array}\right]=\left[\begin{array}{cc} {{\bf A}_{\rm d} -{\bf b}_{\rm d} k^{T} } & {{\bf b}_{\rm d} k_{i} } \\ {-{\bf c}^T T} & {1} \end{array}\right] \left[\begin{array}{c} {{\bf x}(k)} \\ {v(k)} \end{array}\right]+\left[\begin{array}{c} {\bf 0} \\ {T} \end{array}\right]r(k) \nonumber$

The closed-loop characteristic polynomial of the augmented system is formed as:

${\mathit{\Delta}}_a\left(z\right)=\left| \begin{array}{cc} z{\bf I-A}_{\rm d}+{\bf b}_{\rm d}k^T & -{\bf b}_{\rm d}k_i \\ -{\bf c}^T_{\rm d}T & z-1 \end{array} \right| \nonumber$

where $${\bf I}$$ denotes an identity matrix of order $$n$$.

Next, we choose a desired characteristic polynomial of $$(n+1)$$ order, and perform pole placement design for the augmented system. The location of the integrator pole in the $$z$$-plane may be selected keeping in view the desired peformance criteria for the closed-loop system.

$\left[ \begin{array}{c} i_{k+1} \\ {\omega }_{k+1} \end{array} \right]=\left[ \begin{array}{cc} 0.134 & -0.038 \\ 0.038 & 0.816 \end{array} \right]\left[ \begin{array}{c} i_k \\ {\omega }_k \end{array} \right]+\left[ \begin{array}{c} 0.863 \\ 0.053 \end{array} \right]V_k,\ \ {\omega }_k=\left[ \begin{array}{cc} 0 & 1 \end{array} \right]\left[ \begin{array}{c} i_k \\ {\omega }_k \end{array} \right] \nonumber$

The control law for the tracking PI controller is defined as:

$u_k=-k_1i_k-k_2{\omega }_k+k_iv_k \nonumber$

where $$v_{k} =v_{k-1} +T(r_{k} -\omega _{k} )$$ describes the output of the integrator. The augmented system model for the pole placement design using integral control is given as:

$\left[ \begin{array}{c} i_{k+1} \\ {\omega }_{k+1} \\ v_{k+1} \end{array} \right]=\left[ \begin{array}{ccc} 0.134 & -0.038 & 0 \\ 0.038 & 0.816 & 0 \\ 0 & -0.02 & 1 \end{array} \right]\left[ \begin{array}{c} i_k \\ {\omega }_k \\ v_k \end{array} \right]+\left[ \begin{array}{c} 0.863 \\ 0.053 \\ 0 \end{array} \right]V_k+\left[ \begin{array}{c} 0 \\ 0 \\ 0.02 \end{array} \right]r_k \nonumber$

The desired $$z$$-plane pole locations for a desired $$\zeta=0.7$$ are selected as: $$z=e^{-1} ,\; e^{-1\pm j1}$$.

The controller gains, obtained using the MATLAB ‘place’ command, are given as: $$k_{1} =0.43,k_{2} =15.44,\; k_{i} =-297.79.$$

An update rule for controller implementation on computer is given as:

$u_k=-0.43i_k-15.44{\omega }_k+297.8v_k \nonumber$

$v_k=v_{k-1}+0.02\left(r_k-{\omega }_k\right) \nonumber$

The step response of the closed-loop system is plotted in Figure 10.2.6. The step response of the continuous-time system (Example 9.1.1) is plotted alongside. The output in both cases attains steady-state value of unity in about 0.12sec.

Fusion of Engineering, Control, Coding, Machine Learning, and Science

Aleksandar Haber

## Pole Placement With Integral Control Action to Eliminate Steady-State Error (State-Space Control Design)

In this post, we explain how to integrate an integral control action into a pole placement control design in order to eliminate a steady-state error. The YouTube video accompanying this post is given below

First, we explain the main motivation for creating this tutorial. When designing control algorithms, we are primarily concerned with two design challenges. First of all, we have to make sure that our control algorithm behaves well during the transient response. That is, as designers we specify the acceptable behavior of the closed-loop system during the transient response. For example, we want to make sure that the rise time (settling time) is within a certain time interval specified by the user. Also, we want to ensure that the system’s overshoot is below a certain value. For example, below 10 or 15 percent of the steady-state value. Secondly, we want to make sure that the control algorithm is able to eliminate the steady-state control error.

In your introductory course on control systems, you have probably heard of a pole placement problem and the solutions. The classical pole placement method is used to stabilize the system or for improving the transient response. This method finds a state feedback control matrix that assigns the poles of the closed-loop system to desired locations specified by the user. However, it is not obvious how to use the pole placement method for set-point tracking and for eliminating steady-state error in set-point tracking design problems. This tutorial explains how to combine the pole placement method with an integral control action in order to eliminate steady-state error and achieve a desired transient response. The technique presented in this lecture is very important for designing control algorithms.

Consider the following state-space model:

is stable and that the poles are placed at the desired locations (that are specified by the designer). The issue with this approach is that although we can place the poles at the desired locations, we do not have full control of steady-state error.

The basic idea for tackling this problem is to augment the original system ( 2 ) with an integrator of the error:

We can write ( 5 ) compactly

From the last system of equations, we can observe that we have formed a new state-space model, with the state variable:

The state-feedback controller now has the following form

By substituting the feedback control algorithm ( 8 ) in the state-space model ( 6 ), we obtain the following system

The new system matrix

Next, we present MATLAB codes for implementing this control approach. The following code lines define the system, compute eigenvalues of the open-loop system, perform basic diagnostics, and compute the open-loop response.

The open-loop step response is given below.

The open-loop system is asymptotically stable. However, we can observe that we have a significant steady-state error. To eliminate the steady-state error, we use the developed approach.

Next, we define the augmented system for pole placement, define desired closed-loop poles, compute the feedback control gain, define the close-loop system, compute the transfer function of the system, and compute the step response. The following code lines are used to perform these tasks.

The resulting step response of the system is shown in the figure below.

A few comments about the presented code are in order. In code line 13, we define the closed-loop poles. We shift the open-loop poles to left compared to their original location in order to ensure a faster response. Also, we set an additional pole corresponding to the introduced integral action to be a shifted version of the open-loop pole with the minimal real part (maximal absolute distance from the imaginary axis). From the step response of the closed-loop system, we can observe that the steady-state error has been eliminated. Consequently, our control system with the additional integral action is able to successfully track reference set points. The computer transfer function of the closed-loop system is

That would be all. A related post to this post and tutorial is a tutorial on how to compute a Linear Quadratic Regulator (LQR) optimal controller. That tutorial can be found here .

## You might also like

Control systems lecture: simulation of linear ordinary differential equations using python and state-space modeling, model predictive control (mpc) tutorial 1: unconstrained formulation, derivation, and implementation in python from scratch, quadratic forms, positive definite, negative definite, and semi-definite matrices.

• LRC circuit
• BoostConverter
• NEXT ►

## Introduction: State-Space Methods for Controller Design

In this section, we will show how to design controllers and observers using state-space (or time-domain) methods.

Key MATLAB commands used in this tutorial are: eig , ss , lsim , place , acker

• LQR Animation 1
• LQR Animation 2

• MATLAB State FB Video
• State Space Intro Video

## Controllability and Observability

Control design using pole placement, introducing the reference input, observer design.

There are several different ways to describe a system of linear differential equations. The state-space representation was introduced in the Introduction: System Modeling section. For a SISO LTI system, the state-space form is given below:

To introduce the state-space control design method, we will use the magnetically suspended ball as an example. The current through the coils induces a magnetic force which can balance the force of gravity and cause the ball (which is made of a magnetic material) to be suspended in mid-air. The modeling of this system has been established in many control text books (including Automatic Control Systems by B. C. Kuo, the seventh edition).

The equations for the system are given by:

From inspection, it can be seen that one of the poles is in the right-half plane (i.e. has positive real part), which means that the open-loop system is unstable.

To observe what happens to this unstable system when there is a non-zero initial condition, add the following lines to your m-file and run it again:

It looks like the distance between the ball and the electromagnet will go to infinity, but probably the ball hits the table or the floor first (and also probably goes out of the range where our linearization is valid).

Let's build a controller for this system using a pole placement approach. The schematic of a full-state feedback system is shown below. By full-state, we mean that all state variables are known to the controller at all times. For this system, we would need a sensor measuring the ball's position, another measuring the ball's velocity, and a third measuring the current in the electromagnet.

The state-space equations for the closed-loop feedback system are, therefore,

From inspection, we can see the overshoot is too large (there are also zeros in the transfer function which can increase the overshoot; you do not explicitly see the zeros in the state-space formulation). Try placing the poles further to the left to see if the transient response improves (this should also make the response faster).

This time the overshoot is smaller. Consult your textbook for further suggestions on choosing the desired closed-loop poles.

Note: If you want to place two or more poles at the same position, place will not work. You can use a function called acker which achieves the same goal (but can be less numerically well-conditioned):

K = acker(A,B,[p1 p2 p3])

Now, we will take the control system as defined above and apply a step input (we choose a small value for the step, so we remain in the region where our linearization is valid). Replace t , u , and lsim in your m-file with the following:

The system does not track the step well at all; not only is the magnitude not one, but it is negative instead of positive!

and now a step can be tracked reasonably well. Note, our calculation of the scaling factor requires good knowledge of the system. If our model is in error, then we will scale the input an incorrect amount. An alternative, similar to what was introduced with PID control, is to add a state variable for the integral of the output error. This has the effect of adding an integral term to our controller which is known to reduce steady-state error.

From the above, we can see that the observer estimates converge to the actual state variables quickly and track the state variables well in steady-state.

Published with MATLAB® 9.2

International Joint conference on Industrial Engineering and Operations Management

IJCIEOM 2023: Industrial Engineering and Operations Management pp 263–274 Cite as

## Design of a Controller by Pole Placement Applied to a Production and Inventory System

• Verónica Olvera 4 &
• Esther Segura 4
• Conference paper
• First Online: 21 December 2023

74 Accesses

Part of the Springer Proceedings in Mathematics & Statistics book series (PROMS,volume 431)

In recent decades there have been several studies and proposals based on the theory of automatic control as a mechanism for the analysis and representation of the dynamic conditions of production models. The model of Automatic Pipelines Inventory and Order-Based Production Control System (APIOBPCS) model considers inputs, demand, and the desired inventory level. In the present work, the theory of control is applied to guarantee the profitability of the inventory starting the analysis in an open loop and later in a closed loop. This production and inventory system is represented by a block diagram and equations of state, and from this, control is designed by the feedback of states and applying the technique of design by pole placement. With the simulation, it is verified that the found value of these leads the system to maintain the level of inventory desired by the company. The behavior of the system is analyzed by assigning theoretical values which can be replaced by real data from a production system.

• Inventories
• Production system
• Pole placement

This is a preview of subscription content, log in via an institution .

• Available as PDF
• Own it forever
• Available as EPUB and PDF
• Durable hardcover edition
• Dispatched in 3 to 5 business days
• Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Zemzam, A., Maataoui, M. E., Hlyal, M., Alami, J. E., and Alami, N. E. (2017). Inventory management of supply chain with robust control theory: literature review. International Journal of Logistics Systems and Management, 27(4):438–465.

Jackson, I., Tolujevs, J., and Kegenbekov, Z. (2020). Review of inventory control models: A classification based on methods of obtaining optimal control parameters. Transport and Telecommunication, 21(3):191–202.

Towill, D. R. (1982). Dynamic analysis of an inventory and order-based production control system. The international journal of production research, 20(6):671–687.

John, S., Naim, M. M., and Towill, D. R. (1994). Dynamic analysis of a wip compensated decision support system. International Journal of Manufacturing System.

Capozzi, D. L., Del Vecchio, C., and Glielmo, L. (2003). A novel work in progress-based production control system. In 2003 European Control Conference (ECC), pages 2351–2357. IEEE.

Wiendahl, H.-P. and Breithaupt, J.-W. (1998). Production planning and control on the basis of control theory. In Advances in Production Management Systems, pages 351–362. Springer.

Tosetti, S., Patino, D., Capraro, F., and Gambier, A. (2008). Control of a production-inventory system using a pid controller and demand prediction. IFAC Proceedings Volumes, 41(2):1869–1874.

Huthaifa, A.-K., Cole, C., and Guo, W. (2017). Dynamics analysis of a production-inventory control system with two pipelines feedback. Kybernetes.

Hendricks, E., Jannerup, O., & Sørensen, P. H. (2008). Linear systems control: deterministic and stochastic methods. Berlin: Springer.

Ogata, K. (2003). Ingeniería de Control Moderna. Editorial Prentice Hall. Cuarta edición. México.

## Author information

Authors and affiliations.

Verónica Olvera & Esther Segura

You can also search for this author in PubMed   Google Scholar

## Corresponding author

Correspondence to Verónica Olvera .

## Editor information

Editors and affiliations.

Department of Industrial Engineering and Management, Faculty of Engineering, Universidade Lusófona, Lisbon, Grande Lisboa, Portugal

João Carlos Gonçalves dos Reis

Department of Mechanical Engineering, Universidade Federal da Bahia (UFBA), Salvador, Bahia, Brazil

Francisco Gaudêncio Mendonça Freires

Universidade Presbiteriana Mackenzie, São Paulo, São Paulo, Brazil

Milton Vieira Junior

## Rights and permissions

Reprints and permissions

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

Cite this paper.

Olvera, V., Segura, E. (2023). Design of a Controller by Pole Placement Applied to a Production and Inventory System. In: Gonçalves dos Reis, J.C., Mendonça Freires, F.G., Vieira Junior, M. (eds) Industrial Engineering and Operations Management. IJCIEOM 2023. Springer Proceedings in Mathematics & Statistics, vol 431. Springer, Cham. https://doi.org/10.1007/978-3-031-47058-5_21

DOI : https://doi.org/10.1007/978-3-031-47058-5_21

Published : 21 December 2023

Publisher Name : Springer, Cham

Print ISBN : 978-3-031-47057-8

Online ISBN : 978-3-031-47058-5

eBook Packages : Mathematics and Statistics Mathematics and Statistics (R0)

Anyone you share the following link with will be able to read this content:

Provided by the Springer Nature SharedIt content-sharing initiative

• Publish with us

Policies and ethics

• Find a journal

## Watch Intuitive Machines' private Odysseus lander attempt historic moon landing

The touchdown try is scheduled for 6:24 p.m. ET today (Feb. 22).

Update for 7 pm ET: Touchdown! Intuitive Machines reports that its IM-1 lander Odysseus has landed on the moon and is transmitting a faint, but definite, signal. "Houston, Odysseus has found his new home," mission director Tim Crain said. See our full landing story, video and photos .

We're just hours away from what could be the first moon landing by an American spacecraft in 50 years, a success that would kickstart the nation's hope to eventually establish a long-term presence on the moon as part of its Artemis program.

Odysseus (nicknamed "Odie"), a 14-foot-tall (4.3 meters) lander built and operated by Houston company Intuitive Machines , will attempt to land close to the moon's south pole today at 6:24 p.m. EST (2330 GMT).

You can tune in to the landing live here at Space.com, courtesy of NASA, or directly via the space agency . Coverage will begin at 5:00 p.m. EST (2200 GMT).

Related: Intuitive Machines' private Odysseus probe snaps 1st moon photo, enters lunar orbit ahead of historic landing attempt

Odysseus launched Feb. 15 on a six-day trip to the moon , ferrying 12 payloads, six of which are NASA science and technology instruments. (The agency paid Intuitive Machines \$118 million for the ride to the moon.) After sailing more than 620,000 miles (1,000,000 kilometers), the telephone-booth-sized spacecraft aced maneuvers yesterday (Feb. 21) that put it in a tight circular orbit around the moon a day ahead of its landing.

"We're very excited, but we're also very nervous," said Jack Burns, a professor at the University of Colorado, Boulder, who's the principal investigator for one of the NASA science instruments onboard Odysseus. "The success has been mixed in going to the surface of the moon."

If all goes to plan today, Odysseus will land on the rim of a small crater called Malapert A, about 190 miles (300 km) from the lunar the south pole on the Earth-facing side. Success would be historic, as no private probe has ever soft-landed on the moon before.

Others have tried. Pittsburgh-based Astrobotic's Peregrine lander, which launched last month, was done in by a propellant leak and ended up crashing back to Earth. The Israeli Beresheet and Japanese Hakuto-R landers both reached lunar orbit but crashed during their touchdown tries, in April 2019 and April 2023 , respectively.

Malapert A was the second site chosen for Odysseus' mission, which is known as IM-1. The first was in Oceanus Procellarum, the largest lunar basaltic plain, which is also a potential landing site for the Artemis program, NASA's endeavor to return astronauts to the moon for the first time since the Apollo era. Last year, however, Intuitive Machines changed the landing location to Malapert A due to worries over contaminating the region if Odysseus crashed.

"Landing near Malapert A also will help mission planners understand how to communicate and send data back to Earth from a location that is low on the lunar horizon," NASA said in a statement at the time.

Malapert A is relatively flat and thus safe to land on, and Odysseus will target a landing area the size of an American football field, Burns said. During descent, the spacecraft will primarily rely on real-time images and onboard navigation software to adjust its speed and touch down gently near the crater.

"It's a new place to land," Burns told Space.com. "I think Intuitive Machines has done everything it can to prepare."

—  Private Odysseus moon lander beams home 1st photos from space

—   Private Peregrine moon lander failure won't stop NASA's ambitious commercial lunar program

— Why Chandrayaan-3 landed near the moon's south pole — and why everyone else wants to get there too

IM-1's surface mission is expected to last about half a lunar daytime, or roughly seven Earth days. (It takes the moon about 27 Earth days to rotate once around its axis.)

"Our lunar day is going to be a little bit shorter than it is at other places," Burns said. "But we can do a lot of good science during that time."

The short mission timeline also results from the fact that the sun will already be up at Malapert A by the time Odysseus arrives. Its landing region sizzles at over 212 degrees Fahrenheit (100 degrees Celsius) during the day, so radiators built into the spacecraft are expected to protect it from getting too hot.

However, the moon lander cannot survive a frigid night on the moon because there are no heaters on board to keep its electronics at operating temperature. Scientists expect observations to continue as long as the battery holds out, until a handful of hours after sunset.

Future missions will likely be equipped with heaters to help spacecraft survive the harsh lunar night, said Burns. For this one, though, "we just want to land, do some good, solid science during the lunar day and declare victory."

This story was updated at 2:35 p.m. Feb. 22 with the updated landing time.

Join our Space Forums to keep talking space on the latest missions, night sky and more! And if you have a news tip, correction or comment, let us know at: [email protected].

Breaking space news, the latest updates on rocket launches, skywatching events and more!

Sharmila is a Seattle-based science journalist. She found her love for astronomy in Carl Sagan's The Pale Blue Dot and has been hooked ever since. She holds an MA in Journalism from Northeastern University and has been a contributing writer for Astronomy Magazine since 2017. Follow her on Twitter at @skuthunur.

Intuitive Machines moon lander sends home a haunting crater picture ahead of touch down today

Here's what just landed on the moon aboard Intuitive Machines' Odysseus lander

Intuitive Machines lands on moon in nail-biting descent of private Odysseus lander, a 1st for US since 1972

## Most Popular

By Elizabeth Howell February 22, 2024

By Fran Ruiz February 22, 2024

By Andrew Jones February 22, 2024

By Sharmila Kuthunur February 22, 2024

By Tariq Malik February 21, 2024

By Meredith Garofalo February 21, 2024

By Mike Wall February 21, 2024

By Brett Tingley February 21, 2024

By Robert Lea February 21, 2024

By Samantha Mathewson February 21, 2024

• 2 James Webb Space Telescope spots neutron star hiding in supernova wreckage
• 3 Radio signals from Orion nebula reveal new data about strange celestial objects: 'JuMBOS'
• 4 SpaceX Falcon 9 rocket launching for record-tying 19th time tonight
• 5 New 'Lunarcraft' game lets you build your own moon base in the Minecraft world

Help Center Help Center

• Help Center
• Trial Software
• Documentation

## State-Space Control Design

State-space control design methods, such as LQG/LQR and pole-placement algorithms, are useful for MIMO design.

Pole placement.

Linear-quadratic-Gaussian (LQG) control is a state-space technique that allows you to trade off regulation/tracker performance and control effort, and to take into account process disturbances and measurement noise.

Use linear-quadratic-Gaussian techniques to regulate the beam thickness in a steel rolling mill.

Design a feedback controller for a disk drive read/write head using LQG synthesis.

This case study illustrates the classical design process.

Design an LQG regulator for a plant output in a system with noise.

Design an LQG servo controller using a Kalman state estimator.

Design an LQR controller for a system modeled in Simulink ® .

Closed-loop pole locations have a direct impact on time response characteristics such as rise time, settling time, and transient oscillations. Pole placement uses state-space techniques to assign closed-loop poles.

## DC Motor Control

Compare three DC motor control techniques for tracking setpoint commands and reducing sensitivity to load disturbances.

## Thickness Control for a Steel Beam

Design a MIMO LQG regulator to control the horizontal and vertical thickness of a steel beam in a hot steel rolling mill.

## Regulate Pressure in Drum Boiler

Use Simulink® Control Design™ software, using a drum boiler as an example application. Using the operating point search function, the example illustrates model linearization as well as subsequent state observer and LQR design. In this drum-boiler model, the control problem is to regulate boiler pressure in the face of random heat fluctuations from the furnace by adjusting the feed water flow rate and the nominal heat applied. For this example, 95% of the random heat fluctuations are less than 50% of the nominal heating value, which is not unusual for a furnace-fired boiler.

## MATLAB Command

You clicked a link that corresponds to this MATLAB command:

Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

• Switzerland (English)
• Switzerland (Deutsch)
• Switzerland (Français)
• 中国 (English)

You can also select a web site from the following list:

## How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

• América Latina (Español)
• United States (English)
• Belgium (English)
• Denmark (English)
• Deutschland (Deutsch)
• España (Español)
• Finland (English)
• France (Français)
• Ireland (English)
• Italia (Italiano)
• Luxembourg (English)
• Netherlands (English)
• Norway (English)
• Österreich (Deutsch)
• Portugal (English)
• Sweden (English)
• United Kingdom (English)

## Asia Pacific

• Australia (English)
• India (English)
• New Zealand (English)

#### IMAGES

1. Pole placement design

2. Pole placement design

3. Pole Placement Controller Structure

4. Class 22 Pole Placement: Control Canonical Form and Pole Placement

5. The general flowchart of the pole placement control strategy

6. Self-tuning pole placement control structure.

#### VIDEO

1. The Concept of Pole Placement in Classical and Modern Control, 30/3/2016

2. Introducing the Rapid Pole

3. Pole Placement in Matlab using the "place" Command, 11/4/2016

4. pole placement compensator design 1 least degree solution بالعربي

5. Pole placement part 3

6. Example problem on Control system design by pole placement

1. Pole placement design

Pole placement is a method of calculating the optimum gain matrix used to assign closed-loop poles to specified locations, thereby ensuring system stability. Closed-loop pole locations have a direct impact on time response characteristics such as rise time, settling time, and transient oscillations. For more information, see Pole Placement.

2. Pole Placement

This design technique is known as pole placement, which differs from root locus in the following ways: Using pole placement techniques, you can design dynamic compensators. Pole placement techniques are applicable to MIMO systems. Pole placement requires a state-space model of the system (use ss to convert other model formats to state space).

3. PDF Controller Design by Pole placement

Controller Design by Pole placement Introduction to control Design of two position controller Control design by pole placement Control design by PID control Introduction to Control So far we have modeled systems ( mechanical, electromechanical and electric) and analyzed their time-response behavior.

Pole Placement Design. Pole placement design refers to the selection of the feedback gain vector that places the poles of the characteristic polynomial at the desired locations. The control law for the pole placement design is expressed as: $u(t)=-{\bf k}^{T} {\bf x}(t)+r(t), \nonumber$

5. PDF Pole Placement Design

Pole Placement Design Introduction Simple Examples Polynomial Design State Space Design Robustness and Design Rules Model Reduction Oscillatory Systems Summary Theme: Be aware where you place them! Introduction A simple idea Strong impact on development of control theory The only constraint is reachability and observability The robustness debate

6. PDF Pole Placement Design Technique 8.2 State Feedback and Pole Placement

Pole Placement Design Technique 8.2 State Feedback and Pole Placement Consider a linear dynamic system in the state space form In some cases one is able to achieve the goal (e.g. stabilizing the system or improving its transient response) by using the full state feedback, which represents a linear combination of the state variables, that is

7. PDF Module 2-1: Pole Placement

Module 2-1: Pole Placement Linear Control Systems (2020) Ding Zhao Assistant Professor College of Engineering School of Computer Science Carnegie Mellon University Table of Contents PID Feedback Control Design (State) Feedback Control Design (Luenberger) observer Separation Principle Reduced Order Observer MIMO Systems Table of Contents

8. PDF Controller design by pole placement

In this chapter, we examine state-space methods of pole placement design for linear constant coefficient systems of equations (and hence for the physical systems which those systems purportedly model).

9. Controller design by pole placement

In classical methods of control law design, the designer introduces a structure for the controller and then several parameters within that structure are chosen to yield a response that meets specifications. ... Controller design by pole placement. In: Handbook of Control Systems Engineering. The Springer International Series in Engineering and ...

10. 10.2: Controllers for Discrete State Variable Models

The pole placement controller designed for a continuous-time state variable model can be used with derived sampled-data system model. Successful controller emulation requires a high enough sampling rate that is at least ten times the frequency of the dominant closed-loop poles of the system.

11. Pole Placement Method

An assisted pole placement method has been proposed to help the designers in their choice of the design parameters. Once the desired rise time, settling time and percentage of overshoot of the step response of the closed-loop system with respect to a reference change have been specified, the computation of the controller is performed automatically.

12. Pole Placement Optimization for SISO Control System

5.4. Control Design by the Pole Placement Optimization. In the proposed method, the order of the controller ( 4) is taken to be \ (m=n-1=3 \). The desired characteristic polynomial of the closed-loop system ( 20) of order \ (2n-1=7 \) can contain up to three pairs of complex conjugate roots.

13. Pole Placement With Integral Control Action to Eliminate Steady-State

The classical pole placement design finds the feedback control matrix and the control law such that the closed-loop system (2) is stable and that the poles are placed at the desired locations (that are specified by the designer).

14. Introduction: State-Space Methods for Controller Design

Control Design Using Pole Placement Introducing the Reference Input Observer Design Modeling There are several different ways to describe a system of linear differential equations. The state-space representation was introduced in the Introduction: System Modeling section. For a SISO LTI system, the state-space form is given below: (1) (2)

15. Simultaneous Linear Quadratic Pole Placement (Lqpp) Control Design

The pole placement (PP) technique for design of a linear state feedback control system requires specification of all the closed-loop pole locations even though only a few poles dominate the system's transient response characteristics.

16. Full state feedback

Full state feedback (FSF), or pole placement, is a method employed in feedback control system theory to place the closed-loop poles of a plant in pre-determined locations in the s-plane. [1]

17. Chapter 9.2.2

design goals for the PI controller: (1) the closed-loop system is stable; (2) steady- state error is minimized; (3) settling time does not exceed; and (4) maximum overshoot does not exceed . The first design goal is achieved by ensuring that all poles lie within the unit circle. The second goal is achieved by using a PI

18. Pole Placement Design for Load Frequency Control (Lfc) of An Isolated

Modern control design is especially useful in multivariable systems. One approach in modern control system accomplished by the use of state feedback is known as Pole-Placement Design. The pole-placement design allows all roots of the system characteristic equation to be placed in desired locations.

19. Design of a Controller by Pole Placement Applied to a ...

The control theory applied to a production and inventory system lows the system to remain stable in the presence of uncertainties [ 1 ], approaches based on control theory are generally proposed for a single product in a system [ 2 ]. Control theory has generally been applied to reduce inventory variation and thereby minimize inventory costs ...

20. Control Design

Design a full-state feedback controller using pole placement using Control System Toolbox™. You can use pole placement technique when the system is controllable and when all system states can be measured. Using the pole placement technique, you can design a controller so that closed-loop system poles are placed in desired locations to meet ...

21. Watch Intuitive Machines' private Odysseus lander attempt historic moon

Odysseus (nicknamed "Odie"), a 14-foot-tall (4.3 meters) lander built and operated by Houston company Intuitive Machines, will attempt to land close to the moon's south pole today at 6:24 p.m. EST ...

22. State-Space Control Design

Design an LQG servo controller using a Kalman state estimator. Design LQR Servo Controller in Simulink. Design an LQR controller for a system modeled in Simulink ®. Pole Placement. Closed-loop pole locations have a direct impact on time response characteristics such as rise time, settling time, and transient oscillations.