PID Controller: พื้นฐานที่วิศวกรควบคุมทุกคนต้องเข้าใจ

PID Controller (Proportional-Integral-Derivative) เป็นอัลกอริทึมควบคุม Feedback ที่ใช้กันแพร่หลายที่สุดในอุตสาหกรรม มีประวัติยาวนานกว่า 100 ปีนับตั้งแต่ Nicolas Minorsky เสนอครั้งแรกในปี 1922 เพื่อควบคุมพวงมาลัยเรือ ในปัจจุบัน PID Controller มีอยู่ใน PLC, DCS, และอุปกรณ์ควบคุมแทบทุกประเภท จากการสำรวจพบว่ากว่า 95% ของ Control Loop ในอุตสาหกรรมกระบวนการยังคงใช้ PID

อย่างไรก็ตาม การที่ PID มีเพียง 3 พารามิเตอร์ (Kp, Ki, Kd) ไม่ได้แปลว่าง่ายต่อการปรับแต่ง การเลือกค่าที่เหมาะสม (PID Tuning) คือศาสตร์และศิลป์ที่แยกความแตกต่างระหว่างระบบที่ทำงานได้ดีกับระบบที่สั่นพัดหรือตอบสนองช้าเกินไป

สูตร PID ทำงานอย่างไร?

Output ของ PID Controller คำนวณจากผลรวมของ 3 เทอม:

u(t) = Kp × e(t) + Ki × ∫e(t)dt + Kd × de(t)/dt

โดยที่ e(t) = Setpoint − Process Variable (Error หรือความคลาดเคลื่อน)

เทอม หน้าที่ ผลกระทบเมื่อเพิ่มค่า ความเสี่ยง
Proportional (Kp) ตอบสนองตามสัดส่วนของ Error ปัจจุบัน เพิ่มความเร็วในการตอบสนอง Overshoot, Steady-State Error
Integral (Ki) สะสม Error ในอดีตเพื่อกำจัด Steady-State Error กำจัด Offset ได้สมบูรณ์ Windup, Oscillation, Response ช้าลง
Derivative (Kd) ตรวจจับอัตราการเปลี่ยนแปลงของ Error ลด Overshoot เพิ่ม Stability Noise Amplification, Kick

Insight: PI Controller (ไม่ใช้ D) เป็นการกำหนดค่าที่พบบ่อยที่สุดในอุตสาหกรรม Process Control (ประมาณ 70-80%) เนื่องจาก D Term ไวต่อ Noise มาก ส่วน Derivative มักใช้เฉพาะในงานที่ระบบต้องการ Stability สูง เช่น Motion Control, Temperature Control ที่มี Lag ใหญ่

วิธี PID Tuning แบบคลาสสิก

1. Ziegler-Nichols Closed-Loop Method (1942)

วิธีที่เป็นตำนานจากสองวิศวกร Ziegler และ Nichols ทำได้โดย:

  1. ตั้ง Ki = 0, Kd = 0 (ใช้เฉพาะ P)
  2. ค่อย ๆ เพิ่ม Kp จนกระทั่งระบบเริ่ม Oscillate อย่างต่อเนื่อง (Sustained Oscillation)
  3. บันทึกค่า Kp นั้นเป็น Ku (Ultimate Gain) และวัด Pu (Ultimate Period)
  4. ใช้ตาราง Ziegler-Nichols คำนวณพารามิเตอร์
Control Type Kp Ki Kd
P Only 0.5 × Ku
PI 0.45 × Ku 0.54 × Ku / Pu
PID (Classic) 0.6 × Ku 1.2 × Ku / Pu 0.075 × Ku × Pu

ข้อจำกัด: วิธีนี้ให้ Response ที่มี Overshoot ค่อนข้างสูง (Quarter-Amplitude Decay) ไม่เหมาะกับระบบที่ไม่ทนต่อ Oscillation เช่น Chemical Process

2. Cohen-Coon Open-Loop Method (1953)

เป็นวิธีที่ใช้กับ Plant ที่มี Dead Time สำคัญ (First-Order Plus Dead Time – FOPDT) ทำได้โดย:

  1. ทำ Step Test: เปลี่ยน Controller Output ครั้งเดียว
  2. วัด Process Reaction: หา K (Process Gain), τ (Time Constant), θ (Dead Time)
  3. ใช้สูตร Cohen-Coon คำนวณ Kp, Ti, Td

วิธีนี้เหมาะสำหรับ Process ที่มี Dead Time มาก เช่น Heat Exchanger, Distillation Column

3. Tyreus-Luyben Method (1992)

เป็นการปรับปรุง Ziegler-Nichols ให้เหมาะกับ Process Control มากขึ้น โดยลด Integral Action และเพิ่ม Derivative ทำให้ได้ Response ที่นุ่มนวลกว่า มี Overshoot น้อยกว่า

ปัญหา Integral Windup และวิธีแก้

เมื่อ Actuator เข้าสู่ Saturation (เช่น Valve เปิด 100% แล้ว) แต่ Error ยังคงอยู่ Integral Term จะสะสมค่าอย่างต่อเนื่อง ทำให้เมื่อ Setpoint เปลี่ยน ระบบจะ Overshoot อย่างรุนแรง เรียกว่า Integral Windup

วิธีแก้ที่นิยม:

  • Clamping: หยุด Integrate เมื่อ Output ถึง Limit วิธีที่ง่ายและใช้กันมากที่สุด
  • Back-Calculation: ป้อนกลับผลต่างระหว่าง Output จริงกับ Output ก่อน Saturation ไปลด Integral Term
  • Conditional Integration: Integrate เฉพาะเมื่อ Error น้อยกว่า Threshold หรือเมื่อ Output ไม่ Saturate

Derivative Filter — แก้ปัญหา Noise

Derivative Term มีปัญหาใหญ่คือการขยาย High-Frequency Noise หากสัญญาณ Process Variable มี Noise การใช้ Kd จะทำให้ Output กระโดดอย่างรุนแรง วิธีแก้คือการใส่ Low-Pass Filter ที่ Derivative Term:

D_filtered = Kd × s / (1 + α × s) × E(s)

โดย α (Filter Coefficient) มักตั้งระหว่าง 0.05-0.2 ของ Derivative Time (Td) Drive และ Controller ระดับอุตสาหกรรมสมัยใหม่จะมี Derivative Filter ในตัวอยู่แล้ว

Auto-Tuning ในยุคดิจิทัล

Controller รุ่นใหม่แทบทุกตัวมี Auto-Tune Function โดยใช้เทคนิคต่าง ๆ:

  • Relay Feedback Method (Åström-Hägglund, 1984): สลับ Output ระหว่างสองค่าเพื่อสร้าง Bounded Oscillation แล้ววัด Amplitude และ Period เพื่อคำนวณ PID Parameter เป็นวิธี Auto-Tune ที่ใช้กันแพร่หลายที่สุดในอุปกรณ์อุตสาหกรรม
  • Frequency Response Identification: ฉีด Sinusoidal Signal หลายความถี่เข้า Plant และวัด Bode Plot เพื่อสร้าง Model ที่แม่นยำ มักใช้ใน Motion Control Tuning
  • Model Predictive Control (MPC): สำหรับ Process ที่ซับซ้อน Multi-Variable MPC สามารถ Optimize Control Action ได้ดีกว่า PID มาก แต่ต้องการ Computational Power ที่สูง

PID Tuning สำหรับ Process ทั่วไป — Cheat Sheet

Process Type ลักษณะ Tuning Approach
Flow Fast, Noisy, Self-Regulating PI, Low Gain, Aggressive Filtering
Level Integrating Process PI/PID, Averaging Level Control
Temperature Slow, High Lag, Low Noise PID ครบทั้ง 3 เทอม, Aggressive
Pressure (Gas) Fast, Self-Regulating PI, High Gain
Pressure (Liquid) Integrating, Very Fast P Only หรือ PI แบบ Conservative

สรุปและคำแนะนำ

PID Tuning ไม่ใช่เรื่องของการใส่ตัวเลขแล้วลองไปเรื่อย ๆ แต่ต้องเข้าใจ Dynamics ของ Plant เลือกวิธี Tuning ที่เหมาะสม และตรวจสอบผลลัพธ์อย่างเป็นระบบ วิศวกรที่ดีควรเริ่มจากการทำ Step Test เพื่อเข้าใจพฤติกรรมของ Process จากนั้นเลือกใช้ Ziegler-Nichols, Cohen-Coon หรือ Auto-Tune ตามความเหมาะสม แล้วปรับ Fine-Tune ตามข้อกำหนดด้าน Performance

สำหรับโรงงานที่มี Control Loop จำนวนมาก การทำ Control Loop Performance Monitoring ด้วย Software เช่น Aspen Watch, Control Station LoopSCAN เป็นสิ่งที่แนะนำ เพื่อตรวจหา Loop ที่มีปัญหา (Oscillating, Sluggish, Saturated) และจัดลำดับการแก้ไขตาม Impact ทางเศรษฐกิจ การศึกษาพบว่า Control Loop ที่ Tuning ดีสามารถลด Variability ของ Product Quality ได้ถึง 30-50% และลด Energy Consumption ได้ 2-5%