Skip to content

LabVIEW Graphical Programming

Best in textbook rentals since 2012!

ISBN-10: 0071451463

ISBN-13: 9780071451468

Edition: 4th 2007 (Revised)

Authors: Gary W. Johnson, Richard Jennings

List price: $86.00
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

LabVIEW is an award-winning programming language that allows engineers to create "virtual" instruments on their desktop. This new edition details the powerful features of LabVIEW 8.0. Written in a highly accessible and readable style, LabVIEW Graphical Programming illustrates basic LabVIEW programming techniques, building up to advanced programming concepts. New to this edition is study material for the CLAD and CLD exams.
Customers also bought

Book details

List price: $86.00
Edition: 4th
Copyright year: 2007
Publisher: McGraw-Hill Education
Publication date: 8/7/2006
Binding: Paperback
Pages: 752
Size: 7.00" wide x 9.25" long x 1.25" tall
Weight: 2.288
Language: English

Gary W. Johnson (Livermore, CA) is a Electronics Engineer at the Lawrence Livermore National Laboratory. He is known throughout the LabVIEW community as a programming guru extraordinaire, and is the author of the previous two editions of LabVIEW Graphical Programming and the editor of the LabVIEW Power Programming.

Preface
Acknowledgments
Roots
LabVIEW and Automation
Virtual instruments: LabVIEW's foundation
Why use LabVIEW?
The Origin of LabVIEW
Introduction
A vision emerges
All the world's an instrument
A hard-core UNIX guy won over by the Macintosh
Putting it all together with pictures
Favoring the underdog platform for system design
Ramping up development
Stretching the limits of tools and machine
Facing reality on estimated development times
Shipping the first version
Apple catches up with the potential offered by LabVIEW
LabVIEW 2: A first-rate instrument control product becomes a world-class programming system
The port to Windows and Sun
LabVIEW 3
LabVIEW 4
LabVIEW branches to BridgeVIEW
LabVIEW 5
The LabVIEW RT branch
LabVIEW 6
LabVIEW 7
LabVIEW 8
Crystal Ball Department
LabVIEW influences other software products
LabVIEW Handles Big Jobs
Getting Started
About the Diagrams in This Book
Sequencing and Data Flow
LabVIEW under the Hood
The parts of a VI
How VIs are compiled
Multitasking, multithreaded LabVIEW
The LabVIEW Environment
Front panel
Controls
Property nodes
Block diagram
SubVIs
Icons
Polymorphic VIs
Data
Clusters
Typedefs
Arrays
Debugging
See what the subVIs are up to
Peeking at data
One step at a time
Execution highlighting
Setting breakpoints
Suspend when called
Calling Other Code
CINs
Dynamic link libraries
Programming by Plagiarizing
Bibliography
Controlling Program Flow
Sequences
Data Dependency
Adding Common Threads
Looping
While LOOPS
For Loops
Shift registers
Uninitialized shift registers
Globals
Global and local variables
Built-in global variables-and their hazards
Local variables
Events
Notify and Filter events
Mechanical actions
Dynamic events
Design Patterns
Initialize and then loop
Independent parallel loops
Client-server
Client-server (with autonomous VIs)
State machines
Queued message handler
Event-driven applications
Bibliography
LabVIEW Data Types
Numeric Types
Strings
Building strings
Parsing strings
Dealing with unprintables
Spreadsheets, strings, and arrays
Arrays
Initializing arrays
Array memory usage and performance
Clusters
Waveforms
Data Type Conversions
Conversion and coercion
Intricate conversions and type casting
Flatten To String (... Do what?)
Enumerated types (enums)
Get Carried Away Department
Timing
Where Do Little Timers Come From?
Using the Built-in Timing Functions
Intervals
Timed structures
Timing sources
Execution and priority
Timing guidelines
Sending timing data to other applications
High-resolution and high-accuracy timing
Bibliography
Synchronization
Polling
Events
Occurrences
Notifiers
Queues
Semaphores
Me and You, Rendezvous
Files
Accessing Files
File Types
Writing Text Files
Reading Text Files
Formatting to Text Files
Binary Files
Writing binary files
Reading binary files
Writing Datalog Files
Reading Datalog Files
Datalog file utilities
Building an Application
Define the Problem
Analyze the user's needs
Gather specifications
Draw a block diagram
Specify the I/O Hardware
Prototype the User Interface
Panel possibilities
First Design and Then Write Your Program
Ask a Wizard
Top-down or bottom-up?
Modularity
Choose an architecture: Design patterns
The VI hierarchy as a design tool
Sketching program structure
Pseudocoding
Ranges, coercion, and default values
Handling errors
Putting it all together
Testing and Debugging Your Program
Tracing execution
Checking performance
Final Touches
VBL epilogue
Studying for the LabVIEW Certification Exams
CLAD
CLD
Traffic light controller
Car wash controller
Security system
Bibliography
Documentation
VI Descriptions
Control Descriptions
Custom Online Help
Documenting the Diagram
VI History
Other Ways to Document
Printing LabVIEW Panels and Diagrams
Putting LabVIEW screen images into other documents
Writing Formal Documents
Document outline
Connector pane picture
VI description
Terminal descriptions
Programming examples
Distributing Documents
Instrument Driver Basics
Finding Instrument Drivers
Driver Basics
Communication standards
Learn about Your Instrument
Determine Which Functions to Program
Establish Communications
Hardware and wiring
Protocols and basic message passing
Bibliography
Instrument Driver Development Techniques
Plug-and-Play Instrument Drivers
General Driver Architectural Concepts
Error I/O flow control
Modularity by grouping of functions
Project organization
Initialization
Configuration
Action and status
Data
Utility
Close
Documentation
Bibliography
Inputs and Outputs
Origins of Signals
Transducers and sensors
Actuators
Categories of signals
Connections
Grounding and shielding
Why use amplifiers or other signal conditioning?
Choosing the right I/O subsystem
Network everything!
Bibliography
Sampling Signals
Sampling Theorem
Filtering and Averaging
About ADCs, DACs, and Multiplexers
Digital-to-analog converters
Digital codes
Triggering and Timing
A Little Noise Can Be a Good Thing
Throughput
Bibliography
Writing a Data Acquisition Program
Data Analysis and Storage
Postrun analysis
Real-time analysis and display
Sampling and Throughput
Signal bandwidth
Oversampling and digital filtering
Timing techniques
Configuration Management
What to configure
Configuration editors
Configuration compilers
Saving and recalling configurations
A Low-Speed Data Acquisition Example
Medium-Speed Acquisition and Processing
Bibliography
LabVIEW RT
Real Time Does Not Mean Real Fast
RT Hardware
Designing Software to Meet Real-Time Requirements
Measuring performance
Shared resources
Multithreading and multitasking
Organizing VIs for best real-time performance
Context switching adds overhead
Scheduling
Timed structures
Communications
Bibliography
LabVIEW FPGA
What Is an FPGA?
LabVIEW for FPGAs
RIO hardware platforms
Plug-in cards
CompactRIO
Timing and synchronization
Compact Vision
Application Development
Compiling
Debugging
Synchronous execution and the enable chain
Clocked execution and the single-cycle Timed Loop
Parallelism
Pipelining
Conclusions
Bibliography
LabVIEW Embedded
Introduction
History
LabVIEW Embedded Development Module
The technology: What's happening
Running LabVIEW Embedded on a new target
Porting the LabVIEW runtime library
Incorporating the C toolchain
The Embedded Project Manager
LEP plug-in VIs
Target_OnSelect
Other plug-in VIs
Incorporating I/O srivers
LabVIEW Embedded programming best practices
Interrupt driven programming
LabVIEW Embedded targets
Process Control Applications
Process Control Basics
Industrial standards
Control = manipulating outputs
Process signals
Control system architectures
Working with Smart Controllers
Single-loop controllers (SLCs)
Other smart I/O subsystems
Man-Machine Interfaces
Display hierarchy
Other interesting display techniques
Handling all those front panel items
Data Distribution
Input scanners as servers
Handling output data
Display VIs as clients
Using network connections
Real-time process control databases
Simulation for validation
Sequential Control
Interlocking with logic and tables
State machines
Initialization problems
GrafcetVIEW-a graphical process control package
Continuous Control
Designing a control strategy
Trending
Real-time trends
Historical trends
Statistical process control (SPC)
Alarms
Using an alarm handler
Techniques for operator notification
Bibliography
Physics Applications
Special Hardware
Signal conditioning
CAMAC
Other I/O hardware
Field and Plasma Diagnostics
Step-and-measure experiments
Plasma potential experiments
Handling Fast Pulses
Transient digitizers
Digital storage oscilloscopes (DSOs)
Timing and triggering
Capturing many pulses
Recovering signals from synchronous experiments
Handling Huge Data Sets
Reducing the amount of data
Optimizing VIs for memory usage
Bibliography
Data Visualization, Imaging, and Sound
Graphing
Displaying waveform and cartesian data
Bivariate data
Multivariate data
3D Graphs
Intensity Chart
Image Acquisition and Processing
System requirements for imaging
Using IMAQ Vision
IMAQ components
Sound I/O
DAQ for sound I/O
Sound I/O functions
Sound input
Sound output
Sound files
Bibliography
Index