PHAÀN III KẾT QUẢ THI CÔNG
I. PHÂN TÍCH SAI SỐ XÁC LẬP
Để có cơ sở so sánh kết quả giữa chạy mô phỏng bằng Simulink và phần thiết kế hệ thống điều khiển vị trí động cơ DC, ta phân tích sai số xác lập từ hàm truyền của hệ điều khiển vị trí động cơ DC.
Hàm truyền đạt của hệ kín là :
) s ( H ) s ( G 1
) s ( G ) s ( X
) s ( ) Y s ( GK
= +
= (1)
Hàm truyền của sai số là:
) s ( H ) s ( G 1
1 )
s ( X
) s ( H ) s ( 1 Y ) s ( X
) s ( ) E s ( GSS
= +
−
=
= (2)
Đối với hệ thống điều khiển vị trí động cơ DC có hàm G(s) cho bởi :
(1 Ts)s ) K
s (
G ủc
= + (3)
và khâu hồi tiếp: H(s) = hằng số = Kht (4) Từ (2), (3) và (4) ta có:
s ) Ts 1 ( 1 K
1 s
) Ts 1 (
K 1 K ) 1 s ( G
ủc SS ủc
+ +
= + +
= (5)
Sai soá :
s ) Ts 1 ( 1 K
) s ( ) X
s ( )X S ( H ) S ( G 1 ) 1 s ( X ) s ( G ) s (
E SS
+ + + =
=
= (6)
Giá trị của sai số xác lập:
G(s)
X(s) E(s) Y(s)
H(s)
s ) Ts 1 ( 1 K
) s ( lim sX
) s ( sE lim ) t ( e lim
ess t s 0 s 0
+ +
=
=
= →∞ → → (7)
Khi ngõ vào của hệ là hàm nấc: x(t) = u(t), tức là: X(s) = s
1 (8)
Vậy: 0
s ) Ts 1 ( 1 k lim 1
ess s 0 =
+ +
= → (9)
Khi ngõ vào của hệ là hàm Ramp: x(t) = α(t)=t, tức là: X(s) = 2 s
1 (10)
Vậy:
K 1 s ) Ts 1 ( 1 K
s 1 lim
ess s 0 =
+ +
= → =haèng soá (11)
Khi ngõ vào của hệ là hàm Parabol: x(t) = 2
t2 , tức là: X(s) = 3 s
1 (12)
Vậy: =∞
+ +
= →
s ) Ts 1 ( 1 K
s 1 lim
ess s 0 2 (13)
t y(t)
ess=const
Hình 2: Đáp ứng hàm Ramp của hệ y(t)
x(t) y(t)
t ess=0
Hình1: Đáp ứng hàm nấc của hệ x(t)
y(t)
Xét ảnh hưởng của khâu hiệu chỉnh đến sai số xác lập:
Hình trên là sơ đồ khối của hệ thống khi có thêm khâu hiệu chỉnh Gc(s). Nếu khâu hiệu chỉnh là PIDm thì : Gc(s) =
s s K s K s K
s K
KP KI D I+ P + D 2
= +
+ (14)
Theo(2): Gss(s)=
) s ( H ) s ( G ) s ( G 1
1 )
s ( X
) s ( ) E s ( G
c
SS = = + (15)
Vậy: E(s)=
( ) s
s K s K K s Ts 1 1 K
) s ( X )
s ( G ) s ( G 1
) s ( X
D 2 P
c I+ +
+ +
+ = (16)
Khi ngõ vào X(s)=
s
1 (x(t)=u(t): hàm nấc) thì : ess=
( ) s
s K s K K s Ts 1 1 K
lim 1 2
D P I 0
s + +
+ +
→ = 0
Khi ngõ vào X(s)= 2 s
1 (x(t)=α(t)=t: hàm dốc) thì:
t y(t)
ess
Hình 3: Đáp ứng hàm Parapol của hệ y(t) x(t)
G(s)
X(s) E(s) Y(s)
H(s) Gc(s)
ess=
( ) s
s K s K K s Ts 1 1 K
s 1
lim 2
D P I 0
s + +
+ +
→ =0
Khi ngõ vào X(s)= 3 s
1 (x(t)=α(t)=
2
t2 : hàm parabol) thì:
ess=
( ) s
s K s K K s Ts 1 1 K
s 1
lim 2
D P I 2 0
s + +
+ +
→ =haèngsoá
II . DÙNG SIMULINK CỦA MATLAB CHẠY MÔ PHỎNG HỆ THOÁNG ẹIEÀU KHIEÅN Về TRÍ:
Matlab là một ngôn ngữ cực kỳ mạch trong tính toán và chạy mô phỏng về đồ họa, ở đây ta chỉ ứng dụng Simulink để chạy mô phỏng hệ thống điều khiển vị trí, từ đó ta có cơ sở để so sánh sự khác nhau giữa lý thuyết và thiết kế. Simulink là một công cụ (Tool) trực quan của phần mềm Matlab dùng để mô phỏng hệ thống điều khiển tự động.
Simulink gồm những khối trong cửa sổ đồ họa được định nghĩa bằng những ngõ vào/ra và quan hệ của chúng trong miền thời gian tương ứng với các phần tử cơ bản trong hệ thống tự động. Người dùng có thể kéo thả (drag and drop) các khối này giữa các cửa sổ, dùng chuột nối các ngõ vào ra để tạo mô hình của hệ thống cần khảo sát. Như vậy Simulink mô tả hệ thống dưới dạng sơ đồ khối, cho phép ta xem đáp ứng của hệ thống theo thời gian.
1. Trường hợp đầu vào của hệ thống là hàm nấc:
a. Hiệu chỉnh PID, bộ tích phân I có sử dụng khâu bảo hoà(antiwindup):
Sơ đồ khối của hệ thống trên Simulink như sau:
Trong sơ đồ khối trên:
- Vị trí đặt là hàm nấc, có giá trị đỉnh là 5 rad,thời gian 4s, sơ đồ khối vị trí đặt:
Khoái PID :
NS 1 1
S K S
Kp Ki D
+ +
+ , Sơ đồ khối khâu PID cho bởi:
Trong khối PID trên thì khâu tích phân I có sơ đồ khối như sau:
Khi ta cho hệ thống chạy, đáp ứng quá độ của vị trí đặt hàm nấc cho bởi:
Ghi chú: Trong các hình sau đường màu đỏ là θđặt , đường màu xanh là θ, đường màu tím là U và đường màu lục là ω.
KI=50, Kp=10.2, KD=0.00408 KI=300, Kp=10.2, KD=0.00408
Nhận xét: Khi ta tăng KI thì độ vọt lố của đáp ứng vị trí giảm, hệ dao động tắc dần, thời gian xác lập giảm. Nếu tăng KI quá lớn thì đáp ứng không ổn định.
KD thay đổi hầu như không ảnh hưởng tới đáp ứng. KP giảm đáp ứng dao động tắc dần chậm, KP tăng thời gian xác lập giảm và đáp ứng không dao động.
KI=50, Kp=50, KD=0.00408 KI=50, Kp=5, KD=0.00408 KI=300, Kp=50, KD=10 KI=300, Kp=50, KD=0
b. Hiệu chỉnh PID, bộ tích phân I không sử dụng khâu bảo hoà(không sử duùng antiwindup):
Sơ đồ khối hệ và sơ đồ khối PID tương tự như trên. Sơ đồ khối khâu I trong trường hợp này cho bởi:
Nhận xét: Khi không dùng antiwindup cho khâu tích phân I, chất lượng của hệ thống không đạt yêu cầu so với khi dùng antiwindup, thời gian đáp ứng và xác lập cao, độ vọt lố lớn. Tuy nhiên khi giảm KI đi nhiều thì chất lượng đáp ứng được cải thiện. Tăng KP thì tăng thời gian đáp ứng, giảm vọt lố, nhưng thời gian xác lập tăng lên đáng kể.
Sơ đồ khối khâu tích phân khi không dùng khâu bảo hòa
Đáp ứng theo thời gian của θ, ω, U KI=50, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=5, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=5, Kp=50, KD=0.00408
c. Khi hệ thống sử dụng khâu chết:
Do ma sát, tải nên điện áp để khởi động động cơ lớn hơn điện áp cung cấp cho động cơ khi động cơ đã quay. Ví dụ như ta cấp điện áp cho động cơ khi động cơ đang dừng là > 4.5V động cơ mới quay, trong động cơ đang quay để động cơ dừng ta phải giảm áp xuống 0V. Vì vậy ta phải dùng thêm khâu chết trước khâu bảo hòa, sơ đồ khối của hệ:
Đáp ứng teo thời gian:
Ghi chú: Trong các hình sau đường màu đỏ là θđặt , đường màu xanh là θ, đường màu tím là U và đường màu lục là ω.
Nhận xét: hệ thống không đảo chiều quay ngay lập tức khi sai số vị trí âm. Động cơ dừng một khoảng thời gian sau đó mới đảo chiều quay. Chất lượng đáp ứng giảm Thời gian lên và độ vọt lố không đổi, nhưng thời gian xác lập tăng.
2. Trường hợp đầu vào của hệ thống là hàm dốc:
a. Hiệu chỉnh PID, bộ tích phân I có sử dụng khâu bảo hoà(antiwindup):
Sơ đồ khối của hệ thống trên Simulink như sau:
Đáp ứng theo thời gian của θ, ω, U KI=50, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=200, Kp=10.2, KD=0.00408
Trong sơ đồ khối trên: Vị trí đặt là hàm xung tam giác có biên độ đỉnh là ±1 rad, thời gian một chu kỳ là 8 giây. Cấu trúc của khâu PID, hàm truyền động cơ và các khâu khác là tương tự như phần trên (mục 1.a, I phần II).
Xét ảnh hưởng của thông số PID đến đáp ứng của hệ:
Ghi chú: Trong các hình sau đường màu đỏ là θđặt , đường màu xanh là θ, đường màu tím là U và đường màu lục là ω.
Đáp ứng theo thời gian của θ, ω, U KI=50, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=300, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=10, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=100, Kp=10.2, KD=10
Khi tăng KI sự tăng giảm của vận tốc tăng, hệ thống đáp ứng nhanh hơn, Khi giảm KI vận tốc thay đổi chậm, nếu KI nhỏ thì sẽ có sai số xác lập.
KD hầu như không ảnh hưởng tới đáp ứng củ hệ.
KP tăng tốc độ ổn định và thay đổi ích, đáp ứng của hệ thống tốt nếu chọn một giá trị thích hợp của KP . Khi KP giảm tốc độ dao động nhiều, đáp ứng của hệ sẽ không ổn định nếu giảm KP nhiều.
b. Hiệu chỉnh PID, bộ tích phân I không sử dụng khâu bảo hoà(không sử dụng antiwindup): Sơ đồ khối của khâu tích phân tương tự như trên (mục 1.b, I phaàn II).
Đáp ứng theo thời gian của θ, ω, U KI=100, Kp=5, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=100, Kp=30, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=50, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=100, Kp=25, KD=0.00408
Nhận xét: Trong trường hợp vị trí đặt là hàm dốc thì hiện tương windup không tác động đến hệ. Có hay không có khâu bảo hòa ở bộ tích phân đáp ứng của heọ vaón nhử nhau.
c. Khi hệ thống sử dụng khâu chết :
Sơ đồ khối của khâu tích phân tương tự như trên (mục 1.c, I phần II).
Đáp ứng theo thời gian của hệ:
Khi đổi chiều quay, động cơ dừng lại một khoảng thời gian khi điện áp tăng đủ lớn động cơ mới quay theo chiều ngược lại. Đáp ứng của hệ chậm hơn.
3 .Trường hợp đầu vào của hệ thống là hàm parabol:
-Hiệu chỉnh PID, bộ tích phân I có sử dụng khâu bảo hoà(antiwindup):
Sơ đồ khối Simulink của hệ như sau:
Đáp ứng theo thời gian của θ, ω, U KI=100, Kp=10.2, KD=0.00408
Đáp ứng theo thời gian của θ, ω, U KI=100, Kp=20, KD=0.00408
Cấu trúc của khâu PID, hàm truyền động cơ và các khâu khác là tương tự như phần trên (mục 1.a, I phần II). Xét ảnh hưởng của thông số PID đến đáp ứng của hàm parabol có hệ số là 0.05. Ghi chú: Trong các hình sau đường màu đỏ là θđặt , đường màu xanh là θ, đường màu tím là e_0, đường màu vàng là U và đường màu lục làω.
Sơ đồ khối Simulink cho vị trí đặt là hàm parabol
Đáp ứng theo thời gian của θ, ω, U,e_0 Đáp ứng theo thời gian của θ, ω, U,e_0
Khi giảm và tăng hệ số của hàm parabol thì đặt tuyến của hệ mô phỏng cho bởi:
- Khi bộ PID khônh sử dụng antiwindup và khi xét đến có khâu chết : Đáp ứng theo thời gian của θ, ω, U,e_0
KI=200, Kp=10.2, KD=0.00408, heọ soỏ của hàm parabol 0.01
Đáp ứng theo thời gian của θ, ω, U,e_0 KI=200, Kp=10.2, KD=0.00408, heọ soỏ
của hàm parabol 0.1
Đáp ứng theo thời gian của θ, ω, U,e_0 KI=200, Kp=10.2, KD=0.00408, heọ soỏ của hàm parabol 0.05, không sử dụng antiwindup cho khâu vi phân của bộ PID
Đáp ứng theo thời gian của θ, ω, U,e_0 KI=200, Kp=10.2, KD=0.00408, heọ soỏ
của hàm parabol 0.05, có sử dụng antiwindup và xét ảnh hưởng của đáp
ứng khi có khâu chết.
Nhận xét: Sai số xác lập của vị trí đặt hàm parabol là hằng số. Nếu độ tăng của vị trí đặt lớn, tốc độ động cơ quay tối đa mà vẫn không đáp ứng kịp, thì sai số vị trí tăng theo thời gian. Tăng KI sai số xác lập giảm, thời gian xác lập tăng, hệ số của hàm parabol lớn thì sai số xác lập lớn. Hiện tượng windup không ảnh hưởng đến hàm đặt parabol, khi kể đến khâu chết thì sai số xác lập lớn, đáp ứng vị trí chậm, khoảng sai số vị trí là hằng số giảm đi đáng kể.
4 . Nhận xét chung :
Khi vị trí đặt là hàm nấc và hàm dốc, nếu ta chọn các thông số PID thích hợp thì chất lượng đáp ứng của hệ thống cao về thời gian lên, độ vọt lố, thời gian xác lập, sai số xác lập bằng không. Khi vị trí đặt là hàm parabol sai số xác lập là hằng số, hệ số hàm parabol nhỏ thì sai số giảm đi nhiều, có thể tăng KI để giảm sai số xác lập. Trong trường hợp hàm đặt là hàm nấc nếu không sử dụng antiwindup thì chất lượng của hệ không tốt và có thể làm cho hệ không ổn định. Windup không tác động đến đáp ứng của vị trí đặt là hàm dốc và parabol. Khi kể đến khâu chết hệ đáp ứng chậm, chất lượng của hệ thống suy giảm đáng kể. Aûnh hưởng của các thông số PID đến đáp ứng quá độ của hệ như sau: KD hầu như không ảnh hưởng đến hệ điều điều khiển vị trí động cơ DC. KI tác động rất lớn đến hệ, khi ta thay đổi KI chất lượng của hệ thay đổi rõ rệt. KP cũng anh hưởng đến hệ, nếu chọn KP một giá trị thích hợp sẽ cải thiện chất lượng đáp ứng quá độ của hệ theo thời gian. Hàm đặt parabol, khi độ tăng của vị trí đặt lớn động cơ quay với tốc độ tối đa vẫn không đáp ứng kịp thì sai số vị trí tăng dần theo thời gian đến vô cùng, điều khiển vị trí không còn ý nghĩa.
III . CHệễNG TRèNH ẹIEÀU KHIEÅN HEÄ THOÁNG ẹIEÀU KHIEÅN Về TRÍ ĐỘNG CƠ DC:
1 .Vị trí đặt là nhiều vị trí hàm nấc:
Màn hình giao diện chính của chương trình điều khiển được thiết kế như sau:
Trong màn hình giao diện trên thì :
- Trạng thái động cơ : Khi động cơ quay thể hiện trạng thái hiện tại của động cơ, có thể là ‘ Quay thuận ‘, ‘ Quay nghịch’, hoặc ‘Dừng ‘.
- Vị trí hiện tại :(độ) : Cho biết vị trí hiện tại của vị trí đặt đang điều khiển tương ứng.
- Tổng vị trí đã quay:(độ) : Cho biết tổng vị trí đã quay kể từ vị trí không.
- Vận tốc góc:(rad/s) : Cho biết vận tốc hiện tại của động cơ.
- Áp điều khiển: (Volts) : Cho biết giá trị hiện tại của Uđk. - Đang điều khiển ở vị trí: Cho biết vị trí đặt đang điều khiển.
- Sai số vị trí tương ứng:(độ) : Cho biết sai số vị trí hiện tại của vị trí đặt đang điều khiển tương ứng.
- Vị trí của Encoder:(độ) : Mã hóa số xung đọc về từ Encoder theo độ, cho biết vị trí hiện tại của trục Encoder.
Để điều khiển vị trí, ta phải vào menu ‘Nhập thông số‘ chọn hàm đặt (Ramp hoặc Step) , nhập số vị trớ đặt, tọa độ của từng vị trớ đặt tớnh từ gúc tọa độọ, thời gian dừng ở các vị trí, các thông số PID (chọn bộ hiệu chỉnh:PI, PID; Kp, Ki, Kd). Sau khi nhập, vào menu ‘Điều khiển‘ cho hệ thống chạy và bắt đầu điều khiển, trong quá trình điều khiển ta có thể ‘dừng’ hệ thống. Sau khi điều khiển xong ta vào menu ‘Xem sai số và đáp ứng‘ để xem sai số của từng vị trí đặt, đáp ứng vị trí, tốc độ, áp điều khiển, sai số vị trí, vị trí mã hóa Encoder trên các đồ thị. Ta cũng có thể lưu các đáp ứng thành file Bitmap hoặc mở đáp ứng đã lưu.
2 . Vị trí đặt là hàm dốc:
Ta vào menu ‘Nhập thông số’, chọn vị trí đặt là hàm Ramp nhập các thông số PID. Vì hàm Ramp điều khiển có dạng xung tam giác nên ta phải nhập tọa độ đỉnh trên, dưới của xung tam giác kể từ góc tọa độ. Bên cạnh đó ta cần phải nhập hệ số góc, số chu kỳ cần điều khiển và điểm bắt đầu chu kỳ. Nếu điểm bắt đầu chu kỳ là đỉnh trên thì từ góc tọa độ động cơ quay đến tọa độ đỉnh trên để bắt đều chu kỳ, khi kết thúc số chu kỳ cần điều khiển thì từ tọa độ đỉnh trên động cơ quay về góc tọa độ ban đầu. Tương tự nếu đỉnh bắt đầu chu kỳ là đỉnh dưới thì kết thúc số chu kỳ là đỉnh trên, và từ đỉnh trên động cơ quay về góc tọa độ ban đầu kết thúc ủieàu khieồn.
Ở màn hình giao diện chính thông số ‘Đang điều khiển ở vị trí’ của vị trí đặt hàm Step thay thành ‘Đang điều khiển ở chu kỳ’ cho biết số chu kỳ mà hệ thống ủang ủieàu khieồn.
3 . Vị trí đặt là hàm Parapol:
Tương tự như vị trí đặt là hàm dốc, chỉ khác là trong menu ‘Nhập thông số’
chọn vị trí đặt là hàm Parabol.
4 . Giao diện của menu ‘Nhập thông số’:
‘Chọn hàm đặt’ ‘Thông số PID’
Chọn hàm đặt ở trên là hàm Step, giao diện của ‘Nhập vị trí đặt’
‘Nhập tọa độ các vị trí ’
5 . Kết quả thi công: Để thấy ảnh hưởng của bộ hiệu chỉnh đến chất lượng đáp ứng của hệ thống thiết kế ta phân tích kết quả thi công
a.Vị trí đặt là hàm nấc:
Chọn hàm đặt là hàm Step, số vị trí đặt là 10 vị trí, thông số PID, tọa độ các vị trí đặt, các đáp ứng, sai số và thông số giám sát được mô tả ở các hình sau:
Chọn hàm đặt ở trên là hàm Ramp hay Parabol, giao diện của ‘Nhập vị trí đặt’
Thông số PID Tọa độ các vị trí đặt và thời gian dừng ở các vị trí tương ứng
Do 10 vị trí đặt có tọa độ khá trên lệnh nhau, nên để thấy rõ đáp ứng từng vị trí đặt ta cần phải Zoom lớn đáp ứng vị trí.
Ghi chú: đường nét thẳng là vị trí đặt, nét nghiên(cong) là vị trí hiện tại.
Sai số ở các vị trí đặt khác nhau Đáp ứng vị trí của 10 vị trí đặt trên
Đáp ứng vị trí đặt thứ 1:00->100000 Đáp ứng vị trí đặt thứ 3:5000->3600
Nhận xét: Ta thấy chất lượng đáp ứng vị trí của hàm nấc khá tốt thời gian lên ngắn, vọt lố nhỏ, thời gian xác lập nhỏ (7,98s cho vị trí đặt là 10000), tuy nhiên hệ thống vẩn còn tồn tại sai số xác lập(<20).
Vị trí đặt là hàm nấc 4 vị trí 00->900 , 900->00, 00-> -450 , -450->00 KI=6400, Kp=10.2,KD=0;
Sai số và các đáp ứng như sau:
Đáp ứng của các vị trí đặt 6,7,8,9,10 Đáp ứng của các vị trí đặt10:-200->00
Sai số tương ứng ở các vị trí đặt Đáp ứng vị trí
So sánh với mô phỏng Simulink ta thấy cả hai điều không chiệu tác động bởi KD, khi ta thay đổi KD chất lượng đáp ứng của hệ thống thay đổi ích, ảnh hưởng của KI đến hệ khá rõ, giá trị KI để hệ thống tối ưu ở thiết kế lớn hơn nhiều so với ở mô phỏng.
b. Vị trí đặt là hàm dốc:
Chọn hàm đặt là hàm Ramp, nhập các thông số PID và vị trí đặt như sau:
Đáp ứng vận tốc Đáp ứng điện áp Uđk (nét xiên) và chieàu quay(neùt thaúng, quay thuận:+5V, quay nghịch:-5V)
Nhập thông số vị trí đặt hàm dốc Nhập thông số PID
Các đáp ứng của hệ:
Đáp ứng vị trí trên được Zoom lớn lên
Đáp ứng vị trí hàm xung tam giác: đỉnh trên 7200, đỉnh dưới 00, số chu kỳ 2, hệ số góc 1(450), đỉnh dưới bắt đầu chu kỳ
Đáp ứng vị trí hàm dốc trên được zoom lớn theo chiều quay thuận
Đáp ứng vị trí hàm dốc trên được zoom lớn theo chiều quay nghịch
Đáp ứng sai số vị trí hàm xung tam giác: đỉnh trên 7200, đỉnh dưới 00, số chu kỳ 2, hệ số góc 1(450), đỉnh dưới bắt đầu chu kỳ
Khi tăng hệ số góc hàm dốc:
Đáp ứng điện áp điều khiển hàm xung tam giác: đỉnh trên 7200, đỉnh dưới 00, số chu kỳ 2, hệ số góc 1(450), đỉnh dưới bắt đầu chu kỳ, Uđk :đường dao động,
chiều quay(5V quay thuận, 0V quay nghịch): Đường vuông
Đáp ứng vị trí hàm xung tam giác: đỉnh trên 7200, đỉnh dưới 00, số chu kỳ