พิมพ์คำที่ต้องการค้นหา ทั้งภาษาไทยและอังกฤษ

  1. หน้าแรก
  2. คลังความรู้
  3. PLC
  4. แลดเดอร์พื้นฐาน

// บทที่ 22.3 · PLC · Ladder Basics

แลดเดอร์ไดอะแกรมพื้นฐาน: หน้าสัมผัส NO NC คอยล์ AND OR ล็อกตัวเอง SET RESET ขอบสัญญาณ และพีชคณิตบูลีน

แลดเดอร์ถูกออกแบบให้ช่างไฟที่อ่านวงจรรีเลย์เป็นอ่านโปรแกรมได้ทันที รางซ้ายคือ “ไฟบวก” รางขวาคือ “ศูนย์” แต่ละขั้นบันได (rung) คือเส้นทางที่ไฟจะไหลถึงคอยล์ได้ถ้าหน้าสัมผัสปิดครบ สิ่งเดียวที่ต้องเปลี่ยนความคิดคือ หน้าสัมผัสในโปรแกรมตรวจ ค่าบิต ไม่ใช่ตรวจปุ่ม

เขียนโดย อาจารย์มดอัปเดต
สรุปใน 30 วินาที
  • ─┤ ├─ NO: นำเมื่อบิต = 1 · ─┤/├─ NC: นำเมื่อบิต = 0 · ─( )─ คอยล์: เขียนผลลงบิต
  • อนุกรม AND · ขนาน OR · NC NOT · ทุกรังคือสมการบูลีนหนึ่งสมการ
  • ปุ่ม STOP ต่อ NC → ในโปรแกรมใช้ NO (สายขาด = หยุด)
  • คอยล์หนึ่งตัวเขียนได้ที่เดียว · ขอบสัญญาณ P/N นำกระแสหนึ่งสแกน

องค์ประกอบของแลดเดอร์ พื้นฐาน

ABY1ABY2AY3STOPSTARTMOTOROLMOTORANDY1 = A · BORY2 = A + BNOTY3 = Āล็อกตัวเองMOTOR = STOP̄·(START+MOTOR)·OL̄
รูป 1 · สี่รังพื้นฐาน: AND OR NOT และวงจรล็อกตัวเองของมอเตอร์ (เทียบกับวงจรคอนแทกเตอร์ใน DOL)

B1 AND (series) AND (อนุกรม)

Y=A⋅BST: Y:=A AND B;Y = A \cdot B \qquad \text{ST: } Y := A \text{ AND } B;

B2 OR (parallel) OR (ขนาน)

Y=A+BST: Y:=A OR B;Y = A + B \qquad \text{ST: } Y := A \text{ OR } B;

B3 NOT (NC contact) NOT (หน้าสัมผัส NC)

Y=A‾ST: Y:=NOT A;Y = \overline{A} \qquad \text{ST: } Y := \text{NOT } A;
ABA·BA+BĀA⊕B
000010
010111
100101
111100

B4 De Morgan ทฤษฎีเดอมอร์แกน

A⋅B‾=A‾+B‾A+B‾=A‾⋅B‾\overline{A\cdot B} = \overline{A} + \overline{B} \qquad \overline{A + B} = \overline{A}\cdot\overline{B}

B4 ใช้ทุกครั้งที่ต้องการ “ไม่ใช่ทั้งคู่” ในแลดเดอร์ เพราะแลดเดอร์พื้นฐานไม่มี NOT หน้าวงเล็บ ซิมูเลเตอร์ในหน้านี้ใช้กฎนี้แปลงสมการเป็นหน้าสัมผัส NO/NC ให้อัตโนมัติ

B5 XOR เอกซ์คลูซีฟ-ออร์ (สวิตช์สองทาง)

Y=AB‾+A‾BY = A\overline{B} + \overline{A}B

ปุ่ม STOP ที่ต่อ NC กับหน้าสัมผัสในโปรแกรม พื้นฐาน

การต่อสาย+24V-S01112I0.0= 1 ตอนปกติ-S11314I0.1= 1 เมื่อกดSTOP (NC) · START (NO)โปรแกรม (ถูก)I0.0I0.1Q0.0Q0.0ใช้ NO กับ I0.0 เพราะสัญญาณเป็น 1 ตอนปกติกด STOP หรือสายขาด → I0.0 = 0 → หยุดถ้าใช้ปุ่ม STOP แบบ NO: สายขาดแล้วกด STOP ไม่มีผล — อันตรายIEC 60204-1: คำสั่งหยุดต้องทำงานด้วยการตัดวงจร (de-energisation)
รูป 2 · ข้อผิดพลาดยอดนิยมของผู้เริ่มต้น: “ปุ่ม STOP เป็น NC จึงเขียนเป็นหน้าสัมผัส NC” — ผลคือมอเตอร์ไม่เดินเลย เพราะบิต I0.0 = 1 ทำให้ NC ในโปรแกรมเปิดตลอด

B6 Motor latch in a PLC รังล็อกตัวเองใน PLC

Q0.0=I0.0(STOP, NC)⋅(I0.1(START)+Q0.0)⋅I0.2(OL 95-96, NC)Q0.0 = I0.0_{(\text{STOP, NC})}\cdot(I0.1_{(\text{START})} + Q0.0)\cdot I0.2_{(\text{OL 95-96, NC})}

ในซิมูเลเตอร์ อินพุตที่มีกรอบประคือปุ่ม NC: ไฟสีเขียวที่ I0.0 ติดอยู่แล้วโดยไม่ต้องกด ลองกด START แล้ว STOP และกดปุ่มโอเวอร์โหลดเพื่อจำลองการทริป

SET RESET และขอบสัญญาณ กลาง

คอยล์ SET (─(S)─) ทำให้บิตเป็น 1 เมื่อรังเป็นจริง และ คงค่าไว้ แม้รังจะเป็นเท็จ คอยล์ RESET (─(R)─) ทำให้เป็น 0 ใช้คู่กันแทนวงจรล็อกตัวเอง หน้าสัมผัสขอบขาขึ้น P (rising edge) นำกระแสเพียงหนึ่งสแกนตอนบิตเปลี่ยน 0→1 ขอบขาลง N นำหนึ่งสแกนตอน 1→0 ใช้นับครั้ง สลับสถานะ หรือสั่งงานครั้งเดียวต่อการกด

B7 Set/Reset with reset priority SET/RESET แบบ RESET มาก่อน (รัง R อยู่ล่าง)

Qk+1=(S+Qk)⋅R‾Q_{k+1} = (S + Q_k)\cdot\overline{R}

B8 Rising edge (one-shot) ขอบขาขึ้น

P(A)k=Ak⋅Ak−1‾N(A)k=Ak‾⋅Ak−1P(A)_k = A_k\cdot\overline{A_{k-1}} \qquad N(A)_k = \overline{A_k}\cdot A_{k-1}
ตัวอย่าง B-1

ปุ่มเดียวกดติด กดดับ (toggle / flip-flop)

  1. สร้างพัลส์หนึ่งสแกน: M0.1=P(I0.0)M0.1 = P(I0.0)

  2. ถ้ายังดับอยู่ให้ติด: S M0.2=M0.1⋅Q0.1‾S\ M0.2 = M0.1\cdot\overline{Q0.1} · ถ้าติดอยู่ให้ดับ: R M0.2=M0.1⋅Q0.1R\ M0.2 = M0.1\cdot Q0.1

  3. Q0.1=M0.2Q0.1 = M0.2 — สังเกตว่าเงื่อนไขทั้งสองอ่าน Q0.1 ค่าเดิมของสแกนก่อน จึงไม่ติดแล้วดับในสแกนเดียว ลองในซิมูเลเตอร์ตัวอย่าง “SET/RESET และขอบสัญญาณ”

กฎการเขียนที่ป้องกันบั๊ก กลาง

  • คอยล์หนึ่งตัวเขียนที่เดียว — ถ้าเขียนสองรัง รังล่างทับรังบน (double coil)
  • ใช้หน่วยความจำภายใน (M) เป็นตัวกลาง แล้วค่อยเขียนเอาต์พุตจริง (Q) ที่ท้ายโปรแกรม ทำให้ดูแลง่าย
  • ตั้งชื่อสัญลักษณ์ (tag) ทุกบิต เช่น M1_Run PB_Stop_NC ไม่ใช้แอดเดรสเปล่า
  • เขียนคอมเมนต์ทุกรังว่า “ทำไม” ไม่ใช่ “ทำอะไร” (แลดเดอร์บอกอยู่แล้วว่าทำอะไร)
  • เงื่อนไขความปลอดภัย (STOP, OL, E-stop status) วางซ้ายสุดของรัง อ่านเจอก่อน

คำถามที่พบบ่อย

หน้าสัมผัส NC ในโปรแกรมกับปุ่ม NC ที่ต่อจริงเหมือนกันไหม?

ไม่เหมือน หน้าสัมผัสในโปรแกรมตรวจ “ค่าบิต” ไม่ใช่สภาพปุ่ม หน้าสัมผัส NO ในโปรแกรมนำกระแสเมื่อบิตเป็น 1 หน้าสัมผัส NC นำกระแสเมื่อบิตเป็น 0 ปุ่ม STOP ที่ต่อ NC ทำให้บิตเป็น 1 ตอนปกติ จึงต้องใช้หน้าสัมผัส NO ในโปรแกรมเพื่อให้รังทำงานตอนปกติและหยุดเมื่อกด

ใช้ SET/RESET แทนวงจรล็อกตัวเองดีไหม?

ใช้ได้และอ่านง่ายในงานลำดับขั้น แต่ระวังสองเรื่อง: ถ้าทั้ง SET และ RESET เป็นจริงพร้อมกัน ตัวที่อยู่รังล่างกว่าชนะ และบิตที่ SET ไว้อาจคงค่าหลังไฟดับถ้าเป็นหน่วยความจำ retentive ทำให้เครื่องเดินเองเมื่อไฟกลับ งานมอเตอร์ทั่วไปวงจรล็อกตัวเองแบบเดิมปลอดภัยกว่าเพราะหลุดเองเมื่อ STOP

อาจารย์มด · ธีรวุฒิ แสวงบุญ
อาจารย์สาขาวิชาวิศวกรรมไฟฟ้า มหาวิทยาลัยราชภัฏธนบุรี สมุทรปราการ · ดูโปรไฟล์