ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/design_and... ·...

27
3 บทที2 ทฤษฎีและหลักการ 2.1 โปรแกรม LabVIEW LabVIEW ย่อมาจาก Laboratory Virtual Instrument Engineering Workbench โปรแกรมทีพัฒนาขึ ้นโดยใชLABVIEW จะเรียกว่า Virtual Instrument หรือจะเรียกย่อๆ ว่า VI ซึ ่งหมายถึง เครื่องมือวัดเสมือน ดังตัวอย่าง จากรูปนี ้เป็น Oscilloscope ที่ได้ทาการสร้างขึ ้นบนหน้าจอ คอมพิวเตอร์ รูปที่ 2.1 แสดงตัวอย่างเครื่องมือวัดเสมือนที่สร้างจาก LabVIEW LabVIEW มีจุดกาเนิดขึ ้นในปี 1983 โดยทางบริษัท National Instrument ได้เริ่มการค้นคว้า เพื่อจะหาวิธีการที่จะลดเวลาในการเขียนโปรแกรมเพื่อใช้ในงานด้านระบบเครื่องมือวัด ซึ ่งเป็นจุด เริ่มของแนวความคิดการสร้าง LabVIEW หลังจากการใช้เวลาวิจัยอยู3 ปี ในปี 1986 บริษัทได้ ปล่อย LabVIEW Version 1 สู่ตลาดเพื่อใช้กับคอมพิวเตอร์ Macintosh เท่านั ้น เพราะแม ้ว่าเครื่อง Macintosh จะไม่เป็นที่ใช้อย่างกว้างขวางในงานด้านวิศวกรรม แต่ด้วยลักษณะการแสดงผลแบบ กราฟฟิกของเครื่อง Macintosh ทาให้เหมาะสมกับการประยุกต์ใช้กับ LVIEW สาหรับ ระบบปฏิบัติการอื่นที่ไม่ใช่ GUI นั ้นยังไม่มีความเหมาะสมที่จะใช้กับ LabVIEW ดังนั ้นสาหรับ เครื่องคอมพิวเตอร์ส ่วนบุคคล(PC) ทาง NI ต้องรอจนกระทั่งระบบปฏิบัติการ Windows เกิดขึ ้น เสียก่อน ในปี 1990 ทาง NI ได้ประสบผลสาเร็จในการนา LabVIEW version 2 ออกสู่ตลาด โดยได้ ปรับแก้และเขียนระบบควบคุมใหม่ทั ้งหมด ตามคาแนะนาของผู้ใช้งาน โดยเฉพาะการเขียน Compiler ที่ทาให้เวลาการทางานของโปรแกรมรวดเร็วขึ ้น ทัดเทียมกับการเขียนด้วยภาษาขั ้น พื ้นฐาน เช่น C และต่อมาเมื่อเทคโนโลยีด้านระบบปฏิบัติของ PC มีความพร้อมที่จะใช้งานกับ GUI ทางบริษัทจึงได้ผลิต LabVIEW for Windows และ LabVIEW for SUN เข้าสู่ตลาดในปี 1992

Upload: volien

Post on 13-Feb-2018

228 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

3

บทท 2 ทฤษฎและหลกการ

2.1 โปรแกรม LabVIEW LabVIEW ยอมาจาก Laboratory Virtual Instrument Engineering Workbench โปรแกรมทพฒนาขนโดยใช LABVIEW จะเรยกวา Virtual Instrument หรอจะเรยกยอๆ วา VI ซงหมายถงเครองมอวดเสมอน ดงตวอยาง จากรปนเปน Oscilloscope ทไดท าการสรางขนบนหนาจอคอมพวเตอร

รปท 2.1 แสดงตวอยางเครองมอวดเสมอนทสรางจาก LabVIEW

LabVIEW มจดก าเนดขนในป 1983 โดยทางบรษท National Instrument ไดเรมการคนควาเพอจะหาวธการทจะลดเวลาในการเขยนโปรแกรมเพอใชในงานดานระบบเครองมอวด ซงเปนจดเรมของแนวความคดการสราง LabVIEW หลงจากการใชเวลาวจยอย 3 ป ในป 1986 บรษทไดปลอย LabVIEW Version 1 สตลาดเพอใชกบคอมพวเตอร Macintosh เทานน เพราะแมวาเครอง Macintosh จะไมเปนทใชอยางกวางขวางในงานดานวศวกรรม แตดวยลกษณะการแสดงผลแบบกราฟฟกของเครอง Macintosh ท าใหเหมาะสมกบการประยกตใชกบ LVIEW ส าหรบระบบปฏบตการอนทไมใช GUI นนยงไมมความเหมาะสมทจะใชกบ LabVIEW ดงนนส าหรบเครองคอมพวเตอรสวนบคคล(PC) ทาง NI ตองรอจนกระทงระบบปฏบตการ Windows เกดขนเสยกอน ในป 1990 ทาง NI ไดประสบผลส าเรจในการน า LabVIEW version 2 ออกสตลาด โดยไดปรบแกและเขยนระบบควบคมใหมทงหมด ตามค าแนะน าของผใชงาน โดยเฉพาะการเขยน Compiler ทท าใหเวลาการท างานของโปรแกรมรวดเรวขน ทดเทยมกบการเขยนดวยภาษาขนพนฐาน เชน C และตอมาเมอเทคโนโลยดานระบบปฏบตของ PC มความพรอมทจะใชงานกบ GUI ทางบรษทจงไดผลต LabVIEW for Windows และ LabVIEW for SUN เขาสตลาดในป 1992

Page 2: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

4

หลงจากนนบรษทกไดพฒนาโปรแกรมใหเหมาะสมกบเทคโนโลยยงขน ตามรปแบบปฏบตการทเปลยนแปลงไปเชน LABVIEW ส าหรบ Windows NT, Windows 95 รวมถงการสราง Version ใหม เพอจดระบบและการเขยนโปรแกรมใหสะดวกมากขน ตลอดจนสามารถเชอมตอกบอปกรณตางๆ มากขน พรอมทงสรางฟงกชนตางๆ เพอใหเหมาะสมกบการใชงานมากขน นอกจากนยงสรางโปรแกรมทสามารถท างานบนระบบปฏบตการอนทไมไดเขยนบนระบบปฏบตการนนได โดยเรมจาก LABVIEW 3 ในป ค.ศ. 1993, LABVIEW 4 ในป ค.ศ. 1996 และลาสด LABVIEW 2010 ในป ค.ศ. 2010 ซงเปนโปรแกรมลาสด

รปท 2.2 แสดงการเขาสโปรแกรม LAB VIEW 2010

โปรแกรม LabVIEW เปนโปรแกรมทสรางเพอน ามาใชในดานการวดและเครองมอวด

ส าหรบงานทางวศวกรรม LabVIEW ยอมาจาก Laboratory Virtual Instrument Engineering Workbench ซงหมายความวาเปนโปรแกรมทสราง เครองมอวดเสมอนจรงในหองปฏบตการทางวศวกรรม ดงนนจดประสงคหลกของการท างานของโปรแกรมนกคอการจดการในดานการวดและ

Page 3: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

5

เครองมอวด อยางมประสทธภาพ และในตวของโปรแกรมจะประกอบไปดวยฟงกชนทใชชวยในการวดมากมายและแนนอนทสด โปรแกรมนจะมประโยชนอยางสงเมอใชรวมกบเครองมอวดทางวศวกรรมตางๆ สงท LabVIEW แตกตางจากโปรแกรมอนอยางเหนไดชดทสดกคอ LabVIEW นเปนโปรแกรมประเภท GUI (Graphic User Interface) โดยสมบรณ นนคอไมจ าเปนตองเขยน code หรอค าสงใดๆ ทงสน และทส าคญลกษณะภาษาทใชในโปรแกรมนเราจะเรยกวาเปน ภาษารปภาพ หรอเรยกอกอยางวาภาษา G (Graphical Language) ซงจะแทนการเขยนโปรแกรมเปนบรรทดอยางทเราคนเคยกบภาษาพนฐาน เชน C, BASIC หรอ FORTRAN ดวยรปภาพหรอสญลกษณทงหมด ซงแมวาในเบองตนอาจจะสบสนอยบาง แตเมอคนเคยกบการใชโปรแกรมนแลวเราจะพบวา LabVIEW นมความสะดวกและสามารถลดเวลาในการเขยนโปรแกรมลงไปไดมาก โดยเฉพาะในงานเขยนโปรแกรมคอมพวเตอรเพอเชอมตอกบอปกรณอนๆ เพอใชในการวดและการควบคม โดยจดประสงคหลกแลว บรษท National Instrument ไดเรมพฒนาโปรแกรมทจะน ามาใชกบระบบเครองมอวดทมความงายในการเขยนโปรแกรมและมฟงกชนเพอจะชวยในการวดทางวศวกรรมใหมากทสดเพราะดวยความเปนมาบรษท National Instrument เรมจากการผลตอปกรณทใชกบการวดทางวศวกรรม ไมใชบรษททเรมตนมาจากการผลต Software เปนหลก ดงนนคงไมผดนกส าหรบผทตองการจะใชประโยชนสงสดจากโปรแกรม LabVIEW คอผทตองการจะน าขอมลจากภายนอกเครองคอมพวเตอร เขามาในเครองเพอท าการการวเคราะหขอมล ประมวลคา แสดงผลและในหลายกรณใชในระบบควบคมอตโนมตดวยคอมพวเตอร ขอไดเปรยบสงสดของ LabVIEW คอการพยายามท าใหเครองคอมพวเตอรของเราเมอรวมกบ LabVIEW และ อปกรณเชอมตอเพอการเกบขอมล (Data Acquisition Card) แลวสามารถเปลยนเครองคอมพวเตอรสวนบคคลของเราใหกลายเปนเครองมอวดในหลายรปแบบ ไมวาจะเปน Oscilloscope, Multi-meter, Function Generator, Strain meter Thermometer หรอเครองมอวดอนๆ ตามทเราตองการ ท าใหสามารถใชคอมพวเตอรในการท าการวดและเครองมอวดไดอยางกวางขวาง ซงจดนเองทเปนทมาของชอ เครองมอวดเสมอนจรง (Virtual Instrument) และขอไดเปรยบเหนอการใชอปกรณจรงเหลานนคอ Virtual Instrument สามารถปรบเปลยนใหเหมาะสมกบการใชงานของผใชแตละกลมได โดยการเปลยน VI ใหเปนไปตามตองการเปนเรองทไมยงยากนก

Page 4: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

6

รปท 2.3 แสดงหนาจอการเขยนโปรแกรมและหนาจอแสดงผล ขอดอกประการหนงในการหนงของการใชคอมพวเตอรเปนเครองมอวดกคอ สามารถใช

ท าเปน Data Logger และ PLC (Programmable Logical Controlled) ไดพรอมกน ซงโดยปกตแลวระบบควบคมมกจะไมมในเครองมอวดจรงขนพนฐาน หรอ Data Logger แมจะเกบขอมลได แตการสงการท างานกบอปกรณตวอน จะมความยงยากในการสงการมาก

ส าหรบผทเคยใชโปรแกรมประเภททใชตวหนงสอ หรอทเรยกวา Text Base ทงหลาย คงจะทราบถงความยงยากในการจดการกบต าแหนงการสงผานขอมลตามอปกรณเชอมตอเชน Port หรอ Card ตางๆ รวมถงการจดวางต าแหนงในหนวยความจ าเพอทจะสามารถรวบรวมขอมลมาใชในการค านวณและเกบขอมลใหไดประโยชนสงสด ปญหาเหลานไดรบการแกไขใน LabVIEW โดยไดมการบรรจโปรแกรมจ านวนมาก หรอ Libraries ไวส าหรบจดการกบปญหาเหลานน ไมวาอปกรณการเชอมตอจะเปน DAQ (Data Acquisition), GPIB (General Purpose Interface Bus หรอกอนหนานรจกกนในชอ Hewlett Packard Interface Bus, HP-IB), พอรตอนกรม หรอ Serial Port เพอใชตดตอกบอปกรณทสงผานขอมลแบบอนกรม (Serial Instrument) รวมถงการวเคราะหขอมลทไดดวยวธการตางๆ นอกจากนใน Libraries เหลานนยงไดบรรจฟงกชนการท างานทส าคญอกหลายประการเชน Signal Generation, Signal Processing, Filters, สถต, พชคณต และคณตศาสตรอนๆ ดงนน LabVIEW จงท าใหการวดและการใชเครองมอวดกลายเปนเรองงายลงไปมาก และท าใหคอมพวเตอรสวนบคคลของเรากลายเปนเครองมอทางดานการวดหลายชนดอยในเครองเดยว

Page 5: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

7

2.2 DATA FLOW AND PROGRAMING เนองจาก LABVIEW เปนโปรแกรมทใชรปภาพ หรอสญลกษณแทนการเขยนดวยตวอกษรเหมอนโปรแกรมปกตทวไป ซงขอดขอแรกกคอการลดความผดพลาดดานการสะกดผดหรอพมพผดออกไป ขอแตกตางอกประการหนงทส าคญของการเขยนโปรแกรมแบบ G กบการเขยนดวยตวหนงสอกคอ การเขยนดวยภาษา G นเปนการเขยนโดยใชหลกการของ Data Flow ซงเมอเรมสงขอมลเขาสโปรแกรม เราจะตองก าหนดทศทางไหลของขอมลวาจะไปทสวนใด ผานการประเมนผลและค านวณในสวนใดบาง และจะใหแสดงผลอยางไร ซงลกษณะการเขยนภาษา G หรอ Data Flow นจะมลกษณะเหมอนกบการเขยน Block Diagram ซงท าใหผเขยนโปรแกรมสามารถใหความสนใจกบกาเคลอนทและเปลยนแปลงขอมลไดโดยไมตองจดจ ารปแบบค าสงทยงยาก

เนองจาก LabVIEW ใชลกษณะการเขยนแบบ Block Diagram ซงวศวกรสวนใหญมความคนเคยอยแลว จงเปนการงายทจะท าความเขาใจและน าไปพฒนาใชตอไปได และถาหากเราจ าไดถงขนตอนการเขยนโปรแกรมวากอนทจะเขยนโปรแกรม จะตองเขยน Flow Chart ใหเสรจสนกอน หลงจากตรวจสอบ Flow Chart เรยบรอยแลวเราจงน าไปเขยนโปรแกรม ซงจะมความสะดวกมากขน ถาหากการเขยน Flow Chart ของ LabVIEW กคอการเขยนโปรแกรมนนเองซงเปนการลดขนตอนการท างานลงไปไดเปนอยางมากแมวการเขยนโปรแกรมใน LabVIEW ไมจ าเปนตองมความรดานการเขยนโปรแกรมใดๆ มากอนเลย แตการมความรดานการเขยนโปรแกรมหรอใชโปรแกรมส าเรจรปอนๆ จะสามารถน ามาใชประโยชนไดเปนอยางด

LabVIEW จะม Front Panel ซงเปรยบเสมอนไดกบสงทผใชจะเหนและควบคมการท างาน ผใชสามารถสรางรปแบบขนเองไดอยางรวดเรวเพราะ LabVIEW มสวนประกอบตางๆ ทใชส าหรบออกแบบหนาจอมากมาย เชน จอแสดงผลแบบออพโลลโครบ, ปมหมน (Dial) และ สวทช เปนตน โดย LabVIEW จะแสดงผลและควบคมการท างานผานทางคอมพวเตอร

พนทสวนเขยนโปรแกรมจะเรยกวา Block Diagram เปรยบเสมอนกบ Hardware ภายในเครองมอวด โดย LabVIEW จะเขยนโปรแกรมโดยอาศยรปภาพ

รปท 2.4 แสดง Block Diagramของ LabVIEW

Page 6: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

8

LabVIEW อาศยหลกการท างานของเครองมอวดหรอการวดคมท าใหผใชสามารถออกแบบตามทผใชตองการ หลกการดงกลาวแบงออกเปน 3 สวนใหญๆ คอ

รปท 2.5 Block Diagram เครองมอวดทสรางจาก LabVIEW 1. Acquisition ซงเปนสวนทรบขอมล (Input) จากสงแวดลอมภายนอกเขาสระบบในทนคอ คอมพวเตอร โดยขอมลทเขาสระบบนอาจมาจากการด DAQ (ส าหรบสญญาณทางไฟฟา) 2. Analysis หลงจากทไดรบขอมลแลวอาจจะผานฟงกชนในการวเคราะหขอมล ซงจะแสดงผลในรปทสอความหมายในสงทผใชงานสามารถน าไปแสดงแทนสอทวดไดและใชงานได 3. Presentation คอ การแสดงผลในรปแบบทเปนประโยชนตอผใชงาน โดยอาจแสดงบนหนาจอคอมพวเตอร เชน DMM (Digital Multimeter) แสดงผลเฉพาะทวดไดโดยไมจ าเปนตองรความส าคญกบเวลา หรอ Spectrum Analysis จะแสดงสญญาณในรปความถหรอการพมพออกมาเปนรายงานหรอเกบขอมลในฮารดดสก 2.3 สวนประกอบตางๆ ใน LabVIEW โปรแกรมทเขยนขนมาโดย LabVIEW เราจะเรยกวา Virtual Instrument (VI) เพราะลกษณะทปรากฏทางจอภาพเมอผใชใชงานจะเหมอนกบเครองมอหรออปกรณทางวศวกรรม ในขณะเดยวกนหลงฉากของอปกรณเสมอนจรงเหลานนจะเปนการท างานของ ฟงกชน, Subroutines และโปรแกรมหลกเหมอนกบภาษาทวไป ส าหรบ VI หนงๆ จะประกอบดวยสวนประกอบ 3สวนคอ

2.2.1 Front Panel

2.2.2 Block Diagram

2.2.3 Icon และ Connector

ทงสามสวนนจะประกอบกนขนมาเปนอปกรณเสมอนจรง ลกษณะและหนาทของสวนประกอบทงสามมดงตอไปน

Page 7: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

9

2.3.1 Front Panel หรอหนาปทม จะเปนสวนทใชสอความกนระหวางผใชกบโปรแกรม

(หรอทนยมเรยก User Interface) โดยทวไปจะมลกษณะเหมอนกบหนาปทมของของเครองมอหรอ

อปกรณทใชงานดานการวดทวๆ ไป โดยทวไปจะประกอบดวย สวตซปดเปด, ปมบด, ปมกด

จอแสดงผลหรอแมแตคาทผใชสามารถก าหนด ส าหรบผทคนเคยกบการเขยนโปรแกรมประเภท

Visual ทงหลายคงจะเขาใจกนดวา Front Panel นจะเปรยบเสมอนเปน GUI ของโปรแกรมหรอ VI

นนเอง

รปท 2.6 Front Panel ของ LabVIEW

Object ทอยบน Front Panel จะมอยสามประเภท คอ

1) Control คอประเภททรบคาจากผใช (Input) ซงผใชสามารถพมพคาลงไป หรอใชเมาส

คลกเพอเปลยนแปลงคาได เชน ปมหมน ปมเลอน สวตช เปนตน

2) Indicators คอประเภททใชแสดงคาตางๆเทานน (Output) ผใชไมสามารถแกไขได เชน กราฟ มเตอร LED 3) Decorations เปน Object ทไมเกยวของกบโปรแกรมและcode บน Block Diagram เลย

แตมไวเพอความสวยงามเปนระเบยบของ Front panel เทานนนนเอง ลกษณะของ Front Panel

แสดงดงรปตอไปน

Page 8: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

10

Controls Indicators Decorations

รปท 2.7 Object ทอยบน Front Panel ของ LabVIEW เครองมอทใชออกแบบ Front Panel เครองมอทใชในการออกแบบ Front Panel จะประกอบไปดวย Control Palette และ Tools Palette ซง LabVIEW ม Controls Palette ทใชในการออกแบบ Front Panel แสดงดงรป 2.8 ซงเปนสวนทตดตอกบผใชงาน (User Interface) โดยจะจดเปนกลมตาง ๆ เชน กลมของตวเลข (Numeric) ซงภายในกลมจะม Control และ Indicator ตางๆ ทเกยวกบตวเลข

รปท 2.8 Controls Palette ทใชในการออกแบบ Front Panel

Tools Palette คอ เครองมอทใชในการพฒนาโปรแกรม ซงจะใชทงการออกแบบ Front Panel และ Block Diagram ในสวนนจะกลาวถง Tools Palette ส าหรบออกแบบ Front Panel

Page 9: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

11

รปท 2.9 Tools Palette ทใชในการออกแบบ Front Panel 2.4 Block Diagram

เพอใหเกดความเขาใจงายขน เราอาจมอง Block Diagram นเปนเสมอนกบ Source Code หรอโปรแกรมของ LabVIEW ซงปรากฏวาอยในรปของภาษา G ซง Block Diagram น ถอวาเปน Executable Program คอสามารถทจะท างานไดทนท และขอดอกประการหนงกคอ LabVIEW จะมการตรวจสอบความผดพลาดของโปรแกรมตลอดเวลา ท าใหโปรแกรมจะท างานไดกตอเมอไมมขอผดพลาดในโปรแกรมเทานนโดยผใชสามารถทจะดรายละเอยดของความผดพลาดแสดงใหเหนไดตลอดเวลาท าใหการเขยนโปรแกรมนนงายขนมาก

สวนประกอบภายใน Block Diagram นจะประกอบดวย ฟงกชน คาคงท โปรแกรมควบคมการท างานหรอโครงสราง จากนนในแตละสวนเหลาน ซงจะปรากฏในรปของ Block เราจะไดรบการตอสาย (Wire) ส าหรบ Block ทเหมาะสมเขาดวยกน เพอก าหนดลกษณะการไหลของขอมลระหวาง Block เหลานน ท าใหขอมลไดรบการประมวลผลตามทตองการและแสดงผลออกมาใหแกผใชตอไป

รปท 2.10 ตวอยาง Block Diagram

Page 10: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

12

2.4.1 Block Diagram Node Node คอรป Icon ทอยบน Block Diagram ซงม Input และ/หรอ Output และจะท างานตามหนาทเมอมการรนโปรแกรม โดนแบงเปนสามชนดหลก 1) Function คอ Node ทมหนาทพนฐานของคอมพวเตอร ซงเราไมสามารถทจะเจาะเขาไปดรายละเอยดภายในไดอก เชน การบวก การคณ 2) SubVIs หรอในภาษาทางซอฟตแวรอาจจะเรยกวา Subroutine หรอ Subprogram คอโปรแกรมยอยทถกเขยนขนมาเพอถกน ามาเรยกใชในอกโปรแกรมหนง เราสามารถเปดเขาไปด front panel และ block diagram ไดเมอ double click ท Icon ของมน 3) Express VIs เปน subVIs ประเภทพเศษคอเมอเราเลอก Express VI มาวางบน Block Diagram มนจะปรากฏหนาตาง Configuration ขนมาเพอนใหเราเขาไปปอนคา Parameters ตาง ตามตองการและเมอเราปอนคาเสรจ มนกจะสรางโคดไวภายในอตโนมตตามทเราไดตงคาไว ซงความสามารถของ Express VI นท าใหเราแทบไมจ าเปนตองตอสาย Input เลยเพราะ Parameter ทงหมดไดถกสรางขนมาแลวถกเกบไวภายในเรยบรอยแลว จงท าใหการเขยน LabVIEW งายและเรวขนมาก สงเกตงายๆ Express VI จะม Icon ขนานใหญทมพนหลงเปนสฟา

รปท 2.11 ตวอยาง Block Diagram Node

Page 11: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

13

2.4.2 เครองมอทใชในการเขยนโปรแกรมบน Block Diagram LabVIEW ใช Functions Palette ซงจะม Function และ SubVI ตาง ๆ ทมอยแลวใหผใชเลอกใช โดย Function และ SubVI จดเปนกลม ๆ เชน Numeric Function จะม Function ตาง ๆ เกยวกบตวเลข เชน บวก ลบ คณ หาร แสดงดงรป 2.11

รปท 2.12 เครองมอส าหรบ Dam – Data Acquisition Tools Palette ส าหรบ Block diagram เปด Tools Palette โดยการ Click ท Window >> Show Tools Palette หรอกด Shift Right-Click แลว Click เลอก Tool ทตองการใช (ถา Automatic Tools Selection เปดอยแลว (LED) เปนสเขยว ให Click เพอปด Automatic Tool Selection ซงมเฉพาะใน Version 6.1 ขนไป) Tool ทใชมดงตอไปน

รปท 2.13 เครองมอ Tools Palette

Page 12: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

14

1. Operation Tool ใชในการเปลยนแปลงคาหรอเลอกคาคงทใน Block Diagram 2. Position/Size/Select ใชในการเลอก/เคลอนยาย/จดขนาดของสงทสรางขนบน Block

Diagram 3. Edit Text Tool ใชในการแกไขขอความทเปนตวอกษร หรอเพมขอความลงบน Front

Panel 4. Wiring Tool ใชในการโยงสาย (Wiring) ระหวาง Terminal หรอ Node ซงสายทโยงน

จะเปนเสนทางเดนของขอมล 2.4.3 Icon และ Connector เปรยบเสมอนโปรแกรมยอย Subroutine ในโปรแกรมปกตทวๆ ไปโดย Icon จะหมายถง Block Diagram ตวหนงทมการสงขอมลเขาและออกผานทาง Connector ซงใน LabVIEW เราจะเรยก Subroutine นวา SubVIขอดของการเขยนโปรแกรมดวยภาษา G นกคอเราสามารถสราง VI ทละสวนขนมาใหท างานดวยตวเองไดอยางอสระ จากนนในภายหลกหากเราตองการเรากสามารถเขยน โปรแกรมอนขนมาเพอเรยกใชงาน VI ทเราเคยสรางขนกอนหนานทละตว ซงท าให VI ทเราเขยนขนกอนกลายเปน SubVI ไป การเขยนในลกษณะนเราเรยกวา เขยนเปน Module ส าหรบลกษณะทวไปของ Icon และ Connector จะแสดงในรปตอไปน เราจะเหนวาเมอเราแสดงในรปของ Connector เราจะพบวามชองตอขอมลหรอทเรยกวา Terminal ปรากฏใหเหน

รปท 2.14 แสดงลกษณะทวไปของ Icon และ Connector

Page 13: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

15

ค าศพทตางๆทใชกนใน LabVIEW นออกจะแตกตางจากทเราใชกนในภาษาการเขยนโปรแกรม ตวหนงสอทวๆไปในหลายๆดาน ดงนนเพอใหผทเรมใช LabVIEW เขาใจถงศพทตางๆ ทใชในโปรแกรม เราจงขอเปรยบเทยบศพทใชใน LabVIEW กบโปรแกรมพนฐานทวๆ ไปตามตารางทไดแสดงตอไปน

LabVIEW โปรแกรมพนฐาน หนาท

VI Program ตวโปรแกรมหลก

Function function ฟงกชนส าเรจรปทสรางขนมากบโปรแกรมนนเชน sin, log เปนตน

SubVI Subroutine โปรแกรมยอยทถกเรยกใชโดยโปรแกรมหลก

Front Panel user interface สวนทตดตอกบผใช

Block Diagram Program code การเขยนตามขนตอนของทแตละโปรแกรมก าหนดขน

ตารางท 2.1 เปรยบเทยบค าศพททใชในการเขยนโปรแกรม

2.5 ประเภทของขอมล ในการเขยนโปรแกรมทวๆไปจะตองมการประกาศตวแปรกอนทจะใชตวแปรนน แตส าหรบโปรแกรม LabVIEW มนจะจดการใหเองหมดโดยผใชไมจ าเปนตองท าเอง เพยงแคเลอกประเภทของขอมลทมาวางบนโคดใหถกตองเทานน ประเภทของของขอมลภายใน LabVIEW กมหลายอยางทเหมอนกบโปรแกรมในภาษาอนๆ และยงมอกบางประเภททใชใน LabVIEW เทานน โปรแกรม LabVIEW แบงขอมลเปน 6 ชนดดงนคอ 2.5.1 Numeric คอขอมลประเภทตวเลข มทงจ านวนเตมซงใน Block Diagram จะเหนเปนสน าเงน และจ านวนทศนยมจะเหนเปนสสม และสามารถเปลยนไปมาไดโดนการคลกขวาทตวเลขนน แลวเลอก representation และเลอกประเภทตวเลขไดเลย แสดงดงรป 2.14

Page 14: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

16

รปท 2.15 แสดงขอมลประเภท Numeric

2.5.2 Boolean คอขอมลประเภททมสองคา คอ True และ false บน Block Diagram จะแสดงขอมลเปนสเขยว และส าหรบ Front Panel ตว Boolean จะมลกษณะเปน ตว Control หรอ สวตช ถาเปน Output กจะเปน LED หรอหลอดไฟประเภทตางๆ แสดงดงรป 2.16

2.5.3 String คอขอมลประเภททเปนตวอกษร Icon จะแสดงเปนสชมพ ส าหรบการแสดงผล จะมอย 4 แบบ คอ Normal Display คอการแสดงปกต Code Display คอการแสดงแบบ โคดมประโยชนส าหรบแสดงตวอกษรทตาเปลามองไมเหน การเวนวรรค แทบ หรอการขนบรรทดใหม Password Display คอการแทนตวอกษรดวย * Hex Display แสดงผลเปนรหสเลขฐานสบหก

Page 15: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

17

รปท 2.16 แสดงขอมลประเภท Boolean

2.5.4 Enum คอขอมลประเภทแสดงใหผใชเหนเปนตวหนงสอ แตคาจรงของมนคอตวเลข ดงนนบน Block Diagram เราจงมองเหนขอมลประเภทนเปนสน าเงน ซงเหมอนกบจ านวนเตม 2.5.5 Dynamic เปนขอมลทอยในรปของ Waveform บน Block Diagram ถกแสดงดวยสน าเงนเขมซงภายในจะประกอบดวย Array ของเวฟฟอรม Time Stamp ชอของสญญาณ ขอมลประเภท Dynamic นสวนใหญใชใน Express VI จ าพวกการอาน ก าเนด และวเคราะหสญญาณ 2.5.6 Time Stamp เปนขอมลทประกอบดวยวนท และเวลาทมความละเอยดถงมลลวนาท Time Stamp บน Block diagram จะมหนาตาทเปนสน าตาลเสนหนา สามารถน ามาแปลงใหเปน วนท เวลา แบบ String ได 2.6 หลกการท างานของ Dataflow Programming

กอนจะเรมพฒนาโปรแกรมเรามาดหลกการท างานของโปรแกรมในรปแบบ Dataflow และรปแบบขอมล (Data Type) ซงเปนสงส าคญในการพฒนาโปรแกรม โปรแกรมทเขยนขนดวย LabVIEW จะท างานโดยอาศยหลกการของ Dataflow ซงมหลกการดงตอไปน คอ

2.6.1 ฟงกชนหรอ SubVI จะท างานเมอมขอมล (Input) 2.6.2 เมอฟงกชนหรอ SubVI ท างานเสรจจะใหขอมล (Output) ไปยงฟงกชนหรอ

SubVI อน ๆ ทตองการขอมล 2.6.3 ขอมลจะถกสงผานโดยสาย (Wire)

Page 16: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

18

ในรปท 2.17 เปนตวอยางการเขยนโปรแกรม LabVIEW โดยใหหนาจอแสดงผลคาอณหภมเปนองศาฟาเรนไฮท โดยแสดงผลเปนแบบตวเลขและกราฟ โดยมคาอนพตเปนองศาเซลเซยส

(a) (B)

รปท 2.17 (a) แสดงโปรแกรมทเขยนขน (b) จอแสดงผลทตองการ จากรป 2.17 ขนตอนการท างานของโปรแกรมจะเปนดงน

1. ฟงกชนคณ (Multiply) จะท างานกอนฟงกชนบวก เพราะฟงกชนคณมขอมล (Input) พรอม แตฟงกชนบวกตองรอ Output จากฟงกชนคณ (หลกการ Dataflow ขอ 1)

2. หลงจากฟงกชนคณท างานเสรจจะสงผานขอมลไปยงฟงกชนบวก (หลกการ Dataflow ขอท 2 และ 3)

3. ฟงกชนบวกท างาน (หลกการขอ 1) เพราะมขอมลพรอม 4. หลงจากฟงกชนบวกท างานจะสงผลลพธไปให Terminal ทง 2 คอ Fahrenheit และ

Waveform Chart พรอมกน (หลกการขอ 2 และ 3) 2.7 ภาพรวมของระบบ DAQ บน PC ระบบ DAQ บน PC คอกระบวนการในการอานคาสญญาณทางไฟฟาแลวน าไปเกบไวในหนวยความจ าบน PC เพอการวดวเคราะห จดเกบ หรอแสดงผลตอไป ขนอยกบวตถประสงคในการ สราง VI ของแตละแอพพลเคชน ซงระบบ PC จะมสวนประกอบอย 4 สวนดวยกน คอสวนของแหลงสญญาสวนฮารดแวร Signal Conditioning สวนอปกรณ ของซอฟตแวร PC ดงภาพ 2.18

รปภาพ 2.18 สวนประกอบของระบบ DAQ

Page 17: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

19

สญญาณทเราจะวด อาจเปนสญญาณอนาลอก (+หรอ- 10V หรอ 4-20 mA. ) หรอสญญาณดจตอล หรออาจจะมาจากเซนเซอร ซงสญญาณเหลานจะถกตอสายเขาไปในสวนฮารดแวรอเลกทรอนกสทเรยกวา Signal conditioning ซงจะท าหนาทในการปรบปรงสญญาณใหเหมาะสมกอนทจะวดดวยฮารดแวรDAQ ตอไป เชน ถามสญญาณมขนาดเลกเกนไป กจะตองขยายใหใหญขน หรอสญญาณเขามาใหญเกนไป กตองลดทอนสญญาณใหเลกลง เปนตน (ถาสญญาณมลกษณะเหมาะสมแลวเรากไมจ าเปนตองน า Signal conditioning มาใชทกครงเสมอไป ) ส าหรบฮารดแวรDAQ แบบพนฐานจะสามรถวดสญญาณแรงดนไฟฟาอยในชวง +หรอ- 10V เทานน ซงฮารดแวรนจะถกตดตงบน PC ทม ไดรฟเวอร และมแอพพลเคชนทเขยนดวยซอฟแวรส าหรบพฒนาระบบ เชน LABVIEW 2.7.1 แหลงสญญาณทางไฟฟา

สญญาณทางไฟฟามหลากหลายรปแบบ ซงแหลงก าเนดของมนอาจมาจากตวสงสญญาณ หรอ เซนเซอร ซงสญญาณเหลานจะเปน ฯตวแสดงถงปรมาณทางกายภาพของสงทเราจะวด เชน การวดอณหภมดวยเทอรโมคพเปอร หรอ RTD , การวดแรงดวยโหลดเซลล,การวดแสงดวยโฟโตเซนเซอร, การวดเสยงดวย,ไมโครโฟน เปนตน โดยในทสดแลวสญญาณอนาลอกจะตองถกแปลงไปเปนแรงดนไฟฟาอปกรณ Signal conditioning กอนทจะถกอานคาดวยอปกรณ DAQ โดยเราจะเรยกแหลงก าเนดสญญาณประเภทแรงดนไฟฟาวา Voltage Source ซงเปนความตางศกยระหวางสายสองเสน Voltage Source จงเปนตวแทนของแหลงสญญาณทพรอมทจะถกวดดวยอปกรณDAQ ซงแบงออกเปนสองชนด ไดแก แหลงสญญาณแบบตอกราวด(grounded Source) และแบบไมตอกราวดหรอแบบ ลอย (floating source)

1. Grounded Source คอ สญญาณทขาลบถกอางองกบระบบ กราวด เชน กราวดของอาคาร

ตวอยาง ของสญญาณประเภทน เชน สญญาณทมาจากอปกรณ ทมการตอกราวด ม

สญลกษณดงน

รปภาพท 2.19 Grounded Source

โดยปกต ศกยไฟฟาของกราวดในแตละระบบจะมคาไมเทากน ความแตกตางนเปนไปไดตงแต 1

mv. จนถง 200mv. การตอกราวดของสญญาณเขากบกราวดของเครองมอวด อาจจะท าใหเกด

Page 18: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

20

กระแสวงระหวางสองกราวดเนองจากความตางศกย เราเรยกสงนวากราวดลป ซงจะสงผลท าให

คาท วดคลาดเคลอนได

2. Floating Source คอสญญาณทไมไดถกอางองกบระบบกราวดใดๆ ยกตวอยางเชนเทอร

โมคฟเปอร, แบตเตอร,สญญาณขาออกจาก isolation amplifier เปนตน โดยสญลกษณดงน

รปภาพ 2.20 Floating Source

2.7.2 Signal Conditioning Signal conditioning คออปกรณเสรมทท าหนาทปรบสญญาณใหเหมาะสมกอนการวดดวยอปกรณ DAQ เพอใหไดผลการวดทเทยงตรงและปลอดภยมากขน ทงนเราอาจสรางวงจรแปลงสญญาณขนมาเอง หรอใชอปกรณส าเรจรปทมคณภาพสงเพอความแมนย ามากขนกได ซงอปกรณ Signal condition มหลากหลายรปแบบใหเลอก ทงแบบตดตงแยกจาก DAQ และแบบทรวมเปนชนเดยวกนกบ DAQ และแตละแบบกยงแยกตามชนดของสญญาณ ตวอยาง Signal Conditioning ทพบไดทวไปมดงน

- Amplification : คอการขยายสญญาณทเลกเกนไปใหมขนาดใหญขน ท าใหอปกรณ

DAQ สามารถวดการเปลยนแปลงของสญญาณไดละเอยดมากขน เชน สญญาณจาก

เทอรโมคฟเปอร ซงจะอยในระดบ มลลตโวลต

- Excitation : คอการจายไฟกระตน เนองจากเซนเซอรบางชนด เชน โหลดเซลล

จ าเปนตองมการจายแรงดนไปเลยง หรอ RTD กตองจายกระแสไฟไปเลยง ,Signal

conditioning จะท าการจายไฟเลยงใหในรปแบบและขนาดทเหมาะสม

- Bridge Configuration : คอการตอตวตานทานเพมใหครบสตวเปนวงจรแบบบรดจ ซง

ใชกบการวดดวย สเตรนเกจ (strain gauge)

Page 19: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

21

- Filtering: คอการกรองสญญาณในยานความถทไมตองการออก เชน ถาสญญาณทเรา

ตองการมความถต า แตในระบบมสญญาณรบกวนความถสงปะปนเขามาดวย เรา

สามารถใช low-pass filter เพอตดสญญาณรบกวนยานความถสงออก หรอใน

กระบวนการสมสญญาณเราสามารถใช Anti-aliasing filter เพอตดสญญาณทเราไม

ตองการอานออกไปจากระบบเพอใหสญญาณมคณภาพดขน

- Isolasion : คอการแยกตวน าไฟฟาของระบบวดสญญาณสองสวนออกจากกน เพอ

ความปลอดภยในกรณทอาจม ทรานเซยนขนาดใหญวงเขามาในระบบ และยงสามารถ

แกปญหาเรองกราวดลปทกลาวไวตอนตนไดอกดวย

2.7.3 ขนตอนการแปลงสญญาณจากอนาลอกเปนดจตอล ในอปกรณ DAQ ทวไปจะมชองส าหรบวดสญญาณอนาลอก เรยกกวาชอง Analog input ซงจะวดสญญาณในชวง+ หรอ – 10V ได(แลวแตรน) การน าสญญาณอนาลอกนเขามาอยใน PC ซงเปนฟอรแมตแบบดจตอลจะตองผานอปกรณแปลงสญญาณทเรยกวา Analog-to-digital converter ( ADC) ซงเปนกระบวนการในการน าคาทางดจตอล (ซงมจ านวนจ ากด) มาเลยนแบบคาอนาลอก (ซงมจ านวนไมจ ากด) โดยกระบวนการนมขนตอนบางอยางทเราควรทราบเพอน าไปปรบแตงคาอปกรณในการดงสญญาณ ดงน

1. Sampling เนองจาก PC ของเรานนจะเกบและประมวลผลขอมลในรปแบบดจตอลเทานน

กระบวนการนจงเปนการเปลยนสญญาณอนาลอกทเปนเสนกราฟตอเนองใหกลายเปนจดองขอมลดจตอลทไมตอเนองดวยวธการสมเนองสญญาณ หรอ เรยกวา Sampling ดวยอตราเรวทคงท ดงภาพ ฝงซายคอรปสญญาณอนาลอกตนฉบบและฝงขวาคอ สญญาณทถกสม

รปภาพ 2.21 Sampling จะสงเกตไดวาถาหากเรายงสมสญญาณเรว จดทไดจากการสมกจะหนาแนน มากขน กจะ

ยงเกบความละเอยดของเสนกราฟไดใกลเคยงตนฉบบมากขน ความเรวในการสมสญญาณนเรยกวา

Page 20: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

22

Sampling rate มหนวยเปนจดตอวนาท (Sample/s) หรอ Hz กได แตความเรวนจะมขอจ ากดอยท Sample clock ของอปกรณวาจะสามารถสมไดเรวสงสดเทาไร แตการสมขอมลดวยความเรวมากเกนไปกไมใชสงทจ าเปน เพราะจะท าใหสนเปลองหนวยความจ าและพนทเกบขอมล เราสามารถก าหนดSampling rate ในการแปลงสญญาณทเหมาะสมไดเอง โดยยดตามหลกการแปลงสญญาณทเรยกวา ทฤษฎ Nyquist

ทฤษฎ Nyquist กลาวไววา สญญาณจะตองถกสมดวยความเรวอยางนอยสองเทาของความถสงสดทมอยในสญญาณ เพอใหสามารถน าจดขอมลเหลานนมาสรางเปนเวฟฟอรมกลบใหเหมอนกบสญญาณตนฉบบได ยกตวอยาง เชน เราตองการดงสญญาณอนาลอกซายนเวฟทมความถ 10 Hz เราจะตองตง Sampling rate ทสงกวา 20Hz เชน ถาเราตงเปน 25Hz จะไดผลดงน

รปภาพ 2.22 Sampling rate 10Hz ถง 25Hz

จะพบวาเราสามารถน าจดขอมลทเกดจาก Sampling ท 25Hz มาสรางเปนเวฟฟอรมทความถ 10Hz ไดเหมอนเดม (โดยการลากเสนเชอมจดตอระหวางจด) แตรปรางของกราฟจะผดเพยนไปมาก TIP: ถาเราใช Sampling Rate ทสองเทาของความถสงสดของสญญาณพอด เราอาจไดขอมลทางความถของสญญาณทถกตอง แตจะไมสามารถเกบรายละเอยดของรปทรงของกราฟได ทงหมด เพราะฉะนนในทางปฏบต เราควรใชSampling rate ทประมาณ 5 เทาถง 10เทา ของความถสงของสญญาณ เพอใหไดรปทรงของกราฟทถกตองมากยงขน จากตวอยางเดม ถาเราเพม Sampling rate ใหสงขนเปนสบเทาของความถสงสดของสญญาณ คอ 100Hz จะพบวาเราไดกราฟทมความถและรปทรงเหมอนของตนฉบบมากขนดงน

รปภาพ 2.23 Sampling rate 10Hz ถง 100Hz

Page 21: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

23

แตกรณทเราตง Sampling rate ชากวาทใน ทฤษฎ Nyquist ก าหนดไว เชน ถาเราตงเปน 11Hz เราจะไดขอมลทมความถผดไปจากตนฉบบ คอจะต ากวาเดม เหตการณแบบนเรยกวา Aliasing error ดงตวอยาง

รปภาพ 2.24 Sampling rate 10Hz ถง 11Hz เราจงควรทราบลกษณะของสญญาณทเราจะดงกอนทจะตงคา Sampling rate เพอปองกนไมใหเกด aliasing error เขามาปะปนกบสญญาณทเราตองการ ในกรณทไมสามารถเลยงได เชน ระบบทม Nosise ความถสง เราสามารถเลอกใช Signal conditioning รนทม Anti-aliasing filter เพอกรองเอาเฉพาะความถในชวงทต ากวาครงของ Sampling rate เขามาใน ADC ส าหรบสญญาณทเราไมสนใจความถ หรอไมมความถ เชนสญญาณอณหภม, ระดบของเหลวน าหนก, คา PH และสญญาณตางๆ ทไมไดมการเปลยนแปลงอยางรวดเรว ใหเราใช Sampling rate ตามความเหมาะสม เชนเราอาจสนใจขอมลทกวนาท หรอทกสบวนาท หรออาจจะไดทกหนงนาท กแลวแตความตองการ 2.Resolution

ขนตอนการ Sampling คอ การสมสญญาณทางแกนเวลา (แกนแนวนอน) แตส าหรบแกนแนวตงซงเปนคาของสญญาณ กจะตองท าการสมเชนกน เพอเปลยนใหเปนคาทาง ดจตอล ดวยวธการปดคาทศนยมขนหรอลง เราเรยนขนตอนนวา Quantization หรอ Digitization ขนตอนนจะคลายการกบการวดความยาวไมบรรทด โดยไมบรรทด ทวไปจะมขดทละเอยดทสดชองละ 1 mm เพราะฉะนนคาทวดออกมาไดจะตองถกปดใหอยในชวง 1 mm ไมเลกไปกวานแตถาหากไมบรรทดนนมขดแบงทละเอยดกวากจะสามารถวดไดละเอยดมากขนความละเอยดของการท า Digitization ขนอยกบความละเอยดของ ADC ถายงมความละเอยดมากกจะยงสามารถตรวจจบการเปลยนแปลงของระดบสญญาณอนาลอกไดละเอยดยงขน ซงความละเอยดของ ADC เราจะนบกนเปนจ านวนบต ยกตวอยางเชน ADC ทมความละเอยด 3 บตจะสามารถแสดงระดบสญญาณไดแปดระดบ (2ยกก าลง3 = 8 )โดยเรมนบจากรหสเลขฐานสอง 000 ไปจนถง 111 ดงภาพจะเปนการ Digitize สญญาณโดยใช ADC 3 บต

Page 22: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

24

รปภาพ 2.25 กราฟสญญาณโดยใช ADC 3 บต

ซงจะเหนไดวาการสญญาณทไดจะไมคอยเหมอนตนฉบบนก เพราะถกปดคาตนไปมาก จนมองเหนเปนรปขนบนได แตถาเราใชความละเอยดทมากขนกจะไดผลลพธทใกลเคยงกบตนฉบบมาก ขน เชน การใช ADC ความละเอยด 6 บต กจะสามรถแสดงระดบสญญาณไดถง 64 คาดงน

รปภาพ 2.26 กราฟสญญาณโดยใช ADC 6 บต

เราจงตองพจารณาเลอกอปกรณรนทเหมาะสมกบสญญาณทเราตองการวด โดยในอปกรณ DAQ จะมใหเลอกตงแตรน 12 บต (4096 ระดบ) ไปจนถง 24 บต (มากกวา 16 ลานระดบ) 3.Range

ความละเอยดของ ADC ในอปกรณแตละรนจะถกก าหนดตายตวมาจากผผลต ซงเราไมสามารถแกไยไดแตเราสามรพเลอก Range ในการวดใหเหมาะสมได เพอใหเราไดใชประโยชนสงสดจากความละเอยด ของ ADC ทมอยRange คอการก าหนดความกวางในขนตอนการท าDigitization เชน ถาเราม ADC ความละเอยด 3 บตและตง Range การวดในชวงกวางทสดคอ -10V ถง +10V (peak-to-peak= 20V) แตสญญาณทจะวดกลบเลกกวานนมาก จะท าใหเราไดผลลพธทหยาบกวาปกต โดยจะวดไดระดบละ 2.5 V ค านวณไดจาก Range หารดวยจ านวนระดบของ ADC,(20/8=2.5) ดงในรป 2.26

Page 23: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

25

รปภาพ 2.27 กราฟสญญาณ

แตในกรณเดม ถาเราตง Range ใหแคบลงใกลเคยงกบระดบสญญาณเหลอ -2.5v ถง+2.5V(peak-to-peak= 5V) เราสามารถ Digitize สญญาณไดดขน โดยวดไดระดบละ 0.625v ดงในรป ทงนควรเขาใจวาการตง Range ทแคบจะสามารถตรวจวดสญญาณขนาดเลกไดด แตจะไมสามารถตรวจวดสญญาณทเกนระดบ Range ทตงไวได อปกรณ DAQ อนญาต ใหเราตง Range ไดจ ากดเฉพาะเพยงบางชวง และบางอปกรณกไมสามารถตง Range อนไดเลยนอกจากมาตรฐาน เชน +หรอ -10V เราจงควรศกษาขอจ ากดเหลานจากคมอของอปกรณแตละรน Sampling Architecture อปกรณDAQ ทวไปจะมชองส าหรบ analog input จ านวนหลายชองเพอใหสามาถวดสญญาณอนาลอกไดหลายๆ ชองพรอมกน ซงในทางออกแบบฮารดแวรหรอ architecture จะมสองวธ ใหเราเลอก ไดแก

1. Multiplexed Sampling Architecture

คอการใช Multiplexer (MUX) เขามาชวยในการสวตชสญญาณทละชองเขามาใน Instrumentation amplifier (AMP) ซงเปนการสวตชแบบกลบไปมาทรวดเรว มาก กอนจะเขาถง ADC ดงภาพ

รปภาพท 2.28 Multiplexed Sampling Architecture

Page 24: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

26

ขอดของอปกรณแบบนคอ มตนทนทต ากวา เพราะใช ADC เพยงตวเดยวกสามารถวดสญญาณหลายๆชองไดในคราวเดยวกน

ขอเสย คอ Sampling rate สงสดทเราสามารถใชไดจะตองถกหารดวยจ านวนชองทใช เชน ถา Sampling rate สงสด ของอปกรณคอ 100kSample/s แลวเราตองการวดพรอมกนสบชอง กรณน Sampling rate จะเหลอใหใชสงสดเพยงชองละ 10 k Sample /s เทานน ขอเสยอกประการ คอ การเกด Phase Shift error เนองจากวธการนจะเปนการวดสญญาณดวยการสแกนสญญาณเขา ADC ทละชอง ไมไดสมสญญาณพรอมกนจรงๆ จงท าใหสญญาณทอานไดแตละชองมเฟสคลาดเคลอนออกไป ซงจะเหนชดเจนมากขนในกรณทสญญาณมความถสง อปกรณทใช วธการ Sampling แบบนจงใชไดกบสญญาณทเฟสในแตละชองไมมความสมพนธตอกน ดงตวอยาง

รปภาพท 2.29 Multiplexed Sampling & Simultaneous Sampling

ฝงซายใชการสมสญญาณแบบ Multiplexed สชองโดยตอสายวดไปทแหลงสญญาณเดยวกน จะเหนไดวาทจงหวะการสแกนเดยวกน กวาจะสแกนจากชองแรกไปถงชองสดทายตองใชเวลาไป 15 ไมโครวนาท สญญาณชองสดทายอาจจะเลอนไปแลวถง 270 องศาเลยทเดยว ในขณะทฝงขวาใชการสมแบบ Simultaneous ทแทบจะไมมการเลอนของเฟสในแตละชองสญญาณ 2. Simultaneous Sampling Architecture

วธการนจะตดตง ADC ประจ าอยในแตละชองสญญาณ เพอใหสามารถใช Sam pling rate ไดอยางเตมท และยงสามารถสมสญญาณไดพรอมกนอยางแทจรงเพอรกษาความสมพนธทางเฟสของสญญาณในแตละชอง ดงภาพ

Page 25: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

27

รปภาพท 2.30 Simultaneous Sampling Architecture

ซงจะเหมาะกบการอานขอมลทเฟสในแตละชองมความส าคญตอการวเคราะหสญญาณ เชน การวเคราะหเสยงและความสนสะเทอน การวเคราะหแรงเครยดแบบไดนามกสในโครงสราง,การวเคราะหก าลงไฟฟา เปนตน แตราคากจะสงขนตามไปดวย ประเภทของระบบการวดสญญาณ

เนองจากแหลงสญญาณมสองประเภททไดกลาวมาแลว คอ Floating Source กบ Grounded Source เราจงมวธในการตอสายเขากบอปกรณ DAQ ทแตกตางกนตามความเหมาะสมดวย ในกรณทอปกรณ DAQ ไมไดมสวน Isolation มาให

1. Differential หรอ DIFF คอการวดสญญาณทขาบวกและขาลบของแหลงสญญาณไมไดตอ

กบจดอางองใดๆ เชนกราวด ดงในรป โดยเราจะตอขาบวกของสญญาณไปทชอง CHX+

และขาลบไปทชอง CHX- โดยท AIGND (analog input ground ) คอกราวดของระบบการ

วด

รปภาพท 2.31 Differential

ในรป เปนอปกรณทม Analog input 16 ชอง การตอสญญาณแบบ DIFF จะท าใหเหลอจ านวนชองทสามรถใชไดเพยงครงหนง คอ 8 ชอง

Page 26: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

28

2. Referenced Single- Ended หรอ (RSE) คอการวดสญญาณทมการเทยบกบ AIGND ซงใช

เปนจดอางอง โดยเราจะตอขาบวกชองสญญาณไปทชอง CHX และตอขาลบของทกชอง

รวมกนท AIGND

รปภาพท 2.32 Referenced Single-Ended

ในรปเปนอปกรณทม Analog Input 16 ชองตวเดม แตท าการวดในโหมด RSE ซงจะท าใหเราสามารถวดสญญาณไดทงหมด 16 เราจะหลกเลยงการตอสญญาณแบบ Grounded Source ดวยวธน เพราะเปนการตอกราวดสญญาณเขากบกราวดระบบ วด ซงจะท าใหเกดปญหากราวดลปได

3. On-Referenced Single-Single-Ended หรอ NRSE เปนระบบทคลายกบ RSE แตจะใช

จดอางองเปน AISEN (analog input sense ) แทน ซงศกยไฟฟาทจดนจะแตกตางกบ

AIGND

รปภาพท 2.33 on-Referenced Single-Ended

Page 27: ทฤษฎีและหลักการresearch-system.siam.edu/images/coop/DESIGN_AND... · 3 บทที่ 2 ทฤษฎีและหลักการ 2.1 โปรแกรม

29

โดยสรปแลวเรามวธ การตอสญญาณทงหมดหก รปแบบดงภาพ แตจะมบางแบบทไมแนะน าซงไดกลาวไปแลว และบางแบบทไมมกราวดอางองกจ าเปนตองตอตวตานทานลง AIGND เพอเปนไบแอสโดยตวตานทานนสามารถใชขนาด 100kohm จนถง 1Mohm

2.8 Micro USB-DAQ Acquisition

ปจจบนมการน าโปรแกรม LABVIEW มาใชกนอยางแพรหลายเนองจาก ไมโครคอนโทรลเลอรมความสามารถสงขนมาก มความเรวในการประมวลผลสงขน ราคาถก และยงสามารถเชอมตอกบพซไดอยางงายดาย จงไดมผสราง Data Acquisition Cardโดยใชไมโครคอนโทรลเลอรราคาถกมาทดแทนการดทมราคาแพงอยางเชน Micro USB-Data Acquisition Card ซงใชไมโครคอนโทรลเลอรตระกล PIC18F4550 ของบรษท Microchip ซงมจดเดนคอสามารถเชอมตอกบพซผานพอรท USB ไดโดยตรง ม port A/D ถง 13 ชอง และยงมโปรแกรมและไดรเวอรทสามารถควบคมการท างานและอานสญญาณจากบอรดมาประมวลผลบนพซได จงน ามาใชทดแทน DAQ Card ของบรษท NI ได เนองจากมราคาถกกวา ของบรษท NI มาก

รปภาพท 2.34 วงจร Micro USB-Data Acquisition Card