หน้าแรกคู่มือPLC15 คำสั่ง PLC ที่ใช้บ่อยที่สุด ใน 10 นาที
PLCเริ่มต้น · Beginner10 นาที

15 คำสั่ง PLC ที่ใช้บ่อยที่สุด ใน 10 นาที

สรุป 15 คำสั่ง PLC พื้นฐานใน SamSoar2022 ที่เจอบ่อยในงานควบคุม — LD, OUT, LDI, AND, OR, SET, RST, ALT, LDP, CTU, MOV, TON และคำสั่งเปรียบเทียบ LDW>, LDW<, LDW= พร้อมเทคนิคใช้ M8160 ทำไฟกะพริบ และตัวอย่างเปิดไฟเมื่ออุณหภูมิจาก PT100 เกิน 50 องศา

คำสั่ง PLC ที่ใช้บ่อยที่สุดในงานควบคุมพื้นฐานมี 15 ตัว คือ LD, OUT, LDI, AND, OR, SET, RST, ALT, LDP, CTU, MOV, TON และ LDW>, LDW<, LDW= ถ้ารู้ 15 คำสั่งนี้ก็นำไปใช้กับงานควบคุมได้ราว 80%

อัพเดทล่าสุด: 26 ตุลาคม 2569

คลิปนี้สอนอะไร

รวมคำสั่ง PLC ที่ใช้บ่อยที่สุดในงานควบคุมระบบอัตโนมัติพื้นฐาน เขียนใน SamSoar2022 (พิมพ์คำสั่งลงในช่องของ Ladder ได้เลย เช่น ld x0) แล้วทดสอบกับ PLC Samkoon ที่ต่อปุ่ม X0, X1 และหลอดไฟที่ Y0

1. LD — หน้าสัมผัสปกติเปิด (Open Contact)

LD ตามด้วยชื่อ Coil เช่น LD X0 สร้างหน้าสัมผัสปกติเปิด เพื่อให้พอ X0 ติดแล้วไปทำอะไรบางอย่างต่อ

2. OUT — สั่ง Output

OUT ตามด้วยชื่อ Coil เช่น OUT Y0 เขียนคู่กับข้อ 1 หมายถึงถ้า X0 ติด (ปุ่มถูกกด) Y0 หรือไฟก็ติด

3. LDI — หน้าสัมผัสปกติปิด (Close Contact)

LDI X0 กลับทางกับ LD — Coil ด้านขวาจะติดตลอดตอนที่ X0 ไม่ได้ถูกกด และดับเมื่อ X0 ติด แปลว่าในสภาพปกติไฟจะติดตลอดจนกว่าจะกด X0

LD / LDI กับ OUT
X0 สั่ง Y0 ตรงๆ และแบบกลับทางด้วยหน้าสัมผัสปกติปิด
N0
LD: X0 ติด → Y0 ติด
X0Y0
LDI: Y0 ติดตลอด จนกว่าจะกด X0
X0Y0
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

4. AND — ต้องติดทั้งคู่ (ต่ออนุกรม)

ถ้าต้องการให้กดทั้ง X0 และ X1 ไฟถึงจะติด ให้วาง X1 ต่ออนุกรมถัดจาก X0 ในแถวเดียวกัน (ในคลิปพิมพ์ LD X1 ต่อท้ายในแถวเดิม) — ถ้ากดแค่ตัวใดตัวหนึ่งไฟจะไม่ติด

5. OR — ตัวใดตัวหนึ่งติดก็พอ (ต่อขนาน)

ถ้าต้องการให้กดปุ่มไหนก็ได้แล้วไฟติด ให้ขนานหน้าสัมผัสอีกตัวเข้าไป — เลื่อน Cursor ลงไปบรรทัดใต้ X0 พิมพ์ LD X1 แล้วกด Ctrl ค้างไว้และกดลูกศรขึ้นเพื่อขนานหน้าสัมผัส จากนั้น X0 หรือ X1 ติดไฟก็ติด

AND กับ OR
อนุกรม = ต้องกดทั้งคู่, ขนาน = กดตัวไหนก็ได้
N0
AND: ต้องกด X0 และ X1 → Y0 ติด
X0X1Y0
OR: กด X0 หรือ X1 → Y0 ติด
X0X1Y0
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

6. SET — สั่งติดค้าง

ถ้าต้องการให้ปล่อยนิ้วแล้วไฟยังติดค้าง ให้เขียน SET แทน OUT ตามด้วยชื่อ Coil และจำนวน Coil ที่ต้องการ SET — ตัวเดียวใช้ K1 เช่น SET Y0 K1 กด X0 แล้วยกมือออก Y0 ยังติดค้าง

7. RST — สั่งดับ (Reset)

เมื่อติดค้างแล้วต้องมีคำสั่งดับ — LD X1 ตามด้วย RST ชื่อ Coil และจำนวน Coil ที่ต้องการ Reset เช่น RST Y0 K1 กด X0 ไฟติด กดปุ่ม X1 ไฟดับ

SET / RST
X0 สั่ง Y0 ติดค้าง, X1 สั่ง Y0 ดับ
N0
กด X0 → Y0 ติดค้าง
X0SETY0, K1
กด X1 → Reset Y0
X1RSTY0, K1
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

8. ALT — ปุ่มเดียวสลับติด/ดับ

ถ้ามีปุ่มเดียวแต่อยากให้ทั้ง SET และ Reset ได้ ใช้ ALT (Alternate) ตามด้วยชื่อ Coil เช่น ALT Y0 — ถ้า Y0 ดับอยู่แล้วคำสั่งทำงาน Y0 จะติด ถ้า Y0 ติดอยู่แล้วคำสั่งทำงาน Y0 จะดับ

9. LDP — ขอบขาขึ้น

ALT นิยมใช้คู่กับหน้าสัมผัสขอบขาขึ้น คือ LDP ซึ่งทำงานแค่ 1 Cycle ตอนกดปุ่ม เขียน LDP X0 ได้เลย หรือถ้าเขียน LD X0 ไว้แล้ว ให้คลิกที่หน้าสัมผัส X0 แล้วกดปุ่มลูกศรขึ้นบนแถบเครื่องมือ X0 จะกลายเป็นขอบขาขึ้น แบบนี้กดหนึ่งครั้งไฟติด กดอีกครั้งไฟดับ วนไปเรื่อยๆ

LDP + ALT
กด X0 หนึ่งครั้ง Y0 สลับสถานะหนึ่งครั้ง
N0
X0 ขอบขาขึ้น → สลับ Y0 ติด/ดับ
X0↑ALTY0
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

10. CTU — นับขึ้น (Counter)

ถ้าต้องการให้กดปุ่ม 3 ครั้งไฟถึงติด ใช้ CTU (Counter แบบนับขึ้น)

  • สร้างหน้าสัมผัส X0 แล้วตามด้วย CTU + Counter Value คือตำแหน่งที่เก็บค่าที่กำลังนับ เช่น CV0 + เป้าหมายการนับ เช่น K3
  • เมื่อ CV0 นับถึง Set Value หน้าสัมผัส C0 (ไม่ใช่ CV0) จะติด เอา C0 ไปสั่ง Output Y0
  • กดหนึ่งครั้ง CV0 เพิ่มจาก 0 เป็น 1 ไปเรื่อยๆ จนถึง Set Value แล้ว C0 ติด Output ก็ติดค้าง

11. MOV — ย้ายค่า (ใช้ล้าง Counter)

Counter ที่นับถึงค่าแล้วจะค้างอยู่จนกว่าจะเคลียร์ค่า — ใช้ MOV ย้ายค่า K0 ไปที่ CV0 เมื่อกดปุ่ม X1 และเพื่อความชัวร์ให้ใช้ RST C0 K1 ไปพร้อมกัน (Reset เริ่มที่ C0 จำนวน 1 ตัว) ทดสอบ: กด 1, 2, 3 ไฟติด กด X1 ไฟดับและ Counter ถูกรีเซ็ต

CTU + MOV + RST
กด X0 ครบ 3 ครั้ง Y0 ติด, กด X1 ล้าง Counter
N0
กด X0 → นับขึ้นที่ CV0 เป้าหมาย 3 ครั้ง
X0CTUCV0, K3
C0 ติด (นับครบ) → Y0 ติด
C0Y0
กด X1 → MOV K0 ไปที่ CV0 และ Reset C0
X1MOVK0, CV0RSTC0, K1
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

12. TON — หน่วงเวลา (Timer)

ถ้าต้องการให้ผู้ใช้กดปุ่มค้างไว้ 3 วินาทีไฟถึงติด ใช้ TON

  • เขียน TON + Timer Value คือตัวที่จำค่าเวลาที่กำลังนับ เช่น TV0 + Set Value
  • 3 วินาทีเขียน K30 เพราะ Timer ที่ TV0 เป็นหน่วย 100 ms — K1 = 100 ms ดังนั้น K30 = 3,000 ms = 3 วินาที
  • เมื่อ TV0 นับถึงค่า หน้าสัมผัส T0 จะติด เอาไปสั่ง Y0
  • ถ้าปล่อยปุ่มก่อน TON ไม่ได้ทำงาน Timer จะ Reset ค่าเอง ถ้าอยากให้ไฟติดค้างหลังครบเวลา ให้เปลี่ยน OUT Y0 เป็น SET Y0 K1 — กดค้างครบ 3 วินาทีไฟติด ปล่อยมือแล้วยังค้างจนกว่าจะมีคำสั่ง Reset
TON 3 วินาที
กด X0 ค้าง 3 วินาที → Y0 ติดค้าง
N0
กด X0 ค้าง → Timer TV0 นับ K30 (100 ms × 30 = 3 วินาที)
X0TONTV0, K30
T0 ติด → SET Y0 ให้ติดค้าง
T0SETY0, K1
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

เทคนิค: ไฟกะพริบทุก 1 วินาทีด้วย M8160

ส่วนนี้ไม่ใช่คำสั่งแต่เป็นเทคนิคใช้ Coil พิเศษ (Special Register) — M8160 เป็น Coil พิเศษที่ติด-ดับเป็นคาบ 1 วินาที

  1. กด X0 แล้ว SET M0 K1 (Coil ตัวช่วย M0 จำนวน 1 ตัว)
  2. ระหว่างที่ M0 ทำงาน ให้ไป OUT Y0 แต่ต่อ M8160 อนุกรมเข้าไปด้วย
  3. กด X0 แล้ว M0 ติด M8160 จะคอยเปิด-ปิดหลอดไฟให้เอง
ไฟกะพริบด้วย M8160
M8160 = สัญญาณคาบ 1 วินาที
N0
กด X0 → SET M0
X0SETM0, K1
M0 ติด และ M8160 กะพริบ → Y0 กะพริบทุก 1 วินาที
M0M8160Y0
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

13–15. LDW>, LDW<, LDW= — เปรียบเทียบค่า

ตัวอย่างในคลิป: ให้ไฟติดเมื่ออุณหภูมิมากกว่า 50 องศา

  • ต้องมีโมดูลกับเซนเซอร์ก่อน ในคลิปใช้โมดูลส่วนขยายกับเซนเซอร์ PT100 แบบ 3 สาย ของ Factonation ประกอบเข้ากับตัว PLC แล้วจ่ายไฟ 24V DC ให้โมดูล
  • เขียน LDW> ตามด้วยค่าที่วัดมา และค่าที่ตั้งไว้ — ค่าอุณหภูมิหลัง Config อยู่ที่ AI120 จึงเขียน LDW> AI120 K500 (K500 = 50 องศา เพราะค่าที่อ่านได้เป็นหน่วย 0.1 องศา) แล้วสั่ง Y0
  • ดาวน์โหลดลง PLC แล้วรัน — ค่าที่อ่านได้ตอนแรกเป็น 360 หรือ 36 องศา พอให้ความร้อนจนค่าเกิน 500 (ในคลิปขึ้นไปถึง 519) ไฟก็ติด
LDW> เปิดไฟเมื่ออุณหภูมิเกิน 50 องศา
AI120 = ค่าอุณหภูมิจาก PT100 หน่วย 0.1 องศา
N0
AI120 > 500 (50.0 องศา) → Y0 ติด
AI120 > K500Y0
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

การเปรียบเทียบไม่ได้มีแค่มากกว่า ในรายการคำสั่งของ SamSoar2022 มีครบ

คำสั่งความหมาย
LDW=Word Equal (เท่ากับ)
LDW<>Word Not Equal (ไม่เท่ากับ)
LDW>Word Greater (มากกว่า)
LDW>=Word Greater Or Equal (มากกว่าหรือเท่ากับ)
LDW<Word Less (น้อยกว่า)
LDW<=Word Less Or Equal (น้อยกว่าหรือเท่ากับ)

สรุป 15 คำสั่ง

LD, OUT, LDI, AND, OR, SET, RST, ALT, LDP, CTU, MOV, TON, LDW>, LDW< และ LDW= คือคำสั่งที่เจอบ่อยที่สุดในงานคอนโทรลพื้นฐาน ถ้ารู้ 15 คำสั่งนี้ก็นำไปใช้กับงานควบคุมได้ราว 80% แล้ว