LabVIEW là một ngôn ngữ lập trình đồ họa đã được chấp nhận rộng rãi trong toàn ngành công nghiệp, học viện và phòng nghiên cứu như là tiêu chuẩn cho việc thu thập dữ liệu và phần mềm điều khiển thiết bị. LabVIEW là một hệ thống phần mềm phân tích và thiết bị mạnh mẽ và linh hoạt đa nền tảng — bạn có thể chạy LabVIEW trên Windows, Mac OS X và Linux. Bạn cũng có thể chạy LabVIEW trên PDA (PalmOS, PocketPC hoặc thiết bị Windows CE), trên nền tảng thời gian thực và thậm chí nhúng các chương trình Lab VIEW vào chip FPGA và bộ vi xử lý 32 bit. Tạo chương trình LabVIEW của riêng bạn, hoặc công cụ ảo (VI), rất đơn giản. Giao diện người dùng trực quan của LabVIEW làm cho việc viết và sử dụng các chương trình trở nên thú vị và vui nhộn
LabVIEW for Everyone Third Edition This page intentionally left blank LabVIEW for Everyone: Graphical Programming Made Easy and Fun Third Edition ▲ Jeffrey Travis ▲ Jim Kring Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Cape Town • Sydney • Tokyo • Singapore • Mexico City Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals The authors and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein The publisher offers excellent discounts on this book when ordered in quantity for bulk purchases or special sales, which may include electronic versions and/or custom covers and content particular to your business, training goals, marketing focus, and branding interests For more information, please contact: U.S Corporate and Government Sales (800) 382-3419 corpsales@pearsontechgroup.com For sales outside the United States, please contact: InternationalSales international@pearsoned.com This Book Is Safari Enabled The Safari® Enabled icon on the cover of your favorite technology book means the book is available through Safari Bookshelf When you buy this book, you get free access to the online edition for 45 days Safari Bookshelf is an electronic reference library that lets you easily search thousands of technical books, find code samples, download chapters, and access technical information whenever and wherever you need it To gain 45-day Safari Enabled access to this book: • Go to http://www.prenhallprofessional.com/safarienabled • Complete the brief registration form • Enter the coupon code PJCR-YYBD-UI11-MYDF-P7TI If you have difficulty registering on Safari Bookshelf or accessing the online edition, please e-mail customerservice@safaribooksonline.com Visit us on the Web: www.prenhallprofessional.com Library of Congress Cataloging-in-Publication Data Travis, Jeffrey LabVIEW for everyone : graphical programming made easy and fun / Jeffrey Travis, James Kring — 3rd ed p cm ISBN 0-13-185672-3 (pbk : alk paper) Scientific apparatus and instruments—Computer simulation LabVIEW I Kring, James II Title Q183.A1T73 2006 006—dc22 2006012875 Copyright © 2007 Pearson Education, Inc All rights reserved Printed in the United States of America This publication is protected by copyright, and permission must be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise For information regarding permissions, write to: Pearson Education, Inc Rights and Contracts Department One Lake Street Upper Saddle River, NJ 07458 Fax: (201) 236-3290 ISBN 0-13-185672-3 Text printed in the United States on recycled paper at R R Donnelley in Crawfordsville, Indiana First printing, August 2006 Jeffrey would like to dedicate this book to his wife Stephanie, and his three children Maeve, Aidan, and Rachel, for their love and support Jim would like to dedicate this book to his wife Beth, his parents Jim and Diane, Rupert Perera, and Larry Nordell for the immeasurable investments each of them has made in his life This page intentionally left blank Contents About the Authors xxix Preface xxxi Acknowledgments ▼1 What in the World Is LabVIEW? xli What Exactly Is LabVIEW, and What Can It Do for Me? Dataflow and the Graphical Programming Language How Does LabVIEW Work? Demonstration Examples 10 NI Example Finder 10 vii viii LabVIEW for Everyone Examples on the CD 11 Activity 1-1: Temperature System Demo 11 Activity 1-2: Frequency Response Example 16 Wrap It Up! 18 Additional Activities 18 Activity 1-3: More Neat Examples 18 ▼2 Virtual Instrumentation: Hooking Your Computer Up to the Real World 21 Using LabVIEW in the Real World 21 The Evolution of LabVIEW 22 What Is Data Acquisition? 24 What Is GPIB? 26 Communication Using the Serial Port 28 Real-World Applications: Why We Analyze 29 A Little Bit About PXI and VXI 32 Connectivity 34 Internet Connectivity 34 Networking 34 ActiveX and NET 36 Shared Libraries, DLLs, and CINs 36 Other Communication Mechanisms 37 LabVIEW Add-on Toolkits 37 LabVIEW Real-Time, FPGA, PDA, and Embedded 38 Wrap It Up! 39 ix Contents ▼3 The LabVIEW Environment 41 Front Panels 41 Controls and Indicators 41 Block Diagrams 43 Nodes 45 Wires 45 Dataflow Programming—Going with the Flow 46 LabVIEW Projects 47 Project Explorer Window 47 Project Explorer Toolbars 48 Adding Items to Your Project 48 Project Folders 50 Removing Items from a Project 50 Building Applications, Installers, DLLs, Source Distributions, and Zip Files 51 More Project Features 52 SubVIs, the Icon, and the Connector 53 Activity 3-1: Getting Started 54 Alignment Grid 63 Pull-Down Menus 64 Floating Palettes 69 Controls and Functions Palettes 69 Customizing the Palettes 77 Tools Palette 78 Automatic Tool Selection 80 Index panels, remote panels, 807-809 parallel port, accessing in LabVIEW, 879 parsers, XML, 812-813 parsing strings, 399-400 parsing functions, 391 Match Pattern, 393-395, 397 Match Regular Expression, 397-398 Regular Expressions, 397 Scan From String, 392-393 String Subset, 391-392 passing data to and from subVIs with clusters, 273-274 errors through loops with shift registers, 296 Password Display, strings, 381 paths, xxxviii Controls palette, 129 PCI (Peripheral Component Interconnect), 420 PCI eXtensions for Instrumentation (PXI), 420 PDA (Personal Digital Assistant), 38 Peripheral Component Interconnect (PCI), 420 Picture control, 667-669 picture ring, 859-860 pinning down floating palettes, 76 pipes, 833-834 Close Pipe, 835 command pipes, 833 named pipes, 833 Open Pipe, 834 Open System Command Pipe, 834 Read From Pipe, 835 Write To Pipe, 835 placing items on the front panel (creating VIs), 101-102 platform independence, 884-885 Plot Legend, 332-334 plotting circles with XY graphs, 334-336 Polymorphic VI Selector, 674 973 polymorphic VIs, 673-675 polymorphism, 262-264 activity, 264-266 Add function, 264 preferences, configuring, 143 Preview Queue Element, 626 Print Report, 847 printing, 177 reports, 847 probes custom probes, 785-789 debugging techniques, 159-160 Profile Performance and Memory tool, 884 programming languages, G, 3-5 programming with style, 885 dataflow, 887-888 documenting as you go, 886-887 VIs, modularizing and testing, 886 Project Explorer toolbars, 48 Project Explorer window, 47-48 project folders, 50 project libraries, 919 Project menu, 67 propagating errors, error dataflow, 286-287 properties base properties, 574 Class Name, 768 History Data, 582 Key Focus, 738 reading, 574 Value, 768, 773 Value (Signaling), 774 Vertical Scrollbar Visible, 768 VI properties, 728 Documentation, 728 Editor Options, 729 Execution, 732-733 General, 728 Memory Usage, 728 Print options, 732 Revision History, 728 Security, 729 974 Window Appearance options, 730-731 Window Size, 732 Visible property, 574 writing, 574 Properties pop-up menu, 88 Property Nodes charts, 581-582 VI Server, 746 PropertyNode Example.vi, 574-576 public VIs, 919 publishing to HTML LabVIEW web server, 801-802 images and animations with LabVIEW web server, 802-803 interactive VIs with LabVIEW web server, 803-806 pull-down menus, 64 pulse train signal, 424 purchasing LabVIEW, xl PXI (PCI eXtensions for Instrumentation), 420 Q Queued Message Handler, creating with queues, 626 queued message handlers, 611 queues, 621-623, 627-628 creating and destroying, 622-624 Queued Message Handler, 626 R race condition, 157 rate signal, 425 reacting to errors in subVIs, 287 Error Case Structure, 288 Merge Errors, 289 Read From Measurement File, 287 Read From Pipe, 835 LabVIEW for Everyone read mode, local variables, 558-559 Read Shared Variable, 817 reading binary files, 412-415, 682-686 data value changes, Event Structure, 597-601 digital inputs, 480-483 key values, configuration files, 689 measurement files, 401-403 shared variables, 820-821 spreadsheet files, 403-404, 407-408 text files, 408-411, 681-682 by page, 718-719 Real-Time System Integration (RTSI), 420 Recommended Standard #232, 524 recycled reentrancy, reviewing, 735 reference ground, 437 referenced single-ended (RSE) measurement system, 441-442 references, static VI references, 759-760 Regular Expressions, 397 relative time calculations, 354-355 relinking to subVIs, 172 remote access to VI Server, enabling, 743-744 remote panel licenses, 808 remote panels, 807-809 Remove Key.vi, 693 Remove Section.vi, 694 removing dimensions, 252 items from projects, 50 rendezvous destroying, 638 named rendezvous, 640 reordering palette categories, 70 Replace, pop-up menus, 87 replacing cluster elements, 274 Report Express VI, 843-844 report generation, 842-843 advanced report generation, 845-846 Easy Text Report, 844-845 Report Express VI, 843-844 Index Report Generation palette, 843 Report Layout palette, 850 reports adding content, 848 closing, 846 creating, 846 printing, 847 saving, 846 styles, 847 resizing array element objects, 247 array elements, 247 array shells, 248 objects, 855-856 rendezvous, 639 resource strings, VISA, 531-532 Revert, 150 round robin scanning, 507 RSE (reference single-ended) measurement systems, 441-442 RTS (Ready-to-Send), 528 RTSI (Real-Time System Integration), 420 RUN, While Loops, 560 run mode, Toolbar, 82 Run Toolbar, 12 RxD (Receive), 528 S sampling, 444-445 sampling rates, 444 acquiring data from different channels at different sampling rates, 875-876 save and load dialogs, saving and loading VIs, 153 Save Report to File, 846 saving reports, 846 VIs, 147-148 filter rings, 153 LLB Manager, 151-152 975 LLBs, 150-151 Revert, 150 save and load dialogs, 153 save options, 148-149 scalars, 245 scales, 458 graphs, 328 Scan From String, 392-393 scanning, round robin scanning, 507 SCC (Signal Conditioning Carriers), 420 schemas, XML, 812 scope chart mode, 301 SCPI (Standard Commands for Programmable Instrumentation), 524, 530 screen resolution, 885 scrollbars array scrollbars, 248 strings, 383 SCXI (Signal Conditioning eXtensions for Instrumentation) systems, 421, 434 search result items, replacing, 792 Select a VI button, 164 selecting wires, 135 semaphored data stores, OOP, 912-913 semaphores acquiring, 635 destroying, 634 releaseing, 635 Send Notification, 630 sensor arrays, 432-433 Sequence Locals, Stacked Sequence Structures and, 217-219 serial functions, VISA, 545-546 Serial palette, 545-546 serial ports communication, 28-29 RS-232, 29 Set Report Font, 847 Set Report Orientation, 847 SG (Signal Ground), 528 shape signals, 427-428 shared libraries, connectivity, 36-37 976 Shared Variable Properties dialog, 814 Shared Variable structure, 815-816 shared variables, 813 accessing with DataSocket, 819 creating, 813-814 data binding, 818-819 reading, 820-821 synchronization capabilities, 817 URLs, 820 writing, 821-823 shift registers message queue shift register, 620 passing errors through loops, 296 state variable shift register, 612 showing digital displays, waveform charts, 306 optional planes in XY graphs, 325-326 palette categories, 70 signal classification, 423-424 signal conditioning, 434, 436 Signal Conditioning Carriers (SCC), 420 Signal Conditioning eXtensions for Instrumentation (SCXI), 421, 434 signals, 423 aliasing, 445 analog signals frequency signals, 429 level signals, 426-427 shape signals, 427-428 anti-aliasing filters, 446 conditioning, 434-436 digital signals rate signal, 425 state signal, 425 earth ground, 436 finding common ground, 436-437 floating signal sources, 438 grounded sources, 438 frequency domain signals, 424 measurement perspective, 429-431 measuring differences, 439 differential measurement systems, 439-441 LabVIEW for Everyone NRSE measurement system, 442-443 RSE measurement system, 441-442 Nyquist’s Theorem, 445 on-off signal, 424 pulse train signals, 424 reference ground, 437 sampling, 444-445 sensor arrays, 432-433 signal classification, 423-424 activities, 430-431 system ground, 437 time domain signal, 424 timing, 423 transducers, 431-432 Simple Data Client.vi, 837 Simple Data Server.vi, 838 Simple Mail Transfer Protocol (SMTP), 807 single line strings, 382 single-plot charts, 303-304 single-plot waveform graphs, 314-316 single-stepping through VIs, debugging techniques, 156 SMTP (Simple Mail Transfer Protocol), 807 SMTP Email palette, 807 “Snapshot,” publishing to HTML with LabVIEW web server, 801 sound, 666, 669-670 source, error clusters, 286 special characters, 380 spectral bin, 432 spreadsheet files reading, 407-408 reading and writing, 403-404 writing, 405-407 SQL (Structured Query Language), 842 stacked plots, waveform charts, 307 Stacked Sequence Structure, 216 Standard State Machine, 611-612 activities, 613-617 state signal, 425 static VI references, 759-760 status, error clusters, 285 977 Index status information queues, 625-626 rendezvous, 639 semaphores, 636 stop button, global variables, 569 stopping VI execution, 647-648 storing data in configuration files, 690-693 streaming data to files, 512-515 strict type definition, 865 String Constant, 215 String Length, 385 String Subset, 391-392 strings ASCII strings, 704 binary strings, 704 Controls palette, 127-128 combo box control, 128 creating, 390-391 format string, 387 initial string, 387 parsing, 399-400 parsing functions, Scan From String, 393 resulting strings, 387 Structured Query Language (SQL), 842 structures Error Case Structure, 288 Shared Variable, 815-816 styles, reports, 847 Subscribe Protocol, 35 subVIs, 8, 16 activities, 181, 725-726 connectors, 53 creating, 163 creating from block diagrams, 172 creating from VIs, 164 assigning connectors, 169-171 designing icons, 164-168 dynamic subVIs, Call By Reference Node, 755-758 errors, 291 generating, 291-292 generating and reacting to errors, 287 Error Case Structure, 288 Merge Errors, 289 help, 172 passing data with clusters, 273-274 relinking to, 172 suspending execution, debugging techniques, 158 system colors, GUI, 651 system controls, GUI, 648-650 system ground, 437 T t0, waveforms, 357 tables, strings, 383-384 tack points, removing, 141 tasks analog input tasks, 492 creating with DAQmx Create Virtual Channel, 493-494 DAQmx Clear Task, 497 DAQmx Read, 495 DAQmx Stop Task, 496 DAQmx Write, 495 digital output tasks, 492 MAX DAQmx Tasks, 488 generating code from, 488-489 referencing in LabVIEW, 485, 488 running with DAQmx Start Tasks, 494 triggered data acquisitions, 503-506 TCP Close Connection, 839 TCP Listen.vi, 839 TCP Open Connection, 838 TCP palette, 837 TCP Read, 838 TCP Write, 839 TCP/IP (Transmission Control Protocol/Internet Protocol), 836-840 TEDS (Transducer Electronic Data Sheets), 421 978 Temperature System Demo, 11-16 terminals block diagrams, 43-44 icons, 45 conditional terminals, 59 Test Panels window, 456 testing error status in loops, 295 VIs, 886 text changing, creating VIs, 106 GUI, 872-873 text and picture ring, 859 text files reading, 408-411, 681-682 by page, 718-719 writing, 408-409 thermometers, building, 137-139 time domain signal, 424 Timed Loop, 225 Timed Sequence, 226 Timeout event, 587-588 timing, signals, 423 timing functions, matching numbers activity, 223 Toolbar, 81-82 edit mode, 82 toolbars Project Explorer toolbars, 48 Run Toolbar, 12 tools Breakpoint tool, 79, 158 changing, 141 Color Copy tool, 79, 112 Color tool, 79 Labeling tool, 79-80, 105 Operating tool, 13, 61, 79-80 Pop-up tool, 79 Positioning tool, 60, 79-80, 107 Probe tool, 79 Scroll tool, 79 Wiring tool, 60, 79, 97, 130 LabVIEW for Everyone Tools menu, 67-68 Tools palette, 78-79 Tooltip Help, 867 Transducer Electronic Data Sheets (TEDS), 421 transducers, 24, 423, 431-432 tree control, 653-655 triggered data acquisition, using tasks, 503-506 triggering analog I/O, 474-475 digital edge triggering, 504 troubleshooting flickering graphs, 877 VISA sessions, 880 tweaking values, 13 two-dimensional (2D) arrays, 251-252 creating, 252-253 Type Cast, 709, 839 type casting, binary strings, 708-709 type definition, 865 type descriptor, 705 U UDP (Universal Datagram Protocol), 840 Unbundle By Name, 279 Unbundle function, clusters, 275-276 unbundling clusters, 271 clusters by name, 278-280 Unflatten From Error, 810 Unflatten From XML, 810 Universal Datagram Protocol (UDP), 840 Universal Serial Bus (USB), 421, 524 unlocking semaphores, 635 shared resources, semaphores, 633-634 Update Period slide control, 13 updating strings while you type, 383 Index URLs, shared variables, 820 USB (Universal Serial Bus), 421, 524 USB functions, VISA, 547-548 user-defined error codes, 295 users, displaying error messages to, 292-293 V V+, 441 V-, 441 values, tweaking, 13 variables global variables, 554 local variables, 553, 559-564 shared variables, 554, 813 accessing with DataSocket, 819 creating, 813-814 data binding, 818-819 reading, 820-821 synchronization capabilities, 817 URLs, 820 writing, 821-823 state variable, 611 Variant to Flattened String, 713 VI Class methods and properties, VI Server, 752-755 VI Properties, documenting VIs in, 175-177 VI Reference, 750-751 VI Server Application Class properties, 749-750 Invoke Node, 745 Property Node, 745 VI Class Methods and Properties, 752-755 VI Reference, 752 VI Server References, disabling controls while busy, 765 View menu, 65-66 virtual channels, 458 NI-DAQmx, 460-461 979 Virtual Instrument Standard Architecture (VISA), 524 configuring resources in MAX, 532-533 troubleshooting sessions, 880 VIs (virtual instruments), analysis VIs, 31-32 as standalone executables, 880 calling by reference, 757 configuring, 724 keyboard navigation, 736-738 reentrant execution, 733-734 SubVI Node Setup options, 724-725 VI properties, 728-733 creating, 54-55, 58-61 labeling items, 105 documenting in VI Properties, 175-177 embedding ActiveX web browsers in, 828-830 Emergency Abort VIs, 774 Express VIs, 90-92 fixing broken VIs, 154 GPIB VIs, 28 interactive VIs, publishing with LabVIEW web server, 803-806 loading, 147-148 filter rings, 153 LLB Manager, 151-152 LLBs, 150-151 save and load dialogs, 153 login VIs, 738-740 modularizing and testing, 886 network VIs, 836 TCP/IP, 836-840 UDP, 840 public VIs, 919 running, 136-137 saving, 147-148 filter rings, 153 LLB Manager, 151-152 LLBs, 150-151 Revert, 150 980 save and load dialogs, 153 save options, 148-149 single-stepping through debugging techniques, 156 stopping execution, 647-648 subVIs, 8, 16 temperature monitor activity, 309-314 Timed Structures, 226-228 VISA (Virtual Instrument Standard Architecture) configuring resources in MAX, 532-533 troubleshooting sessions, 880 VISA Clear, 540 VISA Read, 540 VISA Read STB, 541 Visible Items, 86 vision hardware, 433 VME eXtensions for Instrumentation (VXI), 33, 421 Voltage, 436 common-mode voltage, 441 input and output settings, 461-462 VXI (VME eXtensions for Instrumentation), 33, 421 W Wait function, 423 waiting on occurrences, 643 on Rendezvous, 639 waiting on notification, 630-632 Warning button, 155 warnings, debugging techniques, 155 waterfall plots, displaying, 876 waveform charts, 301-302 Chart History Length, 309 chart update modes, 301-303 clearing, 306-307 overlaid plots, 307 showing digital displays, 306 single-plot charts, 303-304 LabVIEW for Everyone single-plot versus multiple-plot charts, 305-306 stacked plots, 307 temperature analysis activity, 341-344 wiring multiple-plot charts, 304-305 X Scrollbar, 306 Y scales, 308-309 waveform graphs, 315 graphing sines, 318-322 waveforms digital waveform graphs, 367 generating and plotting, 363-364 writing continuous analog waveforms, 499-501 While Loops stopping if they contain Event Structures, 594-595 wiring one stop button into, 557 White Shared Variable, 817 Window Help, 867 Window menu, 67-68 windows Context Help window, 88-90 creating toolbar-type features that pop up different controls on the same window, 878 Help window, 89 Project Explorer window, 47-48 VI Hierarchy window, 790-791 wire stretching, 135 wires block diagrams, 45-46 changing direction of, 141 wiring broken wires, 133 canceling operations, 141 inputs and outputs, Case Structures, 206 Wiring tool, 60 wizards GOOP Wizard, 917 Instrument Driver Wizard, 548-549 write mode, local variables, 558 Write To Pipe, 835 Index writing binary files, 682, 684-686 continuous analog waveforms, 499-501 to digital lines, 497-499 key values, configuration files, 689 measurement files, 401-403 shared variables, 821-823 spreadsheet files, 403-407 text files, 408 X X andY scale menus, charts and graphs, 328-331 X Scrollbar, 306 XControls, 865, 919 XML (Extensible Markup Language), 809-811 parsers, 812-813 schemas, 812 XML palette, 809 XY graphs, plotting circles, 334-336 Y-Z Y, waveforms, 357 Y axis, having more than one, 877 Y scales, waveform charts, 308-309 981 Also Available from Prentice Hall The LabVIEW Style Book Graphical Formatting Made Easy and Fun Peter A Blume A perfect companion to LabVIEW for Everyone, 3/e, this book will help you understand why style is important, and show you how to bring good style to your LabVIEW applications The LabVIEW Style Book shows how to develop software that is more efficient and robust, more readable, and is easier to use, modify, and maintain Special attention is given to applications that are on an enterprise scale, as well as to the concerns that arise in team development Written from a practitioner’s point of view, the text is illustrated with many code snippets and complete examples from real-world applications The book will also help you prepare to pass the style part of the Certified LabVIEW Developer (CLD) and Certified LabVIEW Architect (CLA) exams Peter Blume is the founder and president of Bloomy Controls, Inc., which has been an active member of the National Instruments (NI) Alliance Program since 1992 They specialize in developing and integrating test, measurement, automation, and control systems used in R&D, design validation, manufacturing automation, and production testing Peter is a CLD and Certified Professional Instructor (CPI) 0-131-45835-3 ã â 2007 For additional information, please visit www.prenhallprofessional.com/title/0131458353 Expert virtual instrumentation for automated test and measurement James Kring, Inc is located in San Francisco, California JKI specializes in quickly developing robust networkable applications that leverage today’s powerful data acquisition and control systems We use National Instrument’s LabVIEW and other rapid application development tools to seamlessly integrate with a wide range of industry-standard hardware and software products Our engineers employ proven software engineering practices to deliver systems that meet customers’ needs for reliable, flexible, maintainable, scalable, and secure systems JKI utilizes a vast library of reusable code and instrument drivers to quickly generate working solutions JKI is a National Instruments Alliance Partner and has earned the Certified Alliance Partner distinction for its engineering competency in National Instruments hardware and software products We have several Certified LabVIEW Architects and Certified LabVIEW Developer on staff, as well as two founding members of NI’s LabVIEW Champions program Or staff is actively involved in providing leadership to various open source LabVIEW projects at OpenG (www.openg.org) and to the advanced LabVIEW user group community at LAVA (www.lavag.org) Additionally, we are actively involved in creating LabVIEW software development tools for other LabVIEW developers www.jameskring.com Phone: 888-891-7821 About the CD For eBook customers the CD contents described below can be free ly download from the following website: http://www.prenhallprofessional.com/0132412241/CDContents See Readme file for information on how to obtain the evaluation version of Lab VIEW 8.0 Operating Systems To run the included LabV IEW Vis, you must have version 8.0 (or greater) of National Instruments LabVIEW mnning on any of the following supported platforms; • • • Windows 2000/XP MacOSX 10.3 or later (Pleasenote,ai the lime of this writing LabVIEW 8.0 was not yet supported tor Mac OS X running on Intel processors; check http://ni.com/mac for the latest information on Mac OS X support) Linux kernel 2.2.x, 2.4.x, or 2.6.x, for the Intel xU architecture, GNU C Library (gUbe) Version 2.2.4 or later One of the following distributions is recommended: Red Hat Enterprise Linux WS or later, MandrakeUnux/Mandriva 10.0 or later, SuSE Unux 9.1 or later Contents This CD contains the following: • index.html: an HTML file that contains descriptions and links (shortcu ts) to all files on this CO-ROM You can view this file using any Web browser • LABVIEW_SlUNSTALLER folder: A 3O-day evaluation version of LabVIEW 8.0 (Windows version only), which allows you to just about everything the commercial version does during the evaluation period You can always get the la test evaluation version of LabVIEW at http://ni.com/labview Please note, there is no evaluation version of LabVIEW for MacOS X or Linux on this CD If you are using Mac os or Linux, you will need a licensed version of LahVIEW to run the examples on this CD • EVERYONE folder: Contains the example and activity LahVIEW Vis from the book Each chapter's activities are in a corresponding subfolder; for example, you will find the activities for Chapter in CH09 • CERTI FICATION folder: Contains files related to the National LabVlEW developer certification program, which is discussed in Appendix F, "Lab VIEW Certification Exams." Installation and Use To use the example VIs, simply copy them to your hard drive Note that many of the VIs will require some modification before using them, as they are intended as the starting points for activities, as described in the book To install and use the evaluation version of LahVIEW 8.0 double dick the setup.exe installer file located in the LABVIEW_80JNSTALLER folder and follow theon screen installation instructions Techni,,1 Support The contents of this CD are provided AS-IS and not include technical support For updates and technical support on LabVIEW, please contact National Instruments-you can find them on the Web at http://ni.com You can also get updates to the examples, activities, book errata, and other related resources and information on the Web at http://lahviewforeveryone.com .. .LabVIEW for Everyone Third Edition This page intentionally left blank LabVIEW for Everyone: Graphical Programming Made Easy and Fun Third Edition ▲ Jeffrey Travis... Travis, Jeffrey LabVIEW for everyone : graphical programming made easy and fun / Jeffrey Travis, James Kring — 3rd ed p cm ISBN 0-13-185672-3 (pbk : alk paper) Scientific apparatus and instruments—Computer... Add-on Toolkits for LabVIEW 893 Appendix C Open Source Tools for LabVIEW: OpenG 897 Appendix D LabVIEW Object-Oriented Programming 901 Appendix E Resources for LabVIEW 921 Appendix F LabVIEW Certification