User-Defined Data Types (UDT)

User-defined Data Types

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

UDT_01

จากรูปข้างบนเป็นตัวอย่างการประกาศตัวแปร UDT ชนิดใหม่ที่ชื่อว่า UDT20 ซึ่งประกอบไปด้วยข้อมูลชนิด Int, Byte, Char, Real และ Bool เข้าด้วยกัน  ด้วยการประกาศตัวแปรแบบนี้เอง ทำให้เมื่อเราอยากใช้ข้อมูลทั้งหมดเหล่านี้ เราสามารถเลือกตัวแปร UDT20 มาใช้ได้เลยโดยไม่จำเป็นต้องมาเลือกตัวแปรทีละตัวอีกต่อไป

การสร้างตัวแปร User-defined Data Types (UDT)

1. ทำการ Add new data type ขึ้นมาใหม่ใน PLC data types
UDT_02.png

2. ทำการ rename เพื่อเปลี่ยนเป็นชื่อ UDT ที่เราต้องการ  ตัวอย่างนี้ตั้งชื่อ UDT ใหม่นี้ว่า Formula
UDT_03

3. ทำการกำหนดชนิดของข้อมูลภายใน UDT ตัวใหม่นี้
UDT_04.png

การใช้งาน User-defined Data Types (UDT)

ข้อดีของการใช้งานตัวแปร UDT แบบหนึ่งก็คือ ด้วยตัวแปร UDT ที่เราได้สร้างขึ้นมาเพียงครั้งเดียว เราสามารถนำมาใช้งานได้กับ data block หลายๆตัวโดยใช้รูปแบบโครงสร้างเดียวกันได้

ตัวอย่างเช่น สมมติว่าเราใช้รูปแบบ UDT เพื่อใช้ในการเลือกสูตรของสินค้า เราสามารถกำหนดตัวแปร UDT ได้ไปได้กับหลายๆ DB ซึ่ง DB แต่ละตัวเป็นก็เป็นตัวแปรเพื่อเก็บค่าสูตรต่างๆนั่นเอง
UDT_05

1. สร้าง DB17 ขึ้นมาใหม่ กำหนดชื่อ block เป็น Dark_Blue
UDT_06

2. ทำการตั้งชื่อตัวแปรที่ต้องการ แล้วกำหนด Data type เป็นชนิดของ UDT ที่เราได้สร้างขึ้นมา (ตัวอย่างนี้เป็นชื่อว่า Formula นั่นเอง)
UDT_07.png

3. สังเกตว่าเมื่อเรากำหนดชนิดเป็น Formula แล้ว จะมีชนิดข้อมูลข้างในตัวแปรย่อยๆ ซึ่งตรงกับที่เราได้กำหนดไว้ใน UDT ชื่อ Formula นั่นเอง
UDT_08.png

4. สร้าง DB ให้ครบทั้ง 3 ตัว โดยทำแบบเดียวกันกับ DB17 ที่ได้สร้างขึ้นมาก่อนหน้า
UDT_09

5. เมื่อจะนำไปใช้งาน ก็เพียงแค่เลือกชื่อ DB ที่ได้สร้างขึ้นมา จากนั้นโปรแกรมจากทำการ link ต่อไปเรื่อยๆจนถึงตัวแปรตัวสุดท้ายที่เราจะระบุได้
UDT_10

 

หรือเราสามารถเลือกใช้งานโดยผ่านทาง Data block ตัวเดียวก็ได้ (Multi-instance DB)  เพื่อเป็นการประหยัด Data block ได้ด้วย
UDT_11

UDT_12

 

 

 

 

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s