บัญชี

HMI
ขั้นสูง
20 นาที

C Scripting ใน HMI

เรียนรู้การเขียน C Scripting ใน HMI สำหรับสร้างระบบขั้นสูง Telegram/Line Notification, Google Sheet Integration, HTTP, MQTT และ SCADA System พร้อมตัวอย่างโค้ด

อัพเดทล่าสุด: 30/1/2569

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

฿6,990

การเขียน C Scripting ใน HMI

HMI ไม่ได้จำกัดอยู่แค่การแสดงผลและควบคุมพื้นฐาน เมื่อเราต้องการสร้างระบบขั้นสูงที่มีความซับซ้อน เช่น Telegram Notification, Google Sheet Integration, HTTP Protocol, MQTT Protocol หรือการสร้าง Scada System เราจำเป็นต้องใช้ C Scripting เพื่อให้ HMI ทำงานตามเงื่อนไขที่เรากำหนด

การเตรียม Script Editor

การเปิด Script Editor

  1. เปิดโปรแกรม HMI Development
  2. ใช้เมนูทางซ้ายหา Script Editor
  3. Double-Click เพื่อเปิดหน้าต่าง Script Editor
  4. คลิกปุ่ม New (รูปสี่เหลี่ยม) ที่มุมซ้ายบนเพื่อสร้าง Script ใหม่

การตั้งชื่อ Script

// ตัวอย่างการตั้งชื่อ Script
Script Name: CBasic

โครงสร้างพื้นฐานของ C Script

Comment (คอมเม้นต์)

คอมเม้นต์คือส่วนที่ Compiler จะไม่ประมวลผล ใช้สำหรับอธิบายโค้ด:

c
/* 
  นี่คือคอมเม้นต์แบบหลายบรรทัด
  ใช้เพื่ออธิบายการทำงานของโค้ด
*/

// คอมเม้นต์แบบบรรทัดเดียว

การเขียนโค้ดพื้นฐาน

  • เขียนโค้ดใต้ส่วน comment ที่มีคำว่า "To do"
  • ทุกคำสั่งต้องจบด้วย semicolon (;)
  • กด Compile เพื่อตรวจสอบ syntax error

การทำงานกับตัวแปรและค่าข้อมูล

การกำหนดค่าพื้นฐาน

c
// กำหนดค่าลงใน Local Word
LocalWord[0] = 15;    // Local Word 0 = 15

การใช้เลขฐาน 16 (Hexadecimal)

c
// เลขฐาน 16 ใช้ 0x นำหน้า
LocalWord[1] = 0xF;   // 0xF = 15 ในเลขฐาน 10

การทำงานกับเลขติดลบ

สำหรับค่าติดลบ ต้องปรับ Data Type ใน Numeric Display:

c
// ค่าติดลบ
LocalWord[2] = -15;

เคล็ดลับ: เปลี่ยน Data Type จาก 16 bit Unsigned เป็น 16 bit Signed เพื่อแสดงค่าติดลบได้

ขีดจำกัดของข้อมูล

c
// ค่าสูงสุดสำหรับ 16 bit
LocalWord[3] = 65535;  // ไม่มีปัญหา

// ค่าที่เกินขีดจำกัด 16 bit unsigned integer
LocalWord[4] = 655351; // เกิด overflow

ประเภทของ Script

1. Global Script

  • รันอย่างต่อเนื่องขณะ HMI ทำงาน
  • เหมาะสำหรับการส่งข้อมูลเป็นระยะๆทุกๆ 50ms

2. Init Script

  • รันเพียงครั้งเดียวเมื่อเปิด HMI
  • เหมาะสำหรับการตั้งค่าเริ่มต้น

3. Trigger Script

  • รันเมื่อเกิดเหตุการณ์ที่กำหนด
  • เช่น เมื่อกดปุ่มหรือค่าเปลี่ยนแปลง

การทดสอบ Script

ขั้นตอนการทดสอบ

  1. เขียนโค้ดใน Script Editor
  2. กด Compile เพื่อตรวจสอบ syntax
  3. สร้าง Numeric Display เชื่อมกับ Local Word ที่ต้องการ
  4. ใช้ View → Display Control Address เพื่อแสดง address
  5. รัน Offline Simulate เพื่อทดสอบผลลัพธ์

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

  • Compile Error: ตรวจสอบ semicolon ที่บรรทัดสุดท้าย
  • ค่าติดลบไม่แสดง: เปลี่ยน Data Type เป็น Signed
  • ค่าผิดปกติ: ตรวจสอบ overflow ของข้อมูล

สรุป

C Scripting ใน HMI เป็นเครื่องมือสำคัญสำหรับการสร้างระบบอัตโนมัติขั้นสูง การเริ่มต้นด้วยการเรียนรู้การกำหนดค่าพื้นฐาน การทำงานกับตัวแปร และการเข้าใจประเภทของ Script จะช่วยให้เราสามารถพัฒนาระบบที่ซับซ้อนได้ในอนาคต การฝึกฝนและทดสอบอย่างสม่ำเสมอจะทำให้เราเข้าใจหลักการทำงานของ C Scripting มากขึ้น