พื้นฐาน การควบคุมแบบ PID
วงจร PID โดยส่วนใหญ่จะถูกนำมาใช้ในการควบคุม แบบ feedback control ซึ่งแต่ละตัวอักษรใน ตัวย่อ PID มีความหมายดังนี้
P = Proportional
I = Integral
D= Derivative
ซึ่งจุดประสงค์ที่ต้องมี parameter ทั้ง 3 parameter ก็เพื่อให้ระบบควบคุมของเรา สามารถถูกตั้ง"ค่าคาดหวัง" ได้ (เรียกว่า ค่า Set point ตัวย่อ SP ) แล้วใช้ค่านั้นไปช่วงระยะเวลานานประมาณหนึ่ง โดยไม่ต้องตั้งค่าใหม่ทุกครั้งในการจบ 1 รอบควบคุม ( ครบ 1 loop control )
เพื่อความเข้าใจง่ายจะขอยกตัวอย่างก่อนทฤษฎีดังนี้
ยกตัวอย่างระบบทำความเย็นอย่างง่ายในห้องโดยใช้นำ้เป็นตัวเพิ่ม/ลดอุณหภูมิ
หลักการคือ จะวัดอุณหภูมิในห้องโดยใช้ temperature sensor แล้วนำค่าอุณหภูมินั้นมาส่งกลับมาที่ controller เพื่อคำนวณสัญญาณที่เหมาะสม โดยเทียบกับค่าอุณหภูมิที่ตั้งไว้ล่วงหน้า (ค่าอุณหภูมิที่คาดหวัง) เมื่อ controller พิจารณาโดยใช้หลักการ PID แล้ว จะส่งสัญญาณ เป็น controller output ออกมา สั่งการไปที่ วาล์วเปิดปิดน้ำทำความเย็นให้เปิดปิดที่ กี่% เพื่อปรับอัตราการไหลของน้ำผ่านเข้าไปในระบบทำความเย็น ส่งผลทำให้ห้องมีอุณหภูมิที่เพิ่มขึ้นหรือลดลง และ temperature sensor ในห้องก็จะทำการวัดอุณหภูมิใหม่อีกครั้ง และ ส่งค่าอุณหภูมินั้นกลับมาที่ controller และทำซ้ำกระบวนการข้างต้นไปเรื่อยๆ
เมื่อเทียบกับ สมการ PID Control ในรูปต่อไปจะพบว่า
Process
ในที่นี้คือ ระบบทำความเย็น
Manipulate Value (MV)
ในที่นี้คือ อัตราการไหลของน้ำที่ผ่านวาล์ว
Controller
ในที่นี้คือ ตัวควบคุมที่มี ระบบ PID
Control Device
ในที่นี้คือ วาล์วน้ำ แบบ Motorized
Process Value (PV)
ในที่นี้คือ ค่าอุณหภูมิที่วัดได้ภายในห้อง
Set Point (SP)
ในที่นี้คือ ค่าอุณหภูมิคาดหวัด (อุณหภูมิที่ตั้งไว้ล่วงหน้าเป็นอุณหภูมิที่ต้องการในห้องนั้น)
Response time
ในที่นี้คือ ความเร็วในการที่จะทำให้อุณหภูมิเปลี่ยนแปลงขึ้น/ลง
หลักการควบคุมภาพด้านล่างและทฤษฎี ก็คือ การหาค่า error ซึ่งคิดคำนวณจากผลต่างระหว่าง" Process Value " (PV) เทียบกับ (SP) แล้วนำค่า error นั้น ไปเป็นตัวตั้งต้นในการปรับเครื่องมือควบคุม โดย Controller เป็นผู้สั่งเครื่องมือนั้น
(Controller สั่งปรับวาล์วน้ำ )
จนได้ค่า "Manipulate Value" (MV) ค่าหนึ่งๆ (อัตราการไหลของน้ำ) เข้าไปใน Process (ระบบทำความเย็น) และหลังจาก Process ดำเนินการไป( ปรับอุณหภูมิ) ก็มีการวัดค่า PV อีกครั้ง (อุณหภูมิใหม่ในห้อง) แล้วนำค่า PV นั้น ไปเป็นข้อมูลเพื่อให้ controller พิจารณาควบคุมเครื่องมือควบคุมต่อไป(Controller สั่งปรับวาล์วน้ำรอบใหม่) จนได้ค่า PV ค่าใหม่ (อุณหภูมิ ค่าใหม่) และ ทำวนซ้ำไปเรื่อยๆนั่นเอง
สามารถดูความสัมพันธ์ของ ค่าต่างๆในวงจรได้จากภาพด้านล่าง
: โดยผลของ P I และ D ที่ได้จะถูกนำไปเข้าสมการถ่วงน้ำหนัก ซึ่งจะได้ค่าออกมาค่าหนึ่งและค่านี้ จะถูกนำไปเป็นตัว input ให้กับเครื่องมือควบคุมในระบบ และ ได้ค่า PV หม่ของระบบออกมา และ เราก็จะนำค่านี้กลับมาทำซ้ำกับระบบทั้งหมดอีกไปเรื่อยๆ
(ในที่นี้เราจะไม่กล่าวถึงทฤษฎีการคำนวณ PID ผู้อ่านสามารถหาข้อมูลเพิ่มเติมได้มากมายทั้งเอกสารภาษาไทย และ ภาษาต่างประเทศ
ตัวอย่าง สมการคำนวณค่า PID ) Link
ค่า P I และ D ทั้ง 3 ตัวนี้มีความสัมพันธ์กับเวลาที่เกิด error ไม่เหมือนกันดังนี้
P สัมพันธ์กับการเกิด error ณ ปัจจุบัน
I สัมพันธ์กับการเกิด error ก่อนหน้าที่สะสมมาแต่อดีต
D สัมพันธ์กับการเกิด error ที่จะเกิดในอนาคต
โดยการคำนวณคาดการณ์ การพยากรณ์
หากมีการตั้งค่า PID ที่เหมาะสม ระบบควบคุมจะมีประสิทธิภาพและ มี overshoot จากค่าที่ตั้งล่วงหน้า ( Set point) น้อย รวมทั้งมีการแกว่งขึ้นลงจาก Set point น้อยเช่นกัน
การปรับจูนค่า PID
โดยทั่วไป การปรับจูนค่าP ค่าI และค่าD ไม่มีกฎเกณฑ์ที่ตายตัว
แต่ก็มีหลักการที่ใช้ได้ในทางปฏิบัติพอจะนำไปเป็นแนวทางได้ดังนี้
การปรับแบบmanual เป็นวิธีที่เรียบง่ายที่สุด
แต่ก็ยังต้องใช้ประสบการณ์ในการปรับอยู่พอสมควรเพื่อจะได้ปรับจูนได้ง่ายและรวดเร็วขึ้น
ขั้นตอนการปรับ PID แบบ manual มีแนวทางดังนี้
set ค่า I และ D ให้เป็น ศูนย์
ค่อยๆเพิ่มค่า P จนกระทั่งพบ การแกว่งของค่า output
ค่า P ควรตั้งค่าที่ประมาณครึ่งหนึ่งของค่าเต็ม100%
หลังจากได้ค่า P แล้ว ให้ปรับค่า I ให้เพิ่มขึ้นจนกระทั่ง ไม่มี offset เกิดขึ้นโดยยึดที่กรอบเวลา response time ของระบบที่เหมาะสมที่เราต้องการ
หากเพิ่ม I มากเกินไป จะเริ่มเห็น Overshoot อย่างมีนัยสำคัญและ เห็นความไม่เสถียรของระบบ
หลังตั้งค่า I เรียบร้อย แล้ว ค่อยเริ่มปรับค่า D โดย ค่า D จะช่วย ลดค่า overshoot และ ปรับกลับไปใกล้ค่า SP ได้รวดเร็วขึ้น
หากปรับค่า D มากเกินไป จะเห็น overshoot มีขนาดใหญ่ขึ้นเนื่องจากระบบตอบสนองช้าลง
เมื่อปรับตัวparameter เหล่านี้เรียบร้อยแล้ว เราจะได้ระบบควบคุมที่ตอบสนองได้มีประสิทธิภาพสูงสุด ตอบสนองได้เร็วตามเวลาที่ต้องการ และมีการแกว่งของค่าที่วัดได้ ลดลงเมื่อเทียบกับ Set point
ถึงแม้การปรับจูนค่า PID ด้วยวิธี manual จะเป็นวิธีการที่มีประสิทธิภาพ แต่ก็มีข้อเสียที่กล่าวไปแล้วข้างต้น คือต้องใช้ประสบการณ์ของผู้ปรับจูนพอสมควร
ดังนั้น Ziegler-Nichols method จึงเป็นวิธีการอีกวิธีที่แนะนำ เนื่องจากมีโครงสร้างที่เป็นขั้นเป็นตอนชัดเจนกว่า
ผู้อ่านสามารถหาข้อมูลเพิ่มเติม ได้จาก
อย่างไรก็ตาม ในปัจจุบัน การปรับจูนค่า PID มีความสะดวกมากขึ้น ขึ้นกับยี่ห้อและ รุ่นของ controller นั้นๆ
ด้านล่างเป็นตัวอย่างการปรับจูนค่า PID ของ Controller ยี่ห้อ Azbil รุ่น SDC36 เพื่อประกอบความเข้าใจ
หากผู้อ่านมีความสนใจสามารถสอบถามหาสินค้าเพิ่มเติมได้ที่ contact ของบริษัท โดยคลิก Link Contact Us
ข้อมูลเพิ่มเติม เกี่ยวกับ PID
ค่า P เป็นการ control โดยดูจาก PV ปัจจุบัน เทียบกับ SP
แต่หากควบคุมแบบ P แล้ว ค่า PV ยังไปไม่ถึงค่า SP เร็วเท่าที่ต้องการ( Response time ไม่ได้ตามที่ออกแบบระบบ) การ control แบบ I จะเข้ามาช่วยทำหน้าที่ควบคุมเพิ่มเติม โดยมีหลักการพิจารณาจากผล error ในอดีต แล้วส่งสัญญาณปรับ PV ให้เข้าใกล้จุด SP ได้เร็วขึ้นเลย โดยไม่รออ่านค่า PV ปัจจุบัน
และเมื่อปรับ PV ปัจจุบัน เข้าใกล้จุด SP โดยการควบคุมแบบ I แล้ว
การ control แบบ D จะมามีบทบาท ช่วย control เพิ่มเติม เพราะสามารถคาดการณ์ว่า PV ปัจจุบัน ว่าใกล้จะถึงจุด SP เมื่อใด การควบคุมแบบ D จะเตรียมเปลี่ยนแปลงสัญญาณ เพื่อ ให้ PV ที่กำลังใกล้ถึง SP เปลี่ยนแปลงน้อยลง เป็นการชะลอการเปลี่ยนแปลง
จึงอาจกล่าวคร่าวๆได้ว่า
การควบคุมแบบ P (Proportional control) เป็นการควบคุมแบบ direct response
การควบคุมแบบ I (Integral control) เป็นการเพิ่ม response time ในการควบคุมให้ไวขึ้น
การควบคุมแบบ D (Derivative control) เป็นการทำให้ไม่เกิด overshoot และ การแกว่งผ่านค่า Set point เพราะชะลอการเปลี่ยนแปลงของค่า PV เมื่อเห็นว่าค่าเกือบเข้าใกล้ SP
Proportional และ Integral Control จะเร่ง response time ให้เร็วขี้นในขณะที่ Derivative Control จะชะลอ response time ให้ช้าลง
ถ้าปรับ D มากเกินไป ก็จะทำให้ระบบเกิด noise และ เกิดการแกว่งแบบ high frequency เนื่องจากระบบเริ่มตอบสนองช้าลงกว่าที่ควรจะเป็น ในขณะที่ปรับ D น้อยเกินไปจะทำให้ระบบเกิด Overshoot ซึ่งเป็นเรื่องวิกฤตสำหรับบางกระบวนการที่การเกิด Overshoot เป็นเรื่องอันตราย
การตั้งค่า Controller AZBIL รุ่น SDC 36
PID Control PID Tuning AZBIL Controller SDC36 AZBIL AZBIL Controller การตั้งค่า