- หน้าแรก
- บทความ
- ระบบควบคุมและ PID
- PID คืออะไร
// บทความ · ระบบควบคุม
PID Controller คืออะไร: Kp Ki Kd ทำงานอย่างไร และจูนอย่างไร
PID เป็นตัวควบคุมที่ใช้มากที่สุดในอุตสาหกรรม เพราะหลักการง่าย: ดูค่าผิดพลาดระหว่างค่าที่ต้องการกับค่าที่วัดได้ แล้วปรับสัญญาณควบคุมด้วยสามมุมมอง คือปัจจุบัน อดีต และอนาคตของค่าผิดพลาด
- โดย
- P = ปัจจุบัน · I = อดีต (กำจัดค่าผิดพลาดคงตัว) · D = แนวโน้ม (ลดการเกินเป้า)
- จูนเริ่มต้นด้วย Ziegler–Nichols แล้วปรับละเอียดจากผลตอบสนองจริง
สูตรและฟังก์ชันถ่ายโอนของ PID
ให้ เป็นค่าที่ต้องการ เป็นค่าที่วัดได้ และค่าผิดพลาด
ในโดเมน ได้ตัวควบคุมที่เขียนได้สองรูปเทียบเท่ากัน
รูปแรกใช้ในคู่มือซอฟต์แวร์หลายตัว รูปหลังพบในตำราและตัวควบคุมอุตสาหกรรม ต้องดูว่าอุปกรณ์ที่ใช้ตั้งค่าแบบไหน
แต่ละเทอมทำอะไร
- P (สัดส่วน): ผิดพลาดมากสั่งแรง ผิดพลาดน้อยสั่งเบา เพิ่ม ทำให้เร็วขึ้น แต่ถ้ามากเกินไปจะแกว่งหรือไม่เสถียร และระบบส่วนใหญ่ยังเหลือค่าผิดพลาดคงตัวเมื่อมี P อย่างเดียว
- I (ปริพันธ์): ยังมีค่าผิดพลาดค้างอยู่ก็สะสมต่อไปจนสั่งแรงพอจะกำจัดมัน จึงทำให้ค่าผิดพลาดคงตัวต่อค่าคงที่เป็นศูนย์ แต่ทำให้ตอบสนองช้าลงและเกินเป้าได้
- D (อนุพันธ์): ดูอัตราการเปลี่ยนของค่าผิดพลาด ช่วยเบรกล่วงหน้า ลดการเกินเป้า แต่ขยายสัญญาณรบกวนความถี่สูง
ผลของการเพิ่มแต่ละค่าต่อการตอบสนองขั้นบันได
| เพิ่ม | เวลาขึ้น | เกินเป้า | เวลาเข้าที่ | ค่าผิดพลาดคงตัว |
|---|---|---|---|---|
| ลดลง | เพิ่มขึ้น | เปลี่ยนเล็กน้อย | ลดลง | |
| ลดลง | เพิ่มขึ้น | เพิ่มขึ้น | กำจัดได้ | |
| เปลี่ยนเล็กน้อย | ลดลง | ลดลง | ไม่เปลี่ยน |
ตารางนี้เป็นแนวโน้มทั่วไปของระบบอันดับต่ำ ค่าทั้งสามส่งผลต่อกัน จึงต้องจูนร่วมกัน ไม่ใช่ปรับทีละตัวแล้วเสร็จ
จูนเริ่มต้นด้วย Ziegler–Nichols (วิธีวงปิด)
ตั้ง เพิ่ม ทีละน้อยจนระบบแกว่งสม่ำเสมอ บันทึกค่า ตอนนั้นเป็น (ultimate gain) และคาบการแกว่งเป็น แล้วอ่านค่าจากตาราง
| ชนิด | |||
|---|---|---|---|
| P | – | – | |
| PI | – | ||
| PID |
พบ และ วินาที
ค่าเริ่มต้น , , วิธีนี้มักให้การเกินเป้าสูง ให้ใช้เป็นจุดเริ่มต้นแล้วลด หรือ ลงตามผลตอบสนองจริง
ปัญหาที่พบจริง
- Integral windup: ตัวขับอิ่มตัวแต่เทอม I ยังสะสม ทำให้เกินเป้ามากเมื่อค่าผิดพลาดกลับเครื่องหมาย แก้ด้วย anti-windup เช่น หยุดสะสมเมื่ออิ่มตัว
- สัญญาณรบกวนในเทอม D: ใส่ตัวกรองความถี่ต่ำที่เทอมอนุพันธ์ และหาอนุพันธ์จากค่าที่วัด แทนค่าผิดพลาด เพื่อไม่ให้เกิดการกระชากเมื่อเปลี่ยนค่าเป้าหมายทันที
- ความหน่วงเวลา (dead time): ยิ่งมาก ยิ่งต้องลด และเทอม D ไม่ช่วยมากนัก
เรียนต่อในคลังความรู้
คำถามที่พบบ่อย
Kp Ki Kd แต่ละค่าทำหน้าที่อะไร?
Kp ตอบสนองต่อค่าผิดพลาดปัจจุบัน เพิ่มแล้วเร็วขึ้นแต่เสี่ยงเกินเป้า Ki สะสมค่าผิดพลาดในอดีต ช่วยกำจัดค่าผิดพลาดคงตัว Kd ดูแนวโน้มของค่าผิดพลาด ช่วยลดการเกินเป้าแต่ไวต่อสัญญาณรบกวน
ทำไมบางระบบใช้แค่ PI ไม่ใช้ PID?
เพราะเทอมอนุพันธ์ขยายสัญญาณรบกวนจากเซนเซอร์ วงควบคุมที่สัญญาณวัดมีสัญญาณรบกวนมาก เช่น อัตราการไหลและระดับของเหลว จึงมักใช้ PI ซึ่งเรียบง่ายและเพียงพอ ส่วนระบบที่ตอบสนองช้าและสัญญาณวัดสะอาดอาจได้ประโยชน์จากเทอม D
Integral windup คืออะไร?
เมื่อตัวขับ (วาล์ว มอเตอร์ ฮีตเตอร์) อิ่มตัวแล้ว แต่ค่าผิดพลาดยังไม่เป็นศูนย์ เทอมปริพันธ์จะสะสมค่าต่อไปเรื่อย ๆ พอค่าผิดพลาดกลับเครื่องหมายจึงใช้เวลานานกว่าจะคลาย ทำให้เกินเป้ามาก แก้ด้วย anti-windup เช่น หยุดสะสมเมื่ออิ่มตัว
Ziegler–Nichols ใช้ได้กับระบบทุกชนิดไหม?
ไม่ทุกชนิด วิธีวงปิดต้องปล่อยให้ระบบแกว่งต่อเนื่องที่ ซึ่งอาจอันตรายกับกระบวนการจริง และให้ผลเริ่มต้นที่มักแกว่งแรง ควรใช้เป็นจุดเริ่มต้นแล้วจูนละเอียดต่อ
บทความอื่นที่น่าอ่าน
ดูบทความทั้งหมดในหมวดระบบควบคุมและ PID (2 เรื่อง) → · บทความทั้งหมด