หน้าเว็บ

วันอาทิตย์ที่ 1 กุมภาพันธ์ พ.ศ. 2558

GENESIS SCADA:ถ้าสัญญาณเปลี่ยนให้สั่งงานอุปกรณ์อื่น

ถ้าต้องการสั่งงานอุปกรณ์อื่นในระบบSCADAเมื่อสัญญาณที่สนใจเปลี่ยนแปลงจะทำอย่างไร


เช่น ถ้าสัญญาณในPLC1เปลี่ยนแปลงให้SCADAสั่งงานPLC2ให้On/Offเป็นต้น

ในกรณีเช่นนี้สามารถใช้GENESIS SCADAตรวจจับการเปลี่ยนแปลงของสัญญาณPLC1ที่เราสนใจด้วยโมดูลที่ชื่อAlarmWorXดังเช่นที่แสดงไว้ในบทความเรื่อง “แจ้งเตือนเมื่อสัญญาณเปลี่ยนทั้งขึ้นและลง” จากนั้นนำสัญญาณAlarmมาสั่งOn/OffไปยังPLCตัวที่2โดยใช้Unified Data Manager

ตัวอย่างจากรูปเป็นการสร้างRegisterขึ้นมาในUnified Data Managerเพื่อรับส่งค่าระหว่างOPC tagสองตัวคือสัญญาณInputและOutput โดยInputเป็นสัญญาณAlarmและOutputเป็นสัญญาณที่ต้องการสั่งงาน ลูกศรสีแดงคือปุ่มสำหรับเลือกสัญญาณ

image

เมื่อคลิ้กปุ่มเลือกสัญญาณจะพบหน้าUnified Data Browserให้เลือกสัญญาณจากAlarm Serverที่เราสร้างAlarmตรวจสอบการเเปลี่ยนแปลงของสัญญาณไว้ หมายเลข1คือชื่อAlarm Server หมายเลข2คือAlarmที่เราสร้างไว้ตรวจสอบการเปลี่ยนแปลงของสัญญาณ และหมายเลข3คือสัญญาณActiveซึ่งจะเปลี่ยนจากOffเป็นOnเมื่อมีAlarmเกิดขึ้น ดังนั้นจากตัวอย่างเมื่อเกิดAlarmก็จะทำให้สัญญาณActiveมีค่าเป็นOnก็จะทำให้สัญญาณBit1มีค่าเป็นOnไปด้วย ถ้าAlarmหายไปก็จะทำให้สัญญาณActiveมีค่าเป็นOffและBit1ก็จะOffด้วย ทำให้เราสามารถสั่งงานPLC2ได้ตามสัญญาณAlarm

image

 

สำหรับกรณีที่เราต้องการกำหนดเงื่อนไขการส่งค่าเช่นถ้าActiveมีค่าเป็น Onให้ส่งค่าคงที่ค่าแรกไปให้PLC และเมื่อActiveเป็นOffก็ไม่ต้องเปลี่ยนแปลงค่าอะไร เช่นถ้าสัญญาณActiveมีค่าONให้ส่งค่า255ไปยังสัญญาณFLOAT2ในPLC2 กรณีเช่นนี้ให้สร้างExpressionในUnified Data Managerเพื่อตรวจสอบเงื่อนไขActiveแล้วกำหนดผลลัพธ์ที่ต้องการเสียก่อน จากนั้นค่อยเอาไปใช้เป็นInputของRegisterข้างต้น เช่นจากรูปเราสร้างExpressionขึ้นมาแล้วกำหนดเงื่อนไข(Read Expression)ว่าถ้าสัญญาณActiveเป็นOnก็ให้ผลลัพธ์เป็น255แต่ถ้าเป็นOffก็ให้เป็นค่าปัจจุบันของสัญญาณFLOAT1ซึ่งเป็นสัญญาณที่เราต้องการควบคุม(เป็นสัญญาณในPLC2)

image

ซึ่งExpressionดังกล่าวอยู่ในรูปแบบ

if(สัญญาณเงื่อนไข , ผลลัพธ์เมื่อเป็นOnหรือTrue, ผลลัพธ์เมื่อเป็น Off หรือ False)

ดังนั้นถ้าเราไม่ต้องการเปลี่ยบนแปลงค่าสัญญาณของPLC2เมื่อเงื่อนไขเป็นOffหรือFalseก็ให้ส่งค่าปัจจุบันออกไปก็คือค่าของสัญญาณFloat1นั่นเอง

หลักการนี้ใช้ได้กับทั้งGENESIS32และGENESIS64

ไม่มีความคิดเห็น:

แสดงความคิดเห็น