You are on page 1of 37

ĐẠI HỌC ĐÀ NẴNG

TRƢỜNG ĐẠI HỌC BÁCH KHOA

BÀI GIẢNG

ƯỚC LƯỢNG VÀ NHẬN


DẠNG HỆ THỐNG

TS. Trần Đình Khôi Quốc


PHẦN 1
ƯỚC LƯỢNG VÀ NHẬN DẠNG
Estimation and Identification

NỘI DUNG

 Phần 1: Tổng quan về ước lượng và nhận dạng


 Phần 2: Ước lượng thông số
 Phần 3: Nhận dạng hệ thống & ứng dụng

1
Tài liệu tham khảo

[1] H. Harry Asada, Identification, Estimation and


learning, MIT course
[2] Lennart Ljung, System Identification: Theory for
the User, Second Edition, Prentice-Hall 1999
[3] Huỳnh Thái Hoàng, Mô hình hóa và nhận dạng
hệ thống, bài giảng
[4] I. Landau, Digital control systems. Design,
Identification and Implementation, Springer 2006
[5] Identification toolbox của Matlab

Phần 1: Tổng quan

1.1. Khái niệm về ước lượng và nhận dạng


1.2. Ứng dụng
1.3. Mô tả toán học của đối tượng
1.4. Biến ngẫu nhiên

2
1.1. KN về ước lượng và nhận dạng (1)
 Hệ thống tổng quát
r(t) e(t) u(t) y(t)
Gc G

 Phương pháp lý thuyết: xây dựng các PTVP để


biểu diễn mối quan hệ vào/ra

1.1. KN về ước lượng và nhận dạng (2)


 Phương pháp thực nghiệm

Nhận dạng là phương pháp xây dựng mô hình toán học của
hệ thống/đối tượng dựa vào dữ liệu vào ra quan sát được
6

3
1.1. KN về ước lượng và nhận dạng (3)
 Quá trình nhận dạng:

4 công đoạn
 Thu thập dữ liệu
 Chọn cấu trúc mô hình
 Ước lượng tham số
 Đánh giá mô hình

1.1. KN về ước lượng và nhận dạng (4)


So sánh

Lý thuyết Thực nghiệm


•… •…
Phương pháp •… •…
•… •…
•… •…
Kết quả •… •…
•… •…

4
1.2. Ứng dụng

 Dự đoán thông số để điều khiển (offline)


 Điều khiển thích nghi (online)
 Điều khiển phản hồi trạng thái (online)
 Chẩn đoán hư hỏng…

1.3. Mô tả toán học của đối tượng (1)


 Hệ liên tục
dny dny d mu du
an n
+ ... + a1 n + a0 y = bm m + ... + b1 + b0u dcgain = G ( s ) s = 0
dt dt dt dt

Y ( s ) bm s m + ... + b1s + b0
G ( s) = =
Tính ổn định U ( s ) an s n + ... + a1s + a0
Đáp ứng tần số
Im 20
Bode Diagr am

Đáp ứng 1(t)


0
Step Response
1.4
Magnitude (dB)

x -20

Re -40 1.2

x o -60
1

x -80
0
0.8
Amplitude

-45
Phase (deg)

0.6
-90

-135 0.4

-180
10
-2
10
-1
10
0 1
10 10
2 0.2

Frequency (rad/sec)

0
0 2 4 6 8 10 12
Time (sec)

10

5
1.3. Mô tả toán học của đối tượng (2)
 Hệ gián đoạn

r(t) e(t) u(t) y(t)


ADC Gc DAC G

 Có ít nhất 1 tín hiệu trong hệ


thống gián đoạn theo chu kỳ
 Chỉ quan sát được ở các thời
điểm lấy mẫu t = kTs (*)
 Mô hình gián đoạn

(*) fs>2 fmax (đ.lý Nyquist) và fs = (6 đến 25)fBCL [4]. Với fBCL là băng thông
của hệ kín 11

1.3. Mô tả toán học của đối tượng (3)


 Cấu trúc hệ nhận dạng

Ước lượng

MÔ HÌNH
GIÁN ĐOẠN
Nhận dạng

12

6
1.3. Mô tả toán học của đối tượng (4)
 Hệ gián đoạn

y (k ) + a1 y (k − 1) + ... + an y ( k − na ) = b1u(k − 1) + ... + bnb u( k − nb )

y(k ) → Y ( z ) Y ( z) b z −1 + ... + bm z − m
−1 G( z) = = 1 −1
y (k − 1) → z Y ( z ) U ( z ) 1 + a1 z + ... + an z − n

q∼z
Toán tử q [4]
• q ∼ z trong miền Z
Y ( q) b1q −1 + ... + bnb q − nb
• y(k-d) = q-dy(k) trong G ( q) = =
miền thời gian U ( q) 1 + a1q −1 + ... + an a q − na

QUY ƯỚC: y(kTs) = y(k) = y(t) 13

1.3. Mô tả toán học của đối tượng (5)


 Mối liên hệ giữa mặt phẳng s và z

z = e sTs


ωs = 2π f s =
Ts 14

7
1.3. Mô tả toán học của đối tượng (5)
 Tính chất hệ gián đoạn

Y ( z) b1 z −1 + ... + bnb z − nb
G( z ) = =
U ( z ) 1 + a1 z −1 + ... + ana z − nb

dcgain = G ( z ) z =1 Đáp ứng 1(t)


Step Response

Đáp ứng tần số


10

Tính ổn định
9

Bode Diagram
8
20

15
7
10
Magnitude ( dB)

5 6

Amplitude
0
5
-5

- 10
4

- 15

3
- 20
0
2

- 45
1
Phase (deg)

- 90
0
0 20 40 60 80 100 120
Time (sec)
- 135

- 180
-2 -1 0 1 2
10 10 10 10 10
Frequency (r ad/sec)

Tuần hoàn chu kỳ 2π/ωs


15

1.3. Mô tả toán học của đối tượng (6)


 Ví dụ

10
G ( s) = 2
s + s +1

 Xác định hàm truyền đạt hệ gián đoạn


 Phân tích ảnh hưởng của chu kỳ lấy mẫu
 Phân tích các tính chất của hệ liên tục và gián đoạn

16

8
1.4. Biến ngẫu nhiên (1)
 Biến ngẫu nhiên là biến có giá trị ngẫu nhiên, không thể dự
đoán trước
Ví dụ: nhiễu đo lường trong nhận dạng

 Hàm phân phối xác suất của biến ngẫu nhiên, (probability
distribution function) FX(x) được định nghĩa như sau:

X: biến ngẫu nhiên


x: giá trị tức thời của biến ngẫu nhiên

 Hàm mật độ xác suất (probability density function - pdf): fX(x)


được định nghĩa như sau:

17

1.4. Biến ngẫu nhiên (2)


 Tính chất hàm mật độ xác suất pdf :
 fX(x) >0
 Tích phân

Ví dụ: Hàm mật độ xác suất phân bố gaussian (normal distribution)

( x −µ ) 2
1 −
2σ 2
f X (x) = e −∞ < x < ∞
σ 2π

18

9
1.4. Biến ngẫu nhiên (3)
 Kỳ vọng(expediction): là giá trị trung bình của biến ngẫu nhiên, ký
hiệu E[X]
1 N
E [ X ] = lim ∑ x(t ) = µ
N →∞ N
t =1

Nhiễu trắng là biến ngẫu nhiên có µ=0

 Phương sai (variance): là giá trị trung bình bình phương, ký hiệu
Var(X)
Var(X) = E[(X- µ)2] = σ2
σ gọi là độ lệch chuẩn (standard deviation)

 Hiệp phương sai (covariance)


Cov(X,Y)=E[(X- µX)(Y- µy)]
Hai biến ngẫu nhiên X, Y không tương quan nếu Cov(X,Y) = 0

19

1.4. Biến ngẫu nhiên (4)


 Hàm về biến ngẫu nhiên trong Matlab
- Hàm rand(m,n): tạo vector mxn biến ngẫu nhiên, phân phối đều (uniform
distribution) trong khoảng 0 và 1.
- Hàm randn(m,n): tạo vector mxn biến ngẫu nhiên phân phối gaussian có µ =0,
σ = 1.
Chú ý:Để tạo ra tín hiệu phân phối gaussian tổng quát trong Matlab
X= µ + σ .randn(m,n)
- Hàm mean(X): tính giá trị trung bình biến X.
- Hàm std(X): tính σ của X
- Hàm var(X): tính phương sai của X (bằng σ2)
- Hàm cov(X,Y): tính hiệp phương sai của X, Y
- Hàm hist(X): vẽ phân bố (giá trị tuyệt đối) của một biến ngẫu nhiên (chia biến
thành 10 khoảng)
- Hàm ksdensity(X): dự đoán hàm xác suất
[f,xi]=ksdensity(X): chọn ra 100 điểm tiêu biểu trong biến X đặt vào xi và hàm f
tại 100 điểm xi đó
Để vẽ hàm mật độ xác suất dự đoán, plot(xi,f)

20

10
1.4. Biến ngẫu nhiên (5)
 Bài tập
Tạo biến ngẫu nhiên trong Matlab
- Phân phối đều
- Phân phối gaussian
1. Tính toán các thông số của biến ngẫu nhiên
2. Phân tích ảnh hưởng chiều dài của biến

21

11
Phần 2
Ước lượng thông số

NỘI DUNG

 Phần 2: Ước lượng thông số


2.1. Thuật toán bình phương tối thiểu (LS)
2.2. Thuật toán bình phương tối thiểu đệ quy (RLS)
2.3. Bộ lọc Kalman
2.4. Lựa chọn mô hình
2.5. Dự báo tín hiệu ra

1
2.1. Thuật toán bình phương tối thiểu (1)
 Bài toán y(t): giá trị đo lường
tại thời điểm t, chứa
u(t) HỆ THỐNG y(t) thành phần nhiễu
SISO
Tham số θ

Đến thời điểm N, thu được dữ liệu: {u(1) …. u(N) y(1) … y(N)}
Quan hệ tín hiệu vào ra được biểu diễn bởi

y (t ) + a1 y (t − 1) + ... + ana y (t − n ) = b1u(t − 1) + ... + bnb u(t − nb )


Đặt
θ = [a1,…,ana,b1,…,bnb]T ∈Rna+nb là vector chứa (na+nb) tham số chưa biết
ϕ(t) = [-y(t-1),…,- y(t-na),u(t-1),…,u(t-nb)]T ∈Rna+nb là vector chứa các thông tin
đã biết đến thời điểm t

y(t) = ϕT(t) θ
3

2.1. Thuật toán bình phương tối thiểu (2)


Bài toán: Từ các giá trị đo lường u(t), y(t), tìm vectơ tham
số θ?
Gọi
: vectơ tham số dự đoán đến thời điểm thứ t.
: tín hiệu ra dự báo đến thời điểm t.

Tiêu chuẩn ước lượng

Bình phương
Yêu cầu đặt ra: xác định sao cho: tối thiểu

2
2.1. Thuật toán bình phương tối thiểu (3)
Xác định như thế nào?

Với

Nếu = (na+nb)

Đặt

2.1. Thuật toán bình phương tối thiểu (4)


Bài tập 2.1
a) Cho tập dữ liệu data1a.
- Hãy ước lượng tham số của mô hình
- Xét ảnh hưởng của việc chọn mô hình
- Đánh giá tiêu chuẩn ước lượng

b) Cho tập dữ liệu data1b.


- Hãy ước lượng tham số của mô hình
- Đánh giá tác động của chiều dài dữ liệu

3
2.2. Thuật toán RLS (1)
Thuật toán LS: xử lý dữ liệu offline.
Có thể ước lượng online?

( )
θˆ(t ) = f θˆ(t − 1) ?
Viết dưới dạng đệ quy

Áp dụng định lý nghịch đảo


ma trận [1]

2.2. Thuật toán RLS (2)


Từ các công thức ở trên, đưa về dạng:

θˆ(t ) = PB ˆ ( T ˆ
t t = θ ( t − 1) + K t y ( t ) − ϕ ( t ) θ ( t − 1) )
Hệ số hiệu chỉnh
Sai số dự báo
Prediction error

Recursive
Least
Square

4
2.2. Thuật toán RLS (3)
Bài tập 2.2
- Tính và vẽ tham số ước lượng hồi quy từ dữ liệu data1b.
- So sánh kết quả với phương pháp xử lý offline.
- Khảo sát ảnh hưởng của các giá trị đầu

2.2. Thuật toán RLS (4)


 Thuật toán RLS cho tham số thay đổi theo thời gian
t
J t (θ ) = ∑ α t −iε 2 (i )
i =1 với
θˆ(t ) = arg min J t (θ )

10

5
2.3. Bộ lọc Kalman (1)
 Dự báo trạng thái dùng bộ quan sát
Một hệ gián đoạn xác định, biểu diễn dưới dạng phương
trình trạng thái, có dạng:
 xt +1 = At xt + Bt ut
 xt ∈ R nx1 , ut ∈ R rx1 , yt ∈ R lx1
 yt = H t xt
Nếu biết trước các ma trận tham số của mô hình At, Bt, Ht,
điều kiện đầu và tín hiệu vào -> mô phỏng và dự báo
trạng thái và tín hiệu ra.

Tham số sai
-> dự báo sai
trạng thái và ngõ ra
11

2.3. Bộ lọc Kalman (2)


 Bộ quan sát trạng thái Luenberger cho hệ xác định

Thực tế:
y nhiễu ->
dự báo sai

Thành phần
hiệu chỉnh

 xˆt +1 = At xˆt + Bt ut + Lt ( yt − yˆ t )

 yˆ t = H t xˆt 12

6
2.3. Bộ lọc Kalman (3)
 Mô hình hóa không gian trạng thái của quá trình
ngẫu nhiên
Hệ thống thực tế: nhiễu tác động lên biến trạng thái và tín hiệu
đo lường

 xt +1 = At xt + Bt ut + Gt wt  xt +1 = At xt + Gt wt
 
 yt = H t xt + vt  y t = H t xt + vt

xˆ là giá trị ngẫu nhiên

13

2.3. Bộ lọc Kalman (4)


 Bộ lọc Kalman
Do x̂ là biến ngẫu nhiên -> Ước lượng x̂ ?

BỘ LỌC KALMAN
Giả sử:

Kt là hệ số tính toán sao cho:

→ min
14

7
2.3. Bộ lọc Kalman (5)
 Hệ số khuếch đại bộ lọc Kalman

+ Bu(t-1)

Online 15
Offline/online

2.3. Bộ lọc Kalman (6)


 Lập trình bộ lọc Kalman

xˆt t −1 = At −1 xˆt −1 + Bu(t − 1)


Dự đoán
Pt t −1 = At −1Pt −1 AT t −1 + Gt −1Qt −1Gt −1

−1
Kt = Pt t −1H tT  H t Pt t −1H tT + Rt 
Hiệu chỉnh
 
(
xˆt = xˆt t −1 + K t yt − H t xˆt t −1 )
Pt = ( I − Kt H t ) Pt t −1

Online 16
Offline/online

8
2.3. Bộ lọc Kalman (7)
Bài tập 2.3
Cho dữ liệu data2_PTTT của mạch điện RLC, biết các ma trận
trạng thái là:
A=[-R/L -1/L;1/C 0];
B=[1/L 0];
H=[0 1];
Với R=100; L=0.1; C=0.05; Ts= 0.1s.
Tín hiệu đo lường và biến trạng thái bị nhiễu.
1. Hãy ước lượng biến trạng thái của hệ thống bằng bộ lọc
Kalman.
2. Đánh giá sai số dự báo.

17

2.4. Lựa chọn mô hình (1)


 Tác động của nhiễu

v(t): nhiễu bất kỳ

e(t)

18

9
2.4. Lựa chọn mô hình (2)
 Mô hình ARX (Auto-Regressive eXternal Input model)

u(t) y(t)
B ( q)
G(q) =
A(q)
Với
A(q ) = 1 + a1q −1 + ... + ana q − na H ( q) =
1
A(q )
B(q ) = b1q −1 + ... + bnb q − nb
e(t)

Phương trình sai phân:

y (t ) + a1 y (t − 1) + ... + ana y (t − na ) = b1u (t − 1) + ... + bnb y (t − nb ) + e(t )

Vector tham số: T


θ =  a1 , a2 ,..., an , b1 ,..., bn 
a b

19

2.4. Lựa chọn mô hình (3)


 Mô hình ARMAX (Auto-Regressive Moving Average
eXternal Input model)
u(t) y(t)
B ( q)
G(q) =
Với A(q)
A(q) = 1 + a1q −1 + ... + ana q − na
C (q )
B (q) = b1q −1 + ... + bnb q − nb H (q ) =
A(q )
C (q) = 1 + c1q −1 + ... + cnc q − nc
e(t)
Phương trình sai phân:
y (t ) + a1 y (t − 1) + ... + ana y (t − na ) = b1u(t − 1) + ... + bnb u (t − nb )
+ e(t ) + c1e(t − 1) + ... + cnc e(t − nc )

Vector tham số:


T
θ =  a1 , a2 ,..., an , b1 ,..., bn , c1 ,..., cn 
a b c
20

10
2.4. Lựa chọn mô hình (4)
 Mô hình OE (Output Error) Nhiễu độc lập
e(t) với quá trình
u(t) y0(t) y(t)
B(q)
G(q) =
F (q)
Với
B (q) = b1q −1 + ... + bnb q − nb
F (q) = 1 + f1q −1 + ... + f n f q − na

Phương trình sai phân:


y0 (t ) + f1 y0 (t − 1) + ... + f n f y0 (t − n f ) = b1u (t − 1) + ... + bnb y (t − nb )
y (t ) = y0 (t ) + e(t )

Vector tham số:


T
θ = b1 ,..., bn , f1 , f 2 ,..., f n 
b f
21

2.4. Lựa chọn mô hình (5)


 Mô hình Box-Jenskin

u(t) y(t)
B
G=
F

Với C
B ( q) = b1q −1 + ... + bnb q − nb H=
D
C (q ) = 1 + c1q −1 + ... + cnc q − nd e(t)
D( q) = 1 + d1q −1 + ... + d nd q − nc
F ( q ) = 1 + f1q −1 + ... + f n f q − na

22

11
2.5. Dự báo tín hiệu ra (1)
 Bộ dự báo (predictor) cho mô hình tuyến tính
Dạng tổng quát của tín hiệu ra:

y (t ) = G (q )u (t ) + H (q )e(t )
Từ dữ liệu đến thời điểm (t-1) -> ŷ(t)?

Từ dạng tổng quát của tín hiệu ra, ta có


H −1 (q ) y (t ) = H −1 (q )G (q )u (t ) + e(t )
⇒ y (t ) = 1 − H −1 (q )  y (t ) + H −1 (q)G (q )u (t ) + e(t )
Giả sử H(q) được chuẩn hóa về dạng
chỉ chứa các thành phần trong
quá khứ

H (q) − 1 1 ∞
1 − H −1 (q )  =
H (q )
= ∑
H ( q) l =1
hl q − l
23

2.5. Dự báo tín hiệu ra (2)


Đặt
yˆ(t , θ ) = 1 − H −1 (q )  y (t ) + H −1 ( q )G ( q )u (t )

Suy ra

y (t ) = yˆ (t , θ ) + e(t ) e(t ) = y (t ) − yˆ (t ,θ )

Trong đó tín hiệu ra dự báo viết dưới dạng

yˆ (t , θ ) = ϕ T (t )θ

-ϕ(t): vector chứa các thông tin đã biết


Bộ dự báo đệ quy đến (t-1)
tuyến tính -θ: vector tham số
(linear regression)
24

12
2.5. Dự báo tín hiệu ra (2)
yˆ(t , θ ) = 1 − H −1 ( q )  y (t ) + H −1 ( q)G ( q)u (t ) = ϕ T (t )θ

Bộ dự báo cho mô hình ARX

u(t) y(t)
B (q )
G( q) = yˆ (t ) = ϕ T (t )θ ?
A(q)

H ( q) =
1
A(q)
(
1 − H −1 (q ) = 1 − A(q) = − a1q −1 + ... + ana q − na )
− nb
H −1 (q )G (q ) = B(q) = b1q −1 + ... + bnb q
e(t)

T
Đặt θ =  a1 , a2 ,..., an , b1 ,..., bn 
a b
T
suy ra ϕ (t ) = [ − y (t − 1),..., − y (t − na ), u (t − 1),..., u(t − nb )]
25

2.5. Dự báo tín hiệu ra (3)


 Bộ dự báo cho mô hình ARMAX

u(t) y(t)
G(q) =
B(q)  A(q )  B( q )
A(q ) yˆ(t , θ ) = 1 −  y (t ) + C (q ) u (t )
 C (q ) 

H (q ) =
C (q ) ⇔ C(q) yˆ(t,θ ) = [C(q) − A(q)] y(t) + B(q)u(t)
A(q )
⇔ yˆ(t,θ ) = [C(q) − A(q)] y(t) + B(q)u(t) +[1−C(q)]yˆ(t,θ )
e(t)
⇔ yˆ(t,θ ) = [1− A(q)] y(t) + B(q)u(t) +[C(q) −1][y(t) − yˆ(t,θ )]
Đặt
ε (t ) = y (t ) − yˆ (t , θ ) sai số dự báo
θ = [a1 ,..., an , b1 ,..., bn , c1 ,..., cn ]T
a b c

Để đưa về dạng yˆ(t , θ ) = ϕ T (t )θ , suy ra


T
ϕ (t ) = [ − y (t − 1),..., − y (t − na ), u (t − 1),...,u (t − nb ),ε (t − 1),...,ε (t − nc )]

26

13
2.5. Dự báo tín hiệu ra (4)
 Bộ dự báo cho mô hình OE
B(q)
e(t) yˆ(t ,θ ) = u (t )
F (q)
u(t) y0(t) y(t)
B(q)
G(q) =
F (q)
⇔ F (q ) yˆ (t ,θ ) = B(q )u (t )
⇔ yˆ (t , θ ) = B(q )u (t ) + [1 − F (q )]yˆ (t ,θ )

B( q )
Đặt w(t )=yˆ (t , θ )= u (t ) , ta có
F (q )
( ) (
⇒ yˆ(t ,θ ) = b1q −1 + ... + bnb q − nb u (t ) − f1q −1 + ... + f n f q
−nf
) w(t )
Đưa về dạng yˆ(t , θ ) = ϕ (t )θ
T

θ = [b1 ,..., bn , f1 ,..., f n ]T


b f

T
ϕ (t ) = u (t − 1),...,u (t − nb ),-w(t − 1),..., − w(t − n f ) 
27

2.5. Dự báo tín hiệu ra (5)

Bộ dự báo cho mô hình BJ

u(t) y(t)  D( q )  D(q ) B (q )


B yˆ(t ,θ ) = 1 −  y (t ) + u (t )
G=  C (q)  C (q ) F (q )
F
B(q)
C Đặt w(t )= u (t )
H= F (q)
D
v(t ) = y (t ) − w(t )
e(t)
ε (k ) = y (k ) − yˆ (k ,θ )
Đưa về dạng yˆ(t , θ ) = ϕ T (t )θ

θ = [b1 ,..., bn ,c1 ,..., cn ,d1 ,..., d n ,f1 ,..., f n ]T


b c d f

ϕ ( k ) = [u (t − 1),..., u (t − nb ), ε (t − 1),..., ε (t − nc ),
- v (t − 1),..., -v (t − nd ), -w(t − 1),..., - w(t − n f )]T

28

14
2.4. Lựa chọn mô hình (6)
Bài tập 2.4
Cho dữ liệu data 3.
• Ước lượng tham số của mô hình với các kiểu mô hình khác
nhau.
• Đánh giá việc lựa chọn mô hình đối với kết quả ước lượng.
• Dự báo tín hiệu ra và sai số dự báo khi sử dụng các mô
hình đã chọn

29

15
Phần 3
Nhận dạng hệ thống

NỘI DUNG

3.1. Nhận dạng mô hình không tham số


3.2. Nhận dạng mô hình có tham số
 Thu thập dữ liệu
 Chọn cấu trúc mô hình
 Ước lượng thông số
 Đánh giá
3.3. Toolbox nhận dạng trong matlab
3.4. Ứng dụng

1
3.1. Nhận dạng mô hình không tham số (1)

 Nguyên tắc chung


St ep Response
3

2.5

Hộp y(t)
2

u(t) đen

Amp litude
1.5

Mô ym(t) 1

hình 0.5

0
0 1 2 3 4 5 6
Time (sec )

So sánh hàm quá độ của y(t) và ym(t) => tham số mô hình hệ liên tục

n
Y ( s ) bnb s b + ... + b1s + b0
G( s) = = na
U ( s ) ana s + ... + a1s + a0

3.1. Nhận dạng mô hình không tham số (2)

 Những kết luận tổng quát

Kết luận 1
1. Nếu h(+0) = 0 thì na > nb. Nếu không, na = nb
2. Nếu dh(+0)/dt=0 thì na - nb > 1. Ngược lại, nếu thì na = nb + 1.
3. Nếu h(∞) = ∞ thì a0 = 0 hay trong G(s) có một khâu tích phân
nối tiếp
4. Nếu h(∞) = 0 thì b0= 0 hay trong G(s) có một vi phân nối tiếp
5. Nếu h(∞) ≠ 0 thì a0 ≠ 0 và b0 ≠ 0. Hệ số khuếch đại tĩnh của
đối tượng lúc này là dcgain K= b0/a0.

2
3.1. Nhận dạng mô hình không tham số (3)

Kết luận 2
Giả sử mô hình của đối tượng được biểu diễn bởi hàm truyền
đạt:

G( s) = K
(1 + T s ) ... (1 + T s )(1 + T s ) ..
'
nb 2
'
1
'

(1 + T s ) ... (1 + T s )(1 + T s )
na 2 1

Với T na ≥ ... ≥ T2 ≥ T1 và T n'a ≥ ... ≥ T2' ≥ T1'


Nếu h(t) không lượn sóng và không chứa các thành phần quá điều
chỉnh, thì các tham số Ti, Ti’ của mô hình phải là những số thực
và phải thỏa mãn :

Tna > Tn'b , Tna −1 > Tn'b −1 ,..., Tna − nb −1 > T1'

3.1. Nhận dạng mô hình không tham số (4)


Kết luận 3
Nếu h(t) không lượn sóng, có độ quá điều chỉnh nhưng sau đó giảm
dần về giá trị xác lập h(∞) = K và không nhỏ hơn K thì tham số
Ti, Ti’ của mô hình tương ứng là những số thực và phải tồn tại
duy nhất một chỉ số l ∈ [1,2,…,nb] để một trong các bất đẳng
thức của kết luận 2 không thỏa mãn.

Kết luận 4
Nếu h(t) có m điểm cực trị, trong đó điểm cực đại nằm trên đường
h(∞) = K và điểm cực tiểu nằm dưới đường h(∞) = K thì những
tham số của mô hình là những số thực và tồn tại m chỉ số trong
khoảng [1,2,…,nb] để có m bất đẳng thức trong kết luận 2 không
thoả mãn.

Kết luận 5
Nếu h(t) có vô số điểm cực trị cách đều nhau, trong đó điểm
cực đại nằm trên đường h(∞) = K và điểm cực tiểu nằm
dưới đường h(∞) = K thì mô hình có các điểm cực là
những giá trị phức.
6

3
3.1. Nhận dạng mô hình không tham số (5)

 Nhận dạng một số mô hình cơ bản


K K
Mô hình PT1 G( s) = Mô hình IT1 G( s) =
Ts + 1 s (Ts + 1)
St ep Response
St ep Response 90
10

80
9

8 70

7 60

6
50

Amp litud e
Amp litud e

5
40
4
30
3

2 20

1 10

0
0 2 4 6 8 10 12 0
0 1 2 3 4 5 6 7 8 9 10
Time (sec)
Time (sec )

K Kω02
Mô hình PT2 G ( s ) = Mô hình G( s) = 2
(T2 s + 1)(T1s + 1) s + 2ξω0 s + ω02
dao động bậc 2
St ep Response St ep Response
2 12

1.8
10
1.6

1.4 8

1.2

Amp litud e
Amp litude

1 6

0.8
4
0.6

0.4
2

0.2

0
0 1 2 3 4 5 6
0
0 2 4 6 8 10 12
7
Time (sec ) Time (sec )

3.2. Nhận dạng mô hình có tham số (1)


4 công đoạn
 Thu thập dữ liệu
 Chọn cấu trúc mô hình
 Ước lượng tham số
 Đánh giá mô hình

4
3.2. Nhận dạng mô hình có tham số (2)
 Tín hiệu kích thích dùng trong nhận dạng
Trong nhận dạng, khi ε (t ) = y (t ) − yˆ (t ) = 0 ⇔ θˆ( N ) ≡ θ0 ?
θ0 là giá trị thật của mô hình
Ví dụ: xét một mô hình gián đoạn cần nhận dạng của đối tượng
y (t ) = −a1 y (t − 1) + b1u (t − 1)
Giả sử mô hình thực hiện nhận dạng như sau :
yˆ (t ) = −aˆ1 y(t − 1) + bˆ1u(t − 1)
Nếu các tham số thỏa mãn quan hệ sau :
b1 bˆ
= 1 ⇔ K = Kˆ (dcgain)
1 + a1 1 + aˆ1
Khi u(t)=const:
b1
y (t ) t →∞ = u
1 + a1
⇒ ε (t ) = y (t ) − yˆ (t ) = 0 ∀a1 ≠ aˆ1 , b1 ≠ bˆ1
bˆ1
yˆ(t ) t →∞ = u 9
1 + aˆ1

3.2. Nhận dạng mô hình có tham số (3)


⇒ Khi u = const, không thể phân biệt được 2 mô hình khác nhau.
Đặc tính thời gian: Đặc tính tần số
Step Response B ode D iagra m
4 40

20
3.5
Mag nitud e (dB )

3 -20

-40
2.5
Amplitude

-60

2 -80
0

1.5
-45
Phase (de g)

1 -90

0.5 -1 35

0 -1 80
0 1 2 3 4
0 0. 5 1 1.5 2 2.5 10 10 10 10 10
Freq uency (rad /s ec )
Time (sec)

Để nhận dạng được tất cả các tham số, tín hiệu kích thích
phải mang tần số ω ≠ 0
n +n
Nếu (na+nb) lẻ: p≥ A B Kích thích
p 2

u(t ) = sin ωiTst
nA + nB + 1
“chặt”
i =1 Nếu (na+nb) chẵn p ≥ 10
2

5
3.2. Nhận dạng mô hình có tham số (4)
 Chuỗi nhị phân ngẫu nhiên PRBS (Pseudo-random
Binary Signal)

Cách tạo chuỗi PRBS

N bit Chọn thông số


chuỗi PRBS
- tim = NTs > tM
- u: biên độ bé, lớn hơn biên
Có ít nhất 1 biến bằng 1
độ nhiễu (tránh bão hòa)
Tuần hoàn L0=2N-1
Độ rộng xung lớn nhất: tim=NTs
11

3.2. Nhận dạng mô hình có tham số (5)


 Ảnh hưởng của chiều dài dữ liệu N

Theo [1], (
N θˆN − θ 0 ) hội tụ về phân phối Gaussian

12

6
3.2. Nhận dạng mô hình có tham số (6)
 Lựa chọn mô hình

e(t)

 Mô hình ARX  Mô hình ARMAX


B( q ) 1 B (q) C (q)
G(q) = ; H (q ) = G (q) = , H (q) =
A( q ) A( q ) A(q) A(q)

 Mô hình OE  Mô hình Box-Jenskin


B(q) B (q ) C (q )
G (q) = , H (q) = 1 G (q) = , H (q) =
F (q) F (q) D( q)

13

3.2. Nhận dạng mô hình có tham số (7)


 Ước lượng tham số
y(t) = ϕT(t) θ

Thuật toán LS Thuật toán RLS (đệ quy)


Pt −1ϕ (t )
Kt =
(1 + ϕ T (t ) Pt −1ϕ (t ) )
ε (t ) = y ( t ) − ϕ T ( t ) θˆ ( t − 1)
θˆ(t ) = θˆ(t − 1) + K tε (t )
Pt −1ϕ (t )ϕ T (t ) Pt −1
Pt = Pt −1 −
(1 + ϕ T (t ) Pt−1ϕ (t ) )
14

7
3.2. Nhận dạng mô hình có tham số (8)
 Đánh giá kết quả nhận dạng
- Cấu trúc đơn giản
- Sai số dự báo bé nhất
- Độ chính xác của mô hình (matlab)

 N 
 ∑ε 2
(t ) 
fit =  1 − t =1  *100% y = E [Y ]
 N 
∑ ( y (t ) − y )
2
 
 t =1 

15

3.3. Toolbox nhận dạng trong Matlab

Nhập dữ liệu: Import data -> Time domain data -> Tên biến trong workspace
Xuất kết quả: Chọn mô hình đưa vào worspace ->
[Num,Den]=tfdata(idpoly_name,’v’)

16

8
3.4. Ứng dụng (1)
 Điều khiển thích nghi

Ước lượng online


Tính toán bộ điều khiển online
17

3.4. Ứng dụng (2)


Mô hình ước lượng tham số trên simulink

18

9
3.4. Ứng dụng (3)
 Chẩn đoán thay đổi thông số

y (t ) + a1 y (t − 1) + a2 y (t − 2) + a3 y (t − 3) = b1u (t − 1) + b2u(t − 2)

Nếu ước lượng tất cả các tham số -> Khó phát hiện thay đổi

Chỉ ước lượng các tham số thay đổi

y (t ) + a3 y (t − 3) − b1u(t − 1) + b2u(t − 2) = − a1 y (t − 1) − a2 y (t − 2)
⇔ y% (t ) = − a1 y (t − 1) − a2 y (t − 2)
⇔ y% (t ) = ϕ T (t )θ

19

10

You might also like