ห้องสมุดหน้าหลัก › ภาค 5 — ควบคุมและเดินเครื่อง › บทที่ 39

บทที่ 39 — ระบบควบคุม

Control Systems

⚡ ทำไมบทนี้สำคัญต่อการเข้าใจโรงไฟฟ้า

บทที่ 38 ได้พาผู้เรียนไปรู้จักเครื่องมือวัดที่ทำหน้าที่เป็น "ประสาทสัมผัส" ของโรงไฟฟ้าไปแล้ว แต่ประสาทสัมผัสอย่างเดียวไม่ทำให้เครื่องจักรเดินเองได้ ต้องมี "สมอง" ที่ตัดสินใจและ "กล้ามเนื้อ" ที่สั่งวาล์วหรือแดมเปอร์ให้ขยับตามด้วย บทนี้คือเรื่องของสมองนั้น — ตั้งแต่ตรรกะ PID พื้นฐานที่คุมลูปเดี่ยว ๆ อย่างระดับน้ำหรืออุณหภูมิ ไปจนถึงสถาปัตยกรรม DCS ทั้งระบบที่ประสานลูปนับพันลูปให้ทำงานสอดคล้องกัน และตรรกะป้องกันที่ต้องแยกอิสระจากลูปควบคุมทั่วไปโดยสิ้นเชิงเพื่อความปลอดภัย เนื้อหาทั้งหมดนี้คือรากฐานที่จำเป็นก่อนจะเข้าใจบทที่ 40 ว่าการเดินเครื่องโรงไฟฟ้าจริงตั้งแต่ startup จนถึง full load ต้องอาศัยระบบควบคุมเหล่านี้ทำงานประสานกันอย่างไร

🎯 เป้าหมายการเรียนรู้
  • อธิบายองค์ประกอบของ control loop (PV, SP, MV, error) และผลของแต่ละ term ใน PID
  • Tune ลูปเบื้องต้นด้วยแนวคิด Ziegler–Nichols และอธิบาย/ป้องกัน integral windup
  • อธิบาย cascade และ feedforward พร้อมตัวอย่างจริงในโรงไฟฟ้า
  • อธิบายสถาปัตยกรรม DCS (controller redundancy, I/O, network, HMI) และการแยก DCS ออกจาก SIS
  • อธิบายลูปควบคุม boiler หลักสามลูป: 3-element drum level, combustion cross-limiting, steam temperature
  • อธิบาย unit coordination (boiler-follow / turbine-follow / coordinated), 2oo3 voting และหน้าที่ของ BMS/MFT

39.1 Control Loop พื้นฐาน (Basic Control Loop)

ตลอดทั้งบทนี้จะใช้ศัพท์สี่คำซ้ำ ๆ ที่ต้องจำให้แม่นก่อน — PV (Process Variable — ค่าที่วัดได้จริงจากกระบวนการ), SP (Setpoint — ค่าที่ต้องการให้เป็น), error ซึ่งคำนวณจาก \(e = SP - PV\) และ MV (Manipulated Variable — สัญญาณ output ที่ส่งไปขับวาล์วหรือแดมเปอร์ในช่วง 0–100%) ระบบที่วัด PV แล้วป้อนกลับมาเทียบกับ SP เพื่อแก้ MV โดยอัตโนมัติเรียกว่า closed loop ในขณะที่ open loop คือการสั่งงานทางเดียวโดยไม่ดูผลตอบกลับเลย เช่นตอน operator สั่งวาล์วด้วยมือแบบ manual

ทิศทางการทำงานของลูปมีสองแบบที่ต้องตั้งให้ถูก — direct acting คือเมื่อ PV เพิ่มขึ้น output ต้องเพิ่มขึ้นตาม เช่นการคุมระดับด้วยวาล์วระบายออก (ระดับสูง ต้องเปิดวาล์วมากขึ้น) ส่วน reverse acting คือเมื่อ PV เพิ่มขึ้น output ต้องลดลง เช่นลูปคุมระดับ drum ด้วยวาล์ว feedwater (ระดับสูงแล้ว ต้องหรี่น้ำเข้าให้น้อยลง) หากตั้งทิศทางผิด ลูปจะวิ่งหนีจาก SP แทนที่จะเข้าหา ซึ่งเป็นความผิดพลาดพื้นฐานที่ต้องตรวจสอบทุกครั้งที่ configure ลูปใหม่

ทุกลูปมี dead time ติดตัวเสมอ ซึ่งเกิดจากทั้งเวลาที่สัญญาณเดินทางและเวลาที่กระบวนการตอบสนองช้า ยิ่ง dead time ยาว ยิ่งไม่สามารถ tune ให้ลูปตอบสนองไวได้ เพราะจะทำให้เกิดการแกว่งรุนแรง นี่คือเหตุผลที่ลูปอุณหภูมิ (ซึ่งมีมวลความร้อนสะสมมหาศาลรอถ่ายเทความร้อน) ตอบสนองช้ากว่าลูป flow (ซึ่งของไหลตอบสนองแทบจะทันทีที่วาล์วขยับ) เสมอ ตัวอย่างการจัดลำดับความเร็วของลูปในโรงไฟฟ้าโดยทั่วไป เรียงจากเร็วไปช้าคือ flow loop (ระดับวินาที), pressure loop (เร็วถึงปานกลาง), level loop (ช้า เพราะเป็น integrating process ที่ไม่มีจุดสมดุลตามธรรมชาติ) และ temperature loop (ช้าที่สุด ระดับนาที)

ในการเดินเครื่องจริง operator สามารถสลับลูปใด ๆ ระหว่างโหมด auto กับ manual ได้เสมอ จุดที่ต้องออกแบบให้ดีคือ bumpless transfer — เมื่อสลับกลับเข้าโหมด auto ตัว controller ต้องเริ่มคำนวณจาก output ปัจจุบันที่ operator ตั้งไว้ ไม่ใช่กระโดดไปยังค่าที่คำนวณได้ทันที เพราะการกระชากของ output แบบกะทันหันอาจทำให้กระบวนการสั่นสะเทือนโดยไม่จำเป็น

Feedback Control Loop — PID Block Diagram SP + e = SP − PV P: Kp·e I: (Kp/Ti)∫e dt D: Kp·Td·de/dt Σ MV (0–100%) Control Valve Process PV Transmitter
Feedback control loop — summing junction เทียบ SP กับ PV feedback ได้ error แตกเข้า P/I/D สามเทอมขนานกัน รวมที่ Σ เป็น MV ขับ control valve ผ่าน process แล้ววัดกลับด้วย transmitter
Globe control valve พร้อม smart positioner และ pneumatic actuator ติดตั้งบนท่อกระบวนการหุ้มฉนวน
  1. Pneumatic actuator — โดมด้านบนที่รับแรงลมมาขยับก้าน stem เป็นปลายทางของสัญญาณ MV ที่ output จาก controller หลังผ่าน positioner แล้ว ตามที่อธิบายไว้ในแผนภาพ block diagram ข้างต้น
  2. Smart valve positioner — กล่องอุปกรณ์ที่แปลงสัญญาณ MV (4–20 mA) จาก DCS เป็นแรงลมป้อน actuator พร้อมจอแสดงตำแหน่งวาล์วปัจจุบัน (เห็นค่า 50.0 ในรูป) และมาตรวัดลมในตัว
  3. Instrument air supply (Stainless steel tubing) — ท่อลมความดันที่ป้อนพลังงานให้ positioner ใช้ขยับ actuator เป็นแหล่งพลังงานกลไกของทุก control valve ในลูป
  4. Globe control valve — ตัววาล์วที่เป็นปลายทางสุดท้ายของทุกลูปควบคุม (final control element) ทำหน้าที่แปลงคำสั่ง MV เป็นการเปลี่ยนแปลงจริงในกระบวนการ ตามที่อธิบายไว้ในบทที่ 38
  5. Process flow — ทิศทางการไหลของของไหลในกระบวนการที่วาล์วตัวนี้กำลังควบคุมอยู่
  6. Insulated process piping — ท่อกระบวนการหุ้มฉนวนที่วาล์วติดตั้งอยู่ บ่งบอกว่าเป็นงานอุณหภูมิสูง เช่นไอน้ำหรือน้ำร้อน
ปลายทางของทุกลูปควบคุม — control valve พร้อม positioner รับคำสั่ง 4–20 mA

39.2 PID Control และการ Tune (PID Control & Tuning)

เทอม P (proportional) ออกแรงตอบสนองตามขนาดของ error ทันที ยิ่งเพิ่มค่า Kp (proportional gain) ลูปยิ่งตอบสนองไวขึ้นแต่ก็แกว่งง่ายขึ้นตามไปด้วย ข้อจำกัดของ P เพียงอย่างเดียวคือจะเหลือ offset (steady-state error ที่ค้างอยู่ถาวร) เสมอ ยกเว้นในกรณี integrating process บางชนิด เทอม I (integral หรือ reset) สะสม error ที่ผ่านมาเพื่อกำจัด offset นั้นให้หมดไป แต่หาก Ti (integral time) สั้นเกินไปจะทำให้ลูปแกว่งได้เช่นกัน ในทางปฏิบัติ ลูป flow ทั่วไปมักใช้ PI ด้วยค่า Kp ต่ำประมาณ 0.3–0.8 และ Ti 5–15 วินาที ในขณะที่ลูป level มักใช้ P เดี่ยวหรือ PI ที่ตอบสนองช้า ๆ ส่วนลูปอุณหภูมิมักต้องใช้ PID เต็มรูปแบบ

เทอม D (derivative หรือ rate) ออกแรงตามความชันของ error ช่วยเบรกไม่ให้เกิด overshoot รุนแรงในลูปที่ตอบสนองช้าอย่างลูปอุณหภูมิ แต่ในขณะเดียวกันก็ขยาย noise ในสัญญาณให้แรงขึ้นด้วย จึงแทบไม่นำมาใช้กับลูป flow ที่มีสัญญาณกระเพื่อมสูงอยู่แล้ว เทคนิคที่นิยมใช้แก้ปัญหา derivative kick (แรงกระชากทันทีเมื่อเปลี่ยน SP) คือให้เทอม D คำนวณจากการเปลี่ยนแปลงของ PV โดยตรงแทนที่จะคำนวณจาก error

วิธี tune เบื้องต้นที่ใช้กันแพร่หลายคือ Ziegler–Nichols แบบ closed loop — ปิดเทอม I และ D ก่อน แล้วค่อย ๆ เพิ่ม Kp จนกว่าลูปจะแกว่งคงที่ด้วยแอมพลิจูดสม่ำเสมอ (ไม่โตขึ้นหรือลดลง) ค่า Kp ที่จุดนั้นเรียกว่า ultimate gain (Ku) และคาบการแกว่งเรียกว่า ultimate period (Pu) จากนั้นตั้งค่าเริ่มต้นตามสูตร \(K_p = 0.6K_u\), \(T_i = 0.5P_u\), \(T_d = 0.125P_u\) วิธีนี้ให้เพียงจุดตั้งต้นเท่านั้น ไม่ใช่ค่าสุดท้าย เพราะ Ziegler–Nichols มักให้ลูปที่ค่อนข้าง aggressive มี overshoot ราว 25% ซึ่งต้อง fine-tune ลดลงอีกในสถานการณ์จริงส่วนใหญ่

ปัญหาที่พบบ่อยที่สุดในลูปที่ tune ไม่ดีคือ integral windup — เมื่อวาล์วอิ่มตัวถึงขีดสุด (0% หรือ 100%) แต่ error ยังคงอยู่ เทอม I จะยังคงสะสมค่าต่อไปเรื่อย ๆ เกินความเป็นจริง เมื่อ error กลับทิศในที่สุด ลูปจะยังค้างอยู่ฝั่งเดิมนานผิดปกติกว่าจะตอบสนอง วิธีแก้คือ anti-windup ซึ่งหยุดการสะสมของเทอม I ทันทีที่ output อิ่มตัว — controller สมัยใหม่มีฟังก์ชันนี้ในตัวอยู่แล้ว แต่ต้อง config ให้ถูกต้องจึงจะทำงาน อาการอื่นที่พบบ่อยได้แก่ ลูปที่แกว่งเป็นคาบสม่ำเสมอมักบ่งบอกว่า gain สูงเกินไปหรือมีปัญหา valve stiction, ลูปที่เข้า SP ช้าเป็นชั่วโมงมักเกิดจาก Ti ที่ยาวเกินไป และ overshoot ที่รุนแรงทุกครั้งที่โหลดเปลี่ยนมักบ่งบอกว่าลูปขาด feedforward ตามที่จะอธิบายในหัวข้อถัดไป

$$MV(t) = K_p\left[e(t) + \frac{1}{T_i}\int_0^t e\,dt + T_d\,\frac{de}{dt}\right] + MV_0$$

โดย \(MV\) คือ output (%), \(K_p\) คือ proportional gain (ไร้หน่วย; บางระบบใช้ proportional band \(PB\% = 100/K_p\) แทน), \(e\) คือ error = SP − PV (%), \(T_i\) คือ integral time (วินาทีหรือนาที), \(T_d\) คือ derivative time (วินาที) และ \(MV_0\) คือค่า output ตั้งต้น (%)

ผลตอบสนองของ PV ต่อ Step Change ของ SP เมื่อ Tune ต่างกัน PV เวลา SP (step) Kp สูงเกิน — แกว่ง Tune พอดี — overshoot เล็ก เข้าเร็ว Kp ต่ำ/Ti ยาว — เข้า SP ช้า offset (P อย่างเดียว)
เปรียบเทียบผลตอบสนองของ PV ต่อ step change ของ SP — Kp สูงเกินทำให้แกว่งไม่หยุด, tune พอดีให้ overshoot เล็กและเข้าเร็ว, Kp ต่ำ/Ti ยาวเข้า SP ช้า, ส่วน P อย่างเดียวเหลือ offset ค้างถาวร

39.3 Cascade และ Feedforward (Cascade & Feedforward)

โครงสร้าง cascade คือการให้ลูปนอก (master) ส่ง output ของตัวเองไปเป็น setpoint ของลูปใน (slave) แทนที่จะสั่งวาล์วโดยตรง ตัวอย่างคลาสสิกที่สุดในโรงไฟฟ้าคือ drum level (master) ที่ส่ง SP ไปให้ feedwater flow (slave) — เมื่อเกิด disturbance ฝั่งน้ำ เช่นความดันปั๊มแกว่งขึ้นลงกะทันหัน ลูป flow (ซึ่งเร็วกว่ามาก) จะจับและแก้ไขปัญหานั้นได้ก่อนที่ระดับ drum จะทันรู้สึกถึงผลกระทบเลยด้วยซ้ำ เงื่อนไขสำคัญที่ทำให้ cascade คุ้มค่าคือลูปในต้องเร็วกว่าลูปนอกอย่างน้อยประมาณ 3–5 เท่า มิฉะนั้นทั้งสองลูปจะ "ตีกัน" แทนที่จะช่วยกัน ตัวอย่าง cascade อื่นที่พบได้ทั่วไปในโรงไฟฟ้า ได้แก่ steam temperature (master) ที่ส่ง SP ไปให้ spray water flow (slave), furnace pressure ที่ส่ง SP ไปให้ ID fan inlet vane และ deaerator level ที่ส่ง SP ไปให้ makeup valve

Feedforward เป็นแนวคิดที่ต่างออกไป คือการวัด disturbance ที่กำลังจะเกิดผลกระทบแล้วชดเชยล่วงหน้าทันทีโดยไม่ต้องรอให้ error เกิดขึ้นจริงก่อน ตัวอย่างที่ชัดเจนที่สุดคือเมื่อ steam flow เพิ่มขึ้น (สัญญาณบ่งบอกว่าโหลดกำลังเพิ่ม) ระบบจะบวกคำสั่ง feedwater เพิ่มเข้าไปทันที โดยไม่ต้องรอให้ระดับ drum ตกลงจริงก่อนแล้วค่อยแก้ อย่างไรก็ตาม feedforward เดี่ยว ๆ ไม่มีวันแม่นยำสมบูรณ์แบบได้ เพราะแบบจำลอง (model) ที่ใช้คำนวณค่าชดเชยไม่มีทางตรงกับความเป็นจริง 100% เสมอ จึงจำเป็นต้องมี feedback คอยตามเก็บเศษ error ที่เหลืออยู่เสมอ โครงสร้างที่ใช้งานจริงจึงเป็น "feedforward บวก feedback trim" เสมอ ไม่ใช่ feedforward ล้วน ๆ

ลูปควบคุม 3-element drum level ที่จะอธิบายในหัวข้อ 39.5 คือตัวอย่างที่สมบูรณ์ที่สุดของการรวม cascade กับ feedforward เข้าด้วยกันในลูปเดียว — steam flow ทำหน้าที่เป็น feedforward, feedwater flow ทำหน้าที่เป็น slave loop ของ cascade และ drum level เองทำหน้าที่เป็น master ที่คอยแก้ไข error ที่เหลือจากทั้งสองกลไกนั้น

3-Element Drum Level — Cascade + Feedforward shrink/swell Steam Drum Steam Flow (FT) → Superheater Level Transmitter (LT) Level Controller (master) SP level Σ feedforward Flow Controller (slave) Economizer → Feedwater Control Valve Feedwater Flow (FT)
3-element drum level — steam flow เป็น feedforward, feedwater flow เป็น slave loop cascade, level controller เป็น master ที่แก้ error ที่เหลือ ป้องกันปัญหา shrink/swell หลอกให้ควบคุมผิดทาง

39.4 สถาปัตยกรรม DCS (DCS Architecture)

DCS ทั้งระบบจัดเรียงเป็นลำดับชั้นที่ชัดเจน เริ่มจาก field device ที่ระดับล่างสุด ส่งสัญญาณผ่าน I/O module (แบ่งเป็น AI/AO สำหรับสัญญาณ analog และ DI/DO สำหรับสัญญาณ digital) ขึ้นไปยัง process controller ผ่านเครือข่ายควบคุมแบบ redundant ขึ้นไปจนถึงชั้นบนสุดที่ประกอบด้วย HMI สำหรับ operator, engineering workstation สำหรับวิศวกรที่ต้องแก้ logic และ historian ที่เก็บบันทึกข้อมูลย้อนหลังทั้งหมด

หัวใจของความน่าเชื่อถือคือ controller redundancy แบบ 1:1 hot standby — controller คู่ทำงานพร้อมกันตลอดเวลา sync ข้อมูลกันทุก scan cycle เมื่อตัวหลักมีปัญหา ตัวสำรองจะเข้าทำหน้าที่แทนภายในเวลาไม่ถึงหนึ่ง scan โดยที่ output ไม่กระตุกหรือสะดุดเลยแม้แต่น้อย scan time ของลูปควบคุมทั่วไปอยู่ที่ประมาณ 100–500 มิลลิวินาที ในขณะที่ลูปที่เกี่ยวข้องกับ turbine ต้องการความเร็วกว่านั้นมาก อยู่ที่ประมาณ 10–50 มิลลิวินาที I/O ที่สำคัญสามารถจัดเป็นแบบ redundant ได้เช่นกัน (เช่นการ์ด AI คู่) พร้อมกระจายโหลดข้าม card เพื่อไม่ให้ card เดียวเสียแล้วกระทบสัญญาณสำคัญพร้อมกันหลายจุด อย่างไรก็ตาม สัญญาณที่เกี่ยวข้องกับความปลอดภัยโดยตรงยังคงเดินสายแบบ hardwired โดยไม่พึ่งพาเครือข่ายดิจิทัลเลยตามที่กล่าวถึงในบทที่ 38

เครือข่ายควบคุมจัดเป็นคู่ redundant (มักเรียก network A และ network B) ในโครงสร้างแบบ ring หรือ star และที่สำคัญคือต้องแยกเครือข่ายควบคุมนี้ออกจากเครือข่ายธุรกิจของโรงงาน (plant business network) ด้วย firewall หรือ DMZ (Demilitarized Zone — เขตกันชนเครือข่าย) อย่างเคร่งครัด ความปลอดภัยไซเบอร์ตามมาตรฐาน IEC 62443 กลายเป็นข้อกำหนดมาตรฐานของโรงไฟฟ้าที่สร้างใหม่ไปแล้วในปัจจุบัน ชั้น HMI จัดโครงสร้างกราฟิกเป็นลำดับชั้นเช่นกัน ตั้งแต่ภาพรวมทั้งโรง (overview) ลงไปถึงระดับ unit, ระดับ system และระดับ loop แต่ละลูปมี faceplate ของตัวเอง พร้อม trend และ alarm summary ให้ operator เรียกดูได้ทันที ในขณะที่ engineering station ใช้สำหรับแก้ไข logic โดยตรง ซึ่งการแก้ไขขณะระบบยังทำงานอยู่ (online) ต้องผ่านกระบวนการ MOC (Management of Change — การจัดการการเปลี่ยนแปลง) เพื่อป้องกันความผิดพลาดที่ไม่ได้ตั้งใจ ส่วน historian เก็บข้อมูลของทุก tag ไว้ (มักที่ความละเอียด 1 วินาที) ซึ่งกลายเป็นขุมทรัพย์สำคัญสำหรับวิเคราะห์เหตุการณ์ trip วิเคราะห์สมรรถนะ และปรับ tuning ย้อนหลังในภายหลัง

สถาปัตยกรรม DCS — จาก Field ถึง Historian Plant Business Network Firewall Operator Station (HMI) Engineering Station Historian Control Network A Control Network B Controller A Controller B (hot standby) I/O Modules Field Devices (4–20 mA / HART) SIS (แยกอิสระ)
สถาปัตยกรรม DCS แบบลำดับชั้น — field device ขึ้นสู่ HMI/historian ผ่าน controller คู่ hot standby และเครือข่าย redundant คั่นด้วย firewall ก่อนถึง business network; SIS แยกอิสระเชื่อมตรงกับ field device และส่งเฉพาะข้อมูลกลับมา DCS
ห้องควบคุมกลางโค้งพร้อมจอ operator หลายตัวและ DCS display wall ขนาดใหญ่แสดง process overview
  1. System clock — นาฬิกาแสดงเวลาอ้างอิงของระบบทั้งหมด สำคัญมากสำหรับการเทียบเวลาเหตุการณ์ต่าง ๆ ย้อนหลังกับ historian
  2. DCS display wall (process overview) — จอผนังขนาดใหญ่แสดงภาพรวมกระบวนการทั้งโรงในจอเดียว เป็นชั้นบนสุดของลำดับชั้น HMI ตามที่อธิบายไว้ข้างต้น
  3. Control room interface (glass wall) — ผนังกระจกที่แบ่งพื้นที่ห้องควบคุมออกจากพื้นที่ทำงานวิศวกรรมข้างเคียง
  4. Engineering workstation — จุดทำงานของวิศวกรที่ใช้แก้ไข logic ผ่าน engineering station ตามที่อธิบายไว้ข้างต้น มักแยกโซนจากโต๊ะ operator หลัก
  5. Real-time trend curves — กราฟแนวโน้มค่าต่าง ๆ แบบเรียลไทม์บนจอผนัง ช่วยให้ operator เห็นทิศทางการเปลี่ยนแปลงไม่ใช่แค่ค่าปัจจุบัน
  6. Operator workstation — โต๊ะทำงานหลักของ operator พร้อมจอหลายตัวแสดง faceplate ระดับ unit/system/loop ตามลำดับชั้นที่อธิบายไว้ข้างต้น
  7. High-resolution display panels — แผงจอความละเอียดสูงที่ประกอบกันเป็น DCS display wall ให้รายละเอียดชัดเจนแม้มองจากระยะไกล
  8. Ambient lighting (for low-light visibility) — แสงไฟพื้นหลังโทนอบอุ่นที่ออกแบบให้ห้องมืดพอเห็นจอชัด แต่ไม่มืดจนเกินไปจนเมื่อยล้าสายตา
  9. Ergonomic operator chair — เก้าอี้ที่ออกแบบตามหลักสรีรศาสตร์ รองรับการนั่งเฝ้าจอต่อเนื่องหลายชั่วโมงต่อกะ
  10. Alarm and event acknowledgment panel — แผงปุ่มกดสำหรับ acknowledge alarm และเหตุการณ์ต่าง ๆ ที่เกิดขึ้น ตามที่จะอธิบายรายละเอียดในหัวข้อ 39.8
  11. Secure access (door) — ประตูเข้าออกที่ควบคุมสิทธิ์การเข้าถึง ป้องกันบุคคลที่ไม่เกี่ยวข้องเข้าห้องควบคุมโดยไม่ได้รับอนุญาต
ห้องควบคุมกลางพร้อม DCS display wall — operator คุมทั้งโรงจากจุดเดียว
แถวตู้ DCS เปิดฝาแสดง controller redundant, I/O module และสายไฟ marshalled เป็นระเบียบ
  1. Cabinet frame — โครงตู้เหล็กที่รองรับอุปกรณ์ทั้งหมดภายใน ออกแบบให้ระบายความร้อนและเข้าถึงบำรุงรักษาได้ง่าย
  2. I/O modules — การ์ดรับ-ส่งสัญญาณที่เชื่อมต่อกับ field device โดยตรง ตามที่อธิบายไว้ในลำดับชั้น DCS ข้างต้น
  3. Redundant controllers (Primary and Standby) — controller คู่ hot standby ตามที่อธิบายไว้ข้างต้น sync กันตลอดเวลาเพื่อ failover ได้ทันทีโดยไม่กระทบ output
  4. Controller status LEDs — ไฟ LED แสดงสถานะการทำงานของ controller แต่ละตัว ให้ช่างเทคนิคตรวจสุขภาพระบบได้ด้วยสายตาอย่างรวดเร็ว
  5. Network switches — อุปกรณ์สวิตช์เครือข่ายที่เชื่อมต่อ controller เข้ากับ control network A/B ตามที่อธิบายไว้ในแผนภาพสถาปัตยกรรมข้างต้น
  6. Marshalled field wiring (terminal blocks) — จุดต่อสายที่รวบรวมสายจาก field device แต่ละเส้นเข้ากับ terminal block อย่างเป็นระเบียบก่อนเข้าสู่ I/O module
  7. Marshalled system wiring — สายไฟภายในระบบที่จัดเรียงเป็นระเบียบระหว่างการ์ดต่าง ๆ ภายในตู้เดียวกัน
  8. Cable ducts (horizontal / vertical) — รางเดินสายไฟฟ้าทั้งแนวนอนและแนวตั้งที่จัดเก็บสายจำนวนมากให้เป็นระเบียบ ป้องกันสายพันกันและง่ายต่อการตรวจสอบ
  9. Raised floor (tiles) — พื้นยกสูงที่ซ่อนสายไฟและท่อระบายความเย็นไว้ด้านล่าง เป็นมาตรฐานของห้องอุปกรณ์ DCS ทั่วไป
ตู้ controller และ I/O ของ DCS — controller ทำงานคู่แบบ hot standby
🔧 ในโรงไฟฟ้าจริง

ลูปที่ "แกว่งเป็นจังหวะสม่ำเสมอ" อย่าเพิ่งรีบโทษการ tune ผิด — ให้ตรวจสอบ valve stiction ก่อนเสมอ โดยดู trend ของ MV เทียบกับ PV: หาก MV เลื่อนขึ้นลงต่อเนื่องแต่ PV ขยับเป็นขั้นบันไดกระตุกไม่ต่อเนื่อง นั่นคือสัญญาณของ stiction ซึ่งไม่ว่าจะ tune เท่าไรก็ไม่มีวันหายไป จนกว่าจะซ่อมกลไก positioner หรือตัววาล์วเอง

39.5 ลูปควบคุม Boiler หลัก (Boiler Control Loops)

ลูป 3-element drum level วัดค่าสามตัวพร้อมกัน คือ drum level (feedback), steam flow (feedforward) และ feedwater flow (slave loop) ดังที่อธิบายไว้ในหัวข้อ 39.3 เหตุผลที่การวัดระดับเพียงตัวเดียว (single element) ไม่เพียงพอคือปรากฏการณ์ shrink/swell ที่กล่าวถึงในบทที่ 38 — เมื่อโหลดเพิ่มขึ้นกะทันหัน ระดับที่วัดได้จะ "พองขึ้น" ชั่วคราวทั้งที่มวลน้ำจริงในระบบกำลังลดลง หากใช้ single element ลูปจะตีความผิดและหรี่วาล์ว feedwater ลงในจังหวะที่ควรเพิ่มน้ำ แต่เมื่อมี steam flow เป็น feedforward ระบบจะสั่งเพิ่มน้ำเข้าไปถูกทิศทางทันทีโดยไม่สนใจว่าระดับกำลังพองขึ้นชั่วคราวหรือไม่ อย่างไรก็ตาม ที่โหลดต่ำกว่าประมาณ 30% การวัด steam flow และ feedwater flow ด้วยหลัก DP จะไม่แม่นยำ เพราะค่า ΔP ต่ำเกินไปตามความสัมพันธ์ square root ที่อธิบายไว้ในบทที่ 38 ระบบจึงต้องสลับเป็นโหมด single element โดยอัตโนมัติในช่วงโหลดต่ำ แล้วกลับมาเป็น 3-element เมื่อโหลดพ้นเกณฑ์นั้นไปแล้ว

Combustion control แบบ cross-limiting (หรือเรียกอีกชื่อว่า lead-lag) มีหลักการง่าย ๆ แต่สำคัญมากต่อความปลอดภัย — เมื่อโหลดเพิ่มขึ้น อากาศ (air) ต้องเพิ่มก่อนเชื้อเพลิง (fuel) ตามทีหลังเสมอ ในขณะที่เมื่อโหลดลดลง เชื้อเพลิงต้องลดก่อนอากาศตามทีหลังเสมอเช่นกัน ผลลัพธ์ที่ได้คือ "อากาศต้องมากกว่าเชื้อเพลิงตลอดเวลา" แม้แต่ในช่วง transient ที่โหลดกำลังเปลี่ยนแปลง ไม่มีจังหวะใดเลยที่เกิดสภาวะ fuel-rich (เชื้อเพลิงมากเกินอากาศ) ซึ่งเสี่ยงต่อการระเบิดหรือเกิดก๊าซ CO สะสม ในทางปฏิบัติ ตรรกะนี้ทำได้ด้วยการใช้ high-select ที่ฝั่ง air demand (เลือกค่าที่สูงกว่าระหว่างคำสั่งโหลดกับ fuel flow ที่วัดได้จริง) และ low-select ที่ฝั่ง fuel demand (เลือกค่าที่ต่ำกว่าระหว่างคำสั่งโหลดกับ air flow ที่วัดได้จริง) ซ้อนทับบนตรรกะนี้ยังมี O2 trim ที่ปรับ air-fuel ratio อย่างช้า ๆ ตามค่าที่วัดได้จาก O2 analyzer โดยมี setpoint อยู่ในช่วงประมาณ 2–4% ตามระดับโหลดตามที่กล่าวถึงในบทที่ 17

Steam temperature control มี setpoint ของไอน้ำหลักอยู่ที่ประมาณ 540–600 °C โดยยอมให้คลาดเคลื่อนได้ไม่เกิน ±5 °C ควบคุมด้วยการฉีดน้ำ spray เข้า attemperator ในโครงสร้างแบบ cascade — อุณหภูมิที่ทางออก (master) ส่ง SP ไปให้อัตราการไหลของน้ำ spray หรืออุณหภูมิระดับกลาง (slave) เหตุผลที่ต้องใช้ cascade แทนการคุมตรงคือ superheater ตอบสนองช้ามาก มี dead time ระดับนาที จึงมักต้องเสริมด้วย feedforward จากสัญญาณโหลดหรือใช้เทคนิค advanced control เพิ่มเติม สำหรับ reheat temperature นิยมคุมด้วย gas damper หรือ burner tilt เป็นหลักก่อน แล้วจึงใช้ spray water เป็นตัวเลือกสุดท้ายเท่านั้น เพราะการฉีด spray ฝั่ง reheat จะเสียประสิทธิภาพของวัฏจักรโดยตรงตามที่อธิบายไว้ในบทที่ 13 ส่วน furnace pressure ควบคุมให้อยู่ในช่วงประมาณ −0.1 ถึง −0.25 kPa ในระบบ balanced draft (ตามที่กล่าวถึงในบทที่ 18) ด้วย ID fan โดยมี interlock เชื่อมโยงกับ FD fan และมีฟังก์ชัน runback ที่ลดโหลดอัตโนมัติทันทีเมื่อ fan ตัวใดตัวหนึ่ง trip

Combustion Control — Air-Fuel Cross-Limiting Unit Load Demand High Select (>) Low Select (<) Air Demand Fuel Demand O2 Trim (±) FD Fan / Damper Fuel Valve / Feeder Air Flow (วัดจริง) Fuel Flow (วัดจริง) โหลดขึ้น: air นำ fuel ตาม โหลดลง: fuel ลดก่อน air ตาม
Combustion cross-limiting — ฝั่ง air ใช้ high select เทียบกับ fuel flow ที่วัดจริง ฝั่ง fuel ใช้ low select เทียบกับ air flow ที่วัดจริง เส้นไขว้กลางภาพประกันว่าอากาศมากกว่าเชื้อเพลิงเสมอระหว่าง transient

39.6 Turbine Control และ Unit Coordination (Turbine Control & Unit Coordination)

Turbine governor ทำงานในสองโหมดหลักตามลำดับการเดินเครื่อง — ก่อน synchronize เข้ากับ grid governor จะอยู่ในโหมด speed control คุมรอบให้คงที่ที่ 3,000 rpm (สำหรับระบบ 50 Hz) และเมื่อ sync เข้า grid แล้วจะเปลี่ยนเป็นโหมด load control คุมกำลังไฟฟ้า (MW) ตาม target ที่ตั้งไว้ พร้อมมี droop ประมาณ 4–5% ที่ทำให้เครื่องตอบสนองต่อความถี่ของ grid โดยอัตโนมัติตามที่อธิบายไว้ในบทที่ 31 ระบบยังมี initial pressure limiter หรือ protection คอยเฝ้าดูอยู่เสมอ — หาก main steam pressure ตกต่ำกว่าเกณฑ์ที่กำหนด (บ่งบอกว่า boiler ตามการผลิตไอน้ำไม่ทัน) governor จะหรี่วาล์วลดโหลดลงเองโดยอัตโนมัติ เพื่อไม่ให้ดึงเอาไอน้ำจาก boiler จนเกิดความเสียหาย

ความสัมพันธ์ระหว่างการควบคุม boiler กับ turbine มีสามแบบหลัก — Boiler-follow คือให้ turbine เป็นตัวคุม MW โดยตอบสนองต่อการเปลี่ยนโหลดอย่างรวดเร็ว ในขณะที่ boiler ตามคุม pressure ทีหลัง ข้อดีคือ MW ตอบสนองไวมาก แต่ pressure จะแกว่งไปมา วิธีนี้อาศัยพลังงานที่สะสมอยู่ใน boiler เป็นบัฟเฟอร์ชั่วคราว Turbine-follow เป็นแนวทางตรงข้าม คือให้ boiler เป็นตัวคุม MW ผ่านการปรับ firing rate ในขณะที่ turbine คุม pressure ให้นิ่ง ผลลัพธ์คือ pressure นิ่งมากแต่ MW ตอบสนองช้า (ต้องรอ boiler ปรับตัวซึ่งใช้เวลาระดับนาที) วิธีนี้มักใช้ในสถานการณ์ที่ boiler อยู่ในสภาพอ่อนแอหรือช่วงทดสอบระบบ ส่วนโหมดที่ใช้เป็นมาตรฐานของโรงไฟฟ้าขนาดใหญ่ทั่วไปคือ Coordinated Control System (CCS) ซึ่งส่งคำสั่งไปทั้ง boiler และ turbine พร้อมกันจาก unit load demand เดียวกัน บวกกับการแก้ไขตามความถี่ของ grid ทำให้ได้ทั้งความไวในการตอบสนองและความนิ่งของ pressure ไปพร้อมกัน โหมดนี้ยังรองรับการเดินเครื่องแบบ sliding pressure ที่โหลดต่ำได้ด้วย

ฟังก์ชันสำคัญอีกอย่างของ CCS คือ runback — เมื่ออุปกรณ์หลักตัวใดตัวหนึ่ง trip ไป เช่น boiler feed pump, FD fan หรือ mill ตัวใดตัวหนึ่งหลุดออกจากระบบ CCS จะลดโหลดของทั้ง unit ลงโดยอัตโนมัติและรวดเร็วไปยังระดับที่อุปกรณ์ที่เหลืออยู่ยังรับภาระได้ (เช่นลดลงเหลือประมาณ 60% ของพิกัด) โดยที่ operator ไม่ต้องเข้าไปแทรกแซงหรือดำเนินการอะไรด้วยตัวเองเลย

39.7 Interlocks, SIS/ESD และ BMS (Protection Logic & Burner Management)

Interlock และ protection เป็นตรรกะคนละชั้นความสำคัญที่มักถูกเข้าใจปนกัน — interlock คือเงื่อนไขที่บังคับลำดับการทำงานหรือป้องกันการสั่งงานที่ไม่เหมาะสม เช่น ห้าม start ปั๊มถ้าวาล์ว suction ยังปิดอยู่ ในขณะที่ protection คือการตรวจจับอันตรายที่กำลังเกิดขึ้นแล้วสั่ง trip ทันทีเพื่อความปลอดภัย ตรรกะที่ใช้กับ trip parameter สำคัญมักออกแบบเป็น 2oo3 voting คือใช้ transmitter สามตัววัดค่าเดียวกันพร้อมกัน และจะสั่ง trip ก็ต่อเมื่อมีอย่างน้อยสองในสามตัวเห็นค่าตรงกันว่าผิดปกติเท่านั้น การออกแบบเช่นนี้ทนทานต่อความล้มเหลวได้สองทาง — ทั้ง fail-to-danger (transmitter ตัวเดียวค้างค่าไว้จะไม่ทำให้ระบบพลาดการ trip จริง เพราะยังมีอีกสองตัวยืนยันได้) และ fail-safe ปลอม (transmitter ตัวเดียวเสียจะไม่ทำให้เกิดการ trip โดยไม่จำเป็น เพราะต้องมีอย่างน้อยสองตัวเห็นตรงกัน) ตรรกะแบบนี้ใช้กับพารามิเตอร์วิกฤต เช่น drum level, condenser vacuum และความดัน lube oil

ระบบ SIS (Safety Instrumented System) หรือ ESD (Emergency Shutdown) ต้องแยกทั้ง hardware และเครือข่ายออกจาก DCS โดยสิ้นเชิงตามมาตรฐาน IEC 61511 โดยจัดระดับความปลอดภัยเป็น SIL (Safety Integrity Level) ตั้งแต่ระดับ 1 ถึง 3 ตามความเสี่ยงของแต่ละฟังก์ชัน logic solver ของ SIS มักเป็น safety PLC แบบพิเศษ เช่นแบบ TMR (Triple Modular Redundant — สำรองสามชุดพร้อมกัน) หรือแบบ 1oo2D และต้องผ่าน proof test ตามรอบเวลาที่กำหนดอย่างเคร่งครัดเพื่อยืนยันว่าระบบยังทำงานได้จริงตามที่ออกแบบไว้ ระบบเฉพาะทางที่ควบคุมการจุดไฟและดับเครื่องเรียกว่า BMS (Burner Management System) ซึ่งออกแบบตามมาตรฐาน NFPA 85 ทำหน้าที่ควบคุมลำดับการจุดและดับ burner รวมถึงคำสั่ง MFT (Master Fuel Trip — การตัดเชื้อเพลิงทั้งหมดฉุกเฉิน) โดยเป็นระบบ safety ที่แยกอิสระออกจากระบบ combustion control ทั่วไป

ก่อนจุดไฟทุกครั้งต้องทำ furnace purge คือการไล่อากาศเข้า furnace อย่างน้อย 5 เท่าของปริมาตรที่ airflow อย่างน้อยประมาณ 25–30% ของพิกัด ซึ่งมักใช้เวลาประมาณ 5 นาที ข้อกำหนดนี้เป็นบทเรียนที่ได้จากอุบัติเหตุการระเบิดของ furnace ในอดีตที่มีเชื้อเพลิงตกค้างสะสมอยู่ก่อนจุดไฟ และต้องทำ purge ใหม่ทุกครั้งที่เกิด MFT ไม่ว่าจะเป็นสาเหตุใดก็ตาม Flame scanner ซึ่งเป็นเซนเซอร์แบบ UV หรือ IR ตรวจจับเปลวไฟของแต่ละหัว burner โดยตรง หากเปลวไฟหายไปจะตัดเชื้อเพลิงของหัวนั้นภายในเวลาประมาณ 1–3 วินาที ส่วน MFT จะตัดเชื้อเพลิงทั้งหมดพร้อมกันทันทีเมื่อเกิดเงื่อนไขวิกฤต เช่น เปลวไฟดับหมดทุกหัวพร้อมกัน, ระดับ drum สูงหรือต่ำถึงขั้นวิกฤต, FD หรือ ID fan trip ทั้งหมด, ความดันเชื้อเพลิงต่ำเกินไป หรือความดัน furnace สูงหรือต่ำถึงขั้นวิกฤต ทุกสาเหตุของการ trip ต้องมีระบบ first-out indication บันทึกไว้เสมอ เพื่อให้รู้ว่าสาเหตุใดเกิดขึ้นก่อน ส่วนที่เหลือคือผลพวงที่ตามมา

2oo3 Voting Logic สำหรับ Trip Parameter PT-1 A PT-2 B PT-3 C A·B B·C A·C OR TRIP 2 ใน 3 เห็นตรงกัน → trip 1 ตัวเสีย → ไม่ trip ฟรี, ไม่พลาด trip
2oo3 voting — transmitter สามตัววัดค่าเดียวกัน ต้องมีอย่างน้อยสองตัวเห็นตรงกันจึงจะ trip ทนทั้ง transmitter ค้าง (ไม่พลาด trip จริง) และ transmitter เสีย (ไม่ trip ฟรี)
หน้า burner ของหม้อไอน้ำขนาดใหญ่ แสดง burner assembly หลายชุดพร้อม flame scanner sight tube และ ignitor gun บน windbox
  1. Boiler Front (Pressure Boundary) — ผนังด้านหน้าของหม้อไอน้ำที่เป็นขอบเขตความดัน burner ทุกชุดติดตั้งทะลุผ่านผนังนี้เข้าไปยัง furnace
  2. Windbox — กล่องลมที่กระจายอากาศสำหรับการเผาไหม้ให้แต่ละหัว burner อย่างสม่ำเสมอ เชื่อมโยงกับระบบ air demand ที่อธิบายไว้ในหัวข้อ combustion control ข้างต้น
  3. Flame Scanner Sight Tube — ท่อมองที่ให้ flame scanner (UV/IR) มองเห็นเปลวไฟของหัว burner นั้นโดยตรง ตามที่อธิบายไว้ข้างต้นว่าเปลวหายจะตัด fuel หัวนั้นภายใน 1–3 วินาที (ปรากฏสองตำแหน่งในรูป คนละหัว burner)
  4. Burner Assembly — ชุดหัวเผาที่ผสมเชื้อเพลิงกับอากาศแล้วจุดไฟภายใน furnace แต่ละชุดมี flame scanner และ ignitor เป็นของตัวเอง
  5. Ignitor Gun — หัวจุดไฟ (ปกติใช้แก๊สหรือน้ำมันเบา) ที่จุดเปลวไฟนำร่องก่อน burner หลักจะเริ่มจ่ายเชื้อเพลิง เป็นส่วนหนึ่งของลำดับการจุดที่ BMS ควบคุม (ปรากฏสองตำแหน่งในรูป คนละหัว burner)
  6. Fuel Train (Connection) — จุดต่อท่อเชื้อเพลิงเข้าสู่ burner ซึ่งมีวาล์วและอุปกรณ์ความปลอดภัยตามลำดับที่ BMS ควบคุมก่อนเชื้อเพลิงจะไหลถึง burner ได้จริง
  7. Electrical Conduit & Instrument Cables — ท่อร้อยสายไฟฟ้าและสายสัญญาณเครื่องมือวัดที่เชื่อมต่อ flame scanner, ignitor และวาล์วต่าง ๆ กลับไปยัง BMS
  8. Oil Burner — ท่อน้ำมันเชื้อเพลิงสำรองที่ต่อเข้า burner แต่ละชุด ใช้ในกรณีที่โรงไฟฟ้าเดินเครื่องด้วยน้ำมันแทนหรือเสริมแก๊ส
หน้า burner พร้อม flame scanner — เปลวหายเมื่อไร BMS ตัด fuel ภายในไม่กี่วินาที
🔧 ในโรงไฟฟ้าจริง

ตอนเกิด trip ห้ามไล่อ่าน alarm ทีละตัวตามลำดับที่ปรากฏบนจอ ให้เปิดหน้าจอ first-out ของ MFT หรือ turbine trip ก่อนเสมอ เพราะ alarm ตัวแรกที่มาคือสาเหตุที่แท้จริง ส่วนที่เหลือเกือบทั้งหมดคือผลพวงที่ตามมาจากการ trip นั้นเอง จากนั้นค่อยยืนยันลำดับเหตุการณ์กับ historian แบบวินาทีต่อวินาทีเพื่อยืนยันความเข้าใจให้แน่ชัดอีกครั้ง

39.8 Alarm Management

มาตรฐาน ISA 18.2 และ EEMUA 191 กำหนดเป้าหมายอัตรา alarm ที่ operator รับมือได้อย่างมีประสิทธิภาพไว้ที่เฉลี่ยประมาณ 1 alarm ต่อ 10 นาที หรือคิดเป็นประมาณ 144 alarm ต่อวันต่อ operator หนึ่งคน หากอัตรานี้เกินกว่า 10 alarm ต่อ 10 นาที ถือว่า operator เริ่มรับภาระไม่ไหวและมีความเสี่ยงที่จะพลาด alarm สำคัญท่ามกลาง alarm จำนวนมาก สถานการณ์ที่อันตรายที่สุดคือ alarm flood ที่เกิดขึ้นตอน trip ซึ่งอาจมี alarm หลายร้อยตัวเกิดขึ้นภายในนาทีเดียว กลบ alarm ที่สำคัญจริง ๆ ให้จมหายไปในกองข้อมูล วิธีแก้ปัญหานี้คือ state-based suppression ซึ่งซ่อน alarm ที่ไม่มีความหมายในสถานะนั้น ๆ ของ unit ไปโดยอัตโนมัติ เช่น alarm ที่เกี่ยวข้องกับอุปกรณ์ที่หยุดทำงานอยู่แล้วตอน unit ดับเครื่อง ประกอบกับระบบ first-out ที่กล่าวถึงในหัวข้อก่อนหน้า

Alarm แต่ละตัวควรถูกจัดระดับความสำคัญ (priority) เป็น 3–4 ระดับ โดยพิจารณาทั้งความรุนแรงของผลที่จะตามมา (consequence) และเวลาที่ operator มีเพื่อตอบสนอง หลักการสำคัญที่ต้องยึดถือคือ alarm ทุกตัวต้องมี action ที่กำหนดไว้ชัดเจนเสมอ — "alarm ที่ไม่มี action ที่ต้องทำ ก็ไม่ใช่ alarm ที่แท้จริง" ปัญหาที่พบบ่อยในระบบ alarm ที่ไม่ได้รับการดูแลคือ standing alarm หรือ stale alarm (alarm ที่ค้างอยู่นานเป็นวันโดยไม่มีใครแก้) และ chattering alarm (alarm ที่ติด ๆ ดับ ๆ สลับกันไปมาถี่ ๆ) ทั้งสองแบบนี้คือ "ขยะ" ของระบบ alarm ที่ต้องกวาดล้างด้วยกระบวนการที่เรียกว่า alarm rationalization เป็นรอบ ๆ อย่างสม่ำเสมอ เทคนิคหนึ่งที่ช่วยจัดลำดับความสำคัญของงานได้ดีคือ bad actor analysis ซึ่งพบว่า alarm 10 อันดับแรกที่ดังบ่อยที่สุดมักกินสัดส่วนมากกว่า 50% ของ alarm ทั้งหมดที่เกิดขึ้น การแก้ไข 10 ตัวนี้ก่อนจึงให้ผลตอบแทนคุ้มค่าที่สุดเสมอ

จอ operator แสดงหน้าจอ alarm list พร้อมแถบสีตามระดับ priority แดง ส้ม เหลือง
  1. Screen title — หัวข้อของหน้าจอที่ระบุว่าเป็นหน้า alarm list โดยเฉพาะ แยกจากหน้าจอ overview หรือ trend อื่น ๆ
  2. Alarm list table — ตารางแสดงรายการ alarm ทั้งหมดที่กำลัง active อยู่ เรียงตามเวลาหรือ priority ตามการตั้งค่าของแต่ละโรง
  3. Alarm summary (by priority) — สรุปจำนวน alarm แยกตามระดับความสำคัญที่มุมบนขวา ให้ operator ประเมินสถานการณ์โดยรวมได้ทันทีโดยไม่ต้องไล่อ่านทีละแถว
  4. Priority column (color-coded) — คอลัมน์แสดงระดับความสำคัญด้วยรหัสสี (แดง = HIGH, ส้ม = MEDIUM, เหลือง = LOW ในรูปนี้) ตามหลักการจัด priority 3–4 ระดับที่อธิบายไว้ข้างต้น
  5. Vertical scroll bar — แถบเลื่อนสำหรับดู alarm ที่เกินขอบเขตหน้าจอ บ่งบอกว่ามี alarm มากกว่าที่แสดงในหน้าจอเดียว
  6. Alarm counts (total and by priority) — ตัวเลขสรุปจำนวน alarm รวมและแยกตาม priority ที่แถบล่างของหน้าจอ ใช้ประเมินว่าเข้าข่าย alarm flood หรือไม่ตามเกณฑ์ EEMUA 191 ที่กล่าวถึงข้างต้น
  7. Action buttons — ปุ่มคำสั่งสำหรับ acknowledge หรือ shelve alarm ที่เลือกไว้ เป็นเครื่องมือที่ operator ใช้จัดการ alarm ที่ active อยู่โดยตรง
หน้าจอ alarm summary — จัด priority ให้ operator เห็นตัวสำคัญก่อนเสมอ
✏️ ตัวอย่าง 39.1 — Tune ลูปด้วย Ziegler–Nichols

โจทย์: ลูปอุณหภูมิลูปหนึ่ง ปิด I/D แล้วเพิ่ม Kp จนลูปแกว่งคงที่ที่ Ku = 4.0 คาบ Pu = 30 s — หา PID ตั้งต้นตาม Z-N

$$K_p = 0.6 \times 4.0 = 2.4, \quad T_i = 0.5 \times 30 = 15 \text{ s}, \quad T_d = 0.125 \times 30 = 3.75 \text{ s}$$

คำตอบ: Kp = 2.4, Ti = 15 s, Td = 3.75 s — ใช้เป็นจุดตั้งต้นแล้ว fine-tune ลด overshoot (Z-N ให้ลูปค่อนข้างดุ ~25% overshoot)

✏️ ตัวอย่าง 39.2 — คำนวณ Output ของ PI Controller

โจทย์: PI controller มี Kp = 2, Ti = 60 s, output ตั้งต้น MV₀ = 50% เกิด error คงที่ +3% นาน 30 s — output ตอนนั้นเป็นเท่าไร

วิธีทำ: เทอม P = 2 × 3 = 6%; เทอม I = (2/60) × (3 × 30) = (2/60) × 90 = 3%

$$MV = 50 + 6 + 3 = 59\%$$

คำตอบ: 59% — สังเกตว่าถ้า error ค้างต่อ เทอม I จะโตต่อเรื่อย ๆ จนกว่า PV เข้า SP (และนี่คือที่มาของ windup ถ้า valve อิ่มตัวก่อน)

🔧 ในโรงไฟฟ้าจริง

ก่อนแตะค่า tune ของลูปใดก็ตาม ควร capture ค่าเดิม (Kp/Ti/Td) บันทึกลง log พร้อมเหตุผลที่ปรับเสมอ โรงไฟฟ้าที่ไม่มีวินัยเรื่องนี้มักเจอปัญหาลูปที่ถูก "จูนสด" ทิ้งไว้กลางดึกโดยไม่มีการบันทึก แล้วต่อมาไม่มีใครในทีมรู้เลยว่าค่าตั้งต้นที่ถูกต้องคืออะไร ส่วน SIS proof test ตามรอบเวลาก็ไม่ใช่พิธีกรรมที่ทำไปตามระเบียบเฉย ๆ — ค่า SIL ที่คำนวณไว้ตั้งอยู่บนสมมติฐานว่า proof test ถูกทำตามรอบจริงเสมอ การเลื่อน test ออกไปหมายความว่าระดับความปลอดภัยที่ใช้งานจริงต่ำกว่าตัวเลขที่อ้างอิงไว้บนกระดาษ

สรุปท้ายบท

  • Control loop พื้นฐานประกอบด้วย PV, SP, error (SP−PV) และ MV — ต้องตั้งทิศทาง direct/reverse acting ให้ถูก มิฉะนั้นลูปจะวิ่งหนี SP
  • PID: P ให้ความไวแต่เหลือ offset, I กำจัด offset แต่เสี่ยง windup, D เบรก overshoot ในลูปช้าแต่ขยาย noise — Ziegler–Nichols ให้จุดตั้งต้น ไม่ใช่ค่าสุดท้าย
  • Cascade (master ส่ง SP ให้ slave ที่เร็วกว่า 3–5 เท่า) และ feedforward (ชดเชยล่วงหน้าจาก disturbance) ต้องมี feedback trim เสมอเพราะ model ไม่มีวันเป๊ะ
  • DCS จัดชั้น field → I/O → controller คู่ hot standby → network redundant → HMI/EWS/historian; SIS แยกอิสระทั้ง hardware และเครือข่ายจาก DCS โดยสิ้นเชิง
  • 3-element drum level (feedback+feedforward+cascade) แก้ปัญหา shrink/swell; combustion cross-limiting ประกันอากาศมากกว่าเชื้อเพลิงเสมอระหว่าง transient; steam temperature คุมด้วย attemperator spray แบบ cascade
  • Coordinated control (CCS) เป็นโหมดปกติของโรงใหญ่ ให้ทั้งความไวและ pressure นิ่ง พร้อม runback อัตโนมัติเมื่ออุปกรณ์หลัก trip
  • 2oo3 voting ทนทั้ง fail-to-danger และ trip ฟรี; SIS/BMS แยกจาก DCS ตาม IEC 61511/NFPA 85; MFT ตัด fuel ทั้งหมดพร้อม first-out indication เสมอ
  • Alarm management เป้าหมาย ~1 alarm/10 นาทีตาม EEMUA 191 — ทุก alarm ต้องมี action, กวาด stale/chattering alarm ด้วย rationalization, แก้ bad actor 10 อันดับแรกก่อน

ศัพท์เทคนิคในบทนี้

Englishไทย / ความหมาย
PV / SP / MVProcess Variable (ค่าที่วัดได้) / Setpoint (ค่าที่ต้องการ) / Manipulated Variable (output ขับ valve)
PID (Proportional-Integral-Derivative)ตรรกะควบคุมสามเทอม — สัดส่วน, สะสม, อัตราการเปลี่ยนแปลง
Ziegler–Nichols (Z-N)วิธี tune PID เบื้องต้นจาก ultimate gain/period
Integral windup / Anti-windupเทอม I สะสมเกินจริงเมื่อ output อิ่มตัว / กลไกป้องกันปัญหานี้
Cascade controlลูปนอก (master) ส่ง output เป็น SP ของลูปใน (slave)
Feedforwardชดเชย disturbance ล่วงหน้าก่อน error เกิดจริง
DCS (Distributed Control System)ระบบควบคุมแบบกระจายศูนย์
Hot standby (1:1 redundancy)controller คู่ทำงานพร้อมกัน sync ทุก scan, failover ไม่กระตุก
DMZ (Demilitarized Zone)เขตกันชนเครือข่ายระหว่าง control network กับ business network
IEC 62443มาตรฐานความปลอดภัยไซเบอร์สำหรับระบบควบคุมอุตสาหกรรม
MOC (Management of Change)กระบวนการอนุมัติก่อนแก้ logic ขณะระบบทำงานอยู่
3-element drum levelลูปคุมระดับ drum ด้วย level+steam flow+feedwater flow ป้องกัน shrink/swell หลอก
Cross-limiting (lead-lag)ตรรกะประกัน air นำ fuel เสมอเมื่อโหลดเปลี่ยน กัน fuel-rich
Boiler-follow / Turbine-follow / CCSสามโหมด unit coordination — MW ไว/pressure นิ่ง/ทั้งคู่พร้อมกัน
Runbackการลดโหลดอัตโนมัติเมื่ออุปกรณ์หลัก trip
2oo3 votingตรรกะ trip ที่ต้องมี ≥2 ใน 3 transmitter เห็นตรงกัน
SIS / ESD (Safety Instrumented System)ระบบเครื่องมือวัดเพื่อความปลอดภัย แยกอิสระจาก DCS
SIL (Safety Integrity Level)ระดับความปลอดภัยของฟังก์ชัน SIS (1–3)
TMR (Triple Modular Redundant)สถาปัตยกรรม safety PLC สำรองสามชุดพร้อมกัน
BMS (Burner Management System)ระบบควบคุมการจุด/ดับ burner ตาม NFPA 85
MFT (Master Fuel Trip)การตัดเชื้อเพลิงทั้งหมดฉุกเฉิน
Furnace purgeการไล่อากาศ ≥5 เท่าปริมาตร furnace ก่อนจุดไฟทุกครั้ง
First-out indicationบันทึกสาเหตุแรกของการ trip แยกจากผลพวงที่ตามมา
ISA 18.2 / EEMUA 191มาตรฐาน alarm management
Alarm rationalizationกระบวนการกวาด stale/chattering alarm เป็นรอบ
Bad actor analysisวิเคราะห์ alarm ที่ดังบ่อยสุด 10 อันดับแรก

แบบทดสอบท้ายบท

ลูป P อย่างเดียวทำไมเหลือ offset?
เพราะ P ออกแรงตาม error — ถ้า error = 0 output กลับค่าตั้งต้นซึ่งมักไม่พอดีกับโหลด จึงต้องเหลือ error ค้างไว้เลี้ยง output; เทอม I คือตัวกำจัด offset
Integral windup เกิดเมื่อไรและแก้อย่างไร?
เมื่อ output อิ่มตัว (valve สุด 0/100%) แต่ error ยังอยู่ — integral สะสมเกินจริง พอกลับทิศลูปตอบช้าผิดปกติ; แก้ด้วย anti-windup หยุด integrate ตอน output อิ่มตัว
ทำไม drum level ต้องใช้ 3 element ไม่ใช่วัด level อย่างเดียว?
เพราะ shrink/swell หลอกลูก level ให้แก้ผิดทางตอนโหลดเปลี่ยน — steam flow feedforward สั่งน้ำถูกทางทันที ส่วน feedwater flow เป็น slave loop จับ disturbance ฝั่งน้ำ
Cross-limiting กันอะไร ระหว่างโหลดขึ้นใครนำ?
กันช่วง fuel-rich ระหว่าง transient (เสี่ยง CO/ระเบิด) — โหลดขึ้น air นำ fuel ตาม, โหลดลง fuel ลดก่อน air ตาม
Boiler-follow กับ turbine-follow ต่างกันอย่างไร โหมดปกติของโรงใหญ่คืออะไร?
Boiler-follow: turbine คุม MW ไว pressure แกว่ง; turbine-follow: pressure นิ่ง MW ช้า; โหมดปกติคือ coordinated control สั่งทั้งคู่พร้อมกัน
ทำไม trip parameter สำคัญใช้ 2oo3 ไม่ใช่ 1oo1?
1oo1 ตัวเดียวเสียได้สองแบบ: ค้าง (พลาด trip จริง) หรือเพี้ยน (trip ฟรี); 2oo3 ทนทั้งสองแบบ — ตัวเดียวเสียระบบยังตัดสินถูก
ก่อนจุด boiler ต้อง purge เท่าไร?
ไล่อากาศ ≥ 5 เท่าของปริมาตร furnace ที่ airflow ≥ 25–30% (ราว 5 นาที) ตาม NFPA 85 — และ purge ใหม่ทุกครั้งหลัง MFT
เป้า alarm rate ต่อ operator ตาม EEMUA 191 คือเท่าไร?
เฉลี่ย ~1 alarm/10 นาที (~144/วัน); เกิน 10/10 นาทีถือว่า flood
📚 ห้องสมุด