©2008 Physics Department
Oregon State University

Syllabus for Spring 2008

last update 3 June 2008
Course Information
Other resources

PH 415: Computer Interfacing and Instrumentation

Week
Date
Activities Topics
1
Tue
Apr
1
Test drive LabVIEW. Open LabVIEW and use Find Examples to run these VIs:
  • Moonlanding
  • Power Spectrum Measurement
  • Temperature System Demo

Labview Introduction

  • Read Introduce and Connect sections in Online tutorial
  • Watch NI demos on front panel and block diagram
  • Build VI for temperature control (TempControl.vi) - In Apply section of Online tutorial

CNX Online tutorial: Introduction

  • LabVIEW (Read)
  • LabVIEW Environment (Read)
  • Front Panel (Read)
  • Block Diagram (Read)
  • Acquiring a Signal VI (Build AcqSignal.vi) (same as Ch. 1 in GSLV, Ch2. in LV8)
  • Virtual Instrument (VI)
  • Front Panel
  • Block Diagram
  • Palettes
    • Tools
    • Controls
    • Functions
  • Controls (Inputs)
  • Indicators (Outputs)
  • Wiring
  • While Loop
  • Loop timing
Thu
Apr
3

CNX Online tutorial: Introduction

  • Dataflow Programming (Read)
  • Express Filter VI (Do)
  • LabVIEW Documentation Resources (Read)
  • Reduce Samples VI (Build ReduceSamples.vi) (same as Ch. 2 in GSLV)

Build VIs to study binary numbers (BinaryCounter.vi, BinaryLooper.vi)

CNX Online tutorial: Data Acquisition and Waveforms

  • Overview and Configuration of DAQ Devices (Read)
  • Measurement & Automation Explorer (MAX) (Do)
  • Use MAX to confirm board I/O (A&D)
  • Express VIs
  • Context Help
  • Data types
  • Arrays
  • Data conversion

  • Data acquisition
  • Digital I/O
  • Analog I/O
2
Tue
Apr
8

CNX Online tutorial: Data Acquisition and Waveforms

  • Use MAX to determine/verify board specifications
    • Analog Input
      • Resolution
      • Scale
      • Speed
    • Analog Output
      • Resolution
      • Scale
      • Speed
    • Digital Input & Output
      • Bits
      • Signal Levels
  • Data Acquisition in LabVIEW (Read)

Digital I/O: Output

  • Build VIs to output byte to control LED array
  • Modify Binary Looper VI to control LEDs
  • Use DAQ Assistant for I/O board control
  • Use DAQmx for I/O board control
    • See Write Dig Port.vi example (Build DigitalLEDmx.vi)
  • MAX
  • Resolution (bits)
  • Scale (gain)
  • Speed
  • TTL signal levels
  • DAQ Assistant
  • DAQmx
Thu
Apr
10
Digital I/O: Input
  • Build VI to measure digital input
    • 1 bit from TTL signal (DigitalBitIn.vi)
    • TTL waveform
  • Build VI for digital input and output (DigitalInOut.vi)
    • 1 bit test
    • Control external digital logic
      • AND gate
      • Truth table
    • For loop through truth table
    • Measure results and compare with LabVIEW logic
    • Case Structure: AND, NAND, OR, XOR
  • Digital Waveform
  • Waveform Array
  • Index Waveform Array
  • For Loop
  • Case Structure
3
Tue
Apr
15
Analog Input
  • Temperature sensor
    • Build VIs for temperture sensor input
    • 1 point read (TempIn1pt.vi)
      • Display single value (C, K, F)
      • Meter display (thermometer)
      • Build array and display on chart
      • Build waveform and display
    • N point read (TempInNpt.vi)
      • Waveform display
  • Math calculations
  • Task timing
  • Graph vs. chart
  • Array vs. waveform
  • Feedback node
  • DAQ Assistant->Code
Thu
Apr
17
Analog Input
  • Function generator
    • Build VI for function generator input (FncGenIn.vi)
    • Waveform display
    • Two inputs (signal and synch)
    • Trigger data collection
    • Determine speed and resolution limits
  • Digital trigger in
4
Tue
Apr
22
Analog Output
  • Build VIs for Function generator output
    • 1 point in while loop (FncGenOut1pt.vi)
    • N points in while loop (FncGenOutNpt.vi)
    • Knobs to simulate function generator instrument
    • Determine speed and resolution limits
  • Software timing
  • Hardware timing
Thu
Apr
24
Analog Input and Output: Feedback
  • Temperature sensor input & heater output
  • Build VI for Thermostat control (TempOnOff.vi)
  • Record system response
  • Feedback control
5
Tue
Apr
29
Feedback
  • Temperature sensor input & heater output
  • Build VI for PID control (TempPID.vi)
  • Vary gain
  • Record system response
  • PID Feedback
    • P: Proportional
    • I: Integral
    • D: Differential
Thu
May
1
Feedback
  • Finish
6
Tue
May
6
Instrument Control via USB interface (GPIB)
  • MAX
    • TDS1002B Digital Oscilloscope (Manual)
    • AFG3021B Arbitrary Function Generator (Manual)
    • Configure
    • Set and Query Instrument Parameters
  • Instrument I/O Assistant
    • CNX Online tutorial: Instrument I/O Assistant Exercise
    • Build MyIOAsst.vi
    • Set and Query Instrument Parameters
  • VISA
    • CNX Online tutorial: Programming with VISA
    • Build MyVISAWrite&Read.vi
    • Set and Query Instrument Parameters
  • Instrument Commands
  • VISA
  • Instrument Driver
Thu
May
8
Instrument Control
  • AFG3021B Arbitrary Function Generator
    • Output arbitrary waveform (ArbWaveOut.vi)
    • Determine AFG output resolution
  • TDS1002B Digital Oscilloscope
    • Record waveform (ScopeDataIn.vi)
    • Determine oscilloscope input resolution
7
Tue
May
13
LRC Experiment
  • Series LRC circuit (see PH421)
  • Build VI for Sinusoidal input (LRCsine.vi)
    • Vary sine frequency from Function Generator
    • Record circuit response with Oscilloscope
    • Plot response function (amplitude and phase)
    • Save data to Excel
  • File I/O
  • Timing
  • Loop indexing
  • Instrument VI Tree
Thu
May
15
LRC Experiment
  • Build VI for Impulse input (LRCimpulse.vi)
    • Vary impulse time
    • Fourier transform output
    • Plot response function
    • Save data to Excel
    • Compare two methods for measureing response function
  • FFT
8
Tue
May
20
LRC Experiment
Thu
May
22
Spectral Analysis
  • Build VI for Spectral Measurement (Spectrum.vi)
  • Noise Generator + Sine Wave (Op amp adder)
  • FFT
  • Power Spectrum, Units
  • Aliasing
  • Parseval's Theorem: Power same in Time and Freq domains
  • Windowing
9
Tue
May
27
Spectral Analysis
Thu
May
29
Signal Averaging
  • Build VI for Time Domain Averaging (Taverage.vi)
  • AO Sine wave
  • Triggered AI data read
  • Signal-to-Noise Ratio (SNR) with SINAD analyzer vi
10
Tue
June
3
Signal Averaging
Thu
June
5
Signal Averaging


If you have comments or suggestions, email Prof. McIntyre at mcintyre@ucs.orst.edu

OSU Disclaimer

NSF Disclaimer