Tải bản đầy đủ (.pdf) (14 trang)

Bai 5 dieu khien hoi tiep bien trang thai

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (467.05 KB, 14 trang )

Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

BÀI THÍ NGHIỆM 5

ĐIỀU KHIỂN HỒI TIẾP BIẾN TRẠNG THÁI
I. MỤC ĐÍCH
Hệ thống xe – lò xo bao gồm 2 xe và 2 lò xo liên kết nối tiếp nhau. Trong bài thí
nghiệm này sinh viên sẽ xây dựng phương trình biến trạng thái mô tả hệ thống xe – lò
xo. Sau đó sẽ xây dựng bộ điều khiển hồi tiếp biến trạng thái để điều khiển vị trí của
xe 1 hoặc vị trí của xe 2 theo giá trị đặt mong muốn.
Dựa vào các kết quả thu thập được từ đáp ứng thời gian, sinh viên sẽ tìm được các
thông số của mô hình xe – lò xo như: độ cứng của lò xo, hệ số ma sát. Sau khi tìm
được các thông số này, sinh viên sẽ xây dựng được phương trình biến trạng thái mô tả
hệ thống xe – lò xo.
Ngoài ra, bài thí nghiệm còn giúp sinh viên hiểu rõ ảnh hưởng của bộ điều khiển
hồi tiếp biến trạng thái lên chất lượng hệ thống điều khiển.
Mục tiêu sau khi hoàn thành bài thí nghiệm này:
 Biết cách xây dựng và mô phỏng mô hình điều khiển hệ thống xe – lò xo dùng
phương pháp điều khiển hồi tiếp biến trạng thái.
 Biết cách thu thập dữ liệu và nhận dạng mô hình đối tượng xe – lò xo.
 Đánh giá được chất lượng điều khiển dùng phương pháp điều khiển hồi tiếp biến
trạng thái.
II. CƠ SỞ LÝ THUYẾT
2.1. Mô tả toán học hệ xe – lò xo
Mô hình hệ xe – lò xo được mô tả như ở Hình 1. Hệ thống bao gồm 2 xe với
trọng lượng m1, m2 liên kết với 2 lò xo có độ cứng k1, k2. Lực F tác động vào xe m2 để
điều khiển vị trí xe 2 đến vị trí x2 mong muốn hoặc điều khiển vị trí xe 1 đến vị trí x1
mong muốn.

Hình 1. Mô hình hệ xe – lò xo
Phương trình vi phân mô tả hệ thống như sau:


m2 
x2  F  b2 x2  k2  x2  x1 
m1
x1  k2  x2  x1   b1 x1  k1 x1

(1)

trong đó b1 là hệ số ma sát của xe 1 và b2 là hệ số ma sát của xe 2.
1/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

Trong mô hình thí nghiệm hệ xe – lò xo, lực tác động F được cung cấp bởi động
cơ ĐC. Nếu bỏ qua phần cảm ứng ta có thể xấp xỉ lực tác động F tỉ lệ thuận với điện
áp cung cấp:
F  Ku

(2)

trong đó, u là điện áp cung cấp cho động cơ ĐC, K là hệ số tỉ lệ. Phương trình biến
trạng thái mô tả hệ thống (1) được viết lại:
 x1 
 x 
 1
 x2 
 
 x2 

0


 ( k  k )
 1 2
m1


0

k2


m2


1
b1
m1

0
k2
m2

0

0

0

 k2
m2


0 
x   0 
0  1  0 
  x1   
  0 u
1   x2   
 
K
b2   x2   
 m2 
m2 

(3)

y  1 0 0 0 x : nếu điều khiển vị trí x1

y   0 0 1 0 x : nếu điều khiển vị trí x2

2.2. Tìm thông số của hệ xe – lò xo bằng thực nghiệm
Trong phần này, chúng ta sẽ xây dựng công thức tìm các thông số chưa biết của
hệ xe – lò xo: độ cứng k1, k2 của lò xo; hệ số ma sát b1, b2 của xe; và hệ số tỉ lệ K .
2.2.1. Xây dựng công thức tìm k1 , b1
Gọi T là chu kỳ lấy mẫu tín hiệu, đạo hàm bậc 1 và đạo hàm bậc 2 của tín hiệu
x(t ) tại thời điểm kT được tính như sau:

x (kT ) 
hay viết tắt: x (k ) 

(4)


1
 x(k )  x(k  1)
T


x(kT ) 

hay viết tắt: 
x(k ) 

1
 x(kT )  x(kT  T )
T

1
 x(kT  T )  2 x(kT )  x(kT  T )
T2

(5)

1
 x(k  1)  2 x(k )  x(k  1)
T2

Giả sử độ cứng của 2 lò xo là giống nhau và có giá trị k1  k2  k12 , phương
trình thứ nhất của (1) được viết lại:
k12T 2  2 x1 ( k )  x2 (k )   b1T  x1 ( k )  x1 (k  1) 
 m1  x1 (k  1)  2 x1 ( k )  x1 ( k  1) 


(6)

Nếu khối lượng xe m1 biết trước thì phương trình (6) còn 2 ẩn cần tìm là k12 và
b1 . Tại mỗi thời điểm lấy mẫu kT ta sẽ có 1 phương trình (6), thu thập N mẫu dữ liệu
ta có (N - 2) phương trình như sau:
.  

(7)
2/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

Trong đó


T 2  2 x1 (2)  x2 (2)
T  x1 (2)  x1 (1) 


T 2  2 x1 (3)  x2 (3) 
T  x1 (3)  x1 (2)




...
...



T 2  2 x1 ( N  1)  x2 ( N  1)  T  x1 ( N  1)  x1 ( N  2)




m1  x1 (3)  2 x1 (2)  x1 (1)


 m1  x1 (4)  2 x1 (3)  x1 (2)





...


 m1  x1 ( N )  2 x1 ( N  1)  x1 ( N  2)

k 

   12  ,
 b1 

Giải phương trình (7) ta tìm được k12 và b1 :



  T 




1

T 

(8)

2.2.2. Xây dựng công thức tìm K, b2
Khai triển tương tự như ở Mục 2.2.1, phương trình thứ 2 của (1) được viết lại
như sau:
T 2 Ku (k )  b2T  x2 (k )  x2 (k  1)  

(9)

m2  x2 (k  1)  2 x2 (k )  x2 (k  1)   k12T 2  x2 (k )  x1 ( k )

Nếu khối lượng xe m2 biết trước và độ cứng lò xo k12 đã tìm được ở (8) thì
phương trình (9) còn 2 ẩn cần tìm là K và b2 . Tại mỗi thời điểm lấy mẫu kT ta sẽ có
1 phương trình (9), thu thập N mẫu dữ liệu ta có (N - 2) phương trình như sau:
.  

(10)

Trong đó
 T 2 u (2)

T  x2 (2)  x2 (1) 



2
T  x2 (3)  x2 (2) 
 T u (3)


,
...
...


T 2 u ( N  1) T  x2 ( N  1)  x2 ( N  2) 

K 

  
b2 



m2  x2 (3)  2 x2 (2)  x2 (1)   k12T 2  x2 (2)  x1 (1) 


2
m
x
(4)

2
x
(3)


x
(2)

k
T
x
(3)

x
(2)






2
2
2
2
12
2
1


...


 m2  x2 ( N )  2 x2 ( N  1)  x2 ( N  2)   k12T 2  x2 ( N  1)  x1 ( N  2) 



3/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

Giải phương trình (10) ta tìm được K và b2 :



  T 



1

T 

(11)

2.3. Điều khiển hồi tiếp biến trạng thái

Hình 2. Cấu trúc bộ điều khiển hồi tiếp biến trạng thái
Sơ đồ bộ điều khiển hồi tiếp biến trạng thái được mô tả như ở Hình 2. Đối với
hệ xe – lò xo chúng ta sẽ điều khiển hồi tiếp 4 tín hiệu trạng thái: vị trí xe 1, vận tốc xe
1, vị trí xe 2, vận tốc xe 2. Hệ số hồi tiếp cho 4 trạng thái là:
K f   K f 1

Kf2


Kf3

K f 4 

(12)

Phương trình biến trạng thái của hệ vòng kín sẽ là:





x  A  BK f x  Bu

(13)

y  Cx

Trong đó:
 x1 
 x 
x   1,
 x2 
 
 x2 

0

 ( k  k )

 1 2
m1

A
0


k2

 m2

1
b1
m1

0
k2
m2

0

0
 k2
m2

0

0 
 0 


 0 
0 
 

, B   0 
1 
 
K
b2 
 m2 

m2 

(14)

C  1 0 0 0 nếu điều khiển vị trí x1
C   0 0 1 0 nếu điều khiển vị trí x2
4/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

III. MÔ TẢ THÍ NGHIỆM
3.1. Phần cứng
Sơ đồ khối phần cứng được mô tả như ở Hình 3. Trong đó, bo mạch
PC104CARD là phần cứng trung tâm trong bài thí nghiệm. Bo mạch PC104CARD
xây dựng trên nền tảng FPGA của Altera có khả năng giao tiếp với máy tính thông
qua phần mềm Matlab/ Simulink/ Real-time Windows Target với các tính năng sau:
 Điều rộng xung (PWM): 4 kênh độ phân giải 0.1% (~ 10bit).
 Encoder: 4 kênh encoder x4.

 Giao tiếp với máy tính thông qua cổng máy in theo chuẩn EPP.
Động cơ DC sử dụng trong bài thí nghiệm có điện áp định mức 24VDC và
encoder gắn trên xe có độ phân giải 2048 xung/vòng. Tín hiệu điều rộng xung Pulse
và hướng Dir sẽ điều khiển động cơ chạy với tốc độ và chiều quay mong muốn:
 Điện áp cấp cho động cơ sau khi qua Motor Driver sẽ bằng
TPWM * 24 /1000 (V), trong đó TPWM là giá trị điều rộng xung từ (0 – 1000)
tương ứng với độ phân giải 0.1%.
 Vị trí (đơn vị: mm) và tốc độ (đơn vị: mm/s) của xe được tính theo phương
pháp đo số xung trong một chu kỳ lấy mẫu T = 2ms.

Hình 3. Sơ đồ phần cứng bài thí nghiệm

3.2. Phần mềm
Phần mềm sử dụng trong các bài thí nghiệm này là bộ phần mềm Matlab/
Simulink/ Real-time Windows Target. Công cụ Real-time Windows Target cho phép
mô hình Simulink có khả năng kết nối với phần cứng bên ngoài và chạy theo thời gian
thực. Để biên dịch và chạy mô hình Simulink liên kết với phần cứng sinh viên phải
thực hiện trình tự các bước sau:
5/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

 Tạo hoặc mở một file simulink như ở Hình 4.
 Vào menu Simulation -> Configuration, chọn mục Solver để cài đặt các
thông số về thời gian mô phỏng (Simulation time) và phương pháp mô
phỏng (Solver Options) như ở Hình 5.
 Vào menu Tool -> Real-Time Workshop -> Build Model (hoặc nhấn
chuột trái vào biểu tượng Incremental Build) để biên dịch mô hình.
 Sau khi mô hình biên dịch thành công, vào menu Simulation -> Connect

To Target (hoặc nhấn chuột trái vào biểu tượng Connect To Target) để
kết nối mô hình Simulink tới phần cứng.
 Vào menu Simulation -> Run (hoặc biểu tượng Run) để tiến hành chạy
mô hình.
Run

Connect To Target

Incremental Build

Hình 4. Mô hình Simulink kết nối phần cứng

6/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

Hình 5. Cài đặt các thông số mô phỏng

IV. CHUẨN BỊ TRƯỚC THÍ NGHIỆM
4.1. Xây dựng mô hình hệ xe – lò xo
Để thực hiện tốt thí nghiệm trên lớp, sinh viên cần chuẩn bị trước phần lý
thuyết và thực hiện mô phỏng trên máy tính.
Xây dựng mô hình Simulink để khảo sát đáp ứng ngõ ra của hệ xe – lò xo như
ở Hình 6. Trong đó, khối “Mass-Spring Damper” chứa mô hình hệ xe – lò xo được
xây dựng từ phương trình vi phân (1) và mô tả như ở Hình 7 với bảng thông số:
Thông số

m1


m2

k1

k2

b1

b2

Giá trị

1.3

0.7

1000

1000

10

5

Hình 6. Mô hình khảo sát đáp ứng ngõ ra của hệ xe – lò xo
7/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM


Hình 7. Mô hình hệ xe – lò xo
a)
b)
c)
d)

Tạo file mô hình simulink như ở Hình 6.
Cài đặt giá trị Force = 10 (N).
Chạy mô phỏng.
Mở scope để xem đáp ứng, xác định khoảng cách di chuyển của xe 1, xe 2 và
ghi lại các kết quả vào Bảng 1.
e) Lặp lại bước b) đến d) với các giá trị Force còn còn lại như trong Bảng 1. Vẽ
đồ thị biểu diễn x1 theo Force và x2 theo Force. Nhận xét kết quả đồ thị.
Bảng 1. Khoảng cách di chuyển theo lực tác động
Lần chạy

Force (N)

x1 (mm)

x2 (mm)

1

10

10

20


2

20

3

30

4

40

5

50

4.2. Điều khiển hồi tiếp biến trạng thái hệ xe – lò xo
Xây dựng bộ điều khiển hồi tiếp biến trạng thái để điều khiển vị trí của xe 2
như ở Hình 8. Trong đó:
 Khối “Gain1” và “Gain2” có giá trị bằng 1000 để chuyển từ đơn vị meter sang
milimeter.
8/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

 Khối “Gain3” có giá trị bằng  0; 0; 1; 0 để lựa chọn tín hiệu đặt là vị trí x2 .
(Nếu tín hiệu đặt là là vị trí x1 thì “Gain3” có giá trị bằng 1; 0; 0; 0 ).
 Hệ số hồi tiếp K f   K f 1
thái x   x1


x1

x2

Kf2

Kf3

K f 4  tương ứng cho 4 tín hiệu trạng

T

x2  .

Hình 8. Sơ đồ điều khiển hồi tiếp biến trạng thái
a) Tạo file mô hình simulink như ở Hình 8.
b) K f   0 0 0.1 0 . Cài đặt giá trị đặt cho xe 2 là 30mm.
c) Chạy mô phỏng.
d) Mở scope để xem đáp ứng, xác định độ vọt lố, thời gian quá độ và sai số xác
lập của vị trí xe 2.
e) Lặp lại bước b) đến d) với các giá trị K f còn còn lại như trong Bảng 2. Nhận
xét kết quả mô phỏng khi tăng hệ số hồi tiếp K f .
Bảng 2. Bảng giá trị K f
Kf

Lần chạy
1

0


Độ vọt lố

Sai số xác lập

T/g xác lập

0 0.1 0
9/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

2
3

0

0 1 0

0

0 10 0

4

0

0 10 0.1


5

0

0 10 0.3

6

0

0 10 0.5

V. THỰC HIỆN THÍ NGHIỆM
5.1. Tìm thông số của hệ xe –lò xo
Trong phần này, sinh viên sẽ thu thập tín hiệu đầu vào và đầu ra của hệ thống và
áp dụng công thức ở Mục 2.2 để tìm các thông số chưa biết của hệ xe – lò xo: độ cứng
k1, k2 của lò xo; hệ số ma sát b1, b2 của xe; và hệ số tỉ lệ K .
5.1.1. Tìm k1 , b1
Các bước thí nghiệm:
a) Mở file recti_ident.m và chạy để khởi tạo các thông số thời gian lấy mẫu T và
thời gian mô phỏng Tstop. Sinh viên không cần cài đặt lại phần thiết lập trong
Simulink-Configuration.
Lưu ý: Khi chạy file này lần đầu tiên chương trình sẽ báo lỗi nhưng vẫn khởi
tạo được giá trị bình thường.
b) Biên dịch và chạy file recti_response.mdl để thu thập số liệu (xem hướng dẫn ở
Mục 3.2)
c) Chạy lại file recti_ident.m để tìm thông số k1, b1.
d) Lặp lại bước b) và c) với 5 lần chạy và ghi kết quả vào Bảng 3. Sau đó, tính giá
trị trung bình của thông số k1, b1.
Bảng 3. Giá trị k1 , b1

Lần chạy

k1 (N/m)

b1 (N.s/m)

1
2
3
4
5
Trung bình

10/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

5.1.2. Tìm K , b2
Các bước thí nghiệm:
a) Mở file recti_ident.m và viết đoạn chương trình để tính K, b2 theo (9) - (11) .
Hướng dẫn: Sinh viên tham khảo đoạn chương trình tính k1 , b1 theo (6) - (8)
và dựa vào đó để viết thêm vào phần dưới như sau:
% Tim thong so cua he thong:
% Do cung k cua lo xo: k1_hat
% He so ma sat tren m1: b1_hat
a1 = T*T*(2*x1(2:N-1) - x2(2:N-1));
a2 = T*(x1(2:N-1) - x1(1:N-2));
PHI
= [a1 a2];

lamda = (2*x1(2:N-1) - x1(1:N-2) - x1(3:N))*m1;
theta = inv(PHI'*PHI)*PHI'*lamda;
k1_hat = theta(1)
b1_hat = theta(2)
% Sinh vien tham khao doan code o tren
% de tim thong so cua he thong:
% He so khuech dai U = K.F: K_hat
% He so ma sat tren m2: b2_hat
a1 = ...
a2 = ...
PHI
= ...
lamda = ...
theta = inv(PHI'*PHI)*PHI'*lamda;
K_hat = theta(1)
b2_hat = theta(2)

b) Biên dịch và chạy file recti_response.mdl để thu thập số liệu.
c) Chạy lại file recti_ident.m sau khi đã viết chương trình để tìm thông số K, b2.
e) Lặp lại bước b) và c) với 5 lần chạy và ghi kết quả vào Bảng 4. Sau đó, tính giá
trị trung bình của thông số K, b2.
Bảng 4. Giá trị K , b2
Lần chạy

K

b2 (N.s/m)

1
2

3
4
5
Trung bình
11/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

5.2. Điều khiển vị trí xe 2
Các bước thí nghiệm:
a) Mở file recti_feedback_ctrl2.mdl.
b) K f   0 0 0.1 0 . Cài đặt giá trị đặt cho xe 2 là 30mm.
c) Biên dịch và chạy chương trình (xem hướng dẫn ở Mục 2.3).
d) Mở scope để xem đáp ứng, xác định độ vọt lố, thời gian quá độ và sai số xác
lập của vị trí xe 2.
e) Lặp lại bước b) đến d) với các giá trị K f còn còn lại như trong Bảng 5. Nhận
xét ảnh hưởng của từng hệ số K f 3 và K f 4 lên chất lượng hệ thống.
Bảng 5. Bảng giá trị K f
Kf

Lần chạy
1

0

0 0.1 0

2


0

0 0.5 0

3

0

0 1 0

4

0

0 5 0

5

0

0 10 0

6

0

0 10 0.02

7


0

0 10 0.05

8

0

0 10 0.1

9

0

0 10 0.2

Độ vọt lố

Sai số xác lập

T/g xác lập

5.3. Điều khiển vị trí xe 1
Các bước thí nghiệm:
a) Mở file recti_feedback_ctrl1.mdl.
b) K f   0.2 0 0 0 . Cài đặt giá trị đặt cho xe 1 là 15mm.
c) Biên dịch và chạy chương trình
d) Mở scope để xem đáp ứng, xác định độ vọt lố, thời gian quá độ và sai số xác
lập của vị trí xe 2.
e) Lặp lại bước b) đến d) với các giá trị K f còn còn lại như trong Bảng 6. Nhận

xét ảnh hưởng của từng hệ số K f 1 , K f 2 và K f 4 lên chất lượng hệ thống.

12/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

Bảng 6. Bảng giá trị K f
Kf

Lần chạy
1

0.2

0 0 0

2

0.5

0 0 0

3

1

4

1.5


5

2

Độ vọt lố

Sai số xác lập

T/g xác lập

0 0 0
0 0 0
0 0 0

6

1

0.001 0 0

7

1

0.002 0 0

8

1


0.005 0 0

9

1

0.008 0 0

10

1

0.01 0 0

11

1

0 0 0.01

12

1

0 0 0.02

13

1


0 0 0.05

14

1

0 0 0.1

15

1

0 0 0.2

13/14


Bộ môn Điều khiển Tự động – Khoa Điện-Điện tử - ĐH Bách Khoa TPHCM

Báo cáo thí nghiệm
Họ và tên:

Nhóm:

Ngày:

1. Từ bảng số liệu ở Bảng 3 và Bảng 4, viết phương trình biến trạng thái hệ xe – lò
xo theo (3)?
...............................................................................................................................................

...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
2. Dựa vào kết quả thí nghiệm ở Mục 5.2, nhận xét ảnh hưởng của từng hệ số K f 3 ,
K f 4 lên chất lượng hệ thống?

...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
3. Dựa vào kết quả thí nghiệm ở Mục 5.3, nhận xét ảnh hưởng của từng hệ số K f 1 ,
K f 2 và K f 4 lên chất lượng hệ thống?

...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................
...............................................................................................................................................

14/14




×