รูปปกบทความ ผ่าสมอง PLC: สถาปัตยกรรมหน่วยความจำ

1. 🎯 ตอนที่ 4: ผ่าสมอง PLC: สถาปัตยกรรมหน่วยความจำ (I/O Memory Allocation)

2. 📖 เปิดฉาก (The Hook)

สวัสดีครับพี่น้องสายออโตเมชั่น! กลับมาจิบกาแฟกางแบบแปลนกันต่อในซีรีส์ คู่มือเอาตัวรอดหน้างานกับ PLC OMRON ครับ เคยมีรุ่นน้องวิ่งหน้าตื่นมาถามผมว่า “พี่ครับ! ทำไมไฟดับปุ๊บ ค่ายอดผลิตที่นับไว้ในเครื่องถึงหายเกลี้ยงเลยล่ะครับ?” หรือบางทีก็บ่นว่า “พี่ครับ ผมเอาช่อง CIO ที่ว่างๆ ไปเขียนเป็นตัวทดเลข (Internal Relay) ทำไมตอนรันเครื่องมันถึงทำงานรวนๆ ผีหลอกแปลกๆ ครับ?”

ปัญหาพวกนี้เกิดจากการที่เรายังไม่เข้าใจ “สถาปัตยกรรมสมอง” ของ PLC ครับ การเขียนโปรแกรม Ladder Logic ไม่ใช่แค่การเอา Contact มาต่อๆ กันให้ไฟติด แต่คือการบริหารจัดการพื้นที่หน่วยความจำ (Memory Area) ให้ถูกต้อง วันนี้ในฐานะวิศวกรรุ่นพี่ ผมจะพาไป “ผ่าสมอง” ของ PLC OMRON ตระกูล CP-Series (CP1E, CP1L, CP1H, CP2E) ให้ดูกันชัดๆ ว่า CIO, W, H และ D Area มันคืออะไร และทำไมการเลือกใช้ให้ถูกประเภทถึงเป็นตัวตัดสินความเสถียรของเครื่องจักรคุณ!

3. 🧠 แก่นวิชาออโตเมชั่น (Core Concepts & Specs)

ใน PLC ของ OMRON พื้นที่หน่วยความจำ (I/O Memory) จะถูกแบ่งออกเป็นโซนๆ ตามหน้าที่การทำงานอย่างชัดเจนครับ เพื่อให้เห็นภาพง่ายขึ้น ผมขอเปรียบเทียบกับ “ออฟฟิศทำงาน” ดังนี้ครับ:

  • CIO Area (Core I/O Area): โต๊ะทำงานรับแขก
    • หน้าที่: เป็นพื้นที่สำหรับเชื่อมต่อกับโลกภายนอก (Physical I/O) โดยตรง เช่น การรับค่าจาก Sensor (Input) และสั่งงาน Relay/Valve (Output) รวมถึงการแลกเปลี่ยนข้อมูลผ่าน Network (เช่น Serial PLC Link)
    • เปรียบเทียบ: เหมือนโต๊ะประชาสัมพันธ์ที่ต้องรับส่งเอกสารตลอดเวลา พอหมดวัน (ปิดเครื่อง) ของบนโต๊ะจะถูกเก็บกวาดทิ้งทั้งหมด (ค่าข้อมูลไม่ถูกจดจำเมื่อไฟดับ)
    • ช่วง Address พื้นฐาน: Input เริ่มที่ CIO 0.00 และ Output เริ่มที่ CIO 100.00
  • W Area (Work Area): กระดาษทดเลข
    • หน้าที่: เป็นพื้นที่หน่วยความจำภายใน (Internal Relay) สำหรับเขียนโปรแกรมเพื่อสร้างเงื่อนไขลอจิกต่างๆ (Interlocking) โดย “ห้าม” นำไปผูกกับ Hardware I/O ภายนอก
    • เปรียบเทียบ: เหมือนกระดาษทดเลขที่คุณเอาไว้คิดคำนวณหรือฝากสถานะชั่วคราวระหว่างรันเครื่องจักร พอไฟดับ ค่าที่ทดไว้ก็จะหายไป (Non-retained memory)
  • H Area (Holding Area): สมุดจดบันทึกกันลืม
    • หน้าที่: เป็นพื้นที่ที่จำค่าได้แม้ไฟดับ หรือเมื่อเปลี่ยนโหมดการทำงาน (PROGRAM ↔ RUN/MONITOR) ใช้สำหรับเก็บสถานะสำคัญที่ต้องการให้เครื่องทำงานต่อเนื่องจากจุดเดิมเมื่อไฟมา
    • เปรียบเทียบ: เหมือนสมุดโน้ตส่วนตัวที่คุณจดสถานะค้างไว้ก่อนเลิกงาน พรุ่งนี้เช้าเปิดสมุดมาก็ทำงานต่อได้เลย
  • D Area (Data Memory Area): แฟ้มเอกสาร/ฮาร์ดดิสก์
    • หน้าที่: พื้นที่ขนาดใหญ่สำหรับเก็บ “ข้อมูลที่เป็นตัวเลข (Word-unit/16-bits)” โดยเฉพาะ (เข้าถึงในระดับ Bit ไม่ได้โดยตรง ต้องใช้คำสั่งพิเศษ) ค่าข้อมูลจะไม่หายไปเมื่อไฟดับ นิยมใช้เก็บค่า Setting, ค่าพารามิเตอร์, สูตรการผลิต (Recipe) หรือยอดการผลิต (Production Counter)
    • เปรียบเทียบ: เหมือนตู้เก็บแฟ้มเอกสารขนาดใหญ่ที่เก็บข้อมูลไว้แน่นหนา ไฟดับก็ไม่สะเทือน
แผนผังเปรียบเทียบการทำงานของ CIO, W, H และ D Area ใน OMRON PLC

4. 💻 ร่ายมนต์โค้ดและวงจร (Logic & Wiring)

มาดูตัวอย่างการเรียกใช้ Memory แต่ละประเภทใน Ladder Logic แบบฉบับคนหน้างานกันครับ:

// ------------------------------------------------------------
// [ตัวอย่างการใช้ Memory Area ในการควบคุมเครื่องจักร]
// ------------------------------------------------------------

// 1. ใช้ CIO Area สำหรับรับค่า Physical I/O
// สวิตช์ Start (CIO 0.00) สั่งให้ระบบทำงาน และใช้ W Area (W0.00) เป็นกระดาษทด
   0.00                   W0.00
---| |---------------------( )---

// 2. ใช้ H Area (Holding Area) ในการจำสถานะ Manual/Auto
// แม้ไฟดับค้างคืน พอเปิดเครื่องมา โหมดที่เลือกไว้ (H0.00) จะยังคงอยู่
   W0.00      0.01        H0.00
---| |--------|/|----------( )---
   H0.00   |
---| |-----+

// 3. ใช้ D Area (Data Memory) สำหรับเก็บค่านับชิ้นงาน (Counter)
// เมื่อเซ็นเซอร์จับชิ้นงานได้ (CIO 0.02) ให้บวกค่าเพิ่มไปเก็บในตู้แฟ้ม D100
   0.02                    
---| |-------------------[ INC D100 ]

/* 
   Comment สไตล์วิศวกร: 
   เห็นไหมครับว่า ถ้าเราใช้ W Area ทำวงจร Self-holding 
   พอเครื่องดับปุ๊บ รีเลย์ภายในจะคลายตัวหมด ระบบจะลืมสถานะทันที 
   แต่พอใช้ H Area ระบบจะจำได้ว่าก่อนหน้าไฟดับ เครื่องรันโหมดไหนอยู่!
   และยอดชิ้นงานที่อยู่ใน D100 ก็จะยังคงอยู่ครบถ้วน ไม่ต้องเริ่มนับ 0 ใหม่ครับ
*/

5. 🛡️ เคล็ดลับคนหน้างาน (Factory Floor Pro-Tips)

จากสเปกฮาร์ดแวร์คู่มือของ OMRON ผมมีข้อพึงระวังระดับเซียนมาฝากกันตกม้าตายครับ:

  1. อย่ามักง่ายเอา CIO ที่ว่างมาใช้เป็น Work Area!: คู่มือ OMRON ระบุชัดเจนว่า แม้ CIO 3800 ถึง 6143 จะว่างและทำหน้าที่เหมือน Work Area ได้ แต่ “ควรใช้ W Area ให้หมดก่อน” เพราะในอนาคต หากมีการเพิ่ม Expansion Unit หรือมีการอัปเกรดฟังก์ชัน Address CIO ที่ว่างอยู่อาจถูกระบบยึดไปใช้จนทับซ้อนกับโปรแกรมที่เราเขียนไว้ครับ (System Conflict)
  2. เรื่องของ Battery Backup: การที่ H Area และ D Area จะจำค่าตอนไฟดับได้ ในรุ่นอย่าง CP1E-N หรือ CP1L จะต้องอาศัย แบตเตอรี่ (Battery) เสมอ! หากไฟ Error แบตเตอรี่โชว์ (A402.04 ON) ข้อมูลใน H และ D อาจผิดเพี้ยนตอนไฟดับได้ แต่ความเจ๋งคือ ถ้าระบบของคุณอัปเกรดมาใช้ CP2E รุ่นใหม่ พื้นที่ D, H, C, A จะถูกเซฟลง Built-in Non-volatile memory (EEPROM) อัตโนมัติ ทำให้เครื่องจักรของคุณทำงานแบบ Battery-free ไฟดับข้อมูลก็ไม่หาย ไม่ต้องคอยวิ่งเปลี่ยนแบตเตอรี่อีกต่อไป!
  3. การบังคับเคลียร์ค่า H/D Area: หากคุณใช้ฟังก์ชัน DM Backup ลง EEPROM แล้วอยากล้างค่าทั้งหมดตอนเปิดเครื่องใหม่ คุณต้องเข้าไปติ๊กตั้งค่าที่ Clear retained memory area (HR/DM/CNT) ในหน้า PLC Setup ของ CX-Programmer ด้วยนะครับ ไม่งั้นมันจะดึงค่าเก่าที่จำไว้มาทับเสมอ

6. 🏁 บทสรุป (To be continued…)

การเข้าใจสถาปัตยกรรม Memory Area ไม่ใช่แค่ทฤษฎีบนหน้ากระดาษครับ แต่มันคือ “เกราะป้องกัน” ความผิดพลาดเวลาเครื่องจักรเจอเหตุการณ์ไม่คาดฝัน (เช่น ไฟตก, ไฟดับ, สายหลุด) เมื่อคุณแยกแยะออกว่าค่าไหนควรทดทิ้ง (W) ค่าไหนควรจำ (H, D) และค่าไหนใช้คุยกับฮาร์ดแวร์ภายนอก (CIO) คุณก็สามารถเขียน Ladder Logic ได้อย่างมืออาชีพและเสถียรสุดๆ ครับ!

ในตอนหน้า เราจะมาเจาะลึกถึงชุดคำสั่งอมตะอย่าง “Timers และ Counters” กันบ้าง ว่ามันทำงานร่วมกับ Memory เหล่านี้อย่างไรให้แม่นยำเป๊ะๆ ฝากติดตามด้วยนะครับ!


ต้องการที่ปรึกษาด้านการออกแบบตู้คอนโทรล, เขียนโปรแกรม PLC OMRON หรือปรับปรุงเครื่องจักรในโรงงานของคุณ? ทีมงาน WP Solution พร้อมให้บริการออกแบบและติดตั้งระบบ Automation แบบครบวงจร ดูรายละเอียดบริการของเราได้ที่: www.wpsolution2017.com หรือพูดคุยปรึกษาเบื้องต้นได้ที่ Line: wisit.p