การติดต่ออุปกรณ์Modbus Serial กับSCADAผ่านICONICS OPC UA Server

ICONICS OPC UA Server เป็นซอร์ฟแวร์OPC Serverหน้าตาเหมือนKepwareแต่เป็นOEMของค่ายICONICSที่สามารถใช้กับอุปกรณ์หลากหลายแบบครับ บทความนี้แสดงขั้นตอนการใช้กับอุกรณ์ Modbus เพื่อเป็นแนวทางสำหรับท่านที่เริ่มต้นใหม่กับการใช้งานOPCให้สามารถคอนฟิกการติดต่อOPC Serverกับอุปกรณ์นั้นๆเพื่อนำไปใช้กับSCADAเช่นGENESIS32, GENESIS64, และSCADAอื่น ๆ ที่สามารถติดต่อOPC Server ได้ครับ

1. ต้องมีข้อมูล Modbus Register Address ของอุปกรณ์

รู้Modbus ID, Buadrate/Parity/Stop bit

โดยข้อมูลModbus Register Address นั้นดูได้จากคู่มือของอุปกรณ์นั้นๆ เช่นในรูป

 

image

 

จากรูปที่ 1 ของอุปกรณ์ Power Meter รุ่น 53U ของ M-System บอกให้เรารู้ว่าถ้าต้องการอ่านค่ากระแสไฟฟ้า Line1 ต้องใช้ Register หมายเลข 33 ซึ่งมีData typeแบบDWord (ใช้ 2Word) หน่วยเป็น mA และย่านสัญญาณอยู่ในช่วง 0 ถึง 2,000,000,000 mA

 

Modbus ID, Buadrate/Parity/Stop bit สามารถดูที่ตัวอุปกรณ์อย่าง Power Meter ว่าเซตไว้ที่เท่าใด ถ้าเป็นPLCหรือ RTU สามารถดูในซอร์ฟแวร์คอนฟิกหรือProgramming SoftwareของPLCนั้น ๆว่าเซตไว้อย่างไร

 

2. ดาวน์โหลด OPC Server เช่น ICONICS OPC UA Server V5

จากที่นี่ ทำการติดตั้งตามปกติ (ในบทความนี้ใช้รูปจาก V4 ประกอบ)

 

3. ทำการคอนฟิก OPC File

โดยเปิดโปรแกรม ICONICS OPC UA Server จาก Start > Programs > ICONICS > ICONIC OPC Server Suite 5 > ICONIC OPC Server 5 Configuration

เมื่อเปิดโปรแกรมขึ้นมาแล้วให้สร้างไฟล์ใหม่โดยเลือก File > New (ตอบ Yes, Update เมื่อมีPopupถาม)

สร้างChannelขึ้นมาใหม่โดยคลิ้กไอคอน Click to add a channel

image

 

ตั้งชื่อ Channel ในหน้าต่างที่ปรากฏขึ้นมา แล้วคลิ้ก Next

 

เลือก Device Driver เป็น Modbus Serial ดังรูปแล้วคลิ้ก Next

image

 

เลือก COM Port ที่เราใช้งานเพื่อติดต่อกับอุปกรณ์ พร้อมBaud rate, Data bit, Parity, Stop bit … แล้วคลิ้กNext, Next , Finish จนเสร็จสิ้นขั้นตอนสร้าง Channel

image

 

สร้าง Device ขึ้นมาในChannelที่เราสร้างไว้โดยคลิ้กไอคอน Click to add a device

 

image

 

ตั้งชื่อ Device ในหน้าต่างที่ปรากฏขึ้นมาแล้วคลิ้ก Next

เลือก Device model เป็น Modbus แล้วคลิ้ก Next

image

 

ใส่ ID ของอุปกรณ์ที่เราต้องการใช้งาน (Modbus ID ที่ทราบจากตัวอุปกรณ์ ที่กำหนดในตัวอุปกรณ์หรือซอร์ฟแวร์ของอุปกรณ์) จากนั้นคลิ้ก Next

 

image

 

คลิ้ก Next ไปจนถึงหน้าต่าง Data Encoding Settings

ดูในส่วน First word low in 32 bit data types ให้เอาเครื่องหมายถูกออกถ้าWordแรกของข้อมูลประเภท32บิตเป็นHigh (ดูได้จากคู่มือของอุปกรณ์)

image

 

แต่ในตัวอย่างนี้ Power Meter รุ่น 53U ของ M-System มีข้อมูลในคู่มือคือ Wordแรก(n)ของข้อมูล32บิตเป็นlow ส่วนWordต่อไปเป็นHigh ดังนั้นเราจึงต้องคงเครื่องหมายถูกในช่อง First word low in 32 bit data types ไว้เช่นเดิม

 

image

 

ส่วนของอุปกรณ์ยี่ห้ออื่นอาจจะต่างกันเช่น Power Meter รุ่น NEMO 96 มีการเรียงWordของข้อมูล32บิตดังรูป

image

 

นั่นคือWordแรกจะเป็นHigh(Most Significant Word) ดังนั้นต้องเอาเครื่องหมายถูกข้างต้นออกจากช่อง First word low in 32 bit data types

คลิ้ก Next ต่อไปจนเสร็จสิ้น

 

สร้าง OPC tag ขึ้นมาโดยคลิ้ก “Click to add a static tag. …”

 

image

 

ตั้งชื่อ OPC tag ในช่องName และใส่ Modbus Register Addressในช่อง Address โดยเนื่องจากICONICS OPC UA และKEPware ต้องระบุAddressแบบเต็มลงไปในช่องAddress และเนื่องจากข้อมูลจากPower Meter เป็น Holding Register จึงต้องเติม 400000 + Addressของอุปกรณ์ จึงกลายเป็น 400000 + 33 (บางอุปกรณ์ก็ใส่หมายเลขแบบเต็มมาให้ในคู่มืออุปกรณ์แล้ว)

 

image

 

เลือก Data Type ให้ตรงกับคู่มือ เช่นในที่นี้เป็น DWORD

คลิ้ก Apply

 

สร้าง OPC tag อื่น ๆ ที่เราต้องการให้ครบ เป็นอันเสร็จสิ้น ให้Save File ไว้ด้วยนะครับ

 

บางครั้งคู่มืออุปกรณ์ที่เรามีอาจแสดงRegister Address แบบเลขฐานอื่น เช่นฐานสิบหก เราต้องแปลงให้เป็นฐานสิบเสียก่อนนะครับเช่นใช้โปรแกรมCalculatorของWindowsในการแปลงก็ได้ครับ ค่อยนำRegisterที่แปลงแล้วมาใช้งานต่อ

image

เช่นจากรูป Phase1 Voltage 0x301 แปลงได้เป็น 769 เวลาเอาไปใช้ใน ICONICS OPC UA หรือ KEPware ก็ใช้เป็น 400000 + 769 = 400769 เนื่องจากเป็นHolding Register

 

4. ทดสอบติดต่อกับ SCADA เช่น GENESIS32

ในGENESIS32 เปิดโปรแกรม GraphWorX32ขึ้นมาเพื่อทดสอบ

นำ Process Point วางลงไปในพื่อนที่ว่าง

 

image

 

จะพบหน้าต่าง Unified Data Browser ให้คลิ้ก Data Tags.. เข้าไปเลือก OPC tag ที่เราต้องการ แล้วคลิ้ก OK

 

image

 

เข้าสู่โหมด Runtime โดยกดปุ่ม Ctrl + M

 

 

หมายเหตุ

กรณีใช้ ICONICS Modbus OPC Server ดังรูป จะไม่ต้องกำหนดAddress แบบเต็มเหมือน ICONICS OPC UA Server และจะมีตัวอย่างการคอนฟิกดังนี้

image

image

image

การกำหนดขนาด Block size เพื่อให้อุปกรณ์สามารถบริการข้อมูลได้ทัน ส่วนWord swap ใช้กรณี First word low/high ของข้อมูล 32 บิต

image

image

image

Advertisements
This entry was posted in Uncategorized. Bookmark the permalink.

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