PLC
เริ่มต้น
8 นาที

Timer ใน PLC

เรียนรู้ Timer ใน PLC ตั้งแต่พื้นฐาน การใช้คำสั่ง TON ความแตกต่างของความละเอียด 100ms และ 10ms พร้อมตัวอย่างการเขียนโปรแกรมสำหรับการควบคุมระบบอัตโนมัติ

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

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

฿3,690

ความเข้าใจพื้นฐานเกี่ยวกับ Timer

Timer หรือตัวนับเวลาเป็นฟังก์ชันสำคัญใน PLC ที่ช่วยในการควบคุมการทำงานตามช่วงเวลาที่กำหนด ก่อนที่จะเรียนรู้เกี่ยวกับ Timer มาทำความเข้าใจกับวิธีการสร้าง Timer ด้วยความรู้เดิมก่อน

การสร้าง Timer ด้วย Special Address และ Counter

วิธีการแบบเก่าสามารถสร้าง Timer ได้โดยใช้:

  • M8160: Special Address ที่ติดทุก 1 วินาที
  • Counter: สำหรับนับจำนวนครั้งที่ M8160 ติด
สร้าง Timer ด้วย M8160 + Counter
N0
นับ pulse ทุก 1 วินาที (M8160) เมื่อ M80 เปิด — นับถึง 5 = 5 วินาที
M80M8160CTUCV10, K5
เมื่อนับครบ (C10 ON) เปิด M81
C10M81
Signal M82 → Reset Counter C10
M82RSTC10, K1
Network count: 1, gap: 12
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

ข้อเสียของวิธีนี้:

  • ต้องเขียนโค้ดที่ซับซ้อน
  • ไม่สามารถใช้เลขทศนิยมสำหรับเวลาได้
  • จัดการและบำรุงรักษายาก

การใช้คำสั่ง Timer

คำสั่ง TON (Timer On)

TON คือคำสั่ง Timer ที่ใช้บ่อยที่สุด ทำหน้าที่นับเวลาจากเมื่อ Input เป็น ON และให้ Output ติดเมื่อครบเวลาที่กำหนด

รูปแบบการใช้งาน

ตัวอย่างคำสั่ง TON
N0
Trigger M83 → TON เก็บค่าที่ TV0, ตั้งเวลา 4.5 วินาที (K45 × 100ms)
M83TONTV0, K45
เมื่อ Timer ครบ (T0 ON) เปิด Output Y0
T0SETY0, K1
Network count: 1, gap: 12
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

Parameter ที่ต้องกำหนด:

  1. Time Value (TV): Address สำหรับเก็บค่าเวลาปัจจุบัน
  2. Set Value: เวลาที่ต้องการกำหนด (หน่วยขึ้นอยู่กับประเภท Timer)

ความละเอียดของ Timer

Timer ที่มีความละเอียด 100ms

  • ช่วง Address: T0 ถึง T199
  • ความละเอียด: 100ms (0.1 วินาที)
  • การใช้งาน: สำหรับการควบคุมทั่วไป

ตัวอย่าง: ต้องการ 4.5 วินาที → ใช้ K45

Timer ที่มีความละเอียด 10ms

  • ช่วง Address: T200 ถึงขึ้นไป
  • ความละเอียด: 10ms (0.01 วินาที)
  • การใช้งาน: สำหรับการควบคุมที่ต้องการความละเอียดสูง

ตัวอย่าง: ต้องการ 4.22 วินาที → ใช้ K422

ตัวอย่างการประยุกต์ใช้

การใช้ Timer หลายตัวพร้อมกัน

ใช้ Timer หลายตัวพร้อมกัน (100ms + 10ms)
N0
Timer 100ms — 4.5 วินาที (TV0)
M83TONTV0, K45
T0SETM90, K1
Timer 10ms — 4.22 วินาที (TV200)
M84TONTV200, K422
T200SETM91, K1
รวม Output — Y0 ติดเมื่อ Timer ใด Timer หนึ่งครบ
M90M91Y0
Network count: 1, gap: 12
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

การ Reset Timer

Reset Timer + Memory
ใช้ signal เดียว (M10) เพื่อ Reset ทั้ง Timer T0 และ Memory M90
N0
M10 ON → Reset Timer T0
M10RSTT0
M10 ON → Reset Memory M90
M10RSTM90
Network count: 1, gap: 12
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

เคล็ดลับการใช้งาน

  1. ตรวจสอบ Address ซ้ำ: ใช้ Ctrl+F เพื่อค้นหา Address ที่อาจซ้ำกัน
  2. จัดกลุ่มโลจิก: รวบรวม Output ที่เกี่ยวข้องไว้ในส่วนเดียวกัน
  3. เลือก Timer ที่เหมาะสม: ใช้ 100ms สำหรับงานทั่วไป, 10ms สำหรับงานที่ต้องการความละเอียด
  4. การตั้งชื่อ: ใช้ชื่อ Address ที่สื่อความหมาย เช่น TV_Motor_Start, TV_Alarm_Delay

การแก้ปัญหาที่พบบ่อย

Timer ไม่ทำงาน

  • ตรวจสอบ Input Condition ว่าเป็น ON หรือไม่
  • ตรวจสอบการตั้งค่า Set Value ว่าถูกต้อง
  • ตรวจสอบว่าไม่มี RST ทำงานขัดจังหวะ

เวลาไม่ตรงตามที่ต้องการ

  • ตรวจสอบความละเอียดของ Timer ที่ใช้
  • คำนวณค่า Set Value ให้ถูกต้อง
  • สำหรับ 100ms: เวลา(วินาที) × 10 = K Value
  • สำหรับ 10ms: เวลา(วินาที) × 100 = K Value

Output ติดค้าง

  • ตรวจสอบการใช้ SET/RST ให้ถูกต้อง
  • เพิ่มเงื่อนไข Reset ที่เหมาะสม

สรุป

Timer เป็นเครื่องมือสำคัญในการควบคุม PLC ที่ช่วยให้การจัดการเวลาเป็นไปอย่างแม่นยำและสะดวก การเลือกใช้ Timer ที่มีความละเอียดเหมาะสมกับงาน การจัดโครงสร้างโค้ดที่ดี และการทำความเข้าใจหลักการทำงานจะช่วยให้สามารถใช้งาน Timer ได้อย่างมีประสิทธิภาพ ซึ่งจะเป็นพื้นฐานสำคัญสำหรับการเรียนรู้ Sequence Control ในขั้นตอนต่อไป