[Điều Khiển PID Chuẩn]Các Bạn đã Hiểu Sai Về PID
Có thể bạn quan tâm
Menu
nhưng sau này nhận ra là nó sai, nó chỉ "có vẻ" đúng vì bộ PID khá đơn giản và code được áp dụng trong môi trường thí nghiệm, chứ nếu để ngoài thực tế nó SẼ bộc lộ nhiều điểm yếu. Đầu tiên các bạn hãy download tài liệu cơ sở tự động của thầy Huỳnh Thái Hoàng, mục thiết kế PID rời rạc theo link sau: http://www4.hcmut.edu.vn/~hthoang/cstd/Chuong9_CSTD.pdf Đây là code cũ PID mà 99% mà các bạn dùng (E hay error là sai số giữa giá trị đặt và giá trị hiện tại, U hay Out là giá trị PWM điều khiển động cơ): Code: Error_value = Set_Position - Position; P_part = Kp * Error_value; I_part += Ki * Error_value / T; D_part = Kd * (Error_value - pre_Error_value) * T; out+= P_part + I_part + D_part; pre_Error = Error và đây là code PID đúng như nó lẽ ra nên được viết: Code: P_part = Kp*(Error - pre_Error); I_part = 0.5*Ki*T*(Error + pre_Error); D_part = Kd/T*( Error - 2*pre_Error+ pre_pre_Error); Out = pre_out + P_part + I_part + D_part ; pre_pre_Error = pre_Error pre_Error = Error pre_Out = Out
Hi vọng sau bài viết này ai cũng viết đúng PID nhé. Hãy test , chia sẻ và reply Cập nhật: Bộ điều khiển hoạt động tốt với giải thuật mà mình đề ra, đã test trên nhiều mô hình. Bạn nào gặp hiện tượng output ngược dấu setpoint thì đảo 2 chân encoder lại. K
D
Tôi đã khóc khi đọc bài này 
T
4
. Bây giờ thì đã hiểu C
- Home
- Forums New posts Search forums
- What's new New posts New profile posts Latest activity
- Members Registered members Current visitors New profile posts Search profile posts
Search
Everywhere Threads This forum This thread Search titles only Search Advanced search...- New posts
- Search forums
- Forums
- Chia sẻ Dự án / Tài liệu / Phần mềm
- Chia sẻ Projects
- Thread starter cenakhoa
- Start date 7/10/13
cenakhoa
em thích màu hồng
Chào các bạn, các em, Qua kì thi Raise Your Arm 2013 vừa qua, mình có đọc một số code của vài team dự thi, mình thấy có vài điều bất ổn về code PID của các bạn, PID là một bộ điều khiển rất dễ và thâm niên gần 100 tuổi nhưng chắc chắn viết đúng code PID trong NƯỚC TA chỉ đếm trên đầu ngón tay, đa số là các bạn copy paste code vì quá khinh thường bộ điều khiển này. Sở dĩ mình nhận ra ngay các bạn copy paste code PID vì code này mình cũng từng dùng rồi,
nhưng sau này nhận ra là nó sai, nó chỉ "có vẻ" đúng vì bộ PID khá đơn giản và code được áp dụng trong môi trường thí nghiệm, chứ nếu để ngoài thực tế nó SẼ bộc lộ nhiều điểm yếu. Đầu tiên các bạn hãy download tài liệu cơ sở tự động của thầy Huỳnh Thái Hoàng, mục thiết kế PID rời rạc theo link sau: http://www4.hcmut.edu.vn/~hthoang/cstd/Chuong9_CSTD.pdf Đây là code cũ PID mà 99% mà các bạn dùng (E hay error là sai số giữa giá trị đặt và giá trị hiện tại, U hay Out là giá trị PWM điều khiển động cơ): Code: Error_value = Set_Position - Position; P_part = Kp * Error_value; I_part += Ki * Error_value / T; D_part = Kd * (Error_value - pre_Error_value) * T; out+= P_part + I_part + D_part; pre_Error = Error và đây là code PID đúng như nó lẽ ra nên được viết: Code: P_part = Kp*(Error - pre_Error); I_part = 0.5*Ki*T*(Error + pre_Error); D_part = Kd/T*( Error - 2*pre_Error+ pre_pre_Error); Out = pre_out + P_part + I_part + D_part ; pre_pre_Error = pre_Error pre_Error = Error pre_Out = Out - Bộ PID sau phụ thuộc vào cả những thông số trước đó nên rõ ràng tính thích nghi cao hơn.
- Bộ PID trước CHẮC CHẮN sẽ có vọt lố còn bộ PID sau thì chưa chắc. Cũng vì lý do này, các bạn cho hệ số I quá nhỏ, nhỏ đến mức bộ PID trở thành P hoặc PD mà các bạn vẫn đinh ninh là đang làm PID, ảnh hưởng đến chất lượng của bộ điều khiển.
Keon2991
TOT
hóng thầy Nam và thầy Hoàng vào cho ý kiên
D dangduythanh134
TOT
Bài viết rất hay, CLB mình nên có thêm những bài viết như thế
Tôi đã khóc khi đọc bài này
T tuane06
Trứng gà
hix, đây chính là câu trả lời cho câu hỏi PID là gì từ xưa đến giờ của mình và cũng là cơ sở để chuyển từ lý thuyết sang thực tế, cảm ơn bác chủ nhiều, em còn phải đọc tài liệu dài dài nữa mới mong hiểu hết vấn đề bác đã đề cập, dù sao cũng có hướng đi cho mình chứ ko còn bị mông lung mò mẫm nữa Bbluesilhouettes
Gà mẹ
Nên chuyển code sang dạng MAC để tính toán cho nhanh nếu cpu có hỗ trợ. Công thức rút gọn thì dễ nhìn đối với con người nhưng khó nhìn đối với máy tính.
4 40701002
Thành Viên PIF
Đã làm từ lúc đồ án 1 (điều khiển lò nhiệt). Nhưng chia sẻ như bạn thì chưa bao giờ vì nghĩ ai cũng như mình
. Bây giờ thì đã hiểu C cenakhoa
em thích màu hồng
bluesilhouettes said: Nên chuyển code sang dạng MAC để tính toán cho nhanh nếu cpu có hỗ trợ. Công thức rút gọn thì dễ nhìn đối với con người nhưng khó nhìn đối với máy tính.dạng MAC là sao bác, xin thỉnh giáo các một chút (y) CClick to expand...
chung
Trứng gà
cho mình hỏi, các số Kp, Ki, Kd lúc setup thường nằm từ khoảng nào tới khoảng nào vậy mọi người. Mình ko biết con số cụ thể nên ko biết setup thế nào để cân chỉnh 440701002
Thành Viên PIF
Bạn phải đọc thêm phương pháp Ziegler - Nichols nha Hhmtuong
Trứng gà
Theo ý kiến của mình, bạn cenakhoa hiểu chưa cặn kẽ rồi. Tùy theo phương pháp tính gần đúng mà hàm rời rạc của bộ PID sẽ khác nhau. Code PID rời rạc trên mạng thường là làm gần đúng theo phương pháp Euler, còn cách làm gần đúng trong sách DKTD là phương pháp trapezoidal. Ví dụ, phương pháp Euler gần đúng khâu tích phân là: Ki*Ts*[1/(z-1)] còn theo phương pháp trapezoidal: Ki*Ts/2*[(z+1)/(z-1)] Vì vậy, tùy theo yêu cầu mà chúng ta dùng phương pháp gần đúng cho phù hợp. Ttaingay123321
Trứng gà
Bạn cenakhoa và hmtuong có thể thảo luận thêm chứ ? Trên page này họ cũng dùng code cũ từ lâu http://www.hocavr.com/index.php/app/dcservo#5-PID. Vậy đây là phương pháp đúng khác hay là pp sai ? Show hidden low quality content You must log in or register to reply here. Share: Facebook Twitter Reddit Pinterest Tumblr WhatsApp Email Link- Forums
- Chia sẻ Dự án / Tài liệu / Phần mềm
- Chia sẻ Projects
Từ khóa » Công Thức Pid Rời Rạc
-
Bộ điều Khiển PID Trong Vi điều Khiển - Điện Tử Hello
-
Hướng Dẫn điều Khiển PID Số (PID Rời Rạc)_part 1 - YouTube
-
Bộ điều Khiển PID – Wikipedia Tiếng Việt
-
[PDF] PID CONTROLLER
-
Khái Niệm Về Bộ điều Khiển PID - HopLongTech
-
Hiện Thực Bộ điều Khiển PID Rời Rạc Cho Hệ Thống điều ... - 123doc
-
CÁC PHƯƠNG PHÁP điều KHIỂN PHƯƠNG PHÁP PID Số - 123doc
-
BỘ ĐIỀU KHIỂN PID SỐ
-
PID Là Gì? Bộ điều Khiển PID Và Những Kiến Thức Không Thể Bỏ Qua
-
[PDF] KHẢO SÁT BỘ ĐIỀU KHIỂN PID SỐ
-
Khái Niệm Về Bộ điều Khiển PID - Ritech
-
Bộ điều Khiển PID Trong Vi điều Khiển - Điện Tử ... - Blog Cuocthidanca
-
PID Là Gì ? Bộ điều Khiển PID Nhiệt độ Và Thuật Toán Của Nó