หน้าแรกคู่มือPLCเทคนิคขั้นสูงการใช้งาน Index และ Offset ใน PLC HMI - Data Sampling
PLC
เริ่มต้น
11 นาที

การใช้งาน Index และ Offset ใน PLC HMI - Data Sampling

เรียนรู้การใช้ Index และ Offset ใน PLC และ HMI สำหรับ Data Sampling การควบคุม Output และการสร้าง Data Group Display พร้อมตัวอย่าง Ladder Logic

อัพเดทล่าสุด: 7/3/2569

ราคาชุดอุปกรณ์

฿14,070

การใช้งาน Index และ Offset ใน PLC และ HMI

การเข้าใจแนวคิดของ Index และ Offset จะช่วยให้เราสามารถเปลี่ยนตำแหน่งของ Data Register ใน PLC และ HMI ได้อย่างอิสระ ทำให้ระบบมีความยืดหยุ่นและสามารถปรับเปลี่ยนได้ตามความต้องการ

แนวคิดหลักของ Index

Index หรือ Z Register เป็นตัวแปรพิเศษที่ใช้สำหรับการอ้างอิงตำแหน่งข้อมูลแบบไดนามิก โดยสามารถนำมาต่อท้ายกับ Register ต่างๆ เช่น M, D, Y ได้

วิธีการทำงานของ Z Register

หากมีคำสั่ง: M200[Z1] และ Z1 = 3
ผลลัพธ์: M200 + 3 = M203

ตัวอย่างการใช้งาน:

  1. Z1 = 0: M200[Z1] = M200
  2. Z1 = 1: M200[Z1] = M201
  3. Z1 = 2: M200[Z1] = M202

การประยุกต์ใช้งาน Data Sampling

1. การเก็บข้อมูลแบบต่อเนื่อง

การใช้ Index ในการสร้างระบบ Data Sampling ที่เก็บข้อมูลทุก 100ms เป็นจำนวน 10 ค่า

Data Sampling ด้วย Z Index (10 ค่า ทุก 100ms)
เก็บค่า D0 ลง D10..D19 ด้วย Index Z0
N0
จำลองข้อมูล — INC D0 ทุก cycle
M0INCD0, D0
Timer 100ms (K10 × 10ms = 100ms)
M0M1TONTV0, K10
Timer ครบ → MOV ค่า D0 ไปที่ D10[Z0]
T0MOVD0, D10[Z0]
INC Z0 เพื่อเตรียม slot ถัดไป
T0INCZ0, Z0
ครบ 10 ค่า (Z0 = 9) → Reset Z0
Z0 = K9RSTZ0
Network count: 1, gap: 12
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

2. การแสดงผลด้วย Data Group Display

การตั้งค่า Data Group Display ใน HMI:

  • Read Trigger Bit: กำหนด Bit สำหรับเริ่มอ่านข้อมูล
  • Start Address: D10 (ตำแหน่งเริ่มต้น)
  • Display Points: 10 (จำนวนจุดข้อมูล)
  • Data Type: 16-bit Signed Integer

การใช้ Offset สำหรับ Output Control

1. การใช้ Map Command ใน PLC

Map 8 Memory bits → 8 Outputs
K8 = 8 bits ต่อเนื่อง. ลอก M400..M407 ไปยัง Y0..Y7
N0
M8 ON → Y0..Y7 = M400..M407
M8MOVK8M400, K8Y0
Network count: 1, gap: 12
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

คำสั่งนี้จะทำการ Map ข้อมูลจาก M400-M407 ไปยัง Y0-Y7 โดยอัตโนมัติ

2. การตั้งค่า Offset ใน HMI

สร้าง Bit Button สำหรับ M400 พร้อมการตั้งค่า Offset:

  1. สร้าง Numeric Input สำหรับ LW0 (ค่า Offset 0-7)
  2. ตั้งค่า Write Address: M400
  3. เปิดใช้งาน Offset: LW0

3. ผลลัพธ์การทำงาน

  • LW0 = 0: กดปุ่ม → M400 ติด → Y0 ติด
  • LW0 = 3: กดปุ่ม → M403 ติด → Y3 ติด
  • LW0 = 7: กดปุ่ม → M407 ติด → Y7 ติด

เคล็ดลับการใช้งาน

Data Sampling

  • ใช้ Timer หรือ Clock Pulse สำหรับการ Sampling แบบแม่นยำ
  • กำหนดขนาดของ Buffer ให้เหมาะสมกับความต้องการ
  • ใช้ Data Group Display สำหรับการแสดงผลแบบเรียลไทม์

Offset Control

  • ใช้ Numeric Input หรือ Selection Button ให้ผู้ใช้เลือก Output
  • ตรวจสอบช่วงค่า Offset ให้อยู่ในขอบเขตที่กำหนด
  • ใช้ Map Command เพื่อลดความซับซ้อนของโค้ด

การแก้ปัญหาที่พบบ่อย

ปัญหา Index เกินขอบเขต

Bounds Check — Reset Z0 เมื่อเกินขอบเขต
ป้องกัน Index ล้นออกนอก buffer
N0
Z0 >= 10 → Reset Z0
Z0 >= K10RSTZ0
Network count: 1, gap: 12
นำเข้าไฟล์ใน SamSoar2022: File → Import → เลือกไฟล์ .csv

ปัญหาข้อมูลไม่อัปเดต

  • ตรวจสอบ Read Trigger Bit ว่าทำงานถูกต้อง
  • ตรวจสอบ Data Type ให้ตรงกับข้อมูลจริง

ปัญหา Offset ไม่ทำงาน

  • ตรวจสอบการเชื่อมต่อระหว่าง HMI และ PLC
  • ยืนยันว่า Write Address ถูกต้อง

สรุป

การใช้งาน Index และ Offset ช่วยให้ระบบควบคุมมีความยืดหยุ่นมากขึ้น โดยสามารถ:

  • สร้างระบบ Data Sampling ที่มีประสิทธิภาพ
  • ออกแบบ Output Control แบบไดนามิก
  • ลดความซับซ้อนของโค้ดผ่านการใช้ Map Command
  • ให้ผู้ใช้งานปรับเปลี่ยนพารามิเตอร์ได้ตามต้องการ

การเข้าใจแนวคิดเหล่านี้จะช่วยให้การออกแบบระบบอัตโนมัติมีความสามารถในการปรับตัวและตอบสนองความต้องการที่หลากหลายได้ดีขึ้น