**Analysis of Control System and Synthesis of Real Compensator**

**The standard task**

**Variant 18**

Topic:of Control System and Synthesis of Real Compensator.:transfer functions (table 1, 2, 3) and structure diagram (fig. 1, 2, 3) are given. It is necessary to. Analyze uncompensated system:

) calculate the transfer function of the whole uncompensated system:) without MATLAB;) using MATLAB;

) define zeros and poles of obtained transfer function;

) plot the time responses for obtained transfer function; the responses should be produced in two different windows of one figure graphic object using command *subplot*;

) determine settling time and overshoot of the uncompensated system;

) check whether the system is stable or not using Hurwitz criterion;

) check whether the system is stable or not using Nyquist criterion;

) if system is stable, determine the stability margins using Bode diagram;

) do the conversion from the transfer functions to state space;

) calculate the eigenvalues of the uncompensated system;

10) calculate -norm of the uncompensated system.. Synthesize the real PD-compensator () which would guarantee desired phase margin at gain crossover frequency :

) calculate the phase shift of compensator at given frequency ;

) determine the gain of proportional part of compensator ;

) determine the gain of differential part of compensator ;

) plot Bode diagram of the PD-compensator.. Analyze compensated system:

) build in Simulink the compensated system;

) determine settling time and overshoot of the compensated system using transient process received in Simulink;

) calculate the transfer function of the whole compensated system;

) plot the step response for uncompensated and compensated system; the responses should be produced in one window of figure graphic object using command *hold on*;

) check whether the system is stable or not using sufficient condition of stability;

) if system is stable, determine the stability margins using Bode diagram;

) do the conversion from the transfer functions to state space;

) calculate the eigenvalues of the compensated system;

) calculate -norm of the compensated system;

) do the conclusions.

**Introduction**

This term paper represents the analysis of control system and synthesis of real compensator. So here we will examine the uncompensated and compensated system, check whether the system is stable or not using Niquist, Hurwitz criterions and sufficient condition of stability, calculate eigenvalues and-norms of the uncompensated and compensated system. We will also synthesize the real PD-compensator () which would guarantee desired phase margin at gain crossover frequency and then will draw the conclusions.

**1.****Initial data for the term paper performance**

. 1. Control system of nuclear reactor rods position

Table 1. Individual variants for control system of nuclear reactor rods position

No,/sec,

deg620.124.4360

**2.****Calculations**

**I.****Analyze of uncompensated system**

**)****Calculation of the transfer function of the whole uncompensated system:)****without Matlab**

*Theoretical information:*

A transfer function of the analog system is the ratio of the Laplace transform of the output signal to the Laplace transform of the input one under zero initial conditions. A continuous time SISO (single-input-single-output) transfer function is characterized by its numerator and denominator , both polynomials of the Laplace variable .

*Calculations:*

The control system of nuclear reactor rods position looks like:

. 2

So, the transfer function of open-loop uncompensated system is:

And the transfer function of closed-loop uncompensated system is:

**b)****with Matlab**

*Program code:*

disp ('Task 1. Analyze of uncompensated system')

=tf([5]);=tf([6], [1 6 0]);=tf([0.2]);=tf([10.5]);=tf([1], [0.1 1]);

=series (W1, W2);=series (W12, W3);

('Transfer function of open-loop uncompensated system is')=series (W123, W4)('Transfer function of closed loop uncompensated system is')=feedback (Wolun, W5, - 1)% task 1.1

*Results of the program:*

Task 1. Analyze of uncompensated systemfunction of open-loop uncompensated system isfunction:

^2 + 6 sfunction of closed loop uncompensated system isfunction:

.3 s + 63

.1 s^3 + 1.6 s^2 + 6 s + 63

**2)****define zeroes and poles of obtained transfer function**

*Theoretical information:*

Poles of the transfer function are the roots of the system characteristic equation. Characteristic equation is the denominator of transfer function reduced to zero.of the transfer function are the roots of equation which is obtained by reducing the numerator of the transfer function to zero.method is based on using of the operators *pole(sys) *which calculates the poles of the transfer function and *zero(sys)* which calculates zeros.method is based on using of the operator *pzmap(sys)*, which plots the pole-zero map of the continuous-time LTI model *sys* on a complex plane. For SISO systems, *pzmap* plots poles and zeros of the transfer function.

*Program code:*

disp ('Poles and zeros of closed loop uncompensated system')= pole(Wclun), Z = zero(Wclun)% task 1.2(1)(Wclun), grid on

*Results of the program:*

Poles and zeros of closed loop uncompensated system=

.8199

.5901 + 6.4933i

.5901 - 6.4933i=

.0000

.3

**3) plot the time responses for obtained transfer function; the responses should be produced in two different windows of one figure graphic object using command ***subplot***;**

*Theoretical information:*

There are two main time responses, namely: a step response and an impulse one.response of the dynamic system on the step (Heavyside) function at its input is called a step response. To plot the step response of an arbitrary LTI (Linear Time Invariant) model *sys* on the screen, operator *step(sys)* is used.

The response of the dynamic system on the -function at its input is called an impulse response. To plot the impulse response of an arbitrary LTI model *sys* on the screen, operator *impulse(sys)* is used. The duration of simulation is determined automatically to display the transient behavior of the response.

*Program code:*

figure(2)(2,1,1), step(Wclun),on, legend ('Step of uncompensated system')% task 1.3(2,1,2), impulse(Wclun),on, legend ('Impulse of uncompensated system')

*Results of the program:*

Fig.4

**4) determine settling time and overshoot of the uncompensated system;**

*Theoretical information:*

**Settling time** is the period of time from the beginning of transients to the moment of time, after which the inequality

takes place, where is given small constant value, which is usually equal to of the steady state value. Or in other words, it is the time for the system output to settle down to within a tolerance band of the final value, normally between ±2 or 5%.

**Overshoot ** is maximal deflection of the output value in the transient process of the transient process from the steady state value. It normally expressed as percentage determined as:

,

where is maximal deflection of the transient process.the most cases a system would has sufficient stability margins if overshoot is less or equal to .

*Results of the program:*

From the Fig.4:of closed loop compensated system is 81.8%.time of closed loop uncompensated system is 6.76 sec.

**5) check whether the system is stable or not using Hurwitz criterion;**

*Theoretical information:*

*Hurwitz stability criterion*

The characteristic equation of order system is

.

For this system to be stable it is necessary and sufficient that the determinant of Hurwitz matrix and the determinants of all its diagonal minors are positive.matrix is

.

The main diagonal of Hurwitz matrix contains coefficients of characteristic equation beginning with to . Elements which are located above the main diagonal have increasing indices; elements which are located under the main diagonal have decreasing indices. So odd-numbered lines contain coefficients of characteristic equation with odd indexes, and even-numbered lines contain coefficients of characteristic equation with even indexes. Places, in which coefficients are absent, are filled by zeros.

*Program code:*

[n0, d0]=tfdata (Wclun, 'v')d0 (1)>0&d0 (2)&