# An Effective Concept for Teaching LabVIEW Programming to Engineering Students
## 3 Teaching Methodology
### Introduction to LabVIEW Course
This lecture presents the concept of virtual instrumentation and its components, among which software is essential. The LabVIEW graphical programming environment is presented with a combination of slides and directly in the program. The structure of the virtual instrument and dataflow programming model are explained and demonstrated. After these introductory lectures in the classroom, the course continues for the next four weeks in the laboratory. The laboratory work is organized in groups of ten students, guided by a teacher and an assistant. Two groups of students are in the laboratory at the same time. The laboratory work of the Introduction to LabVIEW course is divided into four lessons, each covering a set of topics, as shown in Table 1. The teacher first explains the topic and then the students complete a related practical activity. The students work through the exercises using a printed manual, which is also available to them electronically via the LMS. This allows them to repeat the exercises at home or look at practical software solutions. Beside the assignment's text, the manual provides a front panel and a block diagram with guided instructions for each exercise. In addition to these teacher-led exercises, the students must complete homework at the end of each session. The homework definition does not include block diagrams, so the students must find their own program solutions. The exercises complement each other and are designed as a small project, resulting in a temperature control application. In the first week, the students make a simple VI to convert the temperature scale from Celsius to Fahrenheit and create an icon and connector pane. This VI is then used as a subVI in a thermometer VI, where the voltage measurement of the temperature sensor is simulated. Simulating the measurements in the initial part of the exercises avoids hardware, which allows the students to repeat the exercises at home and makes the simulated temperatures more dynamic. They also make an icon and connector pane for the thermometer and then document it. This gives the students an early introduction to modularity and documentation, which are the basis for creating clear and understandable block diagrams. In the second week, the students are introduced to programming structures. They use the thermometer from the first part of the exercises to create a VI for displaying the temperature history on a waveform chart. During this activity, the students learn how to use while loop timing functions to control the loop execution rate and chart properties. This is followed by explaining the shift registers and an example of their use by extending the previous VI with an additional plot on a waveform chart with the average of the last three temperature values. In the last part of this exercise section, case  
Figure 1: Custom-developed learning material in the Slovene language. structures are explained to the students and then they implement the on-off temperature control. In the third week, the students learn about data arrays, clusters, and strings. They perform specific exercises for each topic to learn how to use common functions for working with data and display data arrays in a graph. Afterward, working with files is explained. The students upgrade the VI for temperature control by saving the time and measured temperatures in a text format suitable for import into a spreadsheet. After these three weeks and eight hours of laboratory work, the students learn the basics of LabVIEW programming and build a VI for temperature control, the block diagram of which is shown in Figure 2.  
The laboratory work in the fourth (last) week takes four hours and is dedicated to data acquisition with the SimpleDAQ device. SimpleDAQ is an in-house developed microcontroller-based data acquisition device with preloaded custom-developed firmware and a LabVIEW instrument driver [51].