Monday, September 13, 2010

DAQ, GPIB and Serial Communication

           
ในงานด้านการวัดและเครื่องมือวัดทางวิศวกรรม จะประกอบด้วยขึ้นตอนหรือกระบวนการวัด
            หลักๆ ตามลำดับดังนี้
1.         Sensor - Transducer ทำหน้าที่เปลี่ยนปรากฏการณ์ทางธรรมชาติหรือปริมาณต่างๆ ทางฟิสิกส์ให้เป็นปริมาณทางไฟฟ้าที่สามารถตรวจจับได้ ไม่ว่าจะเป็น กระแส ความต่างศักดิ์ แรงเคลื่อนไฟฟ้า หรือความต้านทานไฟฟ้า
2.         Signal  Conditioner ทำหน้าที่ปรับแต่งปริมาณสัญญาณที่ได้จากขั้นที่ 1 ให้มีขนาดปริมาณหรือลักษณะที่เหมาะสม เพราะสัญญาณที่ได้จากขั้นตอนที่ 1 นั้น อาจมีขนาดไม่เหมาะสมหรือมีสัญญาณรบกวนมากเกินกว่าที่จะนำไปวิเคราะห์ในทันทีได้
3.         Data Acquisition ทำหน้าที่ประมวลแปลความหมายหรือเปลี่ยนสัญญาณในลักษณะ Analog ให้มาอยู่ในรูปของ digital signal เพื่อประโยชน์ในการตีความหมายและใช้ในการควบคุมหน้าที่ของ DAQ boards อาจจะเป็นการอ่านสัญญาณ analog (A/D Conversion) การสร้างสัญญาณอันนาลอก (D/A conversion) เขียนและอ่านสัญญาณ เพื่อเชื่อมต่อกับ Transducer
ในเอกสารบางเล่มอาจเรียกขั้นตอนที่ 2 และ 3 อาจเรียกรวมกันว่า Signal Processing และในบางกรณีที่สัญญาณที่ได้มาจากการวัดนั้น หากมีขนาดที่เหมาะสมเราอาจจะไม่ต้องการขั้นตอนการปรับสภาพสัญญาณหรือ Signal Conditioner ก็เป็นได้
การติดต่อระหว่างคอมพิวเตอร์และ transducer จึงเป็นเรื่องสำคัญสำหรับคอมพิวเตอร์โดยปกติแล้ว สามารถที่จะติดต่อสื่อสารกับอุปกรณ์ภายนอกได้โดยการผ่าน Input/Output Board (I/O Board) ซึ่ง I/O board นี้จะมีหลายแบบแต่แบบที่สำคัญและสามารถเชื่อมต่อโดยผ่านคำสั่งของ LabVIEW ได้ทันทีจะประกอบด้วยอุปกรณ์ดังต่อไปนี้
      1.         DAQ Board 
      2.         GPIB Board 
      3.         Serial Interface

DAQ Board
โดยปกติแล้ว DAQ Board เป็นอุปกรณ์พิเศษ คือไม่ได้เป็นมาตรฐานที่ติดตั้งมากับคอมพิวเตอร์ สำหรับบอร์ดประเภทนี้จะมีผู้ผลิตหลายบริษัท ซึ่งลักษณะการทำงานก็อาจจะแตกต่างกันบ้างตามแต่ผู้ผลิตแต่ละแห่งออกแบบมา ข้อสำคัญที่เราต้องเข้าใจในเบื้องต้นนี้ก็คือไม่ใช่ว่า DAQ Board ทุกแบบ จะเหมาะสมกับการทำงานร่วมกับ LabVIEW ทั้งหมด อย่างไรก็ตาม ที่มหาวิทยาลัยเทคโนโลยีสุรนารีเราได้ใช้ DAQ Board ที่ผลิตโดยบริษัท National Instrument ดังนั้น DAQ Board ทุกแบบที่เรามีอยู่จะสามารถทำงานร่วมกับ LabVIEW ได้อย่างแน่นอน
สำหรับ DAQ Board ที่ผลิตโดยผู้ผลิตไม่ใช่ว่าจะไม่สามารถทำงานร่วมกับ LabVIEW ได้ แต่ว่าการที่ DAQ Board ที่ผลิตโดยผู้ผลิตรายอื่นนั้นจะสามารถทำงานร่วมกับ LabVIEW ได้ก็ต่อเมื่อมี Driver ของอุปกรณ์นั้น เพื่อให้ใช้งานร่วมกับ LabVIEW ได้เท่านั้นเท่านั้น ดังนั้นหากว่าทางบริษัทผู้ผลิต DAQ Board นั้นไม่มี Driver ที่ใช้งานร่วมกับ LabVIEW มาให้ เราอาจจำเป็นที่จะต้องเขียน Driver ขึ้นมาเอง ซึ่งวิธีการนี้ค่อนข้างจะยุ่งยากและเสียเวลามาก
                การเลือกใช้ DAQ Board ที่เหมาะสมกับตนที่จะใช้ถือว่าเป็นเรื่องที่สำคัญมากประการหนึ่ง เพราะราคาของเครื่องมือนี้จะเปลี่ยนแปลงไปอย่างมากหากเรากำหนดข้อจำกัดแตกต่างกันออกไป เช่น อัตราการเรียกสุ่มตัวอย่าง (sampling rate) จำนวนช่องรับ-ส่งสัญญาณ (I/O channel) หรืออื่นๆ โดยปกติราคาของ DAQ Board ที่ผลิตโดยบริษัท National Instrument จะมีราคาอยู่ระหว่าง $700-2000 ขึ้นอยู่กับความต้องการ ซึ่งเป็นราคาที่นับว่าสูงมาก เราอาจจะได้ board ที่ราคาถูกกว่านี้จากผู้ผลิตรายอื่น แต่อาจจะมีปัญหาเรื่องการใช้งานร่วมกับ LabVIEW
                หน้าที่ของ DAQ Board นี้จะทำการติดต่อโดยตรงกับ Transducer ซึ่งอาจจะผ่านอุปกรณ์ Signal Conditioner หรือไม่ก็ได้ตามความจำเป็น นอกเหนือจากนั้นแล้วเราไม่จำเป็นต้องมีอุปกรณ์อื่นเข้ามาร่วมในการสร้างเครื่องมือวัดเสมือนจริง ซึ่งจุดนี้เป็นจุดได้เปรียบของ DAQ Board นั่นคือแม้ว่าจะมีราคาแพง แต่สามารถจะทดแทนการซื้อเครื่องมือวัดอื่นๆ ได้มากมาย เราจะกล่าวถึง DAQ board อย่างละเอียดอีกครั้งหนึ่งในบทที่กล่าวถึง Data Acquisition Hardware

   GPIB
                General Purpose Interface Bus เป็นการขนถ่ายข้อมูลระบบใหม่ที่พึ่งได้รับความนิยม แม้ว่าจะได้รับการพัฒนาโดยบริษัท Hewlett-Packard ตั้งแต่ปลายทศวรรษ 1960 และได้พัฒนาจนกระทั่งได้รับมาตรฐานจาก Institute of Electrical and Electronic Engineer (IEEE) ในปี 1975 ซึ่งต่อมารู้จักกันในชื่อ IEEE 488 standard
                จุดประสงค์แรกของ GPIB คือใช้ในการควบคุมเครื่องมือวัดโดยคอมพิวเตอร์ อย่างไรก็ตามจุดประสงค์ได้เปลี่ยนแปลงไปบ้างแล้ว โดยการนำ GPIB มาใช้ควบคุมและติดต่อระหว่างคอมพิวเตอร์ด้วยกันหรือระหว่างคอมพิวเตอร์ กับ scanner หรือเครื่องมือวัดอื่นๆ ในระยะ 1-2 ปี ที่ผ่านมาเราจะพบว่าเครื่องคอมพิวเตอร์บางรุ่นเริ่มมี GPIB ติดมาเป็นอุปกรณ์มาตรฐานของเครื่องแล้ว
                GPIB เป็นการติดต่อแบบใหม่ที่สามารถเชื่อมต่ออุปกรณ์หลายชิ้นเข้ากับ GPIB Port ตัวเดียวได้ โดยสามารถต่ออุปกรณ์ได้สูงถึง 15 ชั้น โดยใช้ bus เพียงตัวเดียว ทำให้ประหยัด (และป้องกันเรื่องปวดหัวในการ set อุปกรณ์) ส่วนข้อดีอื่นๆ มีดังนี้

        ส่งผ่านข้อมูลด้วยวิธีแบบขนาน ครั้งละ 1 byte (8-bits)
        Hardware จะเป็นผู้จัดการเรื่อง Handshaking, timing และอื่นๆ
       อัตราการส่งผ่านข้อมูล 800 Kbytes/sec หรือมากกว่า ซึ่งนับว่าเร็วมากเมื่อเทียบกับ port แบบเก่า
       ใช้คำสั่ง ASCII ในการติดต่อ

และอื่นๆ อีกหลายประการ

ถึงจุดนี้คุณอาจสงสัยว่า ถ้าหากว่าเรามี GPIB Port ซึ่งมีประสิทธิภาพตามที่กล่าวมาแล้วและมีราคาถูกมากหรืออาจติดตั้งมาพร้อมกับคอมพิวเตอร์แล้ว ทำไมเราจะต้องซื้อ DAQ Card มาใช้อีก สิ่งที่เราต้องเข้าใจในอันดับแรกคือ GPIB Port ไม่สามารถทำให้คอมพิวเตอร์ติดต่อโดยตรงกับ Transducer ได้ GPIB Port จะเป็นการติดต่อระหว่างคอมพิวเตอร์กับอุปกรณ์ที่มี GPIB Port เท่านั้น ซึ่งอุปกรณ์ที่มี GPIB Port ติดตั้งอยู่ก็มักจะเป็นอุปกรณ์ประเภทเครื่องมือวัดเช่น Oscilloscope, Multimeter ซึ่งเป็น Actual Instrument อยู่แล้ว ดังนั้นการส่งผ่านข้อมูลจึงเป็นข้อมูลที่อ่านค่าได้เรียบร้อยแล้ว เพราะบนเครื่องมือเหล่านั้นจะมีระบบ Signal Processing อยู่ในตัวเองเรียบร้อยแล้ว
                อย่างไรก็ตามการที่ LabVIEW ติดต่อกับอุปกรณ์อื่นโดยผ่านทาง GPIB Port ได้ สามารถทำให้เราสามารถเพิ่มศักย์ภาพของเครื่องมือจริง และสามารถนำค่าที่ได้จากเครื่องมือไปใช้ควบคุมอุปกรณ์อื่นๆ ด้วยคอมพิวเตอร์ได้อีกด้วย

  Serial Communication

                ข้อดีของ serial communication ผ่านทาง Serial Port หรือพอร์ตอนุกรมก็คือราคาถูก และเครื่องมือมากมายได้ใช้อุปกรณ์นี้เป็นมาตรฐาน ลักษณะการทำงานของพอร์ตก็จะคล้ายกับ GPIB Port เพียงแต่ส่งผ่านข้อมูลแบบอนุกรม และมีอัตราการส่งข้อมูลที่ช้ากว่า ซึ่งพอร์ตนี้จะใช้มาตรฐาน RS-232 หรือ RS-485 และการติดต่อข้อมูลจะต้องทำระหว่างคอมพิวเตอร์กับอุปกรณ์ที่มีพอร์ทนี้อยู่ด้วย
                LabVIEW มี subVI ที่ใช้ในการติดต่อระหว่างอุปกรณ์ต่างๆ กับคอมพิวเตอร์ที่สามารถเรียกมาใช้งานได้ทันทีและการ Set Up เครื่องมือจะมีความยุ่งยากน้อยกว่าอุปกรณ์แบบอื่นๆ ข้อสำคัญเราต้องมีความเข้าใจกับ Baud Speed, Parity, Stop Bits และอื่นๆ เป็นต้น อย่างไรก็ตามมีแนวโน้มว่า GPIB Port จะเข้ามาเป็นมาตรฐานและเข้าแทนที่พอร์ตขนานได้ในอีกไม่นานนัก
               
                กล่าวโดยรวมแล้วการทำงานของ LabVIEW จะมีประสิทธิภาพสูงสุดหากว่าเราใช้เพื่อการติดต่อกับเครื่องมือวัดโดยตรง แม้ว่าในการเขียนโปรแกรมขั้นพื้นฐานเราจะไม่ได้กล่าวถึงการร่วมใช้กับอุปกรณ์อื่นๆ ก็ตาม การเขียน VI ในเบื้องต้น ผู้ใช้อาจมีความรู้สึกว่ายุ่งยาก ต้องจดจำ icon และระบบควบคุมต่างๆ มากมายแต่ก็จะเหมือนกับโปรแกรมหลายๆ แบบ หลังจากที่เราได้ทำความคุ้นเคยกับตัวโปรแกรมและการเขียนโปรแกรมพื้นฐานแล้ว เราจะพบว่าการนำ LabVIEW ไปใช้งานไม่ได้มีความยุ่งยากอย่างที่เราคิดเลย

No comments:

Post a Comment