Chương 2 : CƠ SỞ LÝ THUYẾT
2.3. Bộ điều khiển PID số
2.3.1. Hệ thống điều khiển rời rạc
Hiện nay tốc độ xử lý, độ tin cậy của máy tính số (Vi xử lý, PC) ngày càng tăng, kết hợp với ưu điểm linh hoạt, dễ dàng thay đổi thuật toán, giải thuật phức tạp bằng cách lập trình, hệ thống số được sử dụng rộng rãi; từ các bộ điều khiển đơn giản như: điều khiển nhiệt độ, điều khiển động cơ,… đến các ứng dụng phức tạp như điều khiển robot, máy bay, tàu vũ trụ, các q trình cơng nghệ hóa học và tự động hóa.
Vi điều khiển, PC D/A Đối tượng điều khiển
Cảm biến A/D y(t) u(kT) u(t) r(kT) yht(kT)
Hình 2.5: Sơ đồ khối hệ thống điều khiển số đặc trưng
Trong đó:
r(kT): tín hiệu ngõ vào dạng số
u(kT): Tín hiệu ngõ ra dạng số
u(t): Tín hiệu ngõ ra của bộ điều khiển dạng liên tục
y(t): Tín hiệu ngõ ra liên tục
yht(kT): Tín hiệu hồ tiếp dạng số
A/D: Bộ chuyển đổi tín hiệu tương tự (Analog) sang tín hiệu số (Digital)
D/A: Bộ chuyển đổi tín hiệu số sang tín hiệu tương tự
Khơng có phương pháp nào mơ tả chính xác q trình chuyển đổi A/D và D/A do sai số trong quá trình lượng tử hóa. Nếu độ phân giải của phép lượng tử hóa có biên độ đủ nhỏ để bỏ qua sai số thì có thể xem tín hiệu số là tín hiệu rời rạc; khâu chuyển
13
đổi A/D là khâu lấy mẫu, khâu chuyển đổi D/A là khâu giữ mẫu. Khi đó có thể áp dụng lý thuyết điều khiển rời rạc để phân tích và thiết kế hệ điều khiển số.
Xử lý rời rạc Giữ dữ liệu Đối tượng điều khiển
Cảm biến Lấy mẫu c(t) u(kT) u(t) r(kT) cht(kT)
Hình 2.6: Sơ đồ khối hệ thống điều khiển rời rạc
Khâu lấy mẫu: Khâu lấy mẫu biến đổi tín hiệu liên tục theo thời gian thành
tín hiệu rời rạc theo thời gian. Khâu lấy mẫu hoạt động như một khóa điện tử với thời gian đóng ngắt rất nhỏ so với chu kỳ lấy mẫu
Khâu giữ dữ liệu: Ngược lại với khâu lấy mẫu, khâu giữ dữ liệu biến đổi tín
hiệu rời rạc theo thời gian thành tín hiệu liên tục theo thời gian, trong đó khâu giữ mẫu bậc 0 (Zero Order Hold-ZOH) được sử dụng nhiều nhất. Hàm truyền của khâu ZOH:
𝐺𝑍𝑂𝐻(𝑠) = 1 − 𝑒
−𝑇𝑠
𝑠 (2.3)
Phép biến đổi Z:
Cho 𝑥(𝑘) là chuỗi tín hiệu rời rạc. Biến đổi Z của 𝑥(𝑘) là:
𝑋(𝑧) = 𝑍[𝑧(𝑘)] = ∑ 𝑥(𝑘)𝑧−𝑘 +∞
𝑘=−∞
(2.4)
Trong đó: 𝑧 = 𝑒𝑇𝑠 (s là biến Laplace)
Nếu 𝑥(𝑘) = 0, ∀𝑘 < 0, thì biểu thức định nghĩa trở thành:
𝑋(𝑧) = 𝑍[𝑧(𝑘)] = ∑ 𝑥(𝑘)𝑧−𝑘 +∞
𝑘=0
(2.5)
Giả sử 𝑥(𝑡) là tín hiệu liên tục trong miền thời gian, lấy mẫu 𝑥(𝑡) với chu kì lấy mẫu T ta được chuỗi rời rạc 𝑥(𝑘) = 𝑥(𝑘𝑇).
14 𝑋∗(𝑠) = ∑ 𝑥(𝑘𝑇)𝑧−𝑘𝑇𝑠
+∞
𝑘=0
(2.6)
Biểu thức biến đổi Z:
𝑋(𝑧) = ∑ 𝑥(𝑘)𝑧−𝑘
+∞
𝑘=0
(2.7)
Vì 𝑧 = 𝑒𝑇𝑠 nên 2 vế phải của các biểu thức (2.6) và (2.7) là như nhau. Có thể kết luận biến dổi Z một tín hiệu là rời rạc hóa tín hiệu đó.
Q trình ngược để tìm hàm rời rạc 𝑥(𝑘) từ hàm phức 𝑋(𝑧) được gọi là phép biến đổi Z ngược, kí hiệu là 𝑍−1.
𝑥(𝑘) = 1
2𝑗𝜋∫ 𝑋(𝑧)𝑧𝑘−1𝑑𝑧
𝐶
(2.8)
Với C là đường cong kín bất kỳ nằm trong miền hội tụ ROC của X(z) và bao gốc tọa độ.
2.3.2. Bộ diều khiển PID số
Bộ điều khiển PID số là một chương trình chạy trên PC hoặc vi xử lý. Để có được chương tình này từ hàm truyền của bộ điều khiển ta suy ra được phương trình vi phân mơ tả quan hệ giữa ngõ vào và ngõ ra của bộ điều khiển. Quan hệ này được dùng để lập trình các chương trình chạy trên máy tính.
PID(z) ZOH Gs(s) y(t) u(k) u(t) r(t) e(t) e(k) T H(s)
Hình 2.7: Sơ đồ điều khiển hệ thống sử dụng bộ điều khiển PID số
Hàm truyền của bộ điều khiển PID rời rạc theo tài liệu [5]:
𝐺𝑃𝐼𝐷(𝑧) =𝑈(𝑧) 𝐸(𝑧)
15 𝐺𝑃𝐼𝐷(𝑧) = 𝐾𝑝 +𝐾𝐼𝑇𝑠 2 𝑧 + 1 𝑧 − 1+ 𝐾𝐷 𝑇𝑠 𝑧 − 1 𝑧 (2.9) Trong đó:
Ngõ ra rời rạc của bộ điều khiển PID: 𝑈(𝑧)
Ngõ vào rời rạc của bộ điều khiển PID: 𝐸(𝑧)
Thời gian lấy mẫu: Ts
Hàm truyền rời rạc của bộ điều khiển PID: 𝐺𝑃𝐼𝐷(𝑧) Hàm truyền khâu tỉ lệ: 𝐺𝑃(𝑧) = 𝐾𝑝
Hàm truyền khâu tích phân: 𝐺𝐼(𝑧) = 𝐾𝐼𝑇𝑠
2 𝑧+1
𝑧−1 (Được tính theo tích phân hình thang)
Hàm truyền khâu vi phân: 𝐺𝐷(𝑧) =𝐾𝐷
𝑇𝑠
𝑧−1 𝑧
Từ đó ta có hàm truyền của hệ rời rạc trở thành:
𝐺𝑃𝐼𝐷(𝑧) = 𝐾𝑝 +𝐾𝐼𝑇𝑠 2 𝑧 + 1 𝑧 − 1+ 𝐾𝐷 𝑇𝑠 𝑧 − 1 𝑧 (2.10)
Phương trình vi phân bộ điều khiển PID
Từ cơng thức (2.10) phân tích ta có 2𝑇𝑠. 𝑧(𝑧 − 1)𝑈(𝑧) = [2𝑇𝑠(𝑧 − 1)]𝐾𝑃+ (𝑇𝑠. 𝑧)𝐾𝑖𝑇𝑠(𝑧 + 1) + 𝐾𝐷(𝑧 − 1)[2(𝑧 − 1)] 𝐸(𝑧) → 2𝑇𝑠𝑧2𝑈(𝑧) − 2𝑇𝑠𝑧𝑈(𝑧) = (2𝑇𝑠𝑧2𝐾𝑃 − 2𝑇𝑠𝑧𝐾𝑃+ 𝐾𝐼𝑇𝑠2𝑧2+ 𝑇𝑠𝑧𝐾𝐼𝑇𝑠+ 2𝐾𝐷𝑧2+ 2𝐾𝐷 − 4𝐾𝐷𝑧)𝐸(𝑧) → (2𝑇𝑠)𝑧2𝑈(𝑧) − (2𝑇𝑠)𝑧𝑈(𝑧) = [(2𝑇𝑠𝐾𝑃+ 𝐾𝐼𝑇2+ 2𝐾𝐷)𝑧2 + (𝑇𝑠2𝐾𝐼 − 4𝐾𝐷− 2𝑇𝑠𝐾𝑃)𝑧 + (2𝐾𝐷)] 𝐸(𝑧) → ∆𝑧2𝑈(𝑧) − ∆𝑧𝑈(𝑧) =∝ [𝑧2𝐸(𝑧)] + 𝛽[𝑧𝐸(𝑧)] + 𝛾𝐸(𝑧) (2.11) Trong đó: ∆= 2𝑇𝑠
16
∝= 2𝑇𝑠𝐾𝑃+ 𝐾𝐼𝑇𝑠2+ 2𝐾𝐷 𝛽 = 𝑇𝑠2𝐾𝐼 − 4𝐾𝐷 − 2𝑇𝑠𝐾𝑃 𝛾 = 2𝐾𝐷
Chia 2 vế của phương trình (2.11) cho 𝑧2 ta có:
→ ∆𝑈(𝑧) − ∆𝑧−1𝑈(𝑧) =∝ [𝐸(𝑧)] + 𝛽[𝑧−1𝐸(𝑧)] + 𝛾𝑧−2𝐸(𝑧) (2.12) Biến đổi 𝑍−1 (2.12) ta có: 𝑢(𝑘) − ∆. 𝑢(𝑘 − 1) =∝. 𝑒(𝑘) + 𝛽. 𝑒(𝑘 − 1) + 𝛾. 𝑒(𝑘 − 2) 𝑢(𝑘) = ∝. 𝑒(𝑘) + 𝛽. 𝑒(𝑘 − 1) + 𝛾. 𝑒(𝑘 − 2) + ∆. 𝑢(𝑘 − 1) ∆ (2.13) Trong đó:
𝑢(𝑘): Tín hiệu điều khiển ngõ ra của bộ điều khiển PID cho hệ rời rạc hiện tại 𝑢(𝑘 − 1): Tín hiệu điều khiển ngõ ra của bộ điều khiển PID cho hệ rời rạc
trước đó một mẫu
𝑒(𝑘): Sai số hiện tại
𝑒(𝑘 − 1): Sai số trước đó một mẫu (thời điểm –T(s), T là thời gian lấy mẫu) 𝑒(𝑘 − 2): Sai số trước đó hai mẫu (thời điểm –2T(s)), T là thời gian lấy mẫu ∆= 2𝑇𝑠, 𝑇𝑠 là thời gian lấy mẫu
∝= 2𝑇𝑠𝐾𝑃+ 𝐾𝐼𝑇𝑠2+ 2𝐾𝐷 𝛽 = 𝑇𝑠2𝐾𝐼 − 4𝐾𝐷 − 2𝑇𝑠𝐾𝑃 𝛾 = 2𝐾𝐷
Cơng thức (2.12) dùng để viết chương trình cho các bộ điều khiển số như vi điều khiển hoặc PC.
Khi điều khiển đối tượng với bộ điều khiển PID, ngồi các thơng số Kp, Ki, Kd, đáp ứng hệ thống chỉ phụ thuộc vào sai số và thời gian lấy mẫu. Do vậy thuật tốn PID có thể điều khiển được hệ thống mà khơng cần tới mơ tả tốn học. Điều này rất phù hợp với phương án thiết kế bộ điều khiển khơng có khâu trễ phi tuyến như trong đề tài đang thực hiện.
17