bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ...

26
BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG LÊ THTHANH NGA NG DỤNG MATLAB ĐỂ PHÁT TRIN CÔNG CNHN DNG MÔ HÌNH HP 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

Upload: dokiet

Post on 10-Feb-2018

226 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 2: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 3: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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,

Page 4: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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:

Page 5: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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,...

Page 6: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 7: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 8: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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.

Page 9: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 10: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

xty

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

Page 11: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

00

*

*

100)(

p

pp

là giá trị sai lệch tính theo %

Page 12: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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)(

Page 13: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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 kykypf1

2)(ˆ)()(

Page 14: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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 pfpp

(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 kykypf1

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.

Page 15: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

13

i

kmk

N

ki

ip

ykyy

p

pfg

)(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

xty

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 kykypf1

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

Page 16: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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.

Page 17: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

rsdsq

rrs

srrs

sd

rrs

rsq

rrs

rsq

sd

rrs

rsqsd

rrs

srrssq

rrs

rsd

rrs

rsd

sqsqs

sq

sdsds

sd

uLLL

Lii

LLL

LRLR

LLL

L

LLL

R

dt

di

uLLL

Lii

LLL

LRLR

LLL

L

LLL

R

dt

di

uiRdt

d

uiRdt

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 :

Page 18: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

16

434

4132

434

2

434

4

434

4132

434

4

434

2

1

1

000

000

ppp

ppppK

ppp

p

ppp

pK

Kppp

pppp

ppp

pK

ppp

p

p

p

A

)(0

0)(

10

01

434

4

434

4

ppp

p

ppp

pB ;

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

Page 19: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 20: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 21: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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

Page 22: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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ệ:

Page 23: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

21

)()(

)()(

1)(

)()(cos

)(

)(

1

22212

2

txty

tumlJ

txmlJ

Btx

mlJ

gMlml

tx

dt

dx

C

Trong đó:

l =0.5m; lc=0.2m; m=0.1 kg; J=0.02 kg.m2; 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

Page 24: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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.

Page 25: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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.

Page 26: BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNGtailieuso.udn.vn/bitstream/TTHL_125/4813/3/Tomtat.pdf · bỘ giÁo dỤc vÀ ĐÀo tẠo ĐẠi hỌc ĐÀ nẴng lÊ thỊ

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ả