Introduction to LabVIEW             17.03.2010

 

 

 

 

 

Hours/Week, Semester:

Optional course, 4 hours/week; 3rd semester Msc Mechatronics, SS 2010

Summary of the syllabus:

LabVIEW is a flow chart oriented programming language for measurement acquirement and processing including the visualisation of lab instruments. The course concentrates on basics of LabVIEW and its applications concerning data acquirement and communications by USB NI DAQ boards, Ethernet (Internet communication) etc., furthermore on a RIO-System with FPGA.

Examination: 

Written examination, 90 min

Prerequisites:

Knowledge of programming languages like C

Lecturer, ECTS credit allocation: 

Prof. W. Georgi,  5 credits

Teaching and learning methods: 

Lectures with integrated practicals on PC

Content:


Exercise Part 1
Exercise Part 2


Literature


LabVIEW examples



Participants SS 2010


Lessons Part 1

1         Introduction
1.1      Introducing example
1.2      General concepts of LabVIEW

2         Operation, Control Structures
2.1      Operation
2.2      Control structures

3         Data types, Libraries, Commentaries
3.1      Data types
3.2      Libraries
3.3      Commentaries on programs
3.4      Hierarchy windows

4         Property  and Invoke Nodes, Miscellaneous
4.1      Property Nodes, Invoke Nodes
4.2      Global Variables
4.3      Time functions
4.4      Options for starting and processing a VI

5         Fourier Analysis with LabVIEW
5.1      Fourier Analysis
5.2      Simulating sensor data for Fourier Transform
5.3      Graphical representation of data
5.4      Fourier Transform in LabVIEW

6         Working with the Fourier Transform
6.1      Non-periodic functions
6.2      Periodic functions, the Shannon Theorem
6.3      Hardware filtering
6.4      Windowing
6.5      Waveforms in LabVIEW

7         Some methods of data acquisition
7.1      File VI's
7.2      Programming the Serial Interface RS 232
7.3      Connections to Excel
7.4      Reports

8         Measuring Data Input/Output
8.1      DAQ Board
8.2      Driver, MAX, VI's for Data Acquisition
8.3      Creating Tasks
8.4      Physical and virtual channels
8.5      Programming data acquirement VI's
8.6      Analog Output, DI/DO
8.7      Programmatic Task Development
8.8      USB-Device NI USB-6251
8.9      RSE, NRSE

9         Internet, General  Considerations
9.1      Networks
9.2      Network Topologies and Protocols
9.3      Networks at the Fachhochschule
9.4      TCP/IP Protocol
9.5      OSI Model
9.6      Functions of the seven Layers in the OSI Model
9.7      Internet and Internet addresses
9.8      Computer Names
9.9      Repeater, Bridge, Hub, Switch, Router, Gateway, Firewall
9.10    Internet services

10       Internet Program Examples
10.1    Some IP Addresses
10.2    A "Ping" Program
10.3    Server and Client
10.4    Programming with DataSocket
10.5    Programming with "Low Level" Functions


Lessons Part 2

11      Overview on  Fourier-, Laplace-, Z-Transform
11.1    Preparations: Dirac- and Step function
11.2    Fourier Transform for non-periodic functions
11.3    Laplace Transform
11.4    Z-Transform

12      Applications of Laplace and Fourier Transforms
12.1    Linear Differential Equations
12.2    Transfer Function and Frequency Response
12.3    Comparison of different Fourier Methods
12.4    Scanning a function by Dirac or rectangular pulses


13      Z-Transform, FIR Filter
13.1    Analog filters, simple example for a low pass filter
13.2    Examples for digital low pass filters
13.3    Z-Transform, Transfer Function
13.4    FIR-Filter

14      IIR Filter
14.1    Meaning of FIR and IIR
14.2    Deriving a digital filter from the analogous counterpart
14.3    Flow diagram for IIR filters 
14.4    Digital Butterworth Filters
14.5    Development of Digital Filters

15      Examination of DAQ boards
15.1    Bus Interfaces
15.2    Analog Input (AI) scan frequency
15.3    Digital channels, Counter / Timer
15.4    Accessories
15.4    Signal Conditioning

16      Simulation of Control Systems
16.1    Reentrant Sub-VIs in LabVIEW
16.2    Application to a system of nonlinear differential equations
16.3    Position control of a single robot axis. Disturbance behaviour
16.4    Realisation of PID elements in LabVIEW
16.5    Numerically realised Transfer Functions

17      References and Data Types (not yet completed)
17.1    References
17.2    Type Descriptors
17.3    Flattened Data, Variant Data, Converting functions
17.4    A more sophisticated Example

18      Parallel Processing, Interrupt Handling, Events in LabVIEW
18.1    While Loop Example
18.2    Occurences
18.3    Notifications
18.4    Semaphores
18.5    Events

19      External Interfaces, e.g. via USB
19.1    CIN Nodes
19.2    CLF Nodes
19.3    Working with USB

20      Compact RIO-System and FPGA
20.1    Definition
20.2    Installation
20.3    Programming Examples
20.4    Projects, Xilinx VHDL Compiler
20.5    FPGA VI and calling VI on computers




Written by W. Georgi, last change: 14th of April 2010