Username:
Password:

    



การใช้งาน Macro Function ใน Touch screen รุ่น NS Series

     เริ่มแรกเรามารู้จักกับ Macro function กันก่อนน่ะครับว่า Macro function คืออะไร มาโครฟังก์ชั่นคือ รูปแบบคำสั่งที่เป็นภาษาโปรแกรม (Programming Language) ที่ผู้ใช้งานสามารถเขียนภาษาโปรแกรมเพิ่มลงไปในตัว Touch screen เพื่อให้ Touch screen มีขีดความสามารถที่เพิ่มมากยิ่งขึ้นหรือยืดหยุ่นต่อการใช้งานได้มากยิ่งขึ้น โดยผู้ใช้งานสามารถเพิ่มเงื่อนไขต่างๆ นี้ลงไปในเหตุการณ์ (Even) ที่เกิดขึ้นภายในจังหวะหรือเวลาที่เราต้องการ เช่น เมื่อต้องการให้กดปุ่มแล้วแสดงผลบวกเลข เราก็ต้องเขียนมาโคร ลงในปุ่มที่เราจะกดเพื่อให้เกิดการบวกเลขที่เราป้อนเข้าไป
     ที่นี้เรามาดูเหตุการณ์ (Even) กันก่อนว่าเหตุการณ์คืออะไร เหตุการณ์คือสิ่งที่จะเกิดขึ้นในขณะที่เราทำงานเช่น เมื่อเรากดปุ่ม เหตุการณ์ก็คือการกดปุ่ม โดยเราต้องเขียนโปรแกรมว่า เมื่อเรากดปุ่มนี้จะเกิดอะไรขึ้น หรือถ้าเมื่อเปิดหน้า Screen ขึ้นมาใหม่จะให้ทำอะไรเมื่อเราเปิดหน้า Screen ขึ้นมาโดยเราจะเขียนมาโครไว้ที่หน้านั้นๆ
     เมื่อเรากำหนดเหตุการณ์ได้แล้ว เราก็ต้องมากำหนดต่อไปว่า เมื่อเกิดเหตุการณ์แล้วจะให้ทำอะไรต่อไปนั้น ก็คือเงื่อนไขที่เราจะต้องกำหนดให้กับตัว Touch screen เช่นเมื่อเรากดปุ่มแล้วให้เอาท์พุทบิตไหนทำงาน

วิธีการเขียนมาโคร สามารถทำได้ดังนี้
ผมต้องการให้ Touch screen ป้อนค่าข้อมูลเป็นค่าคงที่ เมื่อเปิด Screen ชึ้นมา ขั้นตอนแรกก็เปิด Screen ขึ้นมาแล้วก็คลิกขวาเลือกหน้าต่าง Property


     จากนั้นก็เลือกหน้าต่าง Macro เพื่อเลือกเหตุการณ์ที่จะเขียนคือ When loading a screen คือจะเขียนเงื่อนไขหลังจาก Screen นี้ถูกเปิดขึ้นมา กับ When unloading a screen คือจะเขียนเงื่อนไขหลังจากปิด Screen นี้ เราต้องการเขียนคำสั่งเมื่อ Screen นี้ถูกโหลดขึ้นมาก็คลิกที่กล่องข้อความด้านหน้าเพื่อให้มีเครื่องหมายถูก แล้วก็กดปุ่ม Edit macro1 จะได้หน้าจอเขียนโปรแกรมขึ้นมา แล้วเขียนคำสั่งดังนี้
$B100 = 1; เป็นการกำหนดค่าของ Touch screen ให้ บิตที่ 100 มีค่าเท่ากับ 1 เมื่อ Screen นี้โหลดขึ้นมา

MSGBOX ("Macro when loading a screen","Test",3); ให้แสดง MSGBOX ขึ้นมาโชว์ข้อความที่เรากำหนดไว้

จากนั้นก็กดปุ่ม OK ถ้าเขียนถูกต้องจะสามารถปิดหน้าจอนี้ได้ พอเขียนเสร็จแล้วก็ลากปุ่มที่เป็น Bit Button และ Word Button แล้วเซ็ต Address ให้ Bit Button ให้เป็น Address ที่ 100 และเซ็ต Word Button ให้เป็น Address ที่ 70

เมื่อทำการทดสอบโปรแกรมก็จะปรากฏข้อความที่เราเขียนขึ้นมา

เมื่อกดปุ่ม OK เรียบร้อยแล้ว ก็จะปรากฏหน้า Screen ขึ้นมา จะเห็นว่า Bit และ Word ที่เซ็ตค่าไว้ในมาโครจะ on ดังรูป

ต่อมาลองมาเขียนเหตุการณ์ที่เกิดขึ้นบนปุ่มบ้างน่ะครับ เมื่อผมกดปุ่มแล้วให้มีการเช็คว่าถ้าบิตที่ 100 on อยู่ ให้บวกค่าเพิ่มทีละ 1 Word 70 แต่ถ้าบวกค่าเพิ่มจนถึง 10 แล้วให้เซ็ตค่ากลับมาอยู่ที่ 1 เหมือนเดิม

จากนั้นก็คลิกขวาเลือก Property เลือก Action type เป็นแบบ  Momentary แล้วเซ็ต Address ให้เป็นบิตที่ 90  จากนั้นก็เลือก Tab Macro แล้วเลือกว่าจะเขียนเหตุการณ์ตอนจังหวะไหน Touch ON timing คือตัวมาโครจะทำงานเมื่อสถานะปุ่มนี้เป็น ON  ถ้าเลือก Touch OFF timing คือตัวมาโครจะทำงานเมื่อสถานะปุ่มนี้เป็น OFF ผมต้องการให้คำสั่งมาโครทำงานเมี่อกดปุ่มคือสถานนะ ON ต้องเลือกคลิกถูกที่ Touch ON timing ดังรูป

จากนั้นก็กดปุ่ม Edit macro1 เพื่อเขียนคำสั่งหรือเงื่อนไขที่จะให้ทำดังนี้
if ($B100 == 1) สร้างเงื่อนไขตรวจสอบว่า bit ที่ 100 ของ Touch screen นั้น ON อยู่หรือไม่
if ($W70==10) สร้างเงื่อนไขว่าถ้า Word ที่ 70 ของ Touch screen นั้นนับครบ 10 แล้วจะให้ทำอะไรต่อไป
$W70=1; เป็นการกำหนดค่าให้ Word ที่ 70 เท่ากับ 1 เมื่อนับครบถึง 10
Else ถ้าเงื่อนไขเป็นเท็จคือถ้ายังไม่เท่ากับ 10 ก็ให้ทำอะไรต่อไป
$W70 = $W70 + 1; ให้ Word บวกค่าเพิ่มทีละ 1 แล้วเก็บไว้ Word ที่ 70
endif; คำสั่งจบเงื่อนไขชุดแรก
endif; คำสั่งจบเงื่อนไขชุดที่สอง

     เมื่อเขียนคำสั่งเสร็จเรียบร้อยแล้วก็กดปุ่ม OK แล้วลองเทสโปรแกรมดูครับ
จะเห็นได้ว่าโปรแกรมมันจะบวกค่าเพิ่มขึ้นเรื่อยๆ เมื่อเรากดปุ่มแต่ถ้านับครบจนถึง 10 แล้วก็จะทำการ Reset  ตัวเอง คำสั่งมาโครยังมีคำสั่งอื่นๆ อีกมากมายน่ะครับ เราสามารถเลือกใช้งานคำสั่งมาโครได้ง่ายๆ แล้วแต่ความแตกต่างของโปรแกรมแต่ละคน

 

Copyright © OMRON Electronics Co., Ltd.