การควบคุมตามลำดับ Sequence Control
เรียนรู้ Sequence Control ใน PLC การควบคุมระบบอัตโนมัติตามลำดับด้วย State Machine พร้อมตัวอย่าง Ladder Program ควบคุมกระบอกลม Timer และการเขียนโปรแกรม
อัพเดทล่าสุด: 31/1/2569
ราคาชุดอุปกรณ์
บทนำ
Sequence Control คือการควบคุมการทำงานตามลำดับของระบบอัตโนมัติ โดยใช้แนวคิดของ State Machine ในการจัดการสถานะ (State) ต่างๆ ของเครื่องจักร ทำให้สามารถสร้างระบบที่ทำงานซ้ำๆ ได้อย่างมีประสิทธิภาพ
หลักการของ Sequence Control
การแบ่งขั้นตอนการทำงาน
การออกแบบ Sequence Control เริ่มต้นจาก:
- วิเคราะห์กระบวนการ - แยกย่อยขั้นตอนการทำงานให้เล็กที่สุด
- กำหนดสถานะ (State) - ใช้ตัวแปร S (State) แทน M (Memory) เพื่อความชัดเจน
- กำหนดเงื่อนไขเปลี่ยนสถานะ - ระบุเงื่อนไขที่ทำให้เปลี่ยนจากสถานะหนึ่งไปอีกสถานะ
ตัวอย่างการทำงานของเครื่องตัดชิ้นงาน
- สถานะ 1: ปล่อยชิ้นงานเข้ามา
- สถานะ 2: หยุดปล่อยชิ้นงาน
- สถานะ 3: รอให้มีดตัดและยกขึ้น
- วนกลับสถานะ 1: เริ่มรอบใหม่
โจทย์ตัวอย่าง: ระบบควบคุมกระบอกลม
ข้อกำหนด
- กดปุ่ม Start (M100) เพื่อเริ่มระบบ
- กระบอกลม (M120) จะ ON เป็นเวลา 3.5 วินาที
- จากนั้น OFF เป็นเวลา 2.0 วินาที
- ทำซ้ำจนกว่าจะกดปุ่ม Stop (M110)
- ผู้ใช้สามารถปรับเวลา ON/OFF ได้
การกำหนดค่าเริ่มต้น
การเขียน Ladder Program
1. การเริ่มต้นระบบ
2. สถานะ S1 - กระบอกลม ON
3. สถานะ S2 - กระบอกลม OFF
4. การควบคุม Output
เคล็ดลับการเขียน State Machine
การป้องกันปัญหาทับซ้อน
- ใช้ Interlock: เพิ่ม
LDI S2ในเงื่อนไข Start เพื่อป้องกันการทับซ้อนของ State - Reset หลายตัว: ใช้
RST S1 K2เพื่อ Reset ทั้ง S1 และ S2 พร้อมกัน - Stop Priority: เพิ่ม
LDI M110ในทุกจุดเริ่มต้น
การออกแบบที่ดี
- ใช้ตัวแปร S แทน M สำหรับ State เพื่อความชัดเจน
- Comment ทุก State ระบุหน้าที่ของแต่ละสถานะ
- กำหนดค่าผ่าน Data Register เพื่อให้ปรับแต่งได้ง่าย
- ทดสอบทุกสถานการณ์ รวมถึงการกดปุ่มค้างไว้
การแก้ปัญหาที่พบบ่อย
ปัญหาการทับซ้อนของ State
อาการ: State หลายตัวติดพร้อมกัน
สาเหตุ: ไม่มี Interlock ป้องกันการทับซ้อน
วิธีแก้: เพิ่ม LDI ของ State อื่นๆ ในเงื่อนไข
ปัญหาไม่สามารถหยุดได้
อาการ: กด Stop แล้วระบบยังทำงาน
สาเหตุ: ไม่มี Stop Button ในเงื่อนไขเริ่มต้น
วิธีแก้: เพิ่ม LDI M110 ในทุกจุดที่มีการ SET State
ปัญหา Timer ไม่ Reset
อาการ: เวลาทำงานไม่ถูกต้อง
สาเหตุ: Timer ไม่ได้ Reset เมื่อออกจาก State
วิธีแก้: ใช้ RST Timer เมื่อเปลี่ยน State
การพัฒนาต่อยอด
Pattern นี้สามารถขยายได้โดย:
- เพิ่ม State: เพิ่มสถานะใหม่ตามความต้องการ
- Counter รอบการทำงาน: นับจำนวนรอบที่ทำงาน
- การแสดงผลสถานะ: เชื่อมต่อ HMI แสดงสถานะปัจจุบัน
- Alarm System: เพิ่มการตรวจจับข้อผิดพลาด
สรุป
Sequence Control เป็นเทคนิคสำคัญในการสร้างระบบอัตโนมัติที่ทำงานตามลำดับ โดยใช้แนวคิด State Machine ช่วยให้การเขียนโปรแกรมมีโครงสร้างชัดเจน ง่ายต่อการดูแลรักษา และสามารถขยายความสามารถได้ในอนาคต การใช้ตัวแปร S สำหรับ State และการเขียน Interlock ที่ดีจะช่วยป้องกันปัญหาที่อาจเกิดขึ้นในระหว่างการทำงาน
ควรอ่านก่อน:
มีคำถาม? ติดต่อทีมงาน
