ตัวอย่างโปรเจ็คC#สร้างด้วยVisual Studio Express 2010แสดงการทำงานแบบSCADAที่ใช้Arrayเก็บค่าสัญญาณก่อนนำไปใช้งาน เพื่อการทำงานที่มีประสิทธิภาพ และตัวอย่างการควบคุมสัญญาณด้วยคอนโทรลอย่างTrackbar
VDOที่ควรชมก่อน :
ไฟล์ที่ต้องใช้(ถ้ายังไม่มี)
- ดาวน์โหลดCOPC DLL
- ดาวน์โหลดICONICS OPC UA Server สำหรับทดสอบ
- ดาวน์โหลดไฟล์C#ตัวอย่างพร้อมไฟล์คอนฟิกOPCตัวอย่าง
ส่วนสำคัญของโค้ด
ในงานSCADAทั่วไปมักจะมีOPC tagจำนวนมาก ดังนั้นเพื่อความเร็วในการนำค่าOPC tagมาใช้งานควรเก็บค่าไว้ในArrayก่อนแล้วจึงเรียกใช้ค่าArrayเมื่อจะเอาค่าสัญญาณไปใช้ ทำให้ใช้ซ้ำๆได้โดยไม่ต้องอ่านค่าOPC tagทุกครั้งไป ซึ่งจะทำให้OPC Serverทำงานน้อยลง ระบบทำงานคล่องตัวกว่าการอ่านOPC tagบ่อยๆ ในตัวอย่างไฟล์โปรเจ็คC#ซึ่งสร้างด้วยVisual Studio Express 2010จะใช้Timerสองตัว Timerตัวแรกอ่านค่าจากOPCเก็บไปไว้ในArray(โค้ดส่วนที่2) Timerตัวที่สองจะนำค่าจากArrayไปแสดงในLabelเพื่อแสดงค่าที่อ่านจากOPC(โค้ดส่วนที่3) ถ้าต้องการดูโค้ดส่วนไหนก็แตกกิ่งเครื่องหม่าย+หน้าโค้ดส่วนนั้น จากรูปล่างจะเห็นว่ามีการใช้Arrayชื่อmyvarเพื่อเก็บค่าสัญญาณ คุณผู้อ่านควรดูโค้ดส่วนที่1เพื่อดูว่ามีการติดต่อOPC Serverชื่ออะไรและOPC tagชื่ออะไรบ้าง
ในตัวอย่างจะมีการใช้Trackbarเพื่อป้อนค่าให้OPC Tagตัวที่สาม(โค้ดส่วนที่6) ดังนั้นถ้าต้องการใช้งานตัวอย่างโปรเจ็คดังกล่าวโดยไม่ต้องปรับโค้ดใดๆ ให้ใช้ไฟล์คอนฟิกOPCที่ดาวน์โหลดไปกับICONICS OPC UA Server เมื่อเลื่อนTrackbarในโปรเจ็คC#ก็จะทำให้ค่าของOPC tagชื่อTag2ในChannel1.Device1มีการเปลี่ยนแปลงตามครับ
ในตัวอย่างได้กำหนดย่านสูงสุดของTrackbarไว้ที่1000 ดังนั้นเราจะป้อนค่าสัญญาณจากTrackbarได้ไม่เกิน1000
การทดสอบ
เมื่อติดตั้ง ICONICS OPC UA, COPC DLL และ Visual Studio 2010 ขึ้นไปทั้งExpressหรือProแล้ว ให้เปิดไฟล์คอนฟิกOPCที่ดาวน์โหลดไปพร้อมไฟล์C#ตัวอย่าง
จากนั้นเปิดไฟล์C#ตัวอย่างแล้วAdd ReferenceของCOPC DLLเข้ามาในโปรเจ็คเพื่อความแน่ใจ จากนั้นทำการRunโปรเจ็ค จะพบหน้าแสดงค่าของOPC tagสามค่า และสามารถควบคุมค่าของOPC tagตัวที่สามได้ผ่านTrackbar(เราจะใช้การป้อน่าผ่านคอนโทรลอื่น ๆ เช่นTextboxก็ได้)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น