Thông báo

Collapse
No announcement yet.

Cho em hỏi về thuật toán PID

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Cho em hỏi về thuật toán PID

    Em đang tìm hiểu về thuật toán PID, có vài điều em chưa hiểu nhờ các anh giải đáp giúp, em có đọc vài thông tin trên internet thì đại khái họ nói về các thông số của thuật toán này như sau :

    - Sai số xác lập trong PID ký hiệu là e, nó tính bằng : SP - PV, SP là Setpoint là giá trị đặt, còn PV là giá trị phản hồi mà cảm biến đo được.
    - Tăng tốc độ đáp ứng của hệ thống thì em hiểu là tăng tốc độ của động cơ để đầu ra đạt yêu cầu như Setpoint
    - Kp là hệ số khuếch đại, tỷ lệ. Kp càng lớn thì tốc độ đáp ứng càng nhanh, tức là động cơ quay nhanh
    - Ki càng lớn thì sai số xác lập càng nhỏ
    - Ki càng lớn thì đáp ứng quá độ càng chậm
    - Ki càng lớn thì độ vọt lố càng cao
    - Kđ càng lớn thì đáp ứng quá độ càng nhanh
    - Kđ lớn thì độ vọt lố nhỏ
    - 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 hệ thống, giảm độ vọt lố và cải thiện tốc độ đáp ứng của hệ.

    Link tài liệu :

    http://www2.hcmuaf.edu.vn/data/phucn...-khien_pid.pdf

    http://tudonghoa.systemsjsc.com/Home/ChitietTintuc/46

    https://www.scribd.com/document/243165880/PID-S7-1200-docx


    https://www.youtube.com/watch?v=0vqWyramGy8


    <== Nhưng em chưa hiểu rõ 3 thông số này trong các bài toán thực tế cụ thể nó như thế nào, lấy 1 ví dụ như thế nào để mình hiểu được rõ nó. Ví dụ như là đi từ điểm A tới đích là điểm B chẳng hạn hay các bài toán về đo nhiệt độ, chạy xe máy, mức nước trong bể,....thì Kp, Ki, Kđ nó thực sự là cái gì.

    Ví dụ như em đi xe máy mà tốc độ đặt là 45km/h. Thì em vút ga lên 1 phát thì nó có phải là Kp không ? Và nếu quá tay thì nó vọt ra khỏi 45km/h mà lên 50km/h chẳng hạn, có phải là vọt lố ko ? Và Kp như thế là lớn thì tốc độ đáp ứng là nhanh, động cơ quay nhanh, tạo ra sự dao động lớn. Còn sai lệch tĩnh e = 45 - 0 = 45 đúng ko ?

    Giảm độ vọt lố có phải là giảm cái tình trạng đồ thị parabol của thông số Kp, Ki vượt lên cao hẳn khỏi đường Ymax và Yyc trong đồ thị đúng không ?

    Còn Ki là cái gì ở đây ? Em thấy theo định nghĩa thì nó cộng dồn các sai số quá khứ lại với nhau. Các tài liệu họ chỉ mô tả như vậy, nghe rất chung chung, mà em chưa hiểu là trong trường hợp này có phải là mình giảm gas xuống nhằm đạt mức 45km/h. Nhưng nó lại bị xuống 40 (sai số là 5), mình lại tăng lên 1 chút, lại quá 45 (ví dụ lên tới 47, thì sai số là 2), thì lại giảm đi sao cho tới 45km/h là ổn. Rồi cộng dồn lại các sai số này phải không ?. Vậy khi Ki lớn thì cái gọi là độ vọt lố càng cao ở đây nó là cái gì, nó có khác độ vọt lố của Kp không hay nó chính là vọt ra khỏi 50km/h như của Kp hay thế nào mà mình lại thấy trên đồ thị đường parabol của Ki nó lại cao hơn hẳn đường Kp. Nếu thế thì thông số Ki ở đây lại càng làm tăng thêm sự dao động chứ nó không mang nghĩa giảm đi sai lệch e.

    Còn Kđ là gì trong bài toán này, nhờ các anh giải thích cho em hiểu rõ với.

  • #2
    Một số đóng góp ý kiến :
    Trường hợp bạn đi xe máy tốc độ đặt là 45 bạn vút ga 1 phát nó KHÔNG PHẢI Kp,Ki,Kd. Hiểu đơn giản nhất, Kp,Ki,Kd là các tham số điều khiển ( thường là hằng số), sẽ kết hợp với sai số ( giá trị đặt và giá trị thực ) tạo ra TÍN HIỆU ĐIỀU KHIỂN U=f(Kp,Ki,Kd,e), ví dụ như trường hợp vít ga thì lượng xăng khi bạn vít ga (TÍN HIỆU ĐIỀU KHIỂN YÊU CẦU) sẽ bị đốt nhiều hơn nhằm tạo ra năng lượng lớn tăng tốc độ xe. Sai lệch tĩnh là tính cho hệ khi ổn định nhé, không phải bạn vít (tức thời) lên 50 là sai lệch tĩnh = 50 - 45.

    Comment


    • #3
      Tốc độ đáp ứng giống như gia tốc của động cơ.

      Để hiểu phương pháp PID thì ta xét 1 trường hợp cụ thể thí dụ hệ thống đun nước đến 70 độ C.

      Trước đây người ta thường điều khiển bằng phương pháp on-off (rờ le nhiệt): Khi nhiệt độ dưới 70 độ thì rờ le đóng, trên 70 độ thì rờ le ngắt. Nhiệt độ luôn dao động quanh 70 độ C vì khi ON thì nhiệt độ tăng, OFF thì nhiệt độ giảm chứ không cố định.

      Để loại bỏ dao động thì người ta thay đổi điện áp từ từ chứ không dùng 2 mức ON OFF. Sai số nhiệt độ càng lớn thì điện áp càng lớn. Thí dụ nếu nước 69 độ thì cấp điện áp 10V, 68 độ thì cấp điện áp 20V... Nói chung là điện áp tỉ lệ (proportional) với sai số nhiệt độ. Phương pháp này luôn có sai số vì khi sai số nhỏ, điện áp ra nhỏ không đủ bù cho lượng nhiệt thất thoát ra môi trường nên nhiệt độ nước luôn thấp hơn 70 độ C.

      Để khử sai số, người ta thêm vào mạch tích phân (cộng dồn các sai số trong những khoảng thời gian trước đó) Nhờ cộng dồn nên nếu sai số cùng dấu ( luôn dương hoặc luôn âm) các sai số nhỏ cộng lại thành một số đủ lớn, làm thay đổi điện áp đun nước cho đến khi tổng các sai số = 0.

      Khi sai số thay đổi nhanh quá. Thí dụ như lò cạn nước, nhiệt độ tăng nhanh có thể vọt quá 70 độ (do ngắt điện rồi nhưng bên trong thanh điện trở đun vẫn còn nhiệt độ cao truyền ra). Để khắc phục điều này người ta thêm mạch vi phân để đo tốc độ biến thiên. Nếu nhiệt độ thay đổi từ từ thì ngõ ra mạch vi phân xấp xỉ = 0. Nếu nhiệt độ thay đổi nhanh thì ngõ ra xuất hiện điện áp điều khiển để nhiệt độ thay đổi chậm lại, tránh bị vọt lố.
      sau.ph

      Comment

      Về tác giả

      Collapse

      Anh_21 Tìm hiểu thêm về Anh_21

      Bài viết mới nhất

      Collapse

      Đang tải...
      X