Documente Academic
Documente Profesional
Documente Cultură
Yassine Ariba
Sommaire
What is Scilab ?
www.scilab.org
License
Getting started
--> A = 2;
--> t = [0:0.01:10];
--> y = A * sin (3* t );
--> plot (t , y );
--> A = 2;
--> t = [0:0.01:10];
--> y = A * sin (3* t );
--> plot (t , y );
the console
command history
file browser
variable browser
and others : editor, graphics, help, ...
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 10 / 142
What is Scilab ? Basics
Sommaire
Elementary operations
--> 4^2/2
ans =
8.
--> 2*(1+2* %i )
ans =
2. + 4. i
--> %i ^2
ans =
- 1.
boolean operations
the boolean value true is written : %T.
the boolean value false is written : %F.
--> %T & %F
ans =
F
--> 2 == 2
ans =
T
--> 2 < 3
ans =
T
Variables
--> a = 2.5;
--> b = 3;
--> c = a*b
c =
7.5
--> c + d
! - - error 4
Undefined variable : d
Pre-defined variables
√
%i imaginary number i = −1
%e Euler’s number e
%pi constant π
%inf infinity ∞
%t ou %T boolean true
%f ou %F boolean false
--> %i ^2
ans =
- 1.
Sommaire
Automatic creation
--> v = [0:0.2:1]
v =
0. 0.2 0.4 0.6 0.8 1.
Syntax : start:step:end
--> length ( v )
ans =
6.
--> mean ( v )
ans =
0.5
--> A = [1 2 3 ; 4 5 6 ; 7 8 9]
A =
1. 2. 3.
4. 5. 6.
7. 8. 9.
Particular matrices :
zeros(n,m) n × m matrix of zeros
ones(n,m) n × m matrix of ones
eye(n,n) identity matrix
rand(n,m) n × m matrix of random numbers (values ∈ [0, 1])
--> A (2 ,3)
ans =
6.
--> A (2 ,:)
ans =
4. 5. 6.
--> A (2 ,3) = 0;
--> A
A =
1. 2. 3.
4. 5. 0.
7. 8. 9.
--> B = [1 0 ; 2 2];
--> det ( B )
ans =
2.
--> inv ( B )
ans =
1. 0.
- 1. 0.5
--> triu ( A )
ans =
1. 2. 3.
0. 5. 6.
0. 0. 9.
Matrix operations
Basic operations +, -, *, /, ˆ can be directly performed
--> C = [ 1 0 ; 3 1 ; 0 2];
--> D = [1 1 ; 4 0];
--> B + D
ans =
2. 1.
6. 2.
--> B * inv ( B )
ans =
1. 0.
0. 1.
--> A * C
ans =
7. 8.
19. 17.
31. 26.
--> A + B
! - - error 8
Inconsistent addition .
--> t = [0:0.2:1];
--> exp ( t )
ans =
1. 1.2214 1.4918 1.8221 2.2255 2.7182
Element-wise operations
.* ./ .ˆ
--> A = [0 4 ; 1 2];
--> B = [1 2 ; 5 -3];
--> A * B
ans =
20. - 12.
11. - 4.
--> A .* B
ans =
0. 8.
5. - 6.
--> A .^2
ans =
0. 16.
1. 4.
Sommaire
2D graphics
2D graphics
3D graphics
To plot a parametric curve in 3D space use function : param3d
--> t = 0:0.01:10* %pi ;
--> x = sin ( t );
--> y = cos ( t );
--> z = t;
--> param3d (x ,y , z );
3D graphics
To plot a parametric curve in 3D space use function : param3d
--> t = 0:0.01:10* %pi ;
--> x = sin ( t );
--> y = cos ( t );
--> z = t;
--> param3d (x ,y , z );
Overview
plot 2D graphic
contour level curves in x-y plan
surf 3D surface
pie “pie” plot
histplot histogram plot
hist3d 3D histogram plot
bar bar plot
polarplot polar coordinate plot
Sommaire
Scripts
Scripts
disp (A , ’ Area : ’ );
disp (V , ’ Volume : ’ );
On the console :
--> exec ( ’ myscript . sce ’ , -1)
Area :
50.265482
Volume :
33.510322
plot (x , y );
disp ( ’ see plot on the figure ’ );
On the console :
--> n = 50;
--> exec ( ’ myscript2 . sce ’ , -1)
Conditional statements if
if boolean expression then
instructions 1
else
instructions 2
end
if (x >=0) then
disp ( " x is positive " );
else
disp ( " x is negative " );
end
select variable
case value 1
instructions 1
case value 2
instructions 2
else
instructions 3
end
select i
case 1
disp ( " One " );
case 2
disp ( " Two " );
case 3
disp ( " Three " );
else
disp ( " Other " );
end
instructions
end
n = 10;
for k = 1: n
y ( k ) = exp ( k );
end
instructions
end
x = 16;
while ( x > 1 )
x = x /2;
end
And also :
tic
S = 0;
for k = 1:1000
S = S + k;
end
t = toc (); disp ( t );
tic
N = [1:1000];
S = sum ( N );
t = toc (); disp ( t );
0.029
0.002
Functions
A function is a command that makes computations from variables and
returns a result
Examples :
--> y = sin (1.8)
y =
0.9738476
--> x =[0:0.1:1];
--> N = length ( x )
N =
11.
endfunction
r1 =
- 2.
f (x) = (x + 1) e−2x
function y = f ( x )
y = ( x +1).* exp ( -2* x );
endfunction
--> y = f (4)
y =
0.0016773
--> y = f (2.5)
y =
0.0235828
--> t = [0:0.1:5];
--> plot (t , f )
function z = mytest ( x )
z = x + a;
a = a +1;
endfunction
--> a = 2;
--> mytest (3)
ans =
5.
--> a
a =
2.
Sommaire
Sommaire
Many instructions have the same syntax, but some others not...
A dictionary gives a list of the main MATLAB functions with their Scilab
equivalents
http://help.scilab.org/docs/5.4.1/en_US/section_36184e52ee88ad558380be4e92d3de21.html
http://www.scilab.org/en/resources/documentation/community
In MATLAB In Scilab
In MATLAB In Scilab
length, the larger of the number of length, the product of the number of
rows and columns rows and columns
after a first plot, a second one clears after a first plot, a second one holds
the current figure the previous
division by a vector division by a vector
>> x = 1/[1 2 3] --> x = 1/[1 2 3]
Error using / Matrix dimensions must x =
agree. 0.0714286
0.1428571
operators == and ∼= compare elements
0.2142857
>> [1 2 3] == 1
x is solution of [1 2 3]*x = 1
ans =
1 0 0 operators == and ∼= compare objects
>> [1 2 3] == [1 2] --> [1 2 3] == 1
Error using == ans =
Matrix dimensions must agree. T F F
>> [1 2] == [’1’,’2’] --> [1 2 3] == [1 2]
ans = ans =
0 0 F
--> [1 2] == [’1’,’2’]
ans =
F
In MATLAB In Scilab
for a matrix A=[1 2 4;4 8 2;6 0 9] for a matrix A=[1 2 4;4 8 2;6 0 9]
>> max(A) --> max(A)
ans = ans =
7 8 9 9.
>> sum(A) --> sum(A)
ans = ans =
12 10 18 36.
disp must have a single argument disp may have several arguments
>> a=3; --> a = 3;
>> disp([’the result is --> disp(a,’the result is ’ +
’,int2str(a),’ ...bye!’]) string(a),’hello!’)
In MATLAB
In Scilab
Value Meaning
0 the default value
-1 print nothing
1 echo each command line
2 print prompt −− >
3 echo + prompt
4 stop before each prompt
7 stop + prompt + echo
1.
result is 4
result is 4
1.
-->b = a +3;
--> disp ( ’ result is ’+ string ( b ))
result is 4
In MATLAB
In Scilab
a function is a variable
variables in the function are local variables and variables from the
calling workspace are known
when defined (function ... endfunction), functions are not executed
but loaded
any change in the function requires to reload it (executing the
environment)
5.
5.
Any change needs to redefine (reload) the function to be taken into account.
Sommaire
Exercices
Exercice 1
1 + 22 + 32 + 42 + . . . + 1002
in 3 different ways :
with instruction for,
with instruction while,
with instruction sum.
Exercice 2
Exercice 3
+∞
X 2A π 2π
f (t) = an cos(nωt) with an = sin n and ω= .
n=1
nπ 2 T
Exercice 4
x2 + y 2 = 1
Compute the area of a quarter of the disc with the rectangle method.
Sommaire
Sommaire
Xcos
It is the Simulink
R
counterpart of Scilab.
Xcos
It is the Simulink
R
counterpart of Scilab.
A simple example
A simple example
block sub-palette
sinus Sources/GENSIN f
gain Math. Operations/GAINBLK f
scope Sinks/CSCOPE
clock Sources/CLOCK c
drag and drop blocks from the palette browser to the editing window
k is variable from the workspace (or from Simulation/Set context)
black lines are data flows and red lines are event flows
block sub-palette
sum Math. Operations/BIGSOM f
gain Math. Operations/GAINBLK f
integral Cont. time systems/INTEGRAL m
scope Sinks/CSCOPE
x-y scope Sinks/CSCOPXY
clock Sources/CLOCK c
Sommaire
Physical modeling
Physical modeling
Examples
Electrical system
Mechanical system
Installation requirements :
Installation requirements :
Sommaire
Exercices
Exercice 1
Exercice 2
ẋ(t) = x(t) a − by(t)
ẏ(t) = y(t) − c + dx(t)
where
x(t) is the number of prey
y(t) is the number of predator
a and d are parameters describing the growth of the prey population and the
predator population
b and c are parameters describing the death rate of the prey population and
the predator population
2. numerical values : a = 3, b = 1, c = 2, d = 1
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 81 / 142
Application to feedback control
Sommaire
Sommaire
A brief review
⇒ feedback control
θ̂(s) 1
G(s) = =
û(s) (s + 1)s
θ̂(s) 1
G(s) = =
û(s) (s + 1)s
Step Response
2.5
1.5
Amplitude
0.5
0
0 0.5 1 1.5 2 2.5 3
Time (sec)
20
Gain (dB)
0
−20
−40
−1 0 1
10 10 10
−45
Phase (degre)
−90
−135
−180
−1 0 1
10 10 10
pulsation ω
π
Response of θ(t) for a step reference r(t) = 2
Step Response
2.5
1.5
Amplitude
k=1
1 k=2
k=5
k=0.5
0.5
0
0 2 4 6 8 10 12
Time (sec)
s2 + s
ε̂(s) = r̂(s)
s2 + s + k
π/2
the static error is zero : εs = lim s ε̂(s) = 0 (with r̂(s) = s
)
s→0
s2 + s
ε̂(s) = r̂(s)
s2 + s + k
π/2
the static error is zero : εs = lim s ε̂(s) = 0 (with r̂(s) = s
)
s→0
K = 1,
√
Kωn2
F (s) = 2 ⇒ ωn = k√
s + 2ζωn s + ωn2
ζ = 1/2 k
Sommaire
--> num = 1;
--> den = %s ^2+ %s ;
--> G = syslin ( ’c ’ ,num , den )
G =
1
-----
2
s + s
- 1.
0
--> t = [0:0.02:3];
Systems connection
+ +
+ -
Example
1 4
G1 (s) = and G2 (s) =
s+2 s
--> k = 2;
--> F = ( G * k ) /. 1
F =
2
- -- - -- -- -
2
2 + s + s
1. 2.
1. 0.
2. 0.
Sommaire
Bode plot
Bode plot
e(t)
1 v(t)
0.5
−0.5
−1
e(t) (ω=0.8)
1 v(t)
0.5
−0.5
−1
10 15 20 25 30 35 40 45
temps (s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 100 / 142
Application to feedback control Bode plot
0.5 0.5
0 0
−0.5 −0.5
−1 −1
10 15 20 25 30 35 40 45 2 3 4 5 6 7 8 9 10
temps (s) temps (s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 100 / 142
Application to feedback control Bode plot
0.5 0.5
0 0
−0.5 −0.5
−1 −1
10 15 20 25 30 35 40 45 2 3 4 5 6 7 8 9 10
temps (s) temps (s)
e(t) (ω=8)
1 v(t)
0.5
−0.5
−1
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 100 / 142
Application to feedback control Bode plot
0.5 0.5
0 0
−0.5 −0.5
−1 −1
10 15 20 25 30 35 40 45 2 3 4 5 6 7 8 9 10
temps (s) temps (s)
0.5 0.5
0 0
−0.5 −0.5
−1 −1
3 3.5 4 4.5 5 5.5 6 6.5 7 10 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8
temps (s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 100 / 142
Application to feedback control Bode plot
Bode Diagram
5
0
−5
Magnitude (dB)
−10
−15
−20
−25
−30
0
Phase (deg)
−45
−90
−1 0 1 2
10 10 10 10
Frequency (rad/sec)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 101 / 142
Application to feedback control Bode plot
Bode Diagram
5
0
−5
Magnitude (dB)
−10
−15
−20
ω=8
−25
−30
0
Phase (deg)
−45
−90
−1 0 1 2
10 10 10 10
Frequency (rad/sec)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 101 / 142
Application to feedback control Bode plot
Bode Diagram
5
0
−5
Magnitude (dB)
−10
−15
−20 ω=0.8 ω=4
−25
ω=8
0
Phase (deg)
−45 ω=40
−90
−1 0 1 2
10 10 10 10
Frequency (rad/sec)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 102 / 142
Application to feedback control Bode plot
Frequency analysis consists in studying the response of a LTI system with sine
inputs
U(s) Y(s)
F(s)
u(t)
u(t)==uu00sin(ωt)
sin(ωt) y(t)
y(t)==yy00sin(ωt+φ)
sin(ωt+φ)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 103 / 142
Application to feedback control Bode plot
Frequency analysis consists in studying the response of a LTI system with sine
inputs
U(s) Y(s)
F(s)
u(t)
u(t)==uu00sin(ωt)
sin(ωt) y(t)
y(t)==yy00sin(ωt+φ)
sin(ωt+φ)
1.5
T ∆t
u0 u(t)
1
0.5
y0 T
y(t)
−0.5
−1
0 2 4 6 8 10 12 14 16 18 20
The output signal is also a sine with the same frequency, but with a different
magnitude and a different phase angle.
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 103 / 142
Application to feedback control Bode plot
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 104 / 142
Application to feedback control Bode plot
F (jω) is the transfer function of the system where the Laplace variable s
has been replaced by jω.
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 104 / 142
Application to feedback control Bode plot
1/2
F (s) =
s+1
u1 = sin(0.05 t)
u2 = sin(1.5 t)
u3 = sin(10 t)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 105 / 142
Application to feedback control Bode plot
1/2
F (s) =
s+1
u1 = sin(0.05 t)
u2 = sin(1.5 t)
u3 = sin(10 t)
1/2
we express F (jω) =
jω + 1
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 105 / 142
Application to feedback control Bode plot
u1 (t)
1
0.5
−0.5
y1 (t)
−1
1
u2 (t) 1
u3 (t)
0.5 0.5
0 0
y3 (t)
y2 (t)
−0.5 −0.5
−1 −1
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 106 / 142
Application to feedback control Bode plot
Bode diagram : it plots the gain and the phase shift w.r.t. the frequency ω
y0
the gain is expressed as decibels : gain dB = 20 log u0
property : the Bode diagram of F (s)G(s) is the sum of the one of F (s) and
the one of G(s).
in Scilab, the instruction bode(F) plots the Bode diagram of F (s).
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 107 / 142
Application to feedback control Bode plot
Bode diagram : it plots the gain and the phase shift w.r.t. the frequency ω
y0
the gain is expressed as decibels : gain dB = 20 log u0
property : the Bode diagram of F (s)G(s) is the sum of the one of F (s) and
the one of G(s).
in Scilab, the instruction bode(F) plots the Bode diagram of F (s).
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 107 / 142
Application to feedback control Simulation with Xcos
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 108 / 142
Application to feedback control Simulation with Xcos
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 109 / 142
Application to feedback control Simulation with Xcos
block sub-palette
step Sources/STEP FUNCTION
sum Math. Operations/BIGSOM f
gain Math. Operations/GAINBLK f
transfert function Cont. time systems/CLR
scope Sinks/CSCOPE
clock Sources/CLOCK c
settings : final value (step) = %pi/2, final integral time = 12, Ymin= 0,
Ymax= 2.5, Refresh period = 12
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 109 / 142
Application to feedback control Exercices
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 110 / 142
Application to feedback control Exercices
Exercices
4
G(s) =
4s2 + 4s + 5
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 111 / 142
Classical control design
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 112 / 142
Classical control design
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 113 / 142
Classical control design Loopshaping
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 114 / 142
Classical control design Loopshaping
Loopshaping
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 115 / 142
Classical control design Loopshaping
we recall that
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 117 / 142
Classical control design Loopshaping
4k
L(s) =
s2 + 3s + 3
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 118 / 142
Classical control design Loopshaping
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 119 / 142
Classical control design Loopshaping
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 119 / 142
Classical control design Loopshaping
Step response of the closed-loop system (unit step) for k = {0.5, 1, 5, 10}
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 121 / 142
Classical control design Phase lag controller
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 122 / 142
Classical control design Phase lag controller
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 122 / 142
Classical control design Phase lag controller
Example
4
G(s) =
s2 + 3s + 3
What value for the proportional gain k to have a static error of 10% ?
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 123 / 142
Classical control design Phase lag controller
Example
4
G(s) =
s2 + 3s + 3
What value for the proportional gain k to have a static error of 10% ?
1
static error = = 0.1 ⇒ k = 6.75
1 + 34 k
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 123 / 142
Classical control design Phase lag controller
Bode Diagram
20
−40
−60
−80
0
−45
Phase (deg)
−90
−135
−180
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 124 / 142
Classical control design Phase lag controller
Bode Diagram
20
−40
−60
−80
0
−45
Phase (deg)
−90
−135
−180
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/s)
Phase margin : before = 111◦ (at 1.24 rd/s) ; after = 34◦ (at 5.04 rd/s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 124 / 142
Classical control design Phase lag controller
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 125 / 142
Classical control design Phase lag controller
a = 6.75
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 125 / 142
Classical control design Phase lag controller
Bode Diagram
20
Magnitude (dB)
−20
−40
−60
−80
0
−45
Phase (deg)
−90
−135
−180
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 126 / 142
Classical control design Phase lag controller
Bode Diagram
20
G(s)
kG(s)
0 kC(s)G(s)
Magnitude (dB)
−20
−40
−60
−80
0
−45
Phase (deg)
−90
−135
−180
−3 −2 −1 0 1 2
10 10 10 10 10 10
Frequency (rad/s)
Phase margin : now, with the proportional gain and the phase lag controller
= 70◦ (at 1.56 rd/s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 126 / 142
Classical control design Phase lag controller
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 127 / 142
Classical control design Phase lag controller
1.2
0.8
Amplitude
0.6
0.4
0.2
0
0 1 2 3 4 5 6
Time (seconds)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 127 / 142
Classical control design Phase lead controller
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 128 / 142
Classical control design Phase lead controller
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 129 / 142
Classical control design Phase lead controller
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 129 / 142
Classical control design Phase lead controller
Procedure :
measure the current phase margin and subtract to the desired margin
ϕm = P Mdesired − P Mcurrent
compute a
1 + sin ϕm
a=
1 − sin ϕm
√
at the maximum phase lead ϕm , the magnitude is 20 log a.
√ Find the
frequency ωm for which the magnitude of kG(s) is −20 log a
compute τ
1
τ = √
ωm a
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 130 / 142
Classical control design Phase lead controller
Example
4
G(s) =
s(2s + 1)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 131 / 142
Classical control design Phase lead controller
Example
4
G(s) =
s(2s + 1)
40
1.4
Magnitude (dB)
20
1.2
0
1
−20
Amplitude
0.8
−40
−90
0.4
−135
0.2
0 −180
0 5 10 15 20 25 10
−2 −1
10
0
10
1
10
Time (seconds)
Frequency (rad/s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 131 / 142
Classical control design Phase lead controller
current phase margin is 20◦ , and the desired margin is, say, 60◦
ϕm = 40◦ = 0.70 rd
compute a
1 + sin ϕm
a= = 4.62
1 − sin ϕm
at the maximum phase lead ϕm , the magnitude is 6.65 db. At the
frequency ∼ 2 rd/s the magnitude of G(s) is −6.65 db
compute τ
1
τ = √ = 0.23
ωm a
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 132 / 142
Classical control design Phase lead controller
current phase margin is 20◦ , and the desired margin is, say, 60◦
ϕm = 40◦ = 0.70 rd
compute a
1 + sin ϕm
a= = 4.62
1 − sin ϕm
at the maximum phase lead ϕm , the magnitude is 6.65 db. At the
frequency ∼ 2 rd/s the magnitude of G(s) is −6.65 db
compute τ
1
τ = √ = 0.23
ωm a
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 132 / 142
Classical control design Phase lead controller
Example
40
1.4
Magnitude (dB)
20
1.2
0
1
−20
Amplitude
0.8
−40
−90
0.6
Phase (deg)
0.4
−135
0.2
0 −180
0 5 10 15 20 25 10
−2 −1
10
0
10
1
10
Time (seconds)
Frequency (rad/s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 133 / 142
Classical control design Phase lead controller
Example
1.4 50
Magnitude (dB)
1.2 0
1 −50
Amplitude
0.8
−100
−90
0.6
Phase (deg)
0.4
−135
0.2
0 −180
0 5 10 15 20 25 10
−2
10
−1
10
0 1
10
2
10
Time (seconds)
Frequency (rad/s)
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 134 / 142
Classical control design PID controller
PID controller
C(s) = kp + ki 1s + kd s
1
= kp (1 + τi s
)(1 + τd s)
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 135 / 142
Classical control design PID controller
PI controller
1 + τi s
C(s) =
τi s
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 136 / 142
Classical control design PID controller
PD controller
C(s) = 1 + τd s
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 137 / 142
Classical control design PID controller
1 + τ s 1 + a τ s
1 2 2
C(s) = k
1 + a1 τ1 s 1 + τ2 s
with a1 > 1 and a2 > 1.
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 138 / 142
Classical control design PID controller
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 139 / 142
Classical control design Exercices
Sommaire
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 140 / 142
Classical control design Exercices
Exercices
Exercice 1
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 141 / 142
Classical control design Exercices
Exercice 2
Y. Ariba - Icam, Toulouse. Brno University of Technology - April 2015 142 / 142