หน้าเว็บ

วันจันทร์ที่ 30 มิถุนายน พ.ศ. 2557

GENESIS32:ตั้งScheduleสั่งการHardwareด้วยScriptWorX

การตั้งกำหนดการแบบScheduleเพื่อสั่งการHardwareด้วยScriptWorXนั้นจะทำให้เราสามารถประยุกต์ใช้กับงานที่ต้องขึ้นอยู่กับวันเวลาได้ เช่นต้องการสั่งงานPLCทุกวันพุธ 8:30 น. เป็นต้น โดยจะสร้างScheduleขึ้นมามากน้อยได้ตามต้องการขึ้นอยู่กับจำนวนtag licenseและประสิทธิภาพของPCที่รันGENESIS32อยู่

 

ScriptWorX32เป็นโมดูลมาตรฐานหนึ่งของGENESIS32 ใช้เพื่อสร้างและรันScript โดยมีWizardช่วยให้ผู้ที่ไม่ชำนาญในการเขียนVB สามารภใช้Schedule,TimerและEventมาเป็นเงื่อนไขในการสั่งScriptได้

เปิดScriptWorX32ขึ้นมา จะพบหน้าต่างโปรแกรมดังรูป

image

สำหรับงานแบบSchedule เราจะใช้Period Script

ให้สร้างPeriod Scriptขึ้นมา โดยคลิ้กขวาที่Period Scripts > Insert Trigger

image

ตั้งชื่อTriggerแล้วกำหนดรูปแบบPeriodที่ต้องการ เช่นถ้าต้องการให้Scriptทำงานทุกวันจันทร์ 8:00:00 น. ก็ให้เลือกดังรูป โดยกำหนดเวลาในส่วนDate/Time Range

image

(วันที่เริ่มทำงานจะเป็นวันที่เราสร้างและแก้ไขTrigger ถ้าต้องการเปลี่ยนวันที่เริ่มต้นก็ทำได้ เช่นให้เริ่มทำงานในวันรุ่งขึ้น)

image

ถ้าต้องการเปลี่ยนเป็น Interval ให้เลือกแล้วตั้งเวลา Timer ดังรูปเช่นทำงานทุก 2 วินาที

image

คลิ้ก Apply

 

ในตัวอย่างนี้จะแสดงวิธีการเขียนScriptง่าย ๆ ในการสั่งงานOPC tagเพื่อไปควบคุมPLC

คลิ้กปุ่ม Edit VBA Code เพื่อเข้าไปเขียนโค้ด

จะพบชื่อSubตามชื่อTriggerที่เราสร้างขึ้น

image

หลังบรรทัด ‘ TODO ": Add your procedure code here จะเป็นส่วนที่เราจะเขียนโค้ดเข้าไป

ก่อนอื่นเลือกเมนู Tools > References แล้วเลือกGenClientWrapper 1.0 Type Library เพื่อให้สามารถใช้ไลบรารี่เกี่ยวกับการติดต่อOPC Serverจากนั้นคลิ้กOK

image

ประกาศตัวแปร opc1 ดังรูปจะมีตัวช่วยเขียนโค้ดปรากฏให้เลือกOpcHelper(หรือพิมพ์เองก็ได้)

image

ประกาศตัวแปร opc2 ขึ้นมาอีก แล้วใช้คำสั่ง set เพื่อสร้างInstanceของOPC

จากนั้นใช้คำสั่งWriteเพื่อเขียนค่าไปยังOPC Tagที่ต้องการ จะได้โค้ดดังรูป

image

คำอธิบาย

image

จากนั้นกลับมาที่หน้าคอนฟิกปกติแล้วSave แล้วคลิ้กไอคอนMake VBA DLL

image

คลิ้กไฟจราจรเพื่อ Start (ถ้าต้องการให้เริ่มงานอัตโนมัติพร้อมวินโดวส์ให้เซตในGenesis32 Tool Trayครับ)

เท่านี้PLCหรือDatabaseก็จะถูกสั่งงานตามScheduleที่ตั้งไว้

 

ตัวอย่างScheduleแบบอื่น ๆ

ทุกวันที่3ของทุกเดือน

image

ทุก 3 วัน

image

ทุกวันที่ 1 มกราคม

image

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

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