Để điều khiển ngõ ra của thiết bị theo mong muốn và ổn định ví dụ nhƣ điều khiển động cơ, nhiệt độ, áp suất, tốc độ hay các biến khác trong các ứng dụng khác nhau chúng ta cần một thuật toán để điều khiển. Thuật toán PID là một trong những thuật toánphổ biến đƣợc giới thiệu để giải quyết các bài toán về điều khiển. Bộ điều khiển PID có thể sử dụng để điều khiển bất kỳ ngõ ra nào miễn sao giá trị của chúng bị tác động thông qua thuật toán PID.
PID đƣợc viết tắt của các từ Propotional (tỉ lệ), Integral (tích phân), Derivative (đạo hàm) và là giải thuật điều khiển đƣợc dùng nhiều nhất trong các ứng dụng điều khiển tự động với yêu cầu chính xác (accurate), nhanh (fast response), ổn định (small overshot).
/(x,y) head
20 Bộ điều khiển PID sẽ giám sát đầu ra của hệ thống, sau đó so sánh với giá trị mong muốn. Nếu hệ thống chƣa đạt đƣợc giá trị mong muốn, nghĩa là sai số e khác không, bộ PID sẽ tính toán ra giá trị tác động u mới (tác động vào hệ thống) để hiệu chỉnh hệ thống. Quá trình này sẽ đƣợc thực hiện liên tục cho đến khi nào e = 0, lúc đó hệ thống sẽ đạt trạng thái ổn định. Hệ thống hoạt động theo nguyên lí này còn đƣợc gọi là hệ thống điều khiển vòng kín (Closed Loop Control) vì có hồi tiếp trạng thái của hệ thống về bộ điều khiển nhƣ hình 2.11.
Hình 2.11:Mô hình bộ điều khiển PID4.
Các thành phần của bộ điều khiển PID
- Thành phần tỉ lệ (Kp) có tác dụng làm tăng tốc độ đáp ứng của hệ và làm giảm (chứ không triệt tiêu) sai số xác lập của hệ (steady – state error).
- Thành phần tích phân (KI) có tác dụng triệt tiêu sai số xác lập nhƣng có thể làm giảm tốc độ đáp ứng của hệ.
- Thành phần vi phân (KD) làm tăng độ ổn định của hệ thống, giảm độ vọt lố và cải thiện tốc độ đáp ứng của hệ thống.
Hệ PID có thể sử dụng ở ba chế độ P, PI, PD tùy vào đặc tính của hệ thống.
- Hiệu chỉnh tỉ lệ P: 𝐊𝐩càng lớn thì sai số xác lập càng nhỏ, vọt lố cao, mặc dù vậy ta không thể tăng 𝐊𝐩đến vô cùng khi 𝐞𝐱𝐥không bằng không, 𝐊𝐩≤ 𝐊𝐠𝐡.
- Hiệu chỉnh tỉ lệ PI: Hiệu chỉnh tỉ lệ PI làm chậm đáp ứng của hệ thống, tăng độ vọt lố, giảm sai số xác lập.
- Hiệu chỉnh tỉ lệ PD: Hiệu chỉnh PD đẩy nhanh đáp ứng của hệ thống, giảm thời gian quá độ nhƣng lại nhạy với nhiễu tần số cao. - Hiệu chỉnh tỉ lệ PID: Cải thiện đáp ứng quá độ (giảm độ vọt lố,
giảm thời gian quá độ), giảm sai số xác lập.
21
Bảng 2.1: Tác động của việc thay đổi một trong các thông số Kp, KI, KD độc lập.
Thông số
Thời gian
khởi động Quá độ Thời gian xác lập
Sai số ổn định
Độ ổn định
Kp Giảm Tăng Thay đổi
nhỏ Giảm Giảm cấp
KI Giảm Tăng Tăng Giảm đáng
kể Giảm cấp
KD Giảm ít Tăng Giảm ít
Về lý thuyết không tác động Cải thiện nếu KD nhỏ Kết quả của bộ điều khiển thƣờng đƣợc đánh giá thông qua việc đo đạc đáp ứng của bộ điều khiển trong một hệ thống nhất định nhƣ hình 2.12.
Hình 2.12: Đáp ứng của các hệ thống điều khiển.5
Từ hình 2.12 ta thấy đáp ứng của hệ thống điều khiển theo sự thay đổi và đáp ứng của ba phƣơng pháp điều khiển P, PI, PID. Trong đó đáp ứng của bộ PID là tốt nhất với độ vọt lố ít và thời gian ổn định nhanh.
5Nguồn https://vi.wikipedia.org/wiki/PID.
22 Bộ PID có thể làm việc trên dữ liệu liên tục hoặc rời rạc. Hiện nay, PID rời rạc đƣợc ứng dụng rộng rãi trong các hệ điều khiển do hầu hết các hệ thống hiện nay đều là hệ thống số. Công thức bộ PID có thể đƣợc mô tả ở công thức số (2.6):
u(n) = 𝐊𝐩e(n) + 𝐊𝐢 𝒏 𝒆(𝒌)
𝒌=𝟎 + 𝐊𝐝(y(n) – y(n – 1)) (2.6) Cách tính toán của bộ PID nhƣ hình 2.13.
Hình 2.13: Cách tính toán PID6.
Bộ điều khiển PID có hàm truyền dạng liên tục trong công thức số (2.7):
G(s) = 𝐊𝐩 + 𝐊𝐈
𝑺+ 𝐊𝐃.s(2.7)
Biến đổi Z công thức số (2.7) ta đƣợc công thức số (2.3):
G(z) = 𝐊𝐩 + 𝐊𝐈 .𝐓
𝑺 (𝐳 + 𝟏
𝒛 − 𝟏) + 𝐊𝐃
𝑻(𝐳 − 𝟏
𝒛 ) (2.8) Viết lại G(z) ta đƣợc công thức số (2.9):
G(z) =(𝐊𝐩 + 𝐊𝐈.𝐓𝟐 + 𝐊𝐃𝑻)+(−𝐊𝐩 + 𝐊𝐈.𝐓𝟐 – 𝟐.𝐊𝐃𝑻).𝒛−𝟏+𝐊𝐃𝑻.𝒛−𝟐 𝟏 − 𝒛−𝟏 (2.9) Đặt: 𝐚𝟎 = 𝐊𝐩 + 𝐊𝐈.𝐓𝟐 + 𝐊𝐃 𝑻 𝐚𝟏 = −𝐊𝐩 + 𝐊𝐈.𝐓 𝟐 – 𝟐.𝐊𝐃 𝑻 𝐚𝟐 = 𝐊𝐃 𝑻 Suy ra (2.10): G(z) = 𝐚𝟎 + 𝐚𝟏.𝒛 −𝟏+𝐚𝟐.𝒛−𝟐 𝟏 − 𝒛−𝟏 (2.10)
Từ đó, ta tính đƣợc tín hiệu điều khiển u(k) khi tín hiệu vào e(k) nhƣ công thức (2.11): u(k) = G(z).e(k) = 𝐚𝟎 + 𝐚𝟏.𝒛 −𝟏+𝐚𝟐.𝒛−𝟐 𝟏 − 𝒛−𝟏 .e(k) (2.11) 6Nguồn https://vi.wikipedia.org/wiki/PID
23 Suy ra (2.12):
u(k) = u(k – 1) +𝐚𝟎.e(k) + 𝐚𝟏.e(k – 1) + 𝐚𝟐.e(k – 2) (2.12) Trong đó: T là thời gian lấy mẫu
e(k) là sai số hiện tại: e(k) = giá trị đặt – giá trị ngõ ra e(k – 1) và e(k – 2) là các sai số tích lũy
u(k) là ngõ ra bộ điều khiển
𝐊𝐩,𝐊𝐈,𝐊𝐃là các thông số P, I, D của bộ điều khiển Cách điều chỉnh các hệ số𝐊𝐩,𝐊𝐈, 𝐊𝐃:
Có rất nhiều cách cân chỉnh hệ số Kp, KI, KD cho phù hợp ví dụ cân chỉnh bằng tay, bằng phần mềm… và bên dƣới là phƣơng pháp cân chỉnh Ziegler – Nichols.
Đầu tiên, ta chỉnh cho 𝐊𝐩 = 1 và𝐊𝐃, 𝐊𝐈 = 0 nghĩa là chỉ điều khiển P. Sau đó, tăng 𝐊𝐩lên dần dần và quan sát động cơ. Khi thấy động cơ dao động (nghĩa là nó lúc nhanh lúc chậm). Đặt Kp tại đó là Kc,đo chu kì giao động PC và tính các thông số Kp, KI, KD theo bảng 2.2.
Bảng 2.2 : Thông số điều chỉnh Kp, Ki, Kd. Ziegler – Nichols Method
Control Type Kp Ki Kd
P 0.5KC - -
PI 0.45KC 1.2KP / PC -
24
Chƣơng 3
TÍNH TOÁN VÀ THIẾT KẾ