Monthly Archives: November 2012

ตัวอย่างการใช้ Multi Threading ใน ScriptWorX2006

จากบทความก่อนหน้านี้ “สร้างสคริปต์ให้รันแบบ Multi-Thread ด้วยโมดูลใดของ GENESIS32 ดี?” บทความนี้จะแสดงตัวอย่างการใช้งาน Multi Thread โดยแยกแต่ละ Thread ให้สั่งงานสคริปต์แยกกัน เปิด ScriptWorX 2006 สร้างโปรเจ็คใหม่หรือเพิ่ม Designer ใหม่เข้ามาในโปรเจ็คเดิมก็ได้ ในตัวอย่างนี้ผมเพิ่ม Designer เข้ามาใหม่ชื่อ opcwrite1 และสร้า Script ในDesignerดังกล่าวชื่อopcwrite โดยใช้ Trigger แบบเวลามาสั่งงานทุก 1 วินาทีโดยเลือกจากปุ่ม … (ถ้าต้องการสร้าง Trigger ใหม่ขึ้นมาก็ทำได้ใน UDM) เมื่อเลือก Trigger แล้ว คลิ้ก Apply … Continue reading

Posted in Uncategorized | Leave a comment

สร้างสคริปต์ให้รันแบบ Multi-Thread ด้วยโมดูลใดของ GENESIS32 ดี?

การทำงานแบบ Multi-Thread เพื่อให้แต่ละ Thread ไม่ต้องรอกัน ทำงานเป็นอิสระต่อกัน เราควรใช้โมดูลใดของ GENESIS32 ดี? โมดูลที่สามารถรันสคริปต์ด้วยคุณสมบัติแบบ Multi-Thread ได้ก็อย่างเช่น GraphWorX32, TrendWorX32, ScriptWorX32 ซึ่งถ้าเราเขียนสคริปต์บน GraphWorX32, TrendWorX32 หรือแม้แต่ AlarmWorX32 การจะแยก Thread ออกจากกันโดยสิ้นเชิงเราก็ควรแยกแต่ละ Designer ออกจากกัน เช่นใช้ GraphWorX 2 ไฟล์เพื่อรันสคริปต์ที่มีการทำงานหนัก 2 Thread แยกกันไปเลย แต่ถ้าเราไม่สะดวกที่จะสร้างไฟล์ GraphWorX หลายไฟล์ ขอแนะนำให้ใช้ ScriptWorX32 หรือ ScriptWorX2006 ซึ่งเป็นโมดูลหนึ่ง … Continue reading

Posted in Uncategorized | Leave a comment

สร้างระบบรายงานผ่านเว็บด้วย ReportWorX

ReportWorX สามารถสร้างรายงานข้อมูลรูปแบบต่าง ๆ จากแหล่งข้อมูลในกระบวนการผลิตและธุรกิจภายในองค์กรได้อย่างมีประสิทธิภาพและง่ายดาย สามารถจัดทำรายงานในรูปแบบ Microsoft Excel โดยใช้ Plug-in แบบ .NET Microsoft Excel Plug-in และด้วยเครื่องมือแบบ Wizard ที่เข้าใจง่าย สะดวกต่อการใช้งาน ใครก็สร้างระบบรายงานได้อย่างง่ายดาย ไม่จำเป็นต้องมีความรู้โปรแกรมมิ่ง ทำให้สามารถสร้างรายงานแบบอัตโนมัติตามเงื่อนไขแบบต่าง ๆ เช่น ค่าสัญญาณจากHardware วัน เวลา , Event, Alarm หรือจากค่าในฐานข้อมูลแบบต่าง ๆ สามารถกำหนดการส่งข้อมูลแบบอัตโนมัติ เช่น พิมพ์รายงานออกทางเครื่องพิมพ์ ส่งรายงานทางอีเมล์ แฟกซ์ เก็บไฟล์รายงานไว้ใน Disk Drive ของ … Continue reading

Image | Posted on by | Leave a comment

การอนุญาตให้ยอมเก็บไฟล์ไว้ใน Client ของคลาวด์ Go-Global

หากต้องการให้ผู้ใช้สามารถ Save หรือ Save As ไฟล์ของแม่ข่ายไว้ในเครื่อง Client ที่ตนเองใช้งาน เราสามารถทำได้ดังนี้ 1. ที่เครื่อง Host (แม่ข่าย) เปิดโปรแกรม Cluster Manager เลือกเครื่องแม่ข่ายที่ต้องการจากรายการ All Hosts2. คลิ้ก Tools | Host Options3. ที่แท็ป Client Access ใส่เครื่องหมายถูกในช่อง Drives 5. คลิ้ก OK     โดยจะมีอ็อปชั่นให้กำหนดคือ – Assign consecutive letters starting … Continue reading

Posted in Uncategorized | Leave a comment

เราจะป้องกันหรือยอมให้ผู้ใช้สั่ง Print เอกสารผ่านคลาวด์ Go-Global ได้อย่างไร

ใน Go-Global Client ผู้ใช้สามารถสั่งPrintงานไปที่ Printer ของฝั่ง Client หรือ Host ก็ได้ แต่ถ้าเราไม่อยากให้ผู้ใช้ทำอย่างนั้น เราจะป้องกันอย่างไร? ใน Go-Global นั้นฝั่ง Host คือฝั่งที่มีซอร์ฟแวร์ต่าง ๆ ที่ต้องการแจกจ่าย ส่วนฝั่ง Client ก็คือฝั่งผู้ใช้ที่สามารถเรียกใช้ซอร์ฟแวร์ต่าง ๆ ที่แจกจ่ายมาจาก Host ซึ่งฝั่งไคลเอ็นจะเป็น PC อย่าง Windows, Mac หรือ Linux ก็ได้ หรือจะเป็นคอมพิวเตอร์พกพาอย่าง iPad, Android Tablet หรือสมาร์โฟนอย่าง iPhoneและ Android … Continue reading

Posted in Uncategorized | Leave a comment

การเพิ่ม .Net Control เพื่อใช้บน GENESIS64

เลือก Toolbox เป็น Windows Forms แล้วคลิ้กไอคอน .Add/Remove Components   คลิ้กปุ่ม Browse… เลือกไปยัง Directory ของ .Net ในคอมพิวเตอร์ ซึ่งอาจมีทั้งเวอร์ชั่น 2/3/4 ในตัวอย่างนี้เลือกเวอร์ชั่น 4 จากนั้นเลือก System.Windows.Forms.dll คลิ้ก Open จะพบคอนโทรลทั้งหมดของ .Net เวอร์ชั่น 4.0.xxxxx

Posted in Uncategorized | Leave a comment

GENESIS64 Tip : เทคนิคการใช้ Timer

ถ้าต้องการใช้งาน Timer เพื่อทำงานบางอย่างซ้ำ ๆ กันตามจังหวะเวลาที่แน่นอน เช่น เขียนค่าไปยัง OPC tag หรือตัวแปร Simulation เราสามารถใช้ Checkbox ทำหน้าที่นี้ได้ดังนี้   ในตัวอย่างนี้จะแสดงการใช้ Checkbox เป็น Timer เพื่อเพิ่มค่าให้ตัวแปร Simulation ขึ้นทีละ 1 ทุก500มิลลิวินาที ให้เปิด GraphWorX64 แล้วนำ Processpoint ไปวางไว้ใน Workspace โดยลิงค์กับตัวแปร Simualtion ที่เราจะสร้างขึ้นมา(สร้างตัวแปรโดยการพิมพ์ชื่อไปเลย)ดังรูป จากรูปผมตั้งชื่อตัวแปรว่า test โดยเป็นแบบ Double และค่าสูงสุดอยู่ที่ 1000000000   … Continue reading

Posted in Uncategorized | Leave a comment

อยากเก็บค่าไว้ใน OPC ที่รีสตาร์ทแล้วข้อมูลไม่หาย

ถ้าเราเก็บค่าข้อมูลไว้ใน OPC Server เราจะพบว่าถ้าต้องรีสตาร์ทพีซีใหม่อีกครั้งข้อมูลจะหายไป เนื่องจาก OPC Server ไม่ได้เก็บข้อมูลอย่างถาวร ต้องมีการ Initial ทุกครั้งที่เริ่มทำงาน ดังนั้นถ้าเราต้องการเก็บค่าไว้ใน OPC Server เราจึงต้องใช้ OPC Server ที่ลิงค์ PLC/Controller ที่ต้องทำงานอยู่ตลอดเวลา โดยเก็บค่าใน PLC/Controller เหล่านั้นซึ่งอาจเกินความจำเป็น ทางเลือกที่ดีที่สุดในกรณีที่ต้องการเก็บข้อมูลไว้ใน OPC Server เพื่อให้ SCADA โหนดอื่น ๆ เรียกใช้ได้ด้วยก็คือการใช้ OPC Server ที่ลิงค์กับฐานข้อมูลแทน PLC OPC Server หลายยี่ห้อสามารถติดต่อกับฐานข้อมูลได้ เช่น KEPServerEx … Continue reading

Posted in Uncategorized | Leave a comment

เว็บบอร์ดถามตอบ GENESIS32

ตอนนี้มีเว็บบอร์ดสำหรับแลกเปลี่ยนความรู้ GENESIS32 scada แล้ว

Posted in Uncategorized | Leave a comment