บัญชี

หน้าแรกคู่มือPLCพื้นฐาน PLC และ SamSoar2022การควบคุมตามลำดับ Sequence Control
PLC
เริ่มต้น
15 นาที

การควบคุมตามลำดับ Sequence Control

เรียนรู้ Sequence Control ใน PLC การควบคุมระบบอัตโนมัติตามลำดับด้วย State Machine พร้อมตัวอย่าง Ladder Program ควบคุมกระบอกลม Timer และการเขียนโปรแกรม

อัพเดทล่าสุด: 31/1/2569

ราคาชุดอุปกรณ์

฿3,690

บทนำ

Sequence Control คือการควบคุมการทำงานตามลำดับของระบบอัตโนมัติ โดยใช้แนวคิดของ State Machine ในการจัดการสถานะ (State) ต่างๆ ของเครื่องจักร ทำให้สามารถสร้างระบบที่ทำงานซ้ำๆ ได้อย่างมีประสิทธิภาพ

หลักการของ Sequence Control

การแบ่งขั้นตอนการทำงาน

การออกแบบ Sequence Control เริ่มต้นจาก:

  1. วิเคราะห์กระบวนการ - แยกย่อยขั้นตอนการทำงานให้เล็กที่สุด
  2. กำหนดสถานะ (State) - ใช้ตัวแปร S (State) แทน M (Memory) เพื่อความชัดเจน
  3. กำหนดเงื่อนไขเปลี่ยนสถานะ - ระบุเงื่อนไขที่ทำให้เปลี่ยนจากสถานะหนึ่งไปอีกสถานะ

ตัวอย่างการทำงานของเครื่องตัดชิ้นงาน

  • สถานะ 1: ปล่อยชิ้นงานเข้ามา
  • สถานะ 2: หยุดปล่อยชิ้นงาน
  • สถานะ 3: รอให้มีดตัดและยกขึ้น
  • วนกลับสถานะ 1: เริ่มรอบใหม่

โจทย์ตัวอย่าง: ระบบควบคุมกระบอกลม

ข้อกำหนด

  • กดปุ่ม Start (M100) เพื่อเริ่มระบบ
  • กระบอกลม (M120) จะ ON เป็นเวลา 3.5 วินาที
  • จากนั้น OFF เป็นเวลา 2.0 วินาที
  • ทำซ้ำจนกว่าจะกดปุ่ม Stop (M110)
  • ผู้ใช้สามารถปรับเวลา ON/OFF ได้

การกำหนดค่าเริ่มต้น

ladder
// เมื่อ PLC เปิดครั้งแรก
LD M8150
MOVE K35 D100    // Delay ON = 3.5 วินาที (35 x 0.1s)
MOVE K20 D102    // Delay OFF = 2.0 วินาที (20 x 0.1s)

การเขียน Ladder Program

1. การเริ่มต้นระบบ

ladder
// เริ่มต้นเข้าสถานะ S1
LD M100        // Start Button
LDI M110       // Stop Button (NC)
LDI S2         // ป้องกันการทับซ้อนของ State
SET S1         // เข้าสถานะ 1

2. สถานะ S1 - กระบอกลม ON

ladder
// S1: Cylinder ON
LD S1
TMR T10 D100   // Timer ON ตามค่าที่กำหนด

// เมื่อครบเวลา เปลี่ยนเป็น S2
LD T10
RST S1 K1      // Reset S1
SET S2         // เข้าสถานะ 2

3. สถานะ S2 - กระบอกลม OFF

ladder
// S2: Cylinder OFF
LD S2
TMR T11 D102   // Timer OFF ตามค่าที่กำหนด

// เมื่อครบเวลา กลับไป S1
LD T11
RST S2 K2      // Reset S1 และ S2
SET S1         // กลับเข้าสถานะ 1

4. การควบคุม Output

ladder
// กระบอกลม ON เมื่ออยู่ในสถานะ S1
LD S1
OUT M120

// กระบอกลม OFF เมื่ออยู่ในสถานะ S2
LD S2
LDI             // ใช้ NC contact
OUT M120        // M120 จะ OFF

เคล็ดลับการเขียน State Machine

การป้องกันปัญหาทับซ้อน

  1. ใช้ Interlock: เพิ่ม LDI S2 ในเงื่อนไข Start เพื่อป้องกันการทับซ้อนของ State
  2. Reset หลายตัว: ใช้ RST S1 K2 เพื่อ Reset ทั้ง S1 และ S2 พร้อมกัน
  3. 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 นี้สามารถขยายได้โดย:

  1. เพิ่ม State: เพิ่มสถานะใหม่ตามความต้องการ
  2. Counter รอบการทำงาน: นับจำนวนรอบที่ทำงาน
  3. การแสดงผลสถานะ: เชื่อมต่อ HMI แสดงสถานะปัจจุบัน
  4. Alarm System: เพิ่มการตรวจจับข้อผิดพลาด

สรุป

Sequence Control เป็นเทคนิคสำคัญในการสร้างระบบอัตโนมัติที่ทำงานตามลำดับ โดยใช้แนวคิด State Machine ช่วยให้การเขียนโปรแกรมมีโครงสร้างชัดเจน ง่ายต่อการดูแลรักษา และสามารถขยายความสามารถได้ในอนาคต การใช้ตัวแปร S สำหรับ State และการเขียน Interlock ที่ดีจะช่วยป้องกันปัญหาที่อาจเกิดขึ้นในระหว่างการทำงาน