ĐIỀU KHIỂN PID – PHẦN 1: TÌM HIỂU CHUNG

Thời gian đọc khoảng: 8 phút.

Trong kỹ thuật Robot, thuật ngữ PID thường hay được nhắc đến. Đây có thể được coi là một cách thức điều khiển hoặc là một thuật toán.

Do độ phổ biến của nó, nên rất nhiều người đã áp dụng, ở nhiều mức độ khác nhau. Tuy nhiên, không phải ai cũng có thể hiểu bản chất của giải thuật, vì nó tổng hợp nhiều kiến thức khác nhau, đặc biệt là toán học cao cấp.

Trong bài viết này, tác giả cố gắng giải thích một cách cơ bản nhất, nhằm đưa bài viết tiếp cận (đặc biệt là) với các bạn mới tìm hiểu. Tuy nhiên cũng sẽ không tránh khỏi một số cách diễn đạt chủ quan, mong các bạn lượng thứ và góp ý chân thành.

A – TÌNH HUỐNG THỰC TẾ

Khoan hãy tìm hiểu vội định nghĩa “PID” được viết tắt là gì, bạn cứ đọc theo tiếng Anh là:

/piː/ - /aɪ/ - /di/

Chúng ta tìm hiểu 2 ví dụ dưới đây để tìm hiểu tại sao lại có khái niệm điều khiển PID.

1 – Ví dụ 1: Điều khiển tốc độ xe trên đường

Xét trong trường hợp có 2 cách điều khiển đơn giản nhất:

  • Nếu đường trống thì tăng ga để xe chạy nhanh hơn.
  • Nếu đường đông người thì giảm ga để xe chậm lại.

Trong thực tế, người lái xe sẽ có thêm sự điều chỉnh như sau:

  1. Khi tăng tốc, nếu thấy ga chưa lên được như mong đợi thì vặn mạnh ga thêm nữa để tăng thêm lực cho xe.
  2. Khi giảm tốc, nếu hạ ga mà thấy xe chưa giảm tốc như mong đợi thì đạp thắng.

Ba quá trình điều khiển tốc độ xe

  • Điều khiển 1: Điều khiển tốc độ tương ứng với mật độ người trên đường (đường vắng thì tăng ga; đường đông người thì giảm ga).
  • Điều khiển 2: Nếu tốc độ của xe chưa tăng nhanh như mong đợi thì tăng ga mạnh thêm nữa.
  • Điều khiển 3: Nếu xe chưa giảm tốc như mong đợi thì đạp thắng.

2 – Ví dụ 2: Duy trì nhiệt độ lò hơi

Giả sử có một thiết bị để duy trì nhiệt độ của lò hơi là 50 độ C. Ở đây, đại lượng nhiệt độ có 2 đối tượng cần phân biệt:

  1. Nhiệt độ của lò hơi (mục tiêu cần kiểm soát)
  2. Nhiệt độ của nguồn nhiệt (công cụ để điều khiển)

Nguyên tắc điều khiển đơn giản nhất là:

  • Nếu nhiệt độ lò hơi dưới 50 độ C thì bật nguồn nhiệt cho nóng thêm.
  • Nếu nhiệt độ lò hơi trên 50 độ C thì tắt nguồn nhiệt để nguội bớt.

Nguyên tắc này giống như rơ-le (relay) của bàn ủi. Ở một khía cạnh khác, nước trong lò hơi sẽ bay hơi, nên cần phải bổ sung lượng nước mới. Điều này làm cho nhiệt độ lò hơi bị sụt giảm. Để rút ngắn thời gian đun nước, thì chúng ta có thể cài đặt nhiệt độ của lò theo nguyên tắc sau:

  • Nếu nhiệt độ lò hơi quá thấp thì tăng nguồn nhiệt lên cao hơn nhiều cho nhanh nóng.
  • Nếu nhiệt lò hơi gần đạt 50 độ C thì chỉ tăng ít.

Ở mức điều khiển cao hơn, dựa vào tốc độ tăng nhiệt độ của nồi nước, có thêm 2 điều khiển sau

  • Nếu tốc độ tăng của nhiệt độ lò hơi chưa đủ nhanh như mong đợi thì tăng nhiệt độ nguồn nhiệt mạnh hơn nữa.
  • Nếu tốc độ tăng nhiệt quá nhanh và có nguy cơ vượt quá 50 độ, thì giảm nhiệt độ nguồn nhiệt lại, thậm chí có thể bổ sung nguồn lạnh.

Ba quá trình điều khiển nhiệt độ lò hơi

  • Điều khiển 1: Điều khiển nguồn nhiệt tương ứng với nhiệt độ hiện tại của lò hơi.
  • Điều khiển 2: Tăng thêm nguồn nhiệt dựa trên tốc độ tăng nhiệt của lò hơi.
  • Điều khiển 3: Dập nguồn nhiệt kịp thời nếu nhiệt độ lò hơi có nguy cơ vượt quá mục tiêu.

B – Khái niệm về điều khiển PID

1 – Các khâu trong điều khiển PID

Ở hai ví dụ trên, đều có 3 quá trình điều khiển. Đó tương ứng với 3 khâu trong điều khiển PID:

Khâu điều khiểnGiải thíchTương ứng
trong ví dụ 1
Tương ứng
trong ví dụ 2
Proportional (P)Khâu tỉ lệ: Điều khiển tương ứng với độ lệch mục tiêuĐiều khiển tốc độ tương ứng với mật độ người trên đườngĐiều khiển nguồn nhiệt tương ứng với nhiệt độ hiện tại của lò hơi
Integral (I)Khâu tích phân: Tăng thêm kích thích đầu ra (output)Điều khiển tăng mạnh ga khi tốc độ chưa đáp ứng như mong đợiTăng thêm nguồn nhiệt dựa trên tốc độ tăng nhiệt của lò hơi
Derivative (D)Khâu vi phân/đạo hàm: Giảm độ sai lệch so với mục tiêuĐiều khiển đạp thắng mạnh khi xe có nguy cơ vượt quá vạch đíchDập nguồn nhiệt kịp thời nếu nhiệt độ lò hơi có nguy cơ vượt quá mục tiêu

Hiểu một cách cơ bản, PID là một quá trình điều khiển, nhằm giúp cho việc điều khiển đầu ra nhanh đáp ứng mục tiêu mong đợi (rút ngắn thời gian quá độ) và giảm độ sai lệnh (độ nhiễu) so với mục tiêu.

2 – Vai trò của từng khâu trong điều khiển PID

Khâu điều khiểnVai tròHậu quả nếu không có khâu này
PLà khâu điều khiển chính, điều khiển đầu ra theo các thông số lý tưởngQuá trình điều khiển không hoạt động được (vì đây là khâu cơ bản)
ITăng kích thích cho khâu P nếu đầu ra chưa được như mong đợi, khắc phục các tác động bên ngoài làm ảnh hưởng quá trìnhĐáp ứng đầu ra sẽ chậm hơn so với mong đợi
DĐưa ra ngăn chặn để giúp khâu P điều khiển tránh vọt lố mục tiêuĐầu ra khó bám sát mục tiêu vì thường xuyên bị vượt lố
Trong quá trình điều khiển có khâu I, thời gian đạt đến giá trị mục tiêu nhanh hơn. Đồ thị bị kéo cong hơn.
Trong quá trình điều khiển bình thường không có khâu I, thời gian đạt đến giá trị mục tiêu kéo dài. Đồ thị thẳng hơn.
Trong quá trình điều khiển bình thường có khâu D, dao động giảm nhanh hơn. Độ lệnh giữa độ thị và đường mục tiêu nhỏ.
Trong quá trình điều khiển bình thường không có khâu D, dao động tắt dần từ từ. Độ lệnh giữa độ thị và đường mục tiêu lớn.
Đồ thị tổng hợp quá trình điều khiển có đủ 3 khâu P, I, D.
Đồ thị tổng hợp quá trình điều khiển chỉ có khâu P.

Trong kỹ thuật điều khiển, có thể chỉ sử dụng khâu tỉ lệ (P) mà chưa cần 2 khâu còn lại. Đây là cách điều khiển đơn giản. Tuy nhiên, nó có một số hạn chế. Chúng ta trở lại 2 ví dụ trên để xem xét những hạn chế khi không có khâu tích phân (I) và khâu vi phân (D):

2 – Bỏ I và D trong Ví dụ 1

Trong trường hợp lý tưởng thì khâu P có thể điều khiển đầu ra đáp ứng như mong đợi. Tuy nhiên, trong thực tế có nhiều lý do khiến cho đầu ra không được như mong đợi. Một số lý do phổ biến như quán tính (do sức nặng của xe và người ngồi trên xe), thời gian quá độ (độ trễ – vật thể luôn cần thời gian để đáp ứng như mong đợi, không thể xảy ra tức thì được).

Khi đó, xe sẽ có một số biểu hiện hạn chế:

  • Cảm giác “ì” (xe không được nhanh như mong đợi)
  • Tốn thời gian.
  • Gây nguy hiểm (khi không giảm tốc như mong đợi).

3 – Bỏ I và D trong Ví dụ 2

Tương tự như ví dụ trên, một số lý do có thể khiến khâu P không làm tròn được vai trò của mình như: nhiệt độ nguồn nước lúc đầu, lượng nước châm thêm vào, nhiệt độ môi trường xung quanh.

Khi đó, sẽ có một số hạn chế:

  • Tốn thời gian hơn để đưa nhiệt độ lò hơi đạt mục tiêu.
  • Biên dao động nhiệt độ của lò lớn.

4 – Video minh họa thực tế về điều khiển PID

C – KIẾN THỨC LÝ THUYẾT

1 – Sơ đồ khối của điều khiển PID

Các thông số

  • Giá trị mong đợi (SP): được cài đặt trước (ví dụ: đích đến của quãng đường, nhiệt độ nồi nước yêu cầu, vv.).
  • Giá trị đo hiện tại (PV): đo theo thực tế (ví dụ: vị trí trên đường, nhiệt độ nước hiện tại, vv.). Trong robot thì sử dụng cảm biến.

Giải thích sơ đồ

  1. Giá trị đo hiện tại được so sánh với giá trị mong đợi (mục tiêu), hiệu số giữa nó được gọi là Error (sai lệch).
  2. Error là thông số cung cấp cho cả 3 khâu P, I, D. Tuy nhiên, mỗi khâu sẽ có mỗi cách sử dụng khác nhau thông số này.
  3. Các giá trị được tính từ mỗi khâu P, I, D sẽ được tổng hợp lại (Σ) và đưa vào khâu điều khiển.
  4. Thông qua điều khiển đầu ra sẽ làm thay đổi giá trị hiện tại.
  5. Giá trị này lại được so sánh với giá trị mong đợi (ở bước 1).
  6. Quá trình này tuần hoàn liên tục để đảm bảo đầu ra luôn duy trì ở mức mong đợi.
Hình minh họa giải thích các giá trị trong sơ đồ.

2 – Cách tính toán các khâu trong điều khiển PID

u(t)=K_{p} e(t)+K_{i} \int e(t) d t+K_{p} \frac{de}{dt}
Công thức tổng quát về điều khiển PID.

Hệ số Kp, Ki, Kd

  • Đây là những hệ số được cài đặt trước.
  • Cách đặt hệ số này dựa trên tính toán kinh nghiệm trong quá trình vận hành.
  • Mục tiêu của người lập trình là tìm ra thông số hợp lý để quá trình vận hành chính xác.

Công thức của mỗi khâu

  • Khâu P: mối quan hệ giữa độ sai lệch (giữa giá trị đầu vào so với mục tiêu) và điều khiển đầu ra, sai lệch càng lớn thì điều khiển đầu ra càng lớn.
  • Khâu I: tích phân của sai lệch theo thời gian lấy mẫu, tổng sai số đã tích lũy trong quá khứ càng lớn thì điều chỉnh càng mạnh;
  • Khâu D: vi phân/đạo hàm của sai lệch, thời gian sai lệch càng lớn thì điều chỉnh càng mạnh.

Tác giả trân trọng cảm ơn sự góp ý của mọi người dành cho bài viết này.

Nguyễn Long

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

ĐIỀU KHIỂN PID – PHẦN 2: ỨNG DỤNG

Điều khiển PID được áp dụng nhiều trong lĩnh vực. Một số ứng dụng PID trong lĩnh vực: dân dụng, công nghiệp, giao thông, giải trí, vv.

HÀNH TRÌNH TRỞ THÀNH GIÁO VIÊN DẠY HỌC ROBOT – PHẦN 2: TÍCH LŨY KIẾN THỨC

Bài viết (Phần II) đề cập về các hoạt động nâng cao trình độ và kỹ năng đối với Giáo viên dạy học môn Robot.

HÀNH TRÌNH TRỞ THÀNH GIÁO VIÊN DẠY HỌC ROBOT – PHẦN 1: TỔNG QUAN

Bài viết về những kinh nghiệm dành cho người muốn trở thành giáo viên dạy học Robot cho học sinh phổ thông, nằm trong nhóm các môn STEM.