- หน้าแรก
- คลังความรู้
- PLC
// บทที่ 22 · PLC Automation · ช่างไฟฟ้า → นักศึกษา → วิศวกร
การควบคุมอัตโนมัติด้วย PLC
PLC (Programmable Logic Controller) แทนที่ตู้รีเลย์นับร้อยตัวด้วยโปรแกรมที่แก้ไขได้ ชุดนี้สอนตั้งแต่ PLC สแกนอย่างไร ต่อเซนเซอร์ PNP/NPN ให้ถูก เขียนแลดเดอร์ ไทเมอร์ เคาน์เตอร์ ไปจนถึงควบคุมมอเตอร์ สตาร์-เดลต้า ระบบลำดับขั้น อนาล็อก PID และการสั่งอินเวอร์เตอร์ ทุกตัวอย่างลองได้ทันทีในซิมูเลเตอร์ในหน้าเว็บ มี 43 สูตรที่มีรหัสอ้างอิง และ 10 ตัวอย่าง
สรุปใน 30 วินาที
- PLC วนทำสามอย่างซ้ำทุกไม่กี่มิลลิวินาที: อ่านอินพุต → รันโปรแกรม → เขียนเอาต์พุต
- แลดเดอร์: อนุกรม = AND · ขนาน = OR · NC = NOT · วงจรล็อกตัวเองเหมือนคอนแทกเตอร์
- เซนเซอร์ PNP คู่กับอินพุตแบบซิงก์ (COM ลง 0 V) · NPN คู่กับซอร์ส
- ปุ่ม STOP และหยุดฉุกเฉินต่อแบบ NC และอินเตอร์ล็อกสำคัญต้องคงไว้ในฮาร์ดแวร์
- ไทเมอร์ TON TOF TP และเคาน์เตอร์ CTU CTD ตาม IEC 61131-3 ใช้ได้ทุกยี่ห้อ
เส้นทางเรียนตามระดับ
ระดับ 3 · นักศึกษาวิศวกรรม · วิศวกร
ออกแบบเชิงระบบ
พีชคณิตบูลีน สเตตแมชชีน SFC ST เวลาตอบสนอง PID เชิงตัวเลข ความปลอดภัยเชิงฟังก์ชัน
IEC 61131-3 → SFC → ความปลอดภัย
ลองเลย: PLC สตาร์-เดลต้าในเบราว์เซอร์
กด START (I0.1) แล้วดูเส้นสีเขียวไหลในแลดเดอร์ ไทเมอร์ T1 นับ 6 วินาที K2 (สตาร์) ปล่อย รอช่วงตาย 80 ms แล้ว K3 (เดลต้า) ดูด เลือกตัวอย่างอื่นจากเมนู หรือเปิด “แก้ไขโปรแกรม” เพื่อเขียนเอง ซิมูเลเตอร์เต็มพร้อมใบงานอยู่ที่ ซิมูเลเตอร์แลดเดอร์
สมการหลักที่ใช้ทั้งชุด
H1 Worst-case response เวลาตอบสนองแย่ที่สุด
tresp,max≈tin+2tscan+tout
H2 Latch rung แลดเดอร์ล็อกตัวเอง
Q=STOP⋅(START+Q)≡STOP ต่อ NC → ในโปรแกรมใช้หน้าสัมผัส NO
H3 On-delay timer ไทเมอร์หน่วงเวลาเปิด
QTON=IN∧(ET≥PT)ET≤PT
H4 Analog scaling สเกลค่าแอนะล็อก
y=ymin+(x−xmin)xmax−xminymax−ymin
PLC ที่พบในภูมิภาคและการเรียกชื่อแอดเดรส
| ยี่ห้อ (ตัวอย่างรุ่น) | อินพุต | เอาต์พุต | หน่วยความจำ | ซอฟต์แวร์ |
| IEC 61131-3 (มาตรฐาน) | %IX0.0 | %QX0.0 | %MX0.0 | CODESYS และอื่น ๆ |
| Siemens (S7-1200/1500) | I0.0 | Q0.0 | M0.0 | TIA Portal |
| Mitsubishi (FX5U, iQ-R) | X0 | Y0 | M0 | GX Works3 |
| Omron (CP1, NX/NJ) | 0.00 | 100.00 | W0.00 | CX-Programmer / Sysmac Studio |
| Delta (DVP, AS) | X0 | Y0 | M0 | ISPSoft |
| Rockwell (Micro800, CompactLogix) | _IO_EM_DI_00 / tag | _IO_EM_DO_00 / tag | tag | CCW / Studio 5000 |
ชุดนี้ใช้รูปแบบ I0.0 / Q0.0 / M0.0 แบบ Siemens เพราะอ่านง่ายและแปลงไปยี่ห้ออื่นได้ตรงไปตรงมา
ทุกบทในชุดนี้
ส่วนที่ 1พื้นฐาน PLC และฮาร์ดแวร์ PLC Basics & Hardware
PLC คืออะไร โครงสร้าง วงรอบการสแกน มาตรฐาน IEC 61131 และการต่อสายอินพุต-เอาต์พุต PNP/NPN
ส่วนที่ 2การเขียนโปรแกรม Programming
แลดเดอร์ ไทเมอร์ เคาน์เตอร์ และภาษา IEC 61131-3 ทั้ง 5 แบบ พร้อมตัวอย่างโค้ดเดียวกันหลายภาษา
ส่วนที่ 3งานประยุกต์ในโรงงาน Industrial Applications
ควบคุมมอเตอร์ด้วย PLC การควบคุมแบบลำดับขั้น อนาล็อก PID และสั่งงานอินเวอร์เตอร์
ส่วนที่ 4ติดตั้ง ความปลอดภัย และแล็บ Commissioning, Safety & Lab
ขั้นตอนทดสอบระบบ ความปลอดภัยเครื่องจักร การแก้ปัญหา และซิมูเลเตอร์แลดเดอร์ในเบราว์เซอร์
รหัส: H ภาพรวม · F พื้นฐาน · W ต่อสาย I/O · B แลดเดอร์ · T ไทเมอร์/เคาน์เตอร์ · L ภาษา · M มอเตอร์ · S ลำดับขั้น · P อนาล็อก/PID · K ทดสอบ/ความปลอดภัย
ทั้งหมด 47 สูตร
- H1Worst-case responseเวลาตอบสนองแย่ที่สุด
tresp,max≈tin+2tscan+tout
- H2Latch rungแลดเดอร์ล็อกตัวเอง
Q=STOP⋅(START+Q)≡STOP ต่อ NC → ในโปรแกรมใช้หน้าสัมผัส NO
- H3On-delay timerไทเมอร์หน่วงเวลาเปิด
QTON=IN∧(ET≥PT)ET≤PT
- H4Analog scalingสเกลค่าแอนะล็อก
y=ymin+(x−xmin)xmax−xminymax−ymin
- F1Scan timeเวลาสแกน
tscan=treadI+tprogram+twriteQ+tcomm/diag
- F2Program execution estimateเวลารันโปรแกรมโดยประมาณ
tprogram≈Nbittbit+Nwordtword+Nrealtreal
- F3Response timeเวลาตอบสนองของระบบ
tin+tscan+tout≤tresp≤tin+2tscan+tout
- F4Shortest pulse surely seenพัลส์สั้นสุดที่ PLC จับได้แน่นอน
tpulse>tscan+tin
- F5I/O count with spareจำนวนจุด I/O พร้อมสำรอง
NI/O=⌈1.2Nrequired⌉(สำรอง 15–25 %)
- W1Input currentกระแสอินพุต
Iin≈RinV−VLED≈4.7 kΩ24−1.2≈5 mA
- W2Two-wire sensor compatibilityเซนเซอร์ 2 สายกับอินพุต
Ileak,sensor≤IOFF,maxVdrop,sensor≤24−VON,min
- W3Inductive kickแรงดันกระชากตอนตัดคอยล์
vL=Ldtdiไม่มีตัวจำกัด: หลายร้อยโวลต์มีไดโอด: Vclamp≈Vsupply+0.7 V
- W424 VDC supply sizingขนาดพาวเวอร์ซัพพลาย
IPSU≥1.25(ICPU+∑Iin+∑Isensor+∑Iout(ทำงานพร้อมกัน))
- B1AND (series)AND (อนุกรม)
Y=A⋅BST: Y:=A AND B;
- B2OR (parallel)OR (ขนาน)
Y=A+BST: Y:=A OR B;
- B3NOT (NC contact)NOT (หน้าสัมผัส NC)
Y=AST: Y:=NOT A;
- B4De Morganทฤษฎีเดอมอร์แกน
A⋅B=A+BA+B=A⋅B
- B5XORเอกซ์คลูซีฟ-ออร์ (สวิตช์สองทาง)
Y=AB+AB
- B6Motor latch in a PLCรังล็อกตัวเองใน PLC
Q0.0=I0.0(STOP, NC)⋅(I0.1(START)+Q0.0)⋅I0.2(OL 95-96, NC)
- B7Set/Reset with reset prioritySET/RESET แบบ RESET มาก่อน (รัง R อยู่ล่าง)
Qk+1=(S+Qk)⋅R
- B8Rising edge (one-shot)ขอบขาขึ้น
P(A)k=Ak⋅Ak−1N(A)k=Ak⋅Ak−1
- T1TON — on-delayหน่วงเวลาเปิด
ET={min(ET+Δt, PT)0IN=1IN=0Q=IN∧(ET≥PT)
- T2TOF — off-delayหน่วงเวลาปิด
Q=IN∨(ET<PT)โดย ET เริ่มนับเมื่อ IN:1→0, ET=0 ขณะ IN=1
- T3TP — pulseพัลส์ความยาวคงที่
Q=1 ช่วง [t0, t0+PT) หลังขอบขาขึ้นของ IN ที่ t0 (ไม่เริ่มใหม่ระหว่างพัลส์)
- T4Timer accuracyความแม่นยำของไทเมอร์ซอฟต์แวร์
PT≤tactual≤PT+tscan+tbase
- T5Flasher from two timersไฟกะพริบด้วยไทเมอร์สองตัว
T1=TON(EN∧T2, ton)T2=TON(T1, toff)Q=EN∧T1(Tperiod=ton+toff)
- T6CTU — up counterเคาน์เตอร์นับขึ้น
CVk+1=⎩⎨⎧0CVk+1CVkR=1P(CU)otherwiseQ=(CV≥PV)
- T7CTD — down counterเคาน์เตอร์นับลง
CV=PV เมื่อ LDCVk+1=CVk−1 ที่ P(CD)Q=(CV≤0)
- T8Software counter limitความถี่สูงสุดของเคาน์เตอร์ในโปรแกรม
fmax≈2(tscan+tin)1
- L1Signed integer rangeช่วงค่าจำนวนเต็มแบบมีเครื่องหมาย
−2n−1≤x≤2n−1−1n=16⇒−32768…32767
- L2Integer pitfalls in scalingกับดักการคำนวณจำนวนเต็ม
2764827648×10(ล้น INT ที่ขั้นคูณ)2764813824×10=0(หารปัดทิ้งก่อนคูณ)
- M1Run commandคำสั่งเดิน
Cmd=I0.0⋅I0.2⋅Fault⋅(I0.1+Cmd)
- M2Feedback discrepancyตรวจความไม่ตรงกันของป้อนกลับ
Fault←TON(Cmd⊕FB, tfb)tfb≈0.5–2 s
- M3Software interlockอินเตอร์ล็อกในโปรแกรม
QF=S0OL(SF+QF)SRQRFBRQR=S0OL(SR+QR)SFQFFBF
- M4Star–delta sequenceลำดับสตาร์-เดลต้าในโปรแกรม
KY=RunTYKΔK1=Run(KY+K1)KΔ=RunTON(TY, tdead)KYFBY
- S1Transition ruleกฎการเปลี่ยนขั้น
Xn+1←1, Xn←0เมื่อXn∧tn→n+1
- S2One active stepมีขั้นทำงานหนึ่งขั้น (ลำดับเชิงเส้น)
i∑Xi=1
- S3Outputs from stepsเอาต์พุตจากขั้น
Qj=i∈Aj⋁Xi⋅(เงื่อนไขอนุญาต)
- P1Linear scalingสเกลเชิงเส้น
y=ymin+(x−xmin)xmax−xminymax−ymin
- P2Resolutionความละเอียดต่อหนึ่งหน่วยดิบ
Δy=xmax−xminymax−yminเช่น 2764810 bar=0.36 mbar
- P3Signal validity (NAMUR NE 43)ตรวจความถูกต้องของสัญญาณ
3.8≤I≤20.5 mA ค่าวัดเชื่อได้I≤3.6 หรือ I≥21 mA → ความผิดพลาด
- P4PID (standard form)PID แบบมาตรฐาน
u(t)=Kp(e+Ti1∫0tedτ+Tddtde)e=SP−PV
- ts) อนาล็อก · pid · สั่ง vfd u_k = k_p left (e_k + frac {t_s}{t_i} sum _{j=0}^{k} e_j - frac {t_d}{t_s}(pv_k - pv_{k-1}) right ) ">P5Discrete PIDPID ดิจิทัล (คาบสุ่ม Ts)
uk=Kp(ek+TiTsj=0∑kej−TsTd(PVk−PVk−1))
- P6Frequency setpoint over Modbusค่าความถี่ที่ส่งทาง Modbus
Reg=0.01 Hzf(35.5 Hz→3550)หรือReg=fmaxf×Scale100%
- K1Stop categoriesหมวดการหยุด
Cat 0: ตัดพลังงานทันทีCat 1: หยุดแบบควบคุมแล้วตัดพลังงานCat 2: หยุดแบบควบคุม คงพลังงานไว้
- K2PL / SIL by dangerous failure rateระดับตามอัตราความล้มเหลวอันตรายต่อชั่วโมง
PL d≈SIL 2:10−7≤PFHD<10−6PL e≈SIL 3:10−8≤PFHD<10−7
- K3Minimum safety distance (ISO 13855)ระยะติดตั้งขั้นต่ำของม่านแสง
S=KT+CK=2000 mm/s (ถ้า S≤500 mm), 1600 mm/s (ถ้ามากกว่า)C=8(d−14) mm, d≤40 mm
ไม่พบสูตรที่ตรงกัน ลองพิมพ์คำอื่น หรือใช้ภาษาอังกฤษ เช่น inverse, determinant, eigenvalue
มาตรฐานและแหล่งอ้างอิง
- IEC 61131-1 (ภาพรวม) · IEC 61131-2 (ฮาร์ดแวร์ ชนิดอินพุต 24 VDC) · IEC 61131-3 (ภาษาโปรแกรม)
- IEC 60204-1 (อุปกรณ์ไฟฟ้าของเครื่องจักร หมวดการหยุด) · ISO 13849-1 / IEC 62061 (ความปลอดภัยเชิงฟังก์ชันของเครื่องจักร)
- IEC 60848 (GRAFCET) · Modbus Application Protocol Specification (Modbus Organization)
- F. D. Petruzella, Programmable Logic Controllers · W. Bolton, Programmable Logic Controllers · คู่มือของผู้ผลิต PLC
คำถามที่พบบ่อย
เรียน PLC ต้องรู้อะไรก่อน?
ควรเข้าใจวงจรควบคุมด้วยคอนแทกเตอร์ (ล็อกตัวเอง อินเตอร์ล็อก ไทเมอร์) เพราะแลดเดอร์ถูกออกแบบให้อ่านเหมือนวงจรรีเลย์ และรู้ไฟฟ้าพื้นฐาน 24 VDC กับ 230 VAC เพื่อต่อสาย I/O ได้ถูก ทั้งหมดนี้อยู่ในชุดควบคุมมอเตอร์บนเว็บนี้
ควรเริ่มกับ PLC ยี่ห้อไหน?
หลักการเหมือนกันทุกยี่ห้อเพราะอิงมาตรฐาน IEC 61131 เลือกยี่ห้อที่ใช้ในโรงงานหรือสถานศึกษาใกล้ตัว และที่มีซอฟต์แวร์ฟรีพร้อมซิมูเลเตอร์ ในภูมิภาคนี้พบ Mitsubishi, Omron, Siemens, Delta, Schneider, Rockwell และ Keyence บ่อย
PLC ต่างจาก Arduino หรือไมโครคอนโทรลเลอร์อย่างไร?
PLC ออกแบบมาสำหรับสภาพแวดล้อมโรงงาน: I/O 24 VDC ที่ทนสัญญาณรบกวนและมีการแยกโดดเดี่ยว ทำงานแบบสแกนที่คาดเดาได้ มีการวินิจฉัยตัวเอง ภาษาตามมาตรฐาน ซ่อมและเปลี่ยนโมดูลได้ระหว่างใช้งาน และผ่านการรับรองตามมาตรฐานอุตสาหกรรม ส่วนไมโครคอนโทรลเลอร์ยืดหยุ่นและถูกกว่า แต่ผู้ใช้ต้องสร้างความทนทานเหล่านี้เอง
มด
อาจารย์มด · ธีรวุฒิ แสวงบุญ
อาจารย์สาขาวิชาวิศวกรรมไฟฟ้า มหาวิทยาลัยราชภัฏธนบุรี สมุทรปราการ · ดูโปรไฟล์