Loops and Arrays in CODESYS

คู่มือเขียน PLC ด้วย Structured Text (ST) Ep.3: การวนลูปและการจัดการข้อมูลชุด (Loops & Arrays)

ในฐานะ CODESYS Solutions Architect ผมขอแสดงความยินดีที่คุณเริ่มเห็นพลังของ Structured Text (ST) ครับ นี่คือจุดที่ C# Developer จะได้เปรียบอย่างมหาศาล เพราะการจัดการข้อมูลจำนวนมาก (Arrays) และการวนซ้ำ (Loops) ใน Ladder Logic นั้นค่อนข้างยุ่งยากและกินพื้นที่หน้าจอ แต่ใน ST คุณสามารถเขียนจบได้ในไม่กี่บรรทัดครับ บทความนี้เราจะเจาะลึกเรื่องการวนลูป โดยเน้นเรื่อง “ความปลอดภัยในระดับอุตสาหกรรม” ที่ Dev สาย PC มักจะพลาดกันครับ 1. FOR Loop และการจัดการ Array (The Power of Iteration) ใน C# คุณคุ้นเคยกับ for (int i=0; i<n; i++) ใช่ไหมครับ? ใน CODESYS ST ก็ทำงานเหมือนกัน แต่ Syntax จะออกไปทางภาษา Pascal ครับ จุดที่ต้องระวังสำหรับ C# Dev: 1-Based Indexing: แม้เราจะประกาศ Array เริ่มที่ 0 ได้ แต่ในวงการ PLC นิยมประกาศเริ่มที่ 1 (เช่น 1..100) เพื่อให้ตรงกับ Tag name หรือเอกสารทางไฟฟ้า Boundaries: CODESYS เคร่งครัดเรื่อง Array Bounds มาก ถ้าหลุด Range อาจเกิด Exception จน Controller หยุดทำงานได้ (ในโปรเจกต์จริงควรใช้ฟังก์ชัน CheckBounds ช่วย) ตัวอย่าง: การ Reset ค่าการผลิต 100 รายการ (Array Initialization) ส่วนประกาศตัวแปร (VAR): ...

30 มกราคม G 2026 · 3 นาที · Wisit P. (Senior Architect)