Ứng dụng matlab để phát triển công cụ nhận dạng mô hình hộp xám
- Xây dựng phương pháp nhận dạng thông số cho mô hình hộp
xám phi tuyến qua các hàm tối ưu của matlab,
- Ứng dụng phương pháp nhận dạng thông số mô hình hộp xám
phi tuyến qua công cụ nhận dạng của matlab
- Xây dựng phương pháp tạo dữ liệu mô phỏng cho hệ phi tuyến
phục vụ nhận dạng.
- Nghiên cứu sử dụng được mô hình nhận dạng OE của đối
tượng hay phương pháp dựa trên sai lệch tín hiệu ra của mô hình, đã
xây dựng được hàm mục tiêu phi tuyến theo các tham số cần nhận
dạng, hàm mục tiêu này làm cơ sở để sử dụng các hàm tối ưu trong
Matlab, để nhận dạng thông số của mô hình động cơ không đồng bộ.
26 trang |
Chia sẻ: lylyngoc | Lượt xem: 2890 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Ứng dụng matlab để phát triển công cụ nhận dạng mô hình hộp xám, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC ĐÀ NẴNG
LÊ THỊ THANH NGA
ỨNG DỤNG MATLAB ĐỂ PHÁT TRIỂN
CÔNG CỤ NHẬN DẠNG MÔ HÌNH HỘP XÁM
Chuyên ngành : Tự động hóa
Mã số: 60.52.60
TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT
Đà Nẵng - Năm 2013
Công trình được hoàn thành tại
ĐẠI HỌC ĐÀ NẴNG
Người hướng dẫn khoa học: TS. TRẦN ĐÌNH KHÔI QUỐC
Phản biện 1: PGS.TS. BÙI QUỐC KHÁNH
Phản biện 2: TS.NGUYỄN HOÀNG MAI
Luận văn được bảo vệ tại Hội đồng chấm luận văn tốt nghiệp
Thạc sĩ kỹ thuật họp tại Đại học Đà Nẵng vào ngày 05 tháng
05 năm 2013.
* Có thể tìm hiểu luận văn tại:
- Trung tâm Thông tin - Học liệu, Đại học Đà Nẵng
- Trung Học liệu, Đại học Đà Nẵng
1
MỞ ĐẦU
1. Tính cấp thiết của đề tài:
Nhận dạng tham số của mô hình đối tượng có vai trò và ý nghĩa
to lớn trong điều khiển tự động, là cơ sở cho việc tính chọn các bộ
điều khiển hay phát hiện sự biến đổi thông số. Khi xây dựng mô
hình toán học của một đối tượng vật lý, người sử dụng thường có hai
nguồn thông tin: kiến thức cho trước và dữ liệu thực nghiệm. Các
vấn đề dùng mô hình toán học thường được phân loại thành mô hình
hộp đen và hộp trắng, tùy vào lượng thông tin có sẵn về hệ thống.
Mô hình hộp đen là một hệ thống mà thông tin có sẵn về hệ thống là
không có. Mô hình hộp trắng là một hệ thống mà mọi thông tin cần
thiết đều có sẵn.
Mọi hệ thống thực tế thì nằm dao động ở giữa cả 2 loại trên, nó
không hoàn toàn là hộp đen mà cũng không hoàn toàn là hộp trắng.
Ở giữa hai mô hình này là mô hình hộp xám, là mô hình mà người sử
dụng đã biết một phần thông tin của đối tượng hay thông tin về mô tả
toán học của mô hình đối tượng. So với các phương pháp nhận dạng
bằng cách sử dụng mô hình hộp đen, mô hình hộp xám có một số lợi
ích cụ thể. Số tham số đã biết của mô hình hộp xám có thể ít hơn
nhưng vẫn có thể nhận dạng gần đúng một hệ thống thực.
Phần lớn các hệ thống vật lý chỉ tuyến tính trong những khoảng
nhất định của các biến. Tất cả các hệ thống trong thực tế đều trở
thành phi tuyến nếu các biến của chúng có thể thay đổi không giới
hạn. Ví dụ về một hệ thống biến đổi là một quả tên lửa, với trọng
lượng là một tham số thay đổi do nhiêu liệu bị đốt cháy trong khi
bay. Các hệ thống phi tuyến hay đa biến trong thực tế cũng rất nhiều,
2
vì phần lớn các hệ thống điều khiển trong thực tế là các hệ thống phi
tuyến và đa biến.
Xuất phát từ những lời phân tích ở trên tác giả chọn đề tài
“ỨNG DỤNG MATLAB ĐỂ PHÁT TRIỂN CÔNG CỤ NHẬN
DẠNG MÔ HÌNH HỘP XÁM”
2. Mục tiêu nghiên cứu:
- Xây dựng phương pháp tạo dữ liệu mô phỏng cho hệ phi
tuyến phục vụ nhận dạng.
- Xây dựng phương pháp nhận dạng mô hình hộp xám phi
tuyến qua công cụ nhận dạng của Matlab.
- Xây dựng phương pháp nhận dạng mô hình hộp xám phi
tuyến qua các hàm tối ưu của Matlab.
- Ứng dụng bài toán nhận dạng hộp xám phi tuyến để nhận
dạng được thông số của mô hình. Cụ thể trong đề tài là nhận dạng
được thông số của động cơ không đồng bộ và cánh tay máy một bậc
tự do.
3. Đối tượng và phạm vi nghiên cứu:
Đối tượng nghiên cứu:
Đề tài tập trung nghiên cứu các thuật toán tối ưu trong Matlab
rồi từ đó giải quyết bài toán về nhận dạng cho mô hình hộp xám phi
tuyến.
- Phạm vi nghiên cứu:
Phạm vi của đề tài này là tập trung nghiên cứu các nhận dạng
các tham số của mô hình hộp xám phi tuyến của động cơ không đồng
bộ và cánh tay máy hai bậc tự do.
4. Phương pháp nghiên cứu:
Để thực hiện nghiên cứu đề tài khoa học này, thì cần phải kết
hợp 2 phương pháp sau:
3
- Phương pháp nghiên cứu lý thuyết: Nghiên cứu các vấn đề về
nhận dạng hệ thống, mô hình động cơ không đồng bộ, mô hình cánh
tay máy hai bậc tự do, các hàm tối ưu trong Matlab và các tính toán
hỗ trợ các hàm tối ưu.
- Phương pháp thực nghiệm: Sử dụng công cụ tính toán tìm tối
ưu trong phần mềm Matlab, dùng công cụ nhận dạng trong Matlab,
tạo dữ liệu mô phỏng, mô phỏng kiểm chứng thuật toán.
5. Bố cục đề tài:
Mở đầu
Chương 1: Tổng quan
Chương 2: Đối tượng, nội dung và phương pháp nghiên cứu
Chương 3: Kết quả nghiên cứu và thảo luận
Kết luận và kiến nghị
Tài liệu tham khảo
Quyết định giao đề tài luận văn
Phụ lục
6. Tổng quan tài liệu nghiên cứu:
Đề tài được nghiên cứu thực hiện dựa trên các tài liệu có liên
quan đến nội dung SXSH như lý thuyết SXSH, phương pháp luận
SXSH, áp dụng SXSH trong công nghiệp, các khóa tập huấn về
SXSH, các quyết định, chiến lược quốc gia về SXSH,...
4
CHƯƠNG 1 – GIỚI THIỆU VỀ NHẬN DẠNG VÀ MÔ
HÌNH HỘP XÁM PHI TUYẾN
1.1. KHÁI NIỆM VỀ NHẬN DẠNG
Nhận dạng là phương pháp thực nghiệm, nhằm xác định một mô
hình cụ thể trong lớp các mô hình thích hợp đã cho, trên cơ sở quan
sát tín hiệu vào ra.
Mô hình tìm được phải có sai số với đối tượng là nhỏ nhất
1.2. CẤU TRÚC MÔ HÌNH
1.2.1. Khái quát
1.2.2. Mô hình có tham số
1.2.3. Cấu trúc mô hình hệ phi tuyến
1.3. CÁC LOẠI MÔ HÌNH TUYẾN TÍNH
1.4. MÔ HÌNH HỘP XÁM PHI TUYẾN
Mô hình hộp xám phi tuyến liên tục của đối tượng được mô tả
toán học dưới dạng phương trình trạng thái như sau:
))(),((
))(),(()(
tutxhy
tutxftx
x (t)=[ x1(t),x2(t),…,xn(t)]
T
Trong đó :
u(t) là tín hiệu vào
y (t) là tín hiệu ra
x (t) là vecto trạng thái
f(.), h(.) là các hàm phi tuyến
5
1.5. MỘT SỐ THUẬT TOÁN NHẬN DẠNG KHÔNG HỒI QUY
1.5.1. Các phương pháp dựa trên sai lệch dự đoán
a. Phương pháp bình phương bé nhất đơn giản
b. Phương pháp bình phương bé nhất tổng quát
1.5.2. Phương pháp dựa trên sai lệch tín hiệu ra
Phương pháp nhận dạng này sử dụng mô hình E của đối tượng.
Sơ đô khối của phương pháp nhận dạng này như sau:
Hình 1.8: Sơ đô khối của phương pháp nhận dạng sai lệch tín hiệu ra
Điểm khác biệt của phương pháp nhận dạng này là tín hiệu ra dự
đoán của mô hình, phụ thuộc vào các tín hiệu ra trước đó của mô
hình chứ không phụ thuộc vào tín hiệu ra trước đó của đối tượng.
1.6. KÊT LUẬN
Nhận dạng là phương pháp thực nghiệm nhằm xác định một mô
hình cụ thể trong lớp các mô hình thích hợp đã cho trên cơ sở quan
sát tín hiệu vào ra, việc xây dựng mô hình cho đối tượng được gọi là
mô hình hoá. Mô hình hoá là phương pháp thiết lập mô hình dựa
trên các định luật có sẵn về quan hệ vật lý bên trong và quan hệ giao
tiếp với môi trường bên ngoài của đối tượng. Các quan hệ này được
mô tả theo quy luật lý-hoá, quy luật cân bằng,…dưới dạng các
6
phương trình toán học. Với mục đích giới thiệu tổng quan về nhận
dạng trong chương một, tác giả đưa ra một số phương pháp nhận
dạng thường dùng. Phương pháp dựa trên sai lệch tín hiệu ra sẽ được
sử dụng để nhận dạng mô hình hộp xám phi tuyến bằng hàm tối ưu
fmincon và công cụ nhận dạng Idnlgrey trong Matlab.
7
CHƯƠNG 2 – NHẬN DẠNG HỘP XÁM PHI TUYẾN QUA
CÔNG CỤ NHẬN DẠNG TRONG MATLAB
2.1. GIỚI THIỆU CÔNG CỤ NHẬN DẠNG CỦA MATLAB
2.1.1. Giới thiệu
2.1.2. Các lệnh trong Toolbox Matlab dùng để nhận dạng
tham số mô hình hộp xám tuyến tính
Để nhận dạng mô hình hộp xám thì trước tiên phải xây dựng cấu
trúc cho mô hình hộp xám. Đó chính là lệnh Idnlgrey, dùng để xây
dựng cấu trúc cho mô hình hộp xám phi tuyến:
Cú pháp:
Minit=idnlgrey('filename', Order, Parameters, InitialStates, Ts)
Sau khi xây dựng được cấu trúc mô hình hộp xám, ta tiến hành
nhận dạng các tham số chưa biết của hộp xám. Lệnh pem dùng để
nhận dạng các tham số chưa biết của mô hình hộp xám phi tuyến
Cú pháp :
Model = pem (data,Minit)
2.2. TẠO DỮ LIỆU NHẬN DẠNG
2.2.1. Mục đích
2.2.2. Phương pháp thực hiện
Sử dụng phương pháp Runge-Kutta để tạo dữ liệu như sau:
Ta có:
Cho hệ thống có phương trình vi phân:
),( tyfy
Trong đó:
,...,1),,(
1
1
ihctkahyfk iij
i
j
ijni
j
j
jni kbhyk
1
8
Theo phương pháp Runge-Kutta thì :
),(1 nn tyfk
),.( 21212 hctkahyfk nn
)),(( 32321313 hctkakahyfk nn
…
)),...(( 11,11 hctkakahyfk nn
)...( 111 tbkbhyy nn
2.3. XÂY DỰNG CẤU TRÚC MÔ HÌNH HỘP XÁM PHI
TUYẾN
Bước 1: Xây dựng cấu trúc mô hình hộp xám phi tuyến bằng
dòng lệnh [dx, y] = fileName (t,x,u,p,varargin)
Trong đó p là vector tham số chưa biết
Bước 2: Tạo mô hình ban đầu để nhận dạng hộp xám bằng lệnh
Minit= idnlgrey ('filename', Order, Parameters, InitialStates, Ts)
Bước 3: Nhận dạng các tham số chưa biết bằng lệnh
Model = pem(data,Minit)
2.4. VÍ DỤ ỨNG DỤNG
2
1
22
3
11
2
)(
)(
3
x
x
ty
upxpxp
x
dt
tdx
(2.2)
iá trị đúng của các tham số cần nhận dạng:
p1=0.45; p2=0.8; p3=0.5;
Từ dữ liệu mô phỏng vào ra của đối tượng này với nhiễu 2%
được thêm vào ngõ ra. Sử dụng lệnh pem trong toolbox của Matlab
9
để nhận dạng các tham số chưa biết, tác giả thu được kết quả nhận
dạng tham số mô hình hộp xám phi tuyến là :
Bảng 2.2. Kêt quả nhận dạng 3 tham số của mô hình (2.2)
p
p
Sai lệch % Sai lệch
0.4500 0.450503 0.000503 0.112
0.800 0.792784 -0.007216 -0.902
0.500 0.500724 0.000724 0.145
Trong đó:
*p
là tham số thực đã biết .
p
là tham số nhận dạng.
(
p
-
*p
) là giá trị sai lệch tuyệt đối
0
0
*
*
100
)(
p
pp
là giá trị sai lệch tính theo %
10
CHƯƠNG 3 – XÂY DỰNG PHƯƠNG PHÁP NHẬN DẠNG
HỘP XÁM PHI TUYẾN QUA CÁC HÀM TỐI ƯU
TRONG MATLAB
3.1. CÔNG CỤ TÍNH TOÁN TÌM TỐI ƯU
3.2. MỘT SỐ HÀM TỐI ƯU TRONG MATLAB ĐỂ GIẢI BÀI
TOÁN TÌM TỐI ƯU
3.2.1. Hàm fminbnd
Hàm này có chức năng ứng dụng tìm cực tiểu của hàm phi tuyến
một biến trong khoảng cho trước.
Cú pháp
[x, fval,exitflag,output]=fminbnd(‘function’,x1, x2, options)
3.2.2. Hàm fminunc
Hàm này có chức năng và ứng dụng để tìm cực tiểu cho các hàm
mục tiêu nhiều biến.
Không có điều kiện ràng buộc (uncontrained optimization).
Cú pháp
[x,fval,exitflag,output,grad,hessian] = fminunc(function, x0,
options)
3.2.3. Hàm fmincon
Hàm này có chức năng và ứng dụng để tìm cực tiểu cho các hàm
nhiều biến
Có điều kiện ràng buộc(constrained optimization).
ubxlb
bx
xc
xc
eq
eq
eqA
bAx
0)(
0)(
11
Hàm này được sử dụng khi tìm cực tiểu cho hàm mục tiêu dưới
nhiều điều kiện phụ khác nhau (có thể là điều kiện phụ phi tuyến hay
điều kiện phụ tuyến tính)
Cú pháp:
[x,fval,exitfag,output,lambda,grad,hessian]=fmincon(fun,x0,A,
b,Aeq,beq,lb,ub,nonlcon,options)
3.3. ỨNG DỤNG HÀM FMINCON TRONG MATLAB ĐỂ
NHẬN DẠNG THAM SỐ MÔ HÌNH HỘP XÁM PHI TUYẾN
Với việc sử dụng mô hình nhận dạng có tham số dựa trên tổng
sai lệch tín hiệu ra, từ đó ta phải đi xác định được hàm mục tiêu chứa
các tham số của mô hình. Để giải hàm mục tiêu này ta sử dụng hàm
tối ưu của Matlab. Các tham số của mô hình tìm được là giá trị để
hàm mục tiêu đạt cực trị. Việc giải hàm mục tiêu được thực hiện
bằng cách tính đạo hàm theo các tham số, sau đó sử dụng hàm
fmincon trong Matlab. Phương pháp nhận dạng trên đã được áp dụng
cho mô hình OE (Output Error Model ) của đối tượng, là phương
pháp dựa trên sai lệch tín hiệu ra.
Phương pháp nhận dạng này là tín hiệu ra dự đoán của mô hình
phụ thuộc vào các tín hiệu ra trước đó của mô hình chứ không phụ
thuộc vào tín hiệu ra trước đó của đối tượng.
Phương pháp nhận dạng mô hình có tham số qua các
hàm tối ưu
Hàm mục tiêu được chọn như sau:
N
k
m kykypf
1
2
)(ˆ)()(
12
Trong đó:
p : Vector các tham số cần nhận dạng
N : Số lượng các đo lường ( chiều dài dữ liệu)
)(ky
: là tín hiệu ra đo lường được của đối tượng
)(ˆ kym
: là tín hiệu ra của mô hình chứa vectơ các tham số p
cần nhận dạng
)( pf
: là đại lượng vô hướng
Tín hiệu ra của mô hình phụ thuộc vào các tham số chưa biết p,
do vậy hàm mục tiêu là hàm vô hướng của tham số p.
Vector tham số nhận dạng được sẽ thoả mãn :
)(minarg pfp
p
(3.1)
Sử dụng hàm fmincon trong Matlab để tìm lời giải cho (3.1).
3.4. XÂY DỰNG HÀM FMINCON NHẬN DẠNG THÔNG SỐ
CHO MÔ HÌNH HỘP XÁM PHI TUYẾN
3.4.1. Các bước xây dựng
Bước 1: Định nghĩa cấu trúc mô hình hộp xám trong mfile qua
các phương trình trạng thái chứa các tham số chưa biết p và tham số
đã biết p_apriori.
Bước 2 : Xây dựng hàm mục tiêu theo :
N
k
m kykypf
1
2
)(ˆ)()(
(3.3)
Bước 3 : Tính đạo hàm của hàm mục tiêu theo các tham số p.
13
i
k
mk
N
ki
i
p
y
kyy
p
pf
g
)(2
)(
1
(3.4)
Bước 4 : Xác định các tham số nhận dạng theo hàm fmincon,
trong đó bậc tùy chọn gradobj để có kết quả nhận dạng .
3.4.2. Ví dụ ứng dụng
Xét một đối tượng có mô tả toán học dưới dạng phương trình
trạng thái phi tuyến liên tục như sau:
2
1
22
3
11
2
)(
5.0
)(
x
x
ty
uxpxp
x
dt
tdx
(3.5)
Trong đó, giá trị đúng các tham số cần nhận dạng là:
p1=0.45; p2=0.8
- Tạo dữ liệu nhận dạng bằng phương pháp Runge-Kutta
- Xây dựng hàm mục tiêu
N
k
m kykypf
1
2
)(ˆ)()(
- Để có thể sử dụng hàm fmincon có độ chính xác cao, ta cần
tính gradient của hàm mục tiêu.
Kết quả nhận dạng được thể hiện trong bảng sau:
Bảng 3.1. Kết quả nhận dạng của mô hình (3.5) khi có gradient
p
p
Sai lệch % Sai lệch
0.4500 0.4466 0.0034 0.7600
0.800 0.7960 0.0040 0.5000
14
Khi bỏ qua bước 3: không tính đạo hàm của hàm mục tiêu. Ta
thực hiên nhận dạng tuần tự như trên. Kết quả nhận dạng như sau:
Bảng 3.2. Kết quả nhận dạng của mô hình (3.5) khi không có
gradient
p
p
Sai lệch % Sai lệch
0.4500 0.4309 0.0191 4.2400
0.800 0.7661 0.0339 4.2400
Kết luận:
Hàm fmincon là một lệnh rất mạnh, ứng dụng tìm tối ưu cho
hàm nhiều biến và có thể xét đồng thời nhiều điều kiện phụ khác
nhau, cho kết quả khá chính xác. Do vậy ta sử dụng hàm fmincon
làm công cụ hữu hiệu để tối ưu cho hàm mục tiêu cũng như cho việc
nhận dạng tham số cho các mô hình có tham số.
Từ kết quả nhận dạng được các tham số của mô hình hộp xám ở
các bảng kết quả trên,ta thấy khi dùng hàm tối ưu fmincon khi có
đạo hàm hàm mục tiêu và không có đạo hàm thì hàm fmincon có
gradient cho kết quả nhận dạng chính xác cao hơn.
15
CHƯƠNG 4 - ỨNG DỤNG NHẬN DẠNG HỘP XÁM PHI
TUYẾN
4.1. NHẬN DẠNG THAM SỐ CỦA MÔ HÌNH ĐỘNG CƠ
KHÔNG ĐỒNG BỘ
4.1.1. Mô hình toán học của động cơ không đồng bộ
Sau khi biến đổi ta có mô hình liên tục của động cơ không đồng
bộ ba pha như sau
sq
rrs
r
sdsq
rrs
srrs
sd
rrs
r
sq
rrs
rsq
sd
rrs
r
sqsd
rrs
srrs
sq
rrs
r
sd
rrs
rsd
sqsqs
sq
sdsds
sd
u
LLL
L
ii
LLL
LRLR
LLL
L
LLL
R
dt
di
u
LLL
L
ii
LLL
LRLR
LLL
L
LLL
R
dt
di
uiR
dt
d
uiR
dt
d
2222
2222
Các thành phần d và q của điện áp stator, dòng stator và từ thông
rotor có thể được viết lại dưới dạng vector với thành phần thực như
sau:
Trong đó:
Tsqsdsqsd iix
Tsqsd uuu
Tsqsd iiy
Trong mô hình trên, đặt các biến p1 = Rs ; p2 = Rr ; p3 = Ls ; p4 =
Lr thì ta có mô hình phi tuyến theo p mô tả toán học của động cơ
không đồng bộ với các ma trận trạng thái như sau :
16
434
4132
434
2
434
4
434
4132
434
4
434
2
1
1
000
000
ppp
pppp
K
ppp
p
ppp
p
K
K
ppp
pppp
ppp
p
K
ppp
p
p
p
A
)(
0
0
)(
10
01
434
4
434
4
ppp
p
ppp
p
B
;
T
C
10
01
00
00
4.1.2. Tạo dữ liệu nhận dạng động cơ
Để kiểm chứng các thuật toán, tạo ra dữ liệu mô phỏng cho dữ
liệu thu thập được :
Bảng 4.1. Tên các tập dữ liệu được tạo ra để sử dụng cho nhận dạng
Tên file Biên độ nhiễu μ Chiều dài dữ liệu N
Data1 0.01 500
Data2 0.01 1024
Data3 0.01 5000
Data4 0.02 500
Data5 0.02 1024
Data6 0.02 5000
Data7 0.05 500
Data8 0.05 1024
Data9 0.05 5000
17
Các tập dữ liệu này sẽ sử dụng cho các phương pháp nhận dạng
của mô hình phi tuyến qua các hàm tối ưu và qua công cụ nhận dạng
của matlab.
4.1.3. Dùng hàm tối ưu fmincon để nhận dạng
a. Kết quả nhận dạng với số thông tin biết trước.
Nhận dạng 1 tham số Rs khi biết 3 tham số còn lại.
Cho Rr= 10; Rr =3.5; Ls =0.38 ; Lr = 0.3;
K
=1500*2*pi/60;
Sử dụng hàm fmincon trong Matlab để nhận dạng các tham số
chưa biết, tác giả thu được kết quả nhận dạng của mô hình hộp xám
như sau :
Bảng 4.2. Kết quả nhận dạng 1 tham số với tập dữ liệu Data2
Tham số
p
p
Sai lệch %Sai lệch
Thời gian
(s)
Rs 10.000 10.0013 0.0013 0.0132 2.427140
Nhận dạng 4 tham số Rs, Rr ,Ls,Lr
Bảng 4.5. Kết quả nhận dạng 4 tham số với tập dữ liệu Data2
Tham số
p
p
Sai lệch % Sai lệch
Thời gian
(s)
Rs 10.0000 10.0002 0.0002 0.0020
11.668677
Rr 3.5000 3.5010 0.0010 0.0273
Ls 0.3800 0.3795 0.0005 0.1385
Lr 0.3000 0.2995 0.0005 0.1719
18
Nhận xét:
Từ kết quả nhận dạng trong 3 bảng trên, ta thấy khi mức độ
thông tin của mô hình động cơ càng biết nhiều thì kết quả nhận dạng
các tham số chưa biết có độ chính xác càng cao. Cụ thể là khi nhận
dạng 1 tham số p1 cho kết quả nhận dạng với phần trăm sai lệch thấp
nhất là 0.0132%. Khi cả 4 tham số cần nhận dạng thì phần trăm sai
lệch cao nhất là 0.1719%. Điều này chứng tỏ rằng khi dùng hàm tối
ưu fmincon để nhận dạng mô hình động cơ không đồng bộ, nếu biết
được mức độ thông tin càng nhiều để cung cấp cho mô hình nhận
dạng, thì kết quả nhận dạng các tham số của mô hình hộp xám có độ
chính xác càng cao.
b. Kết quả nhận dạng với ảnh hưởng của chiều dài dữ liệu
Sử dụng tập dữ liệu data1: biên độ nhiễu =0.01, chiều dài dữ
liệu N=500
Bảng 4.6. Kết quả nhận dạng 4 tham số với tập dữ liệu Data1
Tham số
p
p
Sai lệch % Sai lệch
Thời gian
(s)
Rs 10.0000 9.9991 -0.0009 -0.0088
5.699984
Rr 3.5000 3.5034 0.0034 0.0959
Ls 0.3800 0.3778 -0.0022 -0.5871
Lr 0.3000 0.2978 -0.0022 -0.7468
Sử dụng tập dữ liệu data3: biên độ nhiễu = 0.01, chiều dài
dữ liệu N = 5000
19
Bảng 4.8. Kết quả nhận dạng 4 tham số với tập dữ liệu Data3
Tham số
p
p
Sai lệch % Sai lệch
Thời gian
(s)
Rs 10.0000 10.0006 0.0006 0.0065
637.254430
Rr 3.5000 3.4996 -0.0004 -0.0114
Ls 0.3800 0.3800 0.0000 0.0000
Lr 0.3000 0.3000 0.0000 0.0000
Nhận xét:
So sánh kết quả của ba bảng trên, ta thấy rằng: với cùng một mô
hình, cùng biên độ nhiễu, cùng mức độ thông tin được biết trước thì
khi chiều dài dữ liệu N thay đổi, thì kết quả nhận dạng các tham số
trong mô hình hộp xám cũng thay đổi tùy thuộc vào chiều dài dữ
liệu. Cụ thể là khi N=1024 và N=5000 thì kết quả nhận dạng khác
nhau. Nếu chiều dài dữ liệu càng lớn thì kết quả nhận dạng có sai
lệch phần trăm càng nhỏ và thời gian nhận dạng càng lớn. Vì khi
chiều dài dữ liệu càng lớn thì quá trình tính toán được lặp lại càng
nhiều nên mất nhiều thời gian hơn và kết quả nhận dạng có độ chính
xác càng cao.
4.1.4. Dùng công cụ nhận dạng Idnlgrey
Sử dụng tập dữ liệu data2: biên độ nhiễu =0.01, chiều dài
dữ liệu N=1024
20
Bảng 4.9. Kết quả nhận dạng 4 tham số với tập dữ liệu Data2
Tham số
p
p
Sai lệch % Sai lệch
Thời gian
(s)
Rs 10.0000 10.0012 0.0012 0.0118
5.399671
Rr 3.5000 3.4976 -0.0024 -0.0691
Ls 0.3800 0.3794 -0.0006 -0.1678
Lr 0.3000 0.2993 -0.0007 -0.2173
Sử dụng tập dữ liệu data8: biên độ nhiễu =0.05, chiều dài
dữ liệu N=1024
Bảng 4.11. Kết quả nhận dạng 4 tham số với tập dữ liệu Data8
Tham
số
p
p
Sai lệch
% Sai
lệch
Thời gian
(s)
Rs 10.0000 10.0081 0.0081 0.0807
7.625169
Rr 3.5000 3.5012 0.0012 0.0353
Ls 0.3800 0.3810 0.0010 0.2575
Lr 0.3000 0.3010 0.0010 0.3178
4.2. NHẬN DẠNG THAM SỐ CỦA MÔ HÌNH CÁNH TAY
MÁY MỘT BẬC TỰ DO
4.2.1. Mô hình toán học
Ta được phương trình trạng thái của hệ:
21
)()(
)(
)(
1
)(
)(
)(cos
)(
)(
1
22212
2
txty
tu
mlJ
tx
mlJ
B
tx
mlJ
gMlml
tx
dt
dx
C
Trong đó:
l =0.5m; lc=0.2m; m=0.1 kg; J=0.02 kg.m
2
; g=9.81 m/s
2
,
M=0.45 kg và B=0.8
4.2.2. Tạo dữ liệu nhận dạng
4.2.3. Dùng hàm Idnlgrey để nhận dạng
Kết quả nhận dạng với ảnh hưởng của nhiễu
Bảng 4.21. Kết quả nhận dạng với tập dữ liệu DataM2 khi μ = 0.01
Tham số
p
p
Sai lệch % Sai lệch
M 0.45 0.449971 -0.000029 -0.006
B 0.8 0.799742 -0.000258 -0.032
Bảng 4.23. Kết quả nhận dạng với tập dữ liệu DataM8 khi μ = 0.05
Tham số
p
p
Sai lệch % Sai lệch
M 0.45 0.445298 -0.004702 -1.045
B 0.8 0.798449 -0.001551 -0.194
4.2.4. Dùng hàm tối ưu fmincon để nhận dạng
Kết quả nhận dạng với số thông tin biết trước
22
Bảng 4.27. Kết quả nhận dạng 1 tham số với tập dữ liệu DataM2
Tham số
p
p
Sai lệch % Sai lệch
M 0.45 0.450108 0.000108 0.024
Bảng 4.28. Kết quả nhận dạng 2 tham số với tập dữ liệu DataM2
Tham số
p
p
Sai lệch % Sai lệch
M 0.45 0.450872 -0.000872 0.194
B 0.8 0.79986 -0.00014 0.018
Bảng 4.29. Kết quả nhận dạng 3 tham số với tập dữ liệu DataM2
Tham số
p
p
Sai lệch % Sai lệch
M 0.45 0.451353 0.0013530 0.300
B 0.8 0.799554 -0.000446 0.056
J 0.02 0.020391 0.000391 1.955
Nhận xét:
Sau khi thực hiện nhận dạng 2 hệ thống phi tuyến là động cơ
không đồng bộ và cánh tay máy một bậc tự do theo hai phương pháp
khác nhau: dùng hàm tối ưu fmincon và công cụ nhận dạng idnlgrey
trong Matlab, ta thấy rằng cả 2 phương pháp đều mang lại độ chính
xác cao. Để kết quả nhận dạng có độ chính xác cao thì chiều dài dữ
liệu phải dài, ảnh hưởng nhiễu phải thấp nhất và lượng thông tin biết
trước phải nhiều.
23
KẾT LUẬN VÀ KIẾN NGHỊ
1. CÁC KẾT QUẢ ĐẠT ĐƯỢC
Qua quá trình nghiên cứu luận văn thạc sĩ với đề tài “Ứng dụng
Matlab để phát triển công cụ nhận dạng mô hình hộp xám” đã
giải quyết được một số nội dung cơ bản sau :
- Xây dựng phương pháp nhận dạng thông số cho mô hình hộp
xám phi tuyến qua các hàm tối ưu của matlab,
- Ứng dụng phương pháp nhận dạng thông số mô hình hộp xám
phi tuyến qua công cụ nhận dạng của matlab
- Xây dựng phương pháp tạo dữ liệu mô phỏng cho hệ phi tuyến
phục vụ nhận dạng.
- Nghiên cứu sử dụng được mô hình nhận dạng OE của đối
tượng hay phương pháp dựa trên sai lệch tín hiệu ra của mô hình, đã
xây dựng được hàm mục tiêu phi tuyến theo các tham số cần nhận
dạng, hàm mục tiêu này làm cơ sở để sử dụng các hàm tối ưu trong
Matlab, để nhận dạng thông số của mô hình động cơ không đồng bộ.
- Ứng dụng bài toán nhận dạng mô hình hộp xám, nhận dạng
được thông số của động cơ không đồng bộ và cánh tay máy hai bậc
tự do qua hai phương pháp nêu trên, các phương pháp nhận dạng
được mô phỏng trên mfile của Matlab mang lại kết quả nhận dạng có
độ chính xác rất cao. Phương pháp nhận dạng mô hình hộp xám này
có thể được ứng dụng để nhận dạng nhanh một đối tượng hay theo
dõi sự biến đổi của một thông số nào đó trong mô hình.
2. HẠN CHẾ CÒN TỒN TẠI
Tác giả chỉ đưa ra được phương pháp nhận dạng mô hình hộp
xám phi tuyến qua các hàm tối ưu của Matlab và phương pháp nhận
dạng mô hình hộp xám phi tuyến qua công cụ nhận dạng của Matlab.
24
Các phương pháp nhận dạng này chỉ áp dụng ở mức độ nhận dạng
chủ động hay nhận dạng không trực tuyến (off-line). Kết quả nhận
dạng thông số động cơ không đồng bộ và cánh tay máy hai bậc tư do
qua hai phương pháp vẫn còn sai lệch nhỏ.
3. HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI
- Xây dựng giao diện nhận dạng hộp xám trong Matlab.
- Nhận dạng mô hình hộp xám online.
- Nghiên cứu các phương pháp nhận dạng khác để so sánh kết
quả
Các file đính kèm theo tài liệu này:
- tomtat_4_131.pdf