Tải bản đầy đủ (.docx) (19 trang)

báo cáo chuyên đề matlap,simulink cho bộ điều khiển PID

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 (563.97 KB, 19 trang )

Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA ĐIỀU KHIỂN & TỰ ĐỘNG HÓA

BÁO CÁO CHUYÊN ĐỀ
NGÀNH: Cơng nghệ kỹ thuật điều khiển và tự động hố
CHUN NGÀNH: Tự động hóa và điều khiển thiết bị điện công nghiệp.
HỌC PHẦN: Ứng dụng matlab-simulink trong điều khiển

Giảng viên hướng dẫn:
Nhóm sinh viên/Sinh viên thực hiện:
Mã sinh viên: 19810430117
Lớp: D14TDH&DKTBCN1

HÀ NỘI, …../2021
[Type here]


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

MỤC LỤC
Câu 1:Tạo M-file trên Matlab xác định hàm truyền đạt và phương trình trạng
thái của động cơ (biến trạng thái được chọn là x1 = θ; x2 = θθ̇ ; x3 = i ), kiểm tra
tính điều khiển được và quan sát được của đối tượng điều khiển...........................1
1.1 Tạo M-File trên Matlab xác định hàm truyền đạt và phương trình trạng
thái của động cơ.......................................................................................................1
1.1.1 Xác định hàm truyền đạt của hệ thống:.......................................................1
1.1.2 Xác định phương trình trạng thái:...............................................................2


1.2 Kiểm tra tính điều khiển được và quan sát được của hệ thống......................4
1.2.1 Kiểm tra tính điều khiển được:....................................................................4
1.2.2 Kiểm tra tính quan sát được.........................................................................5
Câu 2 .Sử dụng các lệnh Matlab vẽ hàm quá độ, kiểm tra tính ổn định của đối
tượng điều khiển trên..................................................................................................7
2.1Vẽ hàm quá độ trên Matlap...............................................................................7
2.2 Xét tinh ổn định của hệ thống bằng quỹ đạo nghiệm số:................................8
Câu 3 Sử dụng Matlab/Simulink thiết kế bộ điều khiển PID cho hệ thống, với chỉ
tiêu thiết kế:...............................................................................................................10
Câu 4 Mô phỏng hệ thống điều khiển vị trí động cơ 1 chiều (với các thơng số đã
được thiết kế) trên Simulink.....................................................................................13
4.1 Sơ đồ hệ thống thiết kế:...................................................................................13
4.2 Ngõ ra của hệ thống:........................................................................................13

[Type here]


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

ĐỀ BÀI BÁO CÁO CHUYÊN ĐỀ

Đề số 8
Cho hệ thống điều khiển vị trí của động cơ 1 chiều như hình sau

Trong đó: G(s) là hàm truyền của đối tượng điều khiển, C(s) – là hàm truyền của bộ
điều khiển. Biết đối tượng điều khiển là động cơ có các tham số như sau:
Thơng số
J : mơ men qn tính
b : hệ số cản

K: hằng số sức điện động
R: điện trở phần ứng
L: điện cảm phần ứng
u: điện áp phần ứng
θ : góc quay của động cơ
xx = 40

[Type here]

Giá trị
3,xx.(Kg.)
3,5077.(N.m.s)
0.0274(V/(rad/s))
5 (ꭥ)
35(mH)
V
rad
Số thứ tự của sinh viên


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Bài 1 (3 điểm) Cho hệ phương trình vi phân mơ tả của động cơ như sau:
=

+u

Biết hàm truyền của động cơ mô tả mối quan hệ giữa vị trí của động cơ với điện
áp đặt vào là:


G(s) = =
Tạo M-file trên Matlab xác định hàm truyền đạt và phương trình trạng thái của
động cơ(biến trạng thái được chọn là x1 = θ; x2 = θθ ; x3 = i ), kiểm tra tính điều
khiển được và quan sát được của đối tượng điều khiển.
2. Sử dụng các lệnh Matlab vẽ hàm quá độ, kiểm tra tính ổn định của đối tượng
điều khiển trên.
3. Sử dụng Matlab/Simulink thiết kế bộ điều khiển PID cho hệ thống, với chỉ
tiêu thiết kế:
- Sai số xác lập : không quá 1%
- Độ quá điều chỉnh <10%
- Thời gian quá độ <1s
4. Mô phỏng hệ thống điều khiển vị trí động cơ 1 chiều (với các thơng số đã
được thiết kế) trên Simulink.

[Type here]


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Câu 1:Tạo M-file trên Matlab xác định hàm truyền đạt và phương trình
trạng thái của động cơ (biến trạng thái được chọn là x1 = θ; x2 = θθ̇ ; x3 =
i ), kiểm tra tính điều khiển được và quan sát được của đối tượng điều
khiển.

1.1 Tạo M-File trên Matlab xác định hàm truyền đạt và phương trình trạng thái
của động cơ.
1.1.1 Xác định hàm truyền đạt của hệ thống:
Hàm truyền của hệ thống là :


G(s) = =

(1)

Với :
K=0.0274(V/(rad/s))
J=3,40.(Kg.)
R=5 (ꭥ)
L=35(mH)
b = 3,5077.(N.m.s)
Thay số vào phương trình (1) ta được hàm truyền :

G(s) = = (2)

Biểu diễn hàm truyền hệ thống trên Matlab :
Ta có các lệnh sau :
%khai báo các thơng số của hệ thống%
J = 3.40E-6;
b = 3.5077E-6;
1
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

K = 0.0274;
R=5;
L = 35E-3;

% biểu diễn hàm truyền trên matlab%
s = tf('s');
P_motor = K/(s*((J*s+b)*(L*s+R)+K^2))

1.1.2 Xác định phương trình trạng thái:

Từ phương trình vi phân
= +u
Ta xác định được các ma trận
Ma trận trạng thái A=
Ma trận tín hiệu vào B =
Ma trận tín hiệu ra C = [1 0 0 ]
Biểu diễn trong Matlab ta dùng những lệnh sau :
A = [0 1 0
2
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

0 -b/J K/J
0 -K/L -R/L]
B = [0;0;1/L]
C =[1 0 0 ]
D =[0]
motor_ss = ss(A,B,C,D)

3
Sinh viên thực hiện:



Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

1.2 Kiểm tra tính điều khiển được và quan sát được của hệ thống.
1.2.1 Kiểm tra tính điều khiển được:
Từ các ma trận:
Ma trận trạng thái A=
Ma trận tín hiệu vào B =
Ma trận tín hiệu ra C = [1 0 0 ]
Ta thành lập được ma trận điều khiển được :M=[B AB]
Suy ra Mc có hạng = 2 , Rank(Mc)=2
Vậy hệ thống điều khiển được.
Biểu diễn trong Matlab ta dùng những lệnh sau:
M=[B A*B]
4
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Rank(Mc)

1.2.2 Kiểm tra tính quan sát được

Từ các ma trận:
Ma trận trạng thái A=
Ma trận tín hiệu vào B =

Ma trận tín hiệu ra C = [1 0 0 ]
Ta thành lập ma trận quan sát được Mq =
Suy ra Mq có hạng bằng 1 , Rank (Mq) =1
Vậy hệ thống quan sát được.

5
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Kiểm tra Rank(Mq) trên Matlab :

6
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Câu 2 .Sử dụng các lệnh Matlab vẽ hàm quá độ, kiểm tra tính ổn định của
đối tượng điều khiển trên.

2.1Vẽ hàm quá độ trên Matlap
Ta dùng lệnh sau:
Step(P_motor);

Nhận xét: Đáp ứng ngõ ra của hệ thống là hàm dốc đơn vị.
Vẽ đáp ứng ngõ ra của hàm truyền hệ kín, ta dùng lệnh:

num = 0.0274;
den = [1.183*E-07 , 1.702*E-05 , 0.0007683 ];

t=0:100;
7
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

step(numc,denc.t);

Ngõ ra đáp ứng của hệ kín
Ngõ ra đáp ứng của hệ thống ổn định.
2.2 Xét tinh ổn định của hệ thống bằng quỹ đạo nghiệm số:
Ta dùng lệnh :
8
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Rlocus(P_motor);

Đồ thị quỹ đạo nghiệm số.

Nhận xét: Các cực của hệ thống trên quỹ đạo nghiệm số đều nằm bên trái trục ảo
Suy ra hệ thống ổn định.


9
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Câu 3 Sử dụng Matlab/Simulink thiết kế bộ điều khiển PID cho hệ thống,
với chỉ tiêu thiết kế:
- Sai số xác lập : không quá 1%
- Độ quá điều chỉnh <10%
- Thời gian quá độ <1s
Thiết lập bộ điều khiển P :
Ta dùng những câu lệnh sau :
Kp = 100;
C = pid(Kp);
sys_cl = feedback(C*P_motor,1);
step(sys_cl)

10
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Quan sát ngõ ra của hệ thống :

Nhận xét: Hệ thống có sự ổn định ngay lúc đầu nhưng sau 1 thời gian thì hệ thống bắt

đầu dao động lớn ,có sai số xác lâp .
Thiết kế bộ điều khiển PI:
Ta dùng những câu lệnh sau:
Kp = 80;
Ki = 2;
C = pid(Kp,Ki);
sys_cl = feedback(C*P_motor,1);
step(sys_cl,[0:0.01:4]);
Biểu diễn trong matlap
11
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Quan sát ngõ ra của hệ thống :

12
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Nhận xét:
Thiết kế bộ điều khiển PID
Ta dùng những câu lệnh sau:
Kp = 1.5;
Ki = 1;

Kd = 0.1;
C = pid(Kp,Ki,Kd);
sys_cl = feedback(C*P_motor,1);
t = 0:0.001:1;
step(sys_cl,t);
Biểu diễn trong matlab:

13
Sinh viên thực hiện:


Ứng dụng matlab-simulink trong điều khiển
Lớp D14TDH&DKTBCN!

Quan sát ngõ ra của hệ thống:

Nhận xét : sau khi tiết kế bộ PID , ta thấy độ quá điều chỉnh < 10%, cụ thể là 7,16%
và thời gian xác lập đã < 1s, đáp ứng với yêu cầu của đề bài.
Câu 4 Mơ phỏng hệ thống điều khiển vị trí động cơ 1 chiều (với các thông số

đã được thiết kế) trên Simulink.
4.1 Sơ đồ hệ thống thiết kế:

4.2 Ngõ ra của hệ thống:

14
Sinh viên thực hiện:


Phụ lục


1



×