View
0
Download
0
Category
Preview:
Citation preview
ภาคผนวก
ตวอยาง
75
ภาคผนวก ก
โปรแกรม LabVIEW
ตวอยาง
76
โปรแกรม LabVIEW [33]
1. พาเนล
พาเนลเปนหนาตางทใชแสดงการควบคมการทางานโปรแกรม ผใชสามารถสรางรปแบบขนเองไดอยางรวดเรวเนองจาก LabVIEW มสวนประกอบตาง ๆ ทใชสาหรบออกแบบหนาตางพาเนลกจะมสวนประกอบหลก ๆ ดวยกน 3 สวนคอ พนทสาหรบเขยนโปรแกรม เมนบาร และทลบาร สาหรบหนาตางพาเนล จะแสดงตวควบคมการทางาน (Controls) และตวแสดงผล (Indicator) สวนลาดบการทางานของโปรแกรมนนจะแสดงในสวนของหนาตางไดอะแกรม โดยในโปรแกรม LabVIEW จะถอวาตวควบคมเปนอปกรณ “อนพต” และตวแสดงผลเปนอปกรณ “เอาทพต” การวางตวควบคมและตวแสดงผลลงไปในหนาตางพาเนลทาไดโดยคลกเมาสทางดานขวาบนหนาตางพาเนล จะปรากฏบลอกทลพาเลทขนมาซงภายในทลพาเลทจะประกอบดวยตวควบคมและตวแสดงผลแบบตาง ๆ การวางอปกรณทาไดโดยการใชเมาสคลกคางไวทอปกรณทตองการจากนนลากไปวางในหนาตางพาเนลกจะไดภาพดงภาพท 1
ภาพท 1 ลกษณะของหนาตางพาเนล [33]
ตวอยาง
77
- Numerical controls and indicator
สาหรบตวควบคมและตวแสดงผลทมลกษณะเปนตวเลขนนสามารถเรยกใชในสวน ของหนาตางฟรอนทพาเนลโดยเลอกจาก Control » Modern » Numeric บน Control พาเลท
ภาพท 2 Numerical Control and Indicator [33]
- Boolean control and indicator
สาหรบตวควบคมและตวแสดงผลทมลกษณะบลนนนจะแสดงการทางานในลกษณะของความถกหรอผด (True /False) สามารถเรยกใชในสวนของ All function หรอ Button and LED
บนทลพาเลท
ภาพท 3 Boolean Control and Indicator [33]
ตวอยาง
78
- การกาหนดอปกรณ
โดยปกตแลวอปกรณหนงตวกจะทางานหรอมสถานะไดหนงอยาง ไมวาจะมสถานะ เปนคาคงท ตวควบคมหรอตวแสดงผล ซงเราสามารถกาหนดไดวาจะใหอปกรณตวนนแสดง สถานะเปนแบบใด การกาหนดทาไดโดยการคลกขวาทอปกรณแลวเลอกคาสง Create ซงคาสง Create นจะมคาสงยอยอย 3 คาสงคอ Constant, Control และ Indicator ซงเรา สามารถเลอกไดวาจะกาหนดสถานะของอปกรณนนได
ภาพท 4 การกาหนดอปกรณ [33]
- ไดอะแกรม
ในสวนของหนาตาง Block diagram จะเปนสวนทใชในการเขยนโปรแกรมและแสดงการทางานของโปรแกรมทงหมด แสดงการเชอมโยงระหวางบลอกคาสงแตละบลอกเขาดวยกน โดยการเขยนโปรแกรมดวยภาพลกษณะนในโปรแกรม LabVIEW เรยกวาการเขยนโปรแกรมดวยภาษากราฟฟก (G-Languages) การเขยนโปรแกรมดวยภาพนนจะอาศยหลกการทางานของเครองมอวดหรอการวดคม ทาใหผใชสามารถออกแบบรปแบบโปรแกรมตามตองการ
ตวอยาง
79
ภาพท 5 หนาตางของไดอะแกรม [33]
2. พาเลท
พาเลทเปนหนาตางยอยทมสวนประกอบของออบเจคทใชสาหรบการเขยน VI การนาไปใชงานนนทาไดงายเพยงแคคลกเมาสทางดานขวาบรเวณทวางของหนาตางพาเนลหรอไดอะแกรม ซงจะปรากฏพาเลทขนมาจากนนใชเมาสคลกทออปเจคทตองการแลวลากไปวางบนหนาตาง พาเนลหรอหนาตางไดอะแกรมพาเลทมองคประกอบหลก ๆ อย 3 สวนคอ Tools, Control และ Function
- Tools Palette
ทลพาเลทจะเปนตวบอกหรอกาหนดสถานะของเมาสวาทางานอยในโหมดใด การเรยกใชพาเลทนทาไดโดยการเลอกทเมน Window แลวเลอกคาสงยอย Show tools palette แลวจะปรากฏ Tools palette ขนมาดงภาพ การใชงานนนเพยงแคเราใชเมาสไปคลกทสญลกษณใน Tools palette
เคอรเซอรของเมาสกจะเปลยนไปตามลกษณะทเราเลอก
ภาพท 6 Tool Palette [33]
ตวอยาง
80
- Control palette
มสวนประกอบของอปกรณทเปนตวควบคมและตวแสดงผลทใชสาหรบสราง VI โดยภายใน
Control palette กจะมพาเลทยอย ๆ อกเพราะวาอปกรณใน Control palette กจะมอปกรณยอยอกแตอยางไรกตามเราสามารถเรยกดอปกรณทงหมดทอยใน Control palette ไดโดยคลกเมาสเลอกท All
Control ซงจะรวมเอาอปกรณทงหมดไวในน นอกจากนแลวเรายงสามารถเปดใชงาน Control
palette ไดอกทางหนงคอเลอกทเมน Window แลวเลอก Show control palette กสามารถเลอกใช Control palette ไดเชนกน
ภาพท 7 Control Palette [33]
- Function Palette
การใชงานโดยทวไปจะมความคลายกนกบ Control palette ซงภายในประกอบไปดวยอปกรณในการสราง VI ตวอยางอปกรณหลก ๆ ใน Function palette เชน For loops, While loops
และ Formula nodes สามารถเรยกใชงานได 2 วธเชนเดยวกนกบการเรยกใชงาน Control palette
คอ เลอกทเมน Window แลวเลอก Show function palette หรอ คลกเมาสทางดานขวาบรเวณพนทวางในหนาตางไดอะแกรม
ตวอยาง
81
ภาพท 8 Function palette [33]
3. เครองมอ (Tools)
- เครองมอของหนาตางพาเนล
ภาพท 9 ทลบารในหนาตางพาเนล [33]
RUN ใชสาหรบรนโปรแกรม RUN continuously ใชสาหรบรนโปรแกรมอยางตอเนอง Abort execution หรอเรยกอกอยางหนงวาปม Stop ใชสาหรบหยดการรนโปรแกรม Pause ใชสาหรบหยดการรนโปรแกรมชวคราวเพอตรวจสอบการทางานของ โปรแกรมเมอตองการรนโปรแกรมตอใหกดปมนซ าอกครงโปรแกรมก จะรนตอไป
ตวอยาง
82
Highlight execution แสดงลาดบขนการทางานของโปรแกรมโดยแสดงใหเหนทศทางการ
ไหลของสญญาณ Start single step ใชสาหรบสงใหโปรแกรมทางานทละคาสง
Text setting ใชสาหรบจดการกบตวอกษรทงหมดไมวาจะเปน ฟรอนท ขนาดรปแบบ ตวอกษร รวมไปถงการกาหนดสใหกบตวอกษรดวย Align object ใชจด Object ตาง ๆ ทเราใชเขยนโปรแกรมใหอยในแนวเดยวกนทง
แนวตงและแนวนอนเพอความเปนระเบยบ Distribute object ใชสาหรบการกาหนดระยะหางระหวาง Objects อตโนมต Reorder ใชสาหรบกาหนดลาดบกอนหลงสาหรบการวางซอนทบกนของ Object
Object context help ใชแสดงคณสมบตหรอรายละเอยดของ Object แตละตว
4. ฟรอนทพาเนล
หนาตางฟรอนทพาเนลสาหรบเขยนโปรแกรม LabVIEW นนจะเปนหนาตางทใชตดตอ กบผใชงานซงในหนาตางพาเนลจะประกอบไปดวยอปกรณอย 2 สวนคออปกรณสาหรบการควบคม (Control) ยกตวอยางเชน Knobs, Switches และอปกรณอกอยางหนงกคออปกรณ สาหรบแสดงผล (Indicator) เชน LED, Text setting, Graph และ Chart เปนตน สวนอปกรณทไมใชอปกรณควบคมและแสดงผลจะแสดงไอคอนอยในหนาตางของบลอกไดอะแกรม สาหรบอปกรณควบคมในภาษากราฟฟกจะหมายถง “อนพต” และอปกรณแสดงผลจะหมายถง “เอาตพต” การวางอปกรณควบคมและอปกรณแสดงผลลงไปบนหนาตางฟรอนทพาเนลทาได โดยการเลอกอปกรณทตองการบนหนาตาง Control palette แลวใชเมาสลากไปวางบนหนาตางพาเนลซงการเรยกหนาตาง
Control palette ทาไดโดยการคลกเมาสทางดานขวา บรเวณพนทวางของหนาตางพาเนลกจะปรากฏหนาตาง Control palette ทประกอบไปดวยอปกรณควบคมและอปกรณแสดงผลขนมา การเรยกใชงานหนาตาง Control palette อกวธหนงกคอเลอกทเมน Window ของแทบเมนบาร แลวเลอก Show control palette จะปรากฏหนาตางของ Controls palette ขนมาใหเลอกใชงานเชนเดยวกน
ตวอยาง
83
ภาพท 10 หนาตางฟรอนทพาเนล [33]
5. บลอกไดอะแกรม
ในหนาตางบลอกไดอะแกรมจะประกอบไปดวยอปกรณทใชในการสรางโปรแกรมซงถาเปรยบเทยบกบภาษาอน ๆ แลวอปกรณทวางลงไปบนหนาตางบลอกไดอะแกรมจะถอวาเปน Source code การทาใหอปกรณตาง ๆ ทอยในหนาตางของบลอกไดอะแกรมทางานสมพนธกน และเปนไปตามทผเขยนตองการนนสามารถทาไดดวยการลากสายสญญาณจากจดเชอมตอของ อปกรณแตละตวใหถงกนและกาหนดคาหรอคณสมบตของอปกรณแตละตวกจะทาใหโปรแกรมทางานตามทผเขยนตองการ คณสมบตของอปกรณทอยบนหนาตางบลอกไดอะแกรมมอย 3 อยางคอ Node, Terminal และ Wires
- Nodes
เปนตวกระทาใหโปรแกรมทางานตามทผ เขยนตองการถาเปรยบเทยบกบโปรแกรมทวไป Nodes กเปรยบเสมอน Statement, Functions, และ Subroutines โหนดในโปรแกรม LabVIEW ม 3
ชนดคอ Function, Sub VI และ Structure โหนดแบบ Function จะสรางขนมาเพอใหสามารถทางานขนพนฐานได เชน การบวกเลข การคณเลข เปนตน ดงเชน การบวกและการคณในภาพท 11 กเปนฟงกชนโหนดแบบหนงเชนกน
ตวอยาง
84
ภาพท 11 หนาตางบลอกไดอะแกรม [33]
- Terminal
เปนทางผานของขอมลระหวางบลอกไดอะแกรมกบฟรอนทพาเนลและระหวางโหนดแตละโหนดในบลอกไดอะแกรมเทอรมนอลเปรยบไดกบคาพารามเตอรและคาคงทในโปรแกรมภาษาอนเทอรมนอลแตละชนดกมความแตกตางกนซงในโปรแกรม LabVIEW ม เทอรมนอลอย 4 ชนดคอ Control and Indicator, node, Constants, และเทอรมนอลพเศษ ซงเทอรมนอลแตละตวสามารถลากสายสญญาณเพอเปนทางผานของขอมลสาหรบตวอยางในกรณของ Control and indicator เมอมขอมลแบบตวเลขผานเขาไปยงบลอกไดอะแกรมโดยผานชองทาง Control terminals แลวทาการประมวลผลในหนาตางบลอกไดอะแกรมเมอโปรแกรมทาการประมวลผลเสรจเรยบรอยกจะสงขอมลจากหนาตางบลอกไดอะแกรมไปยงหนาตางฟรอนทพาเนลโดยผานชองทาง Indicator
terminal
- Wires
เปนทางผานของขอมลระหวาง Terminal โดยการลากสายสญญาณทาไดโดยการเลอกเครองมอทชอวา Connect wire ทหนาตาง Tool palette มลกษณะคลายกบหลอดดาย เมาสจะเปลยนเปนรปหลอดดายจากนนลากไปวางตรงจดตอของเทอรมนอลแรกทตองการลาก คลกเมาสหนงครงแลวลากไปยงจดตอของเทอรมนอลปลายทางทตองการคลกเมาสอกหนงครงกเสรจการเชอมตอสญญาณ
ตวอยาง
85
6. For Loop
For loop เปนฟงกชนคาสงใหโปรแกรมทางานซ าจนกวาการกระทาซ านนจะเทากบ จานวน N
เมอ N คอจานวนครงทตองการใหทาซ า ใน For loop นนจะมเทอรมนอลอย 2 จดคอ Count
terminal และ Iteration terminal สาหรบ Count terminal น นมหนาทเปนตวกาหนดวาจะใหโปรแกรมทางานซ ากรอบซงสามารถจะกาหนดใหปรบเปลยนจานวนรอบหรอเปนคาคงทกได สวน Iteration terminal จะทาหนาทแสดงจานวนรอบการทางานวาโปรแกรมทางานในวงรอบไปแลวกครงตวเลขทแสดงของ iteration Terminal จะมคาเทากบ N-1 การใชงาน For loop ดงภาพท
12 การสราง For loop ทาไดโดยการเลอกไปทหนาตางบลอกไดอะแกรมแลวเลอก Function »
Structure แลวใชเมาสเลอกท For loop หลงจากนนนาเมาสไปคลกทหนาตาง บลอกไดอะแกรมแลวลากใหมขนาดทตองการแลวปลอยเมาสกจะไดโครงสรางการทางานของ For loop นอกจากนแลวยงสามารถทาการยอขยายขนาดของ For loop ไดโดยใชเมาสไปชตรงบรเวณเสนขอบของ For
Loop จะปรากฏจดสเหลยมเลก ๆ บรเวณเสนขอบของ For loop ใชเมาสไปวางตรงบรเวณจดดงกลาวแลวเมาสจะเปลยนเปนรปลกศรจากนนคลกเมาสคางแลวลากยอหรอขยายไดตามตองการ การทางานของ For loop นอกจากจะทางานเพยงวงรอบเดยว ๆ แลวยงสามารถทางานซอนวงรอบได โดยจะทางานวงรอบดานในกอนจนครบเงอนไขแลวจงมาทาวงรอบนอกหนงรอบแลวกกลบไปทางานในวงรอบในอกครง การทางานจะทาจนกวาวงรอบนอกครบตามเงอนไขโปรแกรมจงจะหยดทางาน
ภาพท 12 โครงสรางของ For loop [33]
7. While loop
While loop เมอเปรยบเทยบกบการเขยนโปรแกรมดวยภาษาอน ๆ กจะเปรยบไดกบ โครงสรางของคาสง Repeats until นนเองซงลกษณะของ While loop แสดงดงภาพท 13 หลกการทางานของ While loop คอจะทางานภายในวงรอบไปจนกวาเงอนไขท Condition terminal จะเปนจรงจงจะหยดทางานสาหรบ While loop นนจะมเทอรมนอลอย 2 เทอรมนอลเชนเดยวกนกบ For loop คอ
ตวอยาง
86
Iteration terminal และ Condition terminal การทางานของ Iteration terminal จะทางานเหมอนกนกบ Iteration terminal ของ For loop คอทาหนาทแสดงจานวนรอบทโปรแกรมกระทาในวงรอบซงแสดงผลออกมาในลกษณะของตวเลขสวน Condition terminal เปนการกาหนดเงอนไขใหโปรแกรมหยดทางานซงเงอนไขในการหยดทางานคอจะหยดทางาน เมอเงอนไขเปนจรง (True)
หรอจะใหหยดทางานเมอเงอนไขเปนเทจ (False) กสามารถทจะกาหนดไดนอกจากนแลวเรายงสามารถกาหนดเงอนไขในการหยดทางานไดอกหนงวธคอการนาเอาคาเอาตพตของ Iteration
Terminal มาเปรยบเทยบกบคาทเราตองการไมวาจะเปนคาคงทหรอปรบเปลยนไดโปรแกรมจะทางานวนในวงรอบและนาคาเอาตพตของ Iteration terminal มาเปรยบเทยบกบคาทเรากาหนดไวแลวจะสงเอาตพตทไดไปยง Condition terminal เมอจานวนรอบการทางานมคาเทากบคาทเรากาหนดโปรแกรมจะหยดทางานในวงรอบนทนทการกาหนดเงอนไขแบบนเปรยบไดกบการกาหนดคา N ใน For loop นนเอง การสราง While loop ทาไดโดยการเลอกไปทหนาตางบลอกไดอะแกรมแลวเลอก Function » Structure แลวใชเมาสเลอกท While loop นาเมาสไปคลกทหนาตางบลอกไดอะแกรมแลวลากใหมขนาดทตองการแลวปลอยเมาสกจะไดโครงสรางการทางานของ While loop นอกจากนแลวยงสามารถทาการยอขยายขนาดของ While loop ไดโดยใชเมาสไปชตรงบรเวณเสนขอบของ While loop จะปรากฎจดสเหลยมเลก ๆ บรเวณเสนขอบของ While loop
ใชเมาสไปวางตรงบรเวณจดดงกลาวแลวเมาสจะเปลยนเปนรปลกศรจากนนคลกเมาสคางแลวลากยอหรอขยายไดตามตองการ
ภาพท 13 โครงสรางของ While loop [33]
8. Shift register
Shift register ประกอบไปดวยเทอรมนอลสองตวคอเทอรมนอลทางดานอนพตและเทอรมนอลทางดานเอาตพต Shift register สามารถใชทางานรวมกบ For loop และ While loop เทานนการสราง Shift register ทาไดโดยการใชเมาสคลกขวาบรเวณเสนขอบ ของ For loop หรอ While loop
ตวอยาง
87
แลวเลอก Add shift register กจะได Shift register ทอยบนเสนขอบทางซายและขวาของ For loop
และ While loop ดงภาพท 14
ภาพท 14 โครงสรางของ Shift register [33]
9. Feedback node
Feedback node สามารถทางานรวมกบ For loop และ While loop ไดเชนเดยวกนกบ Shift
register การทางานของ Feedback node คอจะเกบขอมลไวท Iteration เมอโปรแกรมทางานภายในวงรอบเสรจกจะสงขอมลดงกลาวไปท Iteration ของวงรอบตอไปทงน Feedback node ยงสามารถกาหนดคาเรมตนไดดวยและสามารถใชไดกบขอมลทกชนดลกษณะการตอใชงาน Feedback node แสดงดงภาพท 15
ภาพท 15 การใชงาน Feedback node [33]
ตวอยาง
88
10. Case structure
Case structure เปนโครงสรางการเขยนโปรแกรมตามเงอนไขของตวหนงสอ (Conditional
text) ซงถาเปรยบเทยบกบการเขยนโปรแกรมภาษาอนๆ (Text-based programming languages)
สามารถเปรยบเทยบไดกบโครงสรางของคาสง If…Then…Else การเรยกใชงานฟงกชน Case
structure ลงบนหนาตางบลอกไดอะแกรมทาไดโดยเลอก Function » Structure แลวใชเมาสเลอกท Case structure นาเมาสไปคลกทหนาตางบลอกไดอะแกรมแลวลากใหมขนาดทตองการแลวปลอยเมาสกจะไดโครงสรางการทางานของ Case structure นอกจากนแลวยงสามารถทาการยอและขยายขนาดของ Case structure ไดโดยใชเมาสไปชตรงบรเวณเสนขอบของ Case structure จะปรากฏจดสเหลยมเลก ๆ บรเวณเสนขอบของ While loop ใชเมาสไปวางตรงบรเวณจดดงกลาวแลวเมาสจะเปลยนเปนรปลกศร จากนนคลกเมาสคางแลวลากยอหรอขยายไดตามตองการ สามารถแสดงลกษณะของ Case structure ไดดงภาพท 16 ซงมสวนประกอบทสาคญอย 2 สวนคอ Select
terminal และ Select label โดยท Select terminal จะทาหนา ท รบอนพตเขามาแลวทาการตรวจสอบหรอเปรยบเทยบวาขอมลทรบเขามาเปนขอมลชนดใดและตรงกบเงอนไขใดใน Case
structure เพอทาใหโปรแกรมทางานตามเงอนไขทตองการสวน Select label จะทาหนาทสรางหนาตางยอยของ Case structure ซงสามารถเพมและลดเงอนไขไดถง 231 -1 เงอนไขการสงขอมลออกเอาตพตนนทก ๆ กรณจะสงขอมลออกทเอาตพตเดยวกบซงทางออกของสญญาณเอาตพตเรยกวา Output tunnel
ภาพท 16 โครงสรางของ Case structure [33]
ตวอยาง
89
11. Flat and stack sequence structures
Sequence structures เปนการทางานแบบลาดบขนรปแบบของ Sequence structures มลกษณะเหมอนแผนฟลมสาหรบ Sequence structures มท งหมด 2 แบบคอ Flat sequence และStack
sequence ลกษณะของ Flat sequence และ Stack sequence จะมลกษณะคลายกบ Case structure
กลาวคอจะม Select sable สาหรบเลอกเฟรมทซอนอยภายในโดยตวเลขจะบอกวากาลงเปดเฟรมใดอย การสราง Flat และ Stack sequence structures ทาไดโดยการเลอกไปทหนาตาง บลอกไดอะแกรมแลวเลอก Function » Structure แลวใชเมาสเลอกท Flat หรอ Stack sequence structures ตามทตองการ แสดงดงภาพท 17 นาเมาสไปคลกทหนาตางบลอกไดอะแกรมแลวลากใหมขนาดทตองการแลวปลอยเมาสกจะไดโครงสรางการทางานของ Flat และ Stack sequence structures การทจะนาขอมลของเฟรมหนงไปยงอกเฟรมหนงสามารถทาไดโดยคลกเมาสทางขวาท บรเวณกรอบ Sequence structures แลวเลอก Add sequence local จะปรากฏเทอรมนอลขนทขอบของ Sequence
structures จากนนลากสายสญญาณทเราตองการใหออกเอาตพตไปตอกบเทอรมนอลซงเทอรมนอลดงกลาวกจะเปลยนเปนลกษณะทมลกศรพงออกจากเฟรม ในขณะเดยวกนทกเฟรมทเหลอกจะปรากฏเทอรมนอลขนเชนกนแตจะมลกษณะลกศรชเขาไปขางในเฟรมแสดงดงภาพท 18
ภาพท 17 โครงสรางของ Flat และ Stack sequence structures [33]
ตวอยาง
90
ภาพท 18 การ Add sequence local ของ Stack sequence structures [33]
12. Formula node
Formula node เปนโครงสรางของคาสงทมความใกลเคยงกบการเขยนโปรแกรมดวยภาษาอน ๆ ทวไปซง Formula node จะถกนามาใชเ มอตองการใหโปรแกรมทางานตามฟงกชนทางคณตศาสตรทมความยงยากการใชอปกรณในการสรางใหโปรแกรมทางานตามฟงกชนทางคณตศาสตรหนงฟงกชนอาจตองใชอปกรณหลายตวซงอาจทาใหการตรวจสอบโปรแกรมเปนไป ดวยความยงยากและโปรแกรมมขนาดใหญเกนไป ยกตวอยางการสรางโปรแกรมใหทางานตามสมการ )sin(xexy −= ซงถาเขยนโปรแกรมดวยการใชอปกรณทวไปจะไดลกษณะของ โปรแกรมดงภาพท 19 แตหากใช Formula node จะไดลกษณะของโปรแกรมดงภาพท 18
ภาพท 19 การสรางโปรแกรมจากอปกรณทวไป [33]
ตวอยาง
91
การทางานของ Formula node จะเปนลกษณะของการกาหนดฟงกชนทางคณตศาสตรลงไปใน Formula node แสดงดงภาพท 20 แลวจงกาหนดเทอรมนอลเพอเชอมตออนพตและเอาทพต การสราง Formula node ทาไดโดยการเลอกไปทหนาตางบลอกไดอะแกรมแลวเลอก Function »
Structure แลวใช เมาส เ ลอกท Formula node แสดงดงภาพท 18 นา เมาสไปคลกทหนา ตางบลอกไดอะแกรมแลวลากใหมขนาดทตองการแลวปลอยเมาสกจะไดโครงสรางการทางานของ Formula node
ภาพท 20 โครงสรางและการใชงาน Formula node [33]
การกาหนดเทอรมนอลอนพตและเอาตพตสามารถทาไดโดยการคลกเมาสขวาทขอบของ Formula node แลวเลอก Add input หรอAdd output แสดงดงภาพท 21 ทเทอรมนอลสามารถทจะกาหนดชอไดและสามารถ คาอนพตและเอาตพตจะเปนขอมลแบบตวเลข (Numeric) การกาหนดตวแปรอนพตสามารถกาหนดใหเปนคาคงทหรอคาทปรบเปลยนไดสวนเอาตพตจะกาหนดใหเปนตวแสดงผลชอทเทอรมนอลกคอ ชอของตวแปรของฟงกชนทางคณตศาสตรทสรางขนใน Formula
node
ภาพท 21 การเพมอนพตและเอาตพตของ Formula node [33]
ตวอยาง
92
13. ฟงกชนของอารเรย
- Array size
ฟงกชน Array size จะเปนตวบอกขนาดของอารเรยวามขนาดใดเชนถาอารเรยอนพต เปนอารเรย 1 มต (4 แถว 1 หลก) อารเรยเอาตพตจะเปนอารเรย 1 มต มจานวนสมาชกทงหมด 4 ตวหรอถาอารเรยอนพตเปนอารเรย 2 มต (2 แถว 4 หลก) อารเรยเอาตพตจะแสดง เปนอารเรย 2 มต (แสดงจานวนของแถวและหลก) แสดงดงภาพท 22
ภาพท 22 การใชงาน Array size function [33]
- Initialize array
เปนการสรางอารเรยยตามขนาดทกาหนดพรอมทงสามารถกาหนดคาเรมตนใหกบอารเรยทสรางไดอกดวย เชน ตองการสรางอารเรย 1 มต มจานวนสมาชกทงหมด 50 ตว และกาหนดใหคาเรมตนของอารเรยเปน 2.5 สามารถสรางไดโดยคลกเมาสขวาทเทอรมนอล Element ซงอยทางดานบนซายของบลอค Initialize array แลวเลอก create » Constant และกาหนดคาเรมตนเปน 2.5 ทเทอรมนอล Dimension size ของบลอค Initialize array ทอยดานลางเทอรมนอล Element คลกเมาสขวาแลวเลอก Create » Constant และกาหนดใหเปน 50 (จานวนสมาชก) ถาตองการเพมมตของอารเรยกสามารถทาไดโดยคลกเมาสขวาทบลอคของ Initialize array แลวเลอก Add dimension ซงจะเพมเทอรมนอลเพอกาหนดขนาดของแถวและหลก แสดงดงภาพท 23
ตวอยาง
93
ภาพท 23 การใชงาน Initialize array function [33]
- Build array
เปนการนาเอาอารเรยหรอสมาชกในอารเรยหลาย ๆ ตวมารวมกนแลวเกดเปนอารเรยใหม ซงอนพตสามารถทจะเปนทงอารเรยและเปนจานวนสเกลลาโดยปกตแลว Build array จะมอนพต 2 อนพตถาตองการเพมจานวนอนพตสามารถทาไดโดยการคลกเมาสขวาทบลอค Build array แลวเลอก Add input หรอจะใช Positioning tool คลกคางแลวลากขยายเพอเพมอนพตและถาตองการลดจานวนอนพตกสามารถทาไดโดยคลกเมาสขวา Build array แลวเลอก Remove input ตวอยางการใชงาาน Build array แสดงดงภาพท 24
ตวอยาง
94
ภาพท 24 การใชงาน Build array function [33]
- Array subset
เปนวธการเลอกคาของขอมลทอยในอารเรยไปใชงานโดยมสงทตองกาหนดอย 2 อยางคอ Index (0) ซงเปนการกาหนดตาแหนงเรมตนทเราตองการ (ตาแหนงแรกนบเปนตาแหนงท 0) และ Length (Rest) เพอกาหนดจานวนขอมลทตองการ ดงตวอยางในภาพท 23 อารเรย 1 มต มจานวนขอมล 7 ขอมลตองการใชขอมลตงแตตาแหนงท 3 ถง 5 ทาไดโดยกาหนด Index (0) ใหมคาเทากบ
2 และ Length (Rest) ใหมคาเทากบ 3 แสดงดงภาพท 25
ภาพท 25 การใชงาน Subset array function [33]
ตวอยาง
95
- Index array
ฟงกชน Index array สามารถทจะเลอกขอมลในอารเรยในตาแหนงทตองการมาใชงานไดโดยการเลอกตาแหนงของขอมลไดเลยในกรณทเปนอารเรยขนาด 2 มต กสามารถใช Index array เลอกวาจะเลอกขอมลออกเอาตพตทตาแหนงแถวและหลก แสดงดงภาพท 26 มอารเรย 1 มต มจานวนขอมลทงหมด 6 ขอมลตองการเลอกขอมลท 1ไปใชงานสามารถทาไดโดยกาหนดให Index number
มคาเทากบ 0 (ตาแหนงแรกนบเปนตาแหนงท 0) และในภาพท 27 เปนการใชฟงกชน Index array
ในการเลอกขอมลจากอารเรย 2 มต ขนาด 3 x 3 โดย Index array จะตองม 2 ตวเพอเลอกตาแหนงแถวและตาแหนงหลกทตองการ ซงการเพมอนพตของ Index array สามารถทาไดโดยการใช Position tool คลกท Index array แลวลากขยายเพอเพมอนพตใหกบ Index array
ภาพท 26 การใชงาน Index array function [33]
ตวอยาง
96
ภาพท 27 การใชงาน Index array function กบอารเรย 2 มต [33]
14. ฟงกชนของคลสเตอร
ฟงกชนทชวยในการทางานของคลสเตอรมอยหลายแบบดวยกนในทนจะขอกลาวถง ฟงกชนทถกนามาใชงานบอย ๆ 2 ฟงกชนคอ Bundle และ unbundle ซงวธทเรยกใชฟงกชนทาโดยเลอกท
Function palette » All function » Cluster แลวเลอกฟงกชน Bundle หรอ Unbundle ตามตองการ
- Bundle function
Bundle function เปนฟงกชนทใชรวมเอาอนพตหลาย ๆ ตวมาสรางเปนคลสเตอรใหมขนมาโดยอนพตนนสามารถเปนไดทงตวเลขจานวนจรง อารเรย หรอแมกระทงคลสเตอร เมอวางบลอคของฟงกชน Bundle ลงไปในหนาตางบลอคไดอะแกรมฟงกชน Bundle จะมอนพตเทอรมนอล 2 เทอรมนอลอยทางซายและเทอรมนอลเอาตพต 1 เทอรมนอลอยทางขวาและอนพตทเปนคลสเตอรจะอยดานบนของบลอคเราสามารถทจะเพมหรอลดจานวนเทอรมนอลอนพตใหมจานวนเทาทเราจาเปนตองใชงานโดยใชเมาสคลกทบลอคแลวเลอนขนลงในแนวต งหรอใชเมาสไปวางตรงเทอรมนอลอนพตแลวคลกเมาสขวาแลวเลอก Add input ถาตองการเพมเทอรมนอลและเลอก
Remove input ถาตองการลดเทอรมนอล ในภาพท 28 จะเปนตวอยางการสรางคลสเตอรดวย Bundle
โดยมอนพต 3 ชนดคอ Floating-point number, Scalar integer และ Array ทสรางจาก For loop และมเอาตพตทแสดงผลดวยกราฟ
ตวอยาง
97
ภาพท 28 การใชงาน Bundle function [33]
- Unbundle function
ในคลสเตอรจะประกอบไปดวยชนดของขอมลทแตกตางกน Unbundle function จะชวยในการแยกขอมลอนพตทแตกตางกนออกจากกนเพอจะนาเอาตพตนนไปใชงานตอไป ฟงกชนของUnbundle ทวางลงไปบนหนาตางบลอคไดอะแกรมครงแรกจะมอนพต 1 อนพตและมเอาตพต 2 อนพต เอาตพต Unbundle จะเปลยนไปตามอนพตทเปนคลสเตอร ตวอยางเชน มคลสเตอรอนพททมชนดของขอมลแตกตางกน 4 ชนด เมอตอสายของคลสเตอรเขากบอนพตของ Unbundle เอาตพตของ Unbundle จะเปลยนเปน 4 เอาตพตโดยอตโนมต
ตวอยาง
98
ภาพท 29 การใชงาน Unbundle function [33]
15. การใชงาน Charts และ Graph
- Waveform charts
การแสดงขอมลในลกษณะของ Charts เปนการแสดงการพลอตรปคลนสญญาณขอมล แบบหนงทสามารถพลอตขอมลทเปนสเกลลารและเปนอารเรยได การเรยกใชงาน คอเลอกท Controls
Palette » Graph » Waveform chart ดงภาพท 30
ภาพท 30 วธการเรยกใชงาน Waveform chart [33]
ตวอยาง
99
โดย Waveform charts ในโปรแกรม LabVIEW มเพยงชนดเดยวแตมคณสมบตในการแสดงขอมลทแตกตางกน 3 อยางคอ Strip chart, Scope chart และ Sweep chart ซงขอแตกตางของ Chart ทง 3 แบบอธบายไดคอ Strip chart มคณสมบตในการพลอตขอมลไปจนกวาจะหยดพลอตซงจะสงเกตเหนวาเสนของสญญาณขอมลทพลอตนนจะเลอนจากขวาไปซายตอเนองกนไป Scope
chart คณสมบตของการพลอตแบบนคอจะแบงเปนชวงของขอมลโดยการกาหนดทแกนเวลาเมอโปรแกรมทาการพลอตขอมลไปถงคาสดทายของชวงแรกแลวการพลอตขอมลของชวงตอไปโปรแกรมจะทาการลบกราฟในชวงแรกไปแลวเรมการพลอตใหมโดยเวลาเรมตนจะนบตอจากคาสดทายของชวงแรก Sweep chart จะทางานคลายกบ Scope chart แตเมอเรมทาการพลอตกราฟ ในชวงตอไปเสนกราฟในชวงแรกจะไมถกลบจะทางานในลกษณะพลอตทบเสนกราฟเดมและจะ มเสนสแดงในแนวตงเลอนจากซายไปขวาเพอแสดงถงจดการพลอตกราฟครงลาสดคณสมบตทง 3 ของ Waveform chart แสดงดงภาพท 31 เปนการแสดงคาของขอมลทเกบอยในอารเรยเทยบกบเวลาทรบเขามา
ภาพท 31 คณสมบตของ Waveform chart [33]
- Waveform graphs
แตกตางจาก Waveform chart คอการพลอตขอมลดวย Waveform graphs จะมการกาหนดจานวนของชวงขอมลอยางชดเจนจานวนขอมลทงหมดทอยในชวงของกราฟจะถกแสดงออกมาทงหมด การพลอตกราฟหลายเสนทาไดโดยการนาอารเรยแตละตวมาตอรวมเพอสรางอารเรยใหมจานวนเสนกราฟทแสดงจะเทากบมตของอารเรยการเรยกใชงาน Waveform graphs ทาไดคอเลอกท
Controls palette » Modern » Graph »Waveform graphs ลก ษ ณะ ของก ารพ ลอตก ราฟ ล งบ น
Waveform graph แสดงไดดงภาพท 32
ตวอยาง
100
ภาพท 32 คณสมบตของ Waveform graph [33]
16. PID Control toolkit
การใชฟงกชน PID ในการออกแบบระบบควบคมนนในโปรแกรม LabVIEW นนมเครองมอทสามารถนามาประยกตใช ใหเขากบทฤษฎระบบควบคมไดโดยงายและหลากหลาย การประยกตใชระบบควบคมแบบ PID และวธการใชงาน Function block ตาง ๆ ของ PID Toolkit
เพอทสามารถนาไปประยกตใชใหเหมาะสมกบกระบวนการทจะทาการควบคมตอไป
ภาพท 33 Panel icon ของ PID [33]
ภาพท 34 การเชอมตอสญญาณของฟงกชน PID [33]
ตวอยาง
101
การใชงานฟงกชนตวควบคม PID ภายในโปรแกรม LabVIEW นน จะตองมการเชอมตอสญญาณตาง ๆ ใหแกฟงกชน ดงแสดงไดในภาพท 34 โดยสญญาณตาง ๆ สามารถอธบายไดดงน
Set point คอ คาสญญาณอางอง
Process variable คอ คาสญญาณเปาหมายทตองการควบคม
Output คอ สญญาณควบคมทออกจากตวควบคม
Output rage คอ ชวงของสญญาณเอาตพตของตวควบคมพไอด
PID gains คอ คาพารามเตอรของตวควบคมพไอด
dt (s) คอ คาฐานเวลาการคานวณของตวควบคมพไอด
dt out (s) คอ เวลาทใชในการคานวณสญญาณควบคม
Reinitialize คอ การรเซทคาสญญาณควบคมใหกลบไปสสถานะเรมตน
ตวอยาง
102
ภาคผนวก ข
ผลงานวจยทเกยวของกบวทยานพนธทไดรบการตพมพ
ตวอยาง
103
ผลงานวจยทเกยวของกบวทยานพนธทไดรบการตพมพ
1. ชยพร ไทรเกต, สนต หวงนพพานโต, “การควบคมความดนในถงลมแบบอนกรม 2 ถงโดยใชพแอลซ”, การประชมวชาการเครอขายวศวกรรมไฟฟามหาวทยาลยเทคโนโลยราชมงคล ค รงท 8, Proceeding of The 8th Conference of Electrical Engineering Network of Rajamangala
University of Technology (EENET 2016), 2016.
2. ภาคภม ศรทองนวล, ชยพร ไทรเกต, สนต หวงนพพานโต : การศกษาการเตมอากาศเพอลดอณหภมของอปกรณอเลกทรอนกสในตควบคมลฟต (Studies on The Filling Air to Reducing
The Electronics Equipment Temperature in The Elevator Control Cabinet) การประชมวช า ก า ร
เรองการถายเทพลงงานความรอนและมวลในอปกรณดานความรอนและกระบวนการ (ครงท 15)
ระหวางวนท 30-31 มนาคม 2559 ณ โรงแรม แอล รสอรท สมย จงหวดสราษฎรธาน
ตวอยาง
104
ตวอยาง
105
ตวอยาง
106
ตวอยาง
107
ตวอยาง
108
ตวอยาง
109
ตวอยาง
110
ตวอยาง
111
ตวอยาง
Recommended