Computer Controlled System
ELE3105/70520
Examiner: Dr Paul Wen
Faculty of Engineering and Surveying
The University of Southern Queensland
Toowoomba, Qld 4350
Contact Information:
Email: [email protected]
Phone: (07)46312586
Office: Z408
Study Materials
Study Book: Computer controlled systems
Textbook:
“Discrete time control system”, Katsuhiko
Ogata, 2nd ed. Prentice-Hall, Inc., 1995.
Support Materials: Matlab ( 5.3/later + Control toolbox)
References
1. Astrom K. J. & Wittenmark B., “Computer controlled
systems theory and design”, 3rd edition, Prentice Hall,
New York, 1996.
2. Nagle H. & Philips C., “Digital control system analysis
& design”, Prentice Hall.
3. Norman S. Nise, “Control system engineering” Third
edition, John Wiley & Sons, Inc., New York, 2000.
Timetable
Lecture
Mon.
Wed.
Fri.
Tutorial
Consulting
10 – 11 am
Z313/office
4 –5 pm
Z313/office
9 -10 am
Z313
8 -10 am
Z313
10 -12 am
Z313
Note: Consulting in non-consulting time
1) Quick questions (5 minutes): Any time
2) Others: By Appointments
Assessment
Students’ attention is drawn to the student
related policies and the unit specification
2002, which outline the University’s
Assessment Policy and the requirements.
For unit 70520, Computer controlled systems,
you must obtain 50% from each of three
assessments and 50% all over.
Assessment
Weight Due
28
March
31 May
Penalty Return
Pass
Ass. 1
20%
10%
3 weeks 50%
Ass. 2
20%
10%
3 weeks 50%
Exam.
60%
50%
Result
100%
50%*
Questions?
Subject Overview
Linear systems & control
Computer engineering I & II
Numerical computing
Computer Controlled Systems
Signal processing
Robotics & machine vision
1.1 Introduction
Control system definition & Control system
application.
Input; Stimulus
Desired response
Output; Response
Control System
Actual response
1.1 Introduction
Advantages of control systems
1. Power amplification
2. Remote control
3. Convenience
4. Compensation for disturbance
1.1 Introduction
Control system
R(s)
M(s)
E(s)
Gc(s)
Controller
Y(s)
GP(s)
Plant
1.1 Introduction
Computer controlled system
GHP(z)
R(z)
M(z)
E(z)
ZOH
Gc(z)
A/D
Y(z)
GP(s)
D/A
Computer system
Plant
1.2 Digital control loop:
Components
• GHP(z) is the transfer function of control object +
ZOH, where z indicates the discrete time domain
• GC(z) is a controller implemented in computer
languages.
• A/D is the Analog-to-Digital converter (Voltage
Binary number).
• D/A is the Digital-to-Analog converter (Binary
number  Voltage).
• The little switch indicate a sampling operation.
1.2 Digital control loop:
Signals
Discrete time domain
• R(z) is the desired output
• E(z) is the error signal
• M(z) is the controller output/control action
• C(z) is the actual output
Continuous time domain
In continuous time domain, R(z), E(z), M(z) and
C(z) are corresponding to r(t), e(t) m(t) and c(t).
1.2 Digital control loop:
Sequence of events
1.
2.
3.
4.
Get desired output r(t) at this instant in time
Measure actual output c(t)
Calculate error e(t)=r(t)-c(t)
Derive control signal m(t) based on proper
control algorithm
5. Output this control signal m(t) to controlled
object
6. Save previous history of error and output for
later use
7. Repeat step 1 to 6 (go to 1)
1.2 Digital control loop:
Forms of signals
• Computer cannot sample while calculating, so
there is a sample frequency 1/T for data
acquisition through a A/D, where T is sampling
interval.
• The data of a signal are recorded and represented
as a sequence of number in memory.
• Based on these numbers, a control signal is
derived and then conveyed to controlled object
through a D/A
1.2 Digital control loop:
Forms of signals
• In between sample instants, the input is
supposed as constant and the output is held
as a constant by a device termed as zeroorder-hold (ZOH).
• The reconstruction of a signal will be a
‘stair-step, and a low-pass filter is employed
to smooth out the rough edges
1.3 ADC and DAC
f(kT)
f(t)
Sampling
time
Time kT
f(kT)
f(t)
A/D
time
Time kT
1.3 ADC and DAC
f(kT)
f(kT)
D/A
Time kT
D/A is used as a ZOH.
Time kT
1.3 ADC and DAC
ADC
Output
Output
Input
ADC
 Digital
Analog
Input
• Have a discrete number of quantization levels
• Number of levels L=2N, where N is the number of bits
• eg N=3 bits, L=23=8 levels
1.3 ADC and DAC
ADC
Bits
Level
Signal Error
1
2
5
5/2=2.5
2
4
5
5/4=1.25
3
8
5
5/8=0.625
4
16
5
5/16=0.3125
1.3 ADC and DAC
ADC
More bits more accuracy. The commonly used
ADC has
• 8-bits: L=28=256 (coarse)
• 10-bits: L=210=1024 (adequate)
• 12-bits: L=212=4096 (works well)
• 16-bits: L=216=65536 (almost overkill)
1.3 ADC and DAC
ADC
• Distances between sequential levels are the
same. eg 5v/28=0.0195v
• The weight of each bit is different. The most
significant bit is the most left bit and the
least significant bit is the most right bit.
20
2N-1
Bit N-1

Bit 0
1.3 ADC and DAC
ADC
Example: For N=8, find the number range of the
ADC in binary, decimal and hexadecimal
numbers. If the input signal is from 0 to 5 voltage
for the above number range, what will be the
number for a 2 voltage signal in decimal and
binary numbers?
Solution: In binary: 00000000B 11111111B
In decimal: 0  27+26+25+24+23+22+21+20= 255
In hexadecimal: 0  F=15; 00H FFH
1.3 ADC and DAC
ADC
Decimal to binary
5

255
2
 5 x  2  255  x 
x
51
2 102
102
0
2  255
 102
5
25
6
3
0
12
1
2 51 2 25 2 12 2 6 2 3 2 1
50
24
12
6
2
0
1
1
0
0
1
1
1100110 B ; 66H
Exercise: For N=10, repeat the above example
1.3 ADC and DAC
DAC
Input

Digital
Output
Output
DAC
Analog
Input
Example: For N=8 and the signal is from 0 to 5, find
the output value for the number 145.
Solution:5/255=x/145, x=5*145/255=2.8431=2.84
1.3 ADC and DAC
…

MUX
AD

Digital
signal
Status
Analog signal
Multi-channel A/D converter
Control
1.3 ADC and DAC
Control

DA
…
MUX

Analog
signals
Digital signals
Multi-channel D/A converter
1.4 Errors
ADC

Output
Errors

Input
1.4 Errors
• The quantization error or resolution error is the
difference between the analog input value and the
equivalent digital value. On average it is one half
of the LSB.
• Linearity error: the maximum deviation in step
size from ideal step size, expressed as a percentage
of full scale.
• Settling time: the time it takes for the output to
reach within +/- half of the step size of the final
output.
1.4 Errors
Gain error
Output
Output
Input
ADC
 Digital
Analog
Input
1.5 Sampling theorem
f(kT)
f(t)
Sampling
time
Time kT
f(kT)
f(t)
A/D
time
Time kT
1.5 Sampling theorem
5
5
4
4
3
3
2
2
1
1
0
0
-1
-1
-2
-2
-3
-3
-4
-4
-5
-5
0
1
2
3
4
5
6
7
8
9
10
4
4
3
3.5
0
1
2
0
1
2
3
4
5
6
7
8
9
10
2
3
1
2.5
0
2
-1
-2
1.5
-3
1
-4
-5
0.5
0
1
2
3
4
5
6
7
8
9
10
3
4
5
6
7
8
9
10
1.5 Sampling theorem
If we need the sampled data to keep all the features
of the original signal, what is the minimum
sampling frequency?
Or what conditions should we meet if we wish that
the sampled data can represent the original data
exactly?
The answer to the above question forms the
Sampling
theorem/Shannon’s
sampling
theorem/Shannon’s theorem.
1.5 Sampling theorem
A continuous-time signal f(t) with a finite
bandwidth 0 (the highest frequency
component in the signal, or the Nyquist
frequency) can be uniquely described by the
sampled signal f(kT){k=…,-1,0,1….}, when the
sampling frequency s is greater than 20.
In other words, if a signal is sampled twice faster
than its highest frequency component, the sampled
date can represent all the features of this signal.
1.6 The proven of sampling theorem
The proven is based on Fourier Transform
1. Fourier transform: A transformation from time
domain to frequency domain f(t)  F(), where t
is time and  is frequency.
For a continuous time function f(t), we can uniquely
find F(). If given F(), we can also unique
determine f(t).
It means that f(t) and F() are equivalent.
1.6 The proven of sampling theorem
f(t)
F()
5
4
Fourier
Transform
3
2
1

0
-1
-2
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10
-0
0
1.6 The proven of sampling theorem
2. For a sampled signal fs(t), we have
5
4
Fourier
Transform
3
2
1

0
-1
-2
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10
Fs()
-2s
-s
-0
0
s
2s
1.6 The proven of sampling theorem
3. The relationship between f(t) and fs(t), and F()
and Fs().
F()
5
4
Fourier
Transform
3
2
1
0
-1
-2
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10

Fs()
5
4

3
2
1
0
0
-0
-1
-2
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10
-2s
-s -0 0 s
2s
1.6 The proven of sampling theorem
4. If we change the sampling frequency, what will
happen with fs(t) and Fs().
Fs()
5
4

3
2
1
0
-1
-2
-3
-2s
-4
-5
0
1
2
3
4
5
6
7
8
9
10
-s -0 0 s
4
3
Fs()
2
1
0
-1
-2
-2s -s -0 0 s
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10
2s
2s
1.6 The proven of sampling theorem
5
4

3
2
1
0
-1
Fs()
-2
-2s -s -0 0 s
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10
4
3
Fs()
2
1
0
-1
-2
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10
4
-2s -s -0 0 s 2s
Fs()
3.5
3
2.5
2
1.5
1
0.5
0
1
2
3
4
5
6
7
8
9
10
-2s -s -0 0s 2s
2s
1.6 The proven of sampling theorem
5. Conclusions
If our sampling frequency s is faster enough, that is
s>20, there will be gaps between the shifting
F() in Fs(). We can always put a filter to figure
out F() from Fs(). Otherwise if the repeating
F() figures overlap in Fs(), we cannot put a
filter to figure out F() from Fs(). The turning
point from possible to impossible is s =20,
where 0 is the highest frequency component or
Nyquist Frequency of the signal.
1.7 Aliasing
1. Aliasing problem
1
0. 8
0. 6
0. 4
0. 2
0
-0. 2
-0. 4
-0. 6
-0. 8
-1
0
10
20
30
40
50
60
70
80
90
100
0
10
20
30
40
50
60
70
80
90
100
1
0. 8
0. 6
0. 4
0. 2
0
-0. 2
-0. 4
-0. 6
-0. 8
-1
1.7 Aliasing
Ambiguity: alias
1
0. 8
0. 6
0. 4
0. 2
0
-0. 2
-0. 4
-0. 6
-0. 8
-1
0
10
20
30
40
50
60
70
80
90
100
0
10
20
30
40
50
60
70
80
90
100
0
10
20
30
40
50
60
70
80
90
100
1
0. 8
0. 6
0. 4
0. 2
0
-0. 2
-0. 4
-0. 6
-0. 8
-1
1
0. 8
0. 6
0. 4
0. 2
0
-0. 2
-0. 4
-0. 6
-0. 8
-1
1.7 Aliasing
2. Finding aliases
The fundamental alias frequency is given by
=| (0+ n)mod(s) - n|
where mod() means the remainder of an division
operation, 0 is signal bandwidth, n Nyquist
frequency, and s sampling frequency
Example: For f0=90Hz & fs=100, find alias.
Solution: =2f, fn=fs/2=50Hz,
f=| (f0+ fn)mod(fs) - fn|=|(90+50)mod(100)-50|
=|40-50|=10Hz
1.7 Aliasing
3. Preventing aliases
Make sure your sampling frequency is greater
than twice of the highest frequency
component of the signal
• Pre-filtering
• Set your sampling frequency to the
maximum if possible
1.7 Aliasing
Suppose that the Nyquist frequency of a
signal is 100Hz. If we use an 8-bit ADC to
sample this signal at the frequency of
200Hz, can the sample data represents this
signal exactly? Why?
1.7 Aliasing
Theoretically, as long as the sampling frequency is
greater than or equal to twice the Nyquist
frequency, aliases will not happen. However,
because of the conversion/quantisation error, the
practical sampling frequency is much higher than
that (5 to 10 times of the Nyquist frequency).
Fortunately, most of the time the speeds of ADC
and computer are also much greater than signal’s
Nyquist frequency.
Reading
Study book
• Module 1: The digital control loop
Textbook
• Chapter 1 : Introduction to discrete time
control system
• Chapter 3: pages 90-92 & 96-98.
Exercise
Exercise 1: The frequency spectrum of a continuous-time
signal is shown below.
1) What is the minimum sampling frequency for this signal
to be sampled without aliasing.
2) If the above process were to be sampled at 10 Krad/s,
sketch the resulting spectrum from –20 Krad/s to 20
Krad/s.
F()
 Krad/s
-8
-4
4
8
Hints
The relationship between f(t) and fs(t), and F() and
Fs().
F()
Fourier
Transform
5
4
3
2
1
0

-1
-2
-3
-4
-5
0
1
2
3
4
5
6
7
8
9
10
Fs()
5
4
3

2
1
0
-1
-2
-3
-4
-5
0
-0
0
1
2
3
4
5
6
7
8
9
10
-0-s
-0-2s
-0
0-2s
0-s
0
 +
0+2s
-0+s 0 s
-0+2s
Answers
f s  2 * 8  16 Krad / s
F()
2 4
6 8 10 12 14 16 18
 Krad/s
Tutorial
Solution: 1) From the spectrum, we can see that the
bandwidth of the continuous signal is 8 Krad/s.
The Sampling Theorem says that the sampling
frequency must be at least twice the highest
frequency component of the signal. Therefore,
the minimum sampling frequency for this signal
is 2*8=16 Krad/s.
F()
 Krad/s
-8
-4
4
8
Tutorial
2) Spectrum of the sampled signal is formed by
shifting up and down the spectrum of the
original signal along the frequency axis at i
times of sampling frequency. As s=10 Krad/s,
for i =0, we have the figure in bold line. For i=1,
we have the figure in bold-dot line.
F()
-8
-4
2 4
6 8 10 12 14 16 18
 Krad/s
Tutorial
For I=-1, 2,… we have
-18
-14
-8 -6 -4 -2
F()
2 4
6 8 10 12 14 16 18
 Krad/s
2 4
6 8 10 12 14 16 18
 Krad/s
Descargar

Linear Systems and Control