<p><span>In this book, the authors focus on efficient ways to program instrumentation and automation systems using LabVIEW™, a system design platform and development environment commonly used for data acquisition, instrument control, and industrial automation on a variety of operating systems.</span
Graphical Programming Using LabVIEW. Fundamentals and advanced techniques
✍ Scribed by Julio César Rodríguez-Quiñonez, Oscar Real-Moreno
- Publisher
- The Institution of Engineering and Technology
- Year
- 2022
- Tongue
- English
- Leaves
- 344
- Series
- IET COMPUTING SERIES, 46
- Category
- Library
No coin nor oath required. For personal study only.
✦ Table of Contents
Cover
Contents
About the authors
Introduction
Part I. Fundamentals
1 Introduction to LabVIEWTM
1.1 What is LabVIEWTM?
1.1.1 LabVIEWTM parallelism
1.2 Project explorer
1.2.1 Folders
1.3 Virtual instrument
1.3.1 Front panel
1.3.2 Block diagram
1.4 Data flow and data types
1.4.1 Data flow
Data flow rules
1.4.2 Data types
1.5 Elementary functions, controls, and indicators
1.5.1 Elementary controls and indicators
1.5.2 Elementary functions
1.6 Examples
1.6.1 Solved examples
1.6.2 Examples to solve
2 Debugging tools
2.1 Debugging tools
2.1.1 Highlight execution
2.1.2 Execution by steps
2.1.3 Breakpoints
2.1.4 Probes
2.2 Debugging examples
2.2.1 Quadratic equation calculator
2.2.2 Square pyramid volume calculator
2.2.3 X in relation to Y
3 Structures
3.1 For loops
3.2 While loops
3.3 Cases
3.4 Sequences
3.5 Timing
3.6 Feedback in loops
3.7 Examples of VIs with structures
4 SubVIs
4.1 Creating a subVI
4.1.1 SubVIs from existing code
4.1.2 SubVIs from VI
4.2 Connector pane
4.3 Custom icons
4.4 SubVI documentation
4.5 SubVI creation examples
4.5.1 Average subVI
4.5.2 Approved SubVI
4.5.3 Arrange message subVI
5 Structures – LabVIEWTM features
5.1 Arrays and loops
5.1.1 Functions and operations with arrays
5.1.2 Loop features
5.2 Data between parallel loops
5.2.1 Local variables
5.2.2 Race conditions
5.3 Formula nodes
6 Organizing front panel and block diagram
6.1 Clusters
6.2 Control type files
6.2.1 Type definition and strict type definition
6.3 Examples of clusters and custom controls
6.3.1 Cluster implementation
6.3.2 Custom control creation
6.3.3 Custom cluster indicator
7 Using software resources
7.1 Accessing resources
7.1.1 Using High-level File I/O VIs
7.1.2 Using Low-Level File I/O functions
7.2 Formatting headers and working with multiple signals
7.3 Read and look information from a spreadsheet with headers
8 Using hardware resources
8.1 NI MAXTM
8.2 Data acquisition systems
8.3 VISA libraries and instrument control
8.3.1 Control by VISA libraries
8.3.2 Control by instrument drivers
8.4 Arduino drivers
8.5 Examples of VIs using hardware
8.5.1 Examples description
8.5.2 Examples with DAQs
8.5.3 Examples with Arduino
9 Implementing test machines with a basic architecture
9.1 Code scalability and design patterns
9.2 State transition diagram
9.3 State machine design pattern
9.4 State machine design examples
9.5 State machine recommendations
Part II. Advanced techniques
10 Controlling the user interface
10.1 Property nodes
10.2 Invoke nodes
10.3 Control references
10.4 User interface control example
11 Error handling
11.1 Errors and warnings
11.2 Custom errors
11.3 Error messages
11.4 Error handling examples
12 Responding to the user interactions
12.1 Event structure
12.2 Event-driven programming
12.3 Event-driven state machine
12.4 Recommendations for event-driven state machines
13 The ATM review project
13.1 Creating a project with a VI and an auto-populating folder
13.1.1 Creating the project
13.1.2 Creating a VI
13.1.3 Creating folder (auto-populating)
13.2 Creating user interface
13.2.1 Creating user interface controls
13.2.2 Adjusting interface
13.3 Creating event state machine
13.3.1 Creating the state machine
13.4 Creating property nodes and arrays
13.4.1 Creating property nodes
13.5 Reading and writing files
13.5.1 Creating user files
Accessing and modifying the cluster account information
13.5.2 Creating the event Check Balance
13.5.3 Programming PIN change
13.6 File save and rewrite
13.6.1 Creating events
13.6.2 Creating Save File case
13.7 Last adjustments and VI documentation
13.7.1 Modify text file and case parameters
13.7.2 VI documentation
14 Communication between loops at different rates
14.1 Asynchronous communication
14.1.1 Queues
14.1.2 Producer–consumer design pattern
14.2 Example of asynchronous communication with producer–consumer design pattern
14.3 Event-driven producer–consumer design pattern
14.4 Recommendations
15 Preventing race conditions
15.1 What are race conditions?
15.2 Preventing race conditions
15.3 Functional global variables as prevention of race conditions
15.4 Race condition prevention examples
16 Advanced use of software resources
16.1 Types of files
16.1.1 ASCII files
16.1.2 Binary files
16.1.3 TDMS files
16.2 Working with relative paths
16.3 Binary files
16.3.1 Writing two-channels binary files
16.3.2 Reading two-channels binary files
16.4 Working with files and folders
16.5 Recommendations to work with files and folders
17 Real-time programming
17.1 CompactRIOTM for industrial systems
17.1.1 Installing software on CompactRIOTM system
17.1.2 Creating a real-time project on the CompactRIOTM
17.1.3 Real-time programming on CompactRIOTM
17.1.4 FPGA programming on CompactRIOTM
17.2 An application example with CompactRIOTM
References
Index
Back Cover
📜 SIMILAR VOLUMES
The graphical nature of LabVIEW makes it ideal for test andmeasurement applications and results in significant productivity improvements over conventional programming languages. However, comprehensive treatments of the more advanced topics have been scattered and difficult to find-until now.LabVIEW
A text offering in-depth coverage of the test and measurement application software, LabVIEW, with discussion of such topics as object-oriented technologies and instrument drivers. The CD-ROM contains helpful materials for use with the text. System requirements: Windows 95+, 12MB hard disk space, 16
Whether seeking deeper knowledge of LabVIEW<sup>®</sup>’s capabilities or striving to build enhanced VIs, professionals know they will find everything they need in <b>LabVIEW: Advanced Programming Techniques . Updated to reflect the functionalities and changes made to LabVIEW Version 8.0, this secon