1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thiết kế bộ điều khiển cho hệ thống điều khiển góc quay động cơ điện một chiều

17 744 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 84,92 KB

Nội dung

ta cải thiện vấn đề này bằng cách đưa thêm khâu tích phân vào bộ điều khiển... do tính tuyến tính của hệ thống nên ta chọn ki=20.Tuy vậy ta thấy khi đưa khâu tích phân vào đã cải... thiệ

Trang 1

Thiết kế bộ điều khiển cho hệ thống điều khiển góc quay

động cơ điện một chiều _*00* _

Cho động cơ có mô hình vật lý như sau:

 Momen quán tính của roto j=3.2284e-6 kg.m^2/s^2

 Hệ số suy giảm ma sát b=3.5077e-6 Nms

 Hệ số lự điên từ và momen k=ke=kt=0.0274 Nm/Amp

 Điện trở phần ứng r=4𝜴

 Điện kháng phần ứng l=2.75e-6H

 Tín hiệu vào (V): Source Voltage

 Tín hiệu ra (theta): position of shaft

 Giả thiết trục động cơ nối cứng với tải

Hàm truyền đạt:

ϴ

k

(l∗j) s3 + (l∗b+r∗ j) s2

+(b∗r +k2)s

Yêu cầu thiết kế bộ điều khiển:

 Sai số ở tạng thái xác lập Ess=0

 Thời gian tăng Tr≤1s

 Thời gian trễ Ts≤2.2s

 Độ quá điều chỉnh 𝜹≤16%

Sơ đồ cấu trúc hệ thống

Trang 2

Tiến hành xây dựng bộ điều khiển

1 Khai báo mô hình:

>> j=3.2284e-6;

>> b=3.5077e-6;

>> k=0.0274;

>> r=4;

>> l=2.75e-6;

>> num=k;

>> den=[(j*l) ((j*r)+(l*b)) ((b*r)+(k*k)) 0];

2 Đưa bộ điều khiển là khâu tỷ lệ thử phản ứng của hệ thống

Ta sử dụng bộ điều khiển là một khâu tỷ lệ có hệ số khuyếch đại 1.7, sử dụng các ệnh sau

để ta khảo

>> kp=1.7;

>> numcf=[kp];

>> dencf=[1];

>> numf=conv(numcf,num);

>> denf=conv(dencf,den);

>> denf=conv(dencf,den);

>> [numc,denc]=cloop(numf,denf);

>> t=0:0.001:0.2;

>> step(numc,denc,t);

Kết quả thu được:

Response to step input kp=1.7

Trang 3

Step Response

Time (sec)

0

0.2

0.4

0.6

0.8

1

1.2

1.4

System: sys Time (sec): 0.0874 Amplitude: 1.05

System: sys Time (sec): 0.0602 Amplitude: 1.17

System: sys Time (sec): 0.00814 Amplitude: 0.1

System: sys

Time (sec): 0.0352

Amplitude: 0.902

Ta kiểm tra phản ứng của hệ thống với kp=1.5

Trang 4

Step Response

Time (sec)

0

0.2

0.4

0.6

0.8

1

1.2

1.4

tra hệ thống với kp=2

Trang 5

Step Response

Time (sec)

0

0.2

0.4

0.6

0.8

1

1.2

1.4

System: sys Time (sec): 0.0075 Amplitude: 0.102

System: sys Time (sec): 0.0313 Amplitude: 0.9

System: sys Time (sec): 0.0809 Amplitude: 1.05 System: sys

Time (sec): 0.0536

Amplitude: 1.2

Từ 3 trường hợp trên ta thấy lấy kp=1.7 là hợp lý nhất do tính tuyến tính của hệ thống

Ta có : Tr=1 s

Ts=2.2 s

Độ quá điều chỉnh bằng 19%

Bây giờ ta khảo sát phản ứng của hệ thống với nhiễu nhờ đoạn lệnh sau:

>> numdcl=conv(numc,1);

>> dendcl=conv(denc,kp);

>> step(numdcl,dendcl,t);

Với kp=1.7

Trang 6

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Time (sec)

Tuy nhiên ta thấy thời gian quá độ độ qua điều chỉnh cũng như sai số ở trạng thái xác lập khi bị nhiễu tác động là tương đối lớn ta cải thiện vấn đề này bằng cách đưa thêm khâu tích phân vào bộ điều khiển

3 Sử dụng bộ điều khiển PI:

Khảo sát hệ bằng đoạn lệnh sau:

>> j=3.2284e-6;

>> b=3.5077e-6;

>> k=0.0274;

>> r=4;

>> l=2.75e-6;

>> num=k;

>> den=[(j*l) ((j*r)+(l*b)) ((b*r)+(k*k)) 0];

Trang 7

>> kp=1.7;

>> ki=20;

>> numcf=[kp ki];

>> dencf=[1 0];

>> numf=conv(numcf,num);

>> denf=conv(dencf,den);

>> [numc,denc]=cloop(numf,denf,-1);

>> t=0:0.001:0.4;

>> step(numc,denc,t);

Ta thu được:

Response to Step Input kp=1.7 ki=20

0

0.5

1

Time (sec)

Phản ứng của hệ thống với nhiễu:

Trang 8

>> numdcl=conv(numc,dencf);

>> dendcl=conv(denc,numcf);

>> step(numdcl,dendcl,t);

>> grid on

Ta thu được:

Response to Step Disturbance kp=1.7 ki=20

0

0.1

0.2

0.3

0.4

0.5

0.6

Time (sec)

Ta kiểm tra với ki=21

Trang 9

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4

0

0.1

0.2

0.3

0.4

0.5

0.6

Time (sec)

Ta thử với ki=19

0

0.1

0.2

0.3

0.4

0.5

0.6

Time (sec)

Từ 3 trường hợp trên ta thấy phản ứng của hệ thống đối với nhiễu khi ki=20 là nhanh nhất do tính tuyến tính của hệ thống nên ta chọn ki=20.Tuy vậy ta thấy khi đưa khâu tích phân vào đã cải

Trang 10

thiện được sai số ở trạng thái xác lập khi hệ thống bị nhiễu nhưng chưa cải thiện được độ quá điều chỉnh và thời gian quá độ

4 Sử dụng bộ điều khiển PID và chỉnh định thông số của nó:

Để giảm thời gian quá độ ta tăng hệ số khuyếch đại kp=17 và chọn ki=200, khảo sát lại ta thấy: Hàm quá độ của hệ thống:

>> kp=17;

>> ki=200;

>> numcf=[kp ki];

>> dencf=[1 0];

>> numf=conv(numcf,num);

>> denf=conv(dencf,den);

>> [numc,denc]=cloop(numf,denf,-1);

>> t=0:0.001:0.4;

>> step(numc,denc,t);

>> grid on

Ta thu được:

Trang 11

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

Time (sec)

Phản ứng của hệ thống với nhiễu khi kp=17 và ki=200:

>> numdcl=conv(numc,dencf);

>> dendcl=conv(denc,numcf);

>> step(numdcl,dendcl,t);

>> grid on

Ta thu được:

Trang 12

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

Time (sec)

Ta thấy đáp ứng của hệ thống nhanh hơn nhưng hệ thống dao động mạnh hơn do Ki lớn ta sử dụng bộ PID với các tham số sau:

>> kp=17;

>> ki=200;

>> kd=0.15;

>> numcf=[kd kp ki];

>> dencf=[1 0];

>> numf=conv(numcf,num);

>> denf=conv(dencf,den);

>> [numc,denc]=cloop(numf,denf,-1);

>> t=0:0.001:0.1;

>> step(numc,denc,t)

Kết quả khảo sát ta được:

Trang 13

Step Response

Time (sec)

0

0.2

0.4

0.6

0.8

1

1.2

1.4

System: sys Time (sec): 0.000388 Amplitude: 0.1

System: sys Time (sec): 0.0129 Amplitude: 1.09

System: sys Time (sec): 0.00577 Amplitude: 0.9

>> numdcl=conv(numc,dencf);

>> dendcl=conv(denc,numcf);

>> step(numdcl,dendcl,t)

Ta được phản ứng của hệ thống với nhiễu:

Response to Step Disturbance kp=17 ki=200 kd=0.15

Trang 14

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1

0

0.01

0.02

0.03

0.04

0.05

Time (sec)

Kết quả đáp ứng của hệ thống đã tôt hơn rất nhiều nhưng phản ứng của hệ thống đối với nhiễu còn chậm, do đó ta tăng ki=600 và khảo sát lại

>> ki=600;

>> numcf=[kd kp ki];

>> dencf=[1 0];

>> numf=conv(numcf,num);

>> denf=conv(dencf,den);

>> [numc,denc]=cloop(numf,denf,-1);

>> t=0:0.001:0.1;

>> step(numc,denc,t)

Trang 15

Step Response

Time (sec)

0

0.2

0.4

0.6

0.8

1

1.2

1.4

System: sys Time (sec): 0.000387 Amplitude: 0.1

System: sys Time (sec): 0.00564 Amplitude: 0.9

System: sys Time (sec): 0.0155 Amplitude: 1.13

System: sys Time (sec): 0.0306 Amplitude: 1.05

Ta kiểm tra phản ứng của hệ thống với nhiễu:

>> numdcl=conv(numc,dencf);

>> dendcl=conv(denc,numcf);

>> step(numdcl,dendcl,t)

Ta thu được phản ứng của hệ thống với nhiễu:

Trang 16

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 -0.01

0

0.01

0.02

0.03

0.04

Time (sec)

Ta kiểm tra với ki=700

Phản ứng của hệ thống với nhiễu:

-0.005

0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

Time (sec)

Trang 17

Do tính tuyến tính của hệ thống ta chọn ki=600

Từ các đường đặc tính trên ta thấy:

Sai số tại trạng thái xác lập: Es=0

Thời gian tăng Tr=0.005253s < 1s

Thời gian quá độ Ts=0.0306s < 2.2s

Độ quá điều chỉnh δ=13% <16%

Vậy hệt thống đạt yêu cầu

Vậy bộ điều khiển PID thu được là

Kp=17 Ki=600 Kd=0.15

Ngày đăng: 24/04/2014, 19:48

HÌNH ẢNH LIÊN QUAN

Sơ đồ cấu trúc hệ thống - Thiết kế bộ điều khiển cho hệ thống điều khiển góc quay động cơ điện một chiều
Sơ đồ c ấu trúc hệ thống (Trang 1)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w