This is only a preview of the March 1998 issue of Silicon Chip. You can view 43 of the 96 pages in the full issue, including the advertisments. For full access, purchase the issue for $10.00 or subscribe for access to the latest issues. Articles in this series:
Items relevant to "Sustain Unit For Electric Guitars":
Items relevant to "Multi-Purpose Fast Battery Charger; Pt.2":
Items relevant to "Command Control For Model Railways; Pt.3":
Items relevant to "PC-Controlled Liquid Crystal Display Board":
Articles in this series:
Articles in this series:
|
Fig.1: LabVIEW 5.0 features a new Instrument Wizard that
simplifies the configuration of GPIB, VXI and RS-232 instruments.
The Instrument Wizard automatically identifies and tests the
instruments connected to the system, installs the required drivers
and then generates application examples using these drivers.
New version has more features and is easy to use
Labview 5.0 Virtual
Instrumentation Software
LabVIEW has been around for 11 years and has
become known as the leading software package
for instrumentation and control. Any engineer
or technician familiar with Windows 95 should
take to it like a duck to water.
It is now over a decade since Lab
VIEW was first released. This graph
ical programming software from Na
tional Instruments was introduced as
a development tool to design, develop
and modify instrumentation systems.
The goal of LabVIEW has always been
to simplify programming tasks so that
scientists and engineers could fully
utilise the capability of PCs and at the
same time get their jobs done quickly
and easily.
Since its first release, LabVIEW has
grown to become the industry-lead
ing development software for data
acquisition, test and measurement
and analysis applications. National
Instruments refers to LabVIEW as a
programming environment, in much
the same way as Windows 95 is an
environment. So much so, that quite
a few third parties have developed
LabVIEW applications and these
have been updated with the release
of Version 5. So there is effectively
a whole suite of new software and
applications.
As PCs continue to find use in more
and more demanding applications,
software developers are constantly
looking for ways to get more out of
them. Many software developers are
also taking advantage of software de
velopments that include ActiveX and
Java to enhance their applications.
Some of the features of the new
version of LabVIEW are as follows:
Instrument Wizards
Used in some other Windows 95
programs such as Microsoft Word,
Wizards are incorporated into Lab
VIEW 5. These simplify the con
figuration of GPIB, VXI, serial and
computer-based instru
m ents. The
Instrument Wizard automatically
identifies and tests the instruments
connected to the system, installs the
required drivers and then generates
application examples using these
drivers – see Fig.1.
March 1998 9
Fig.2: LabVIEW 5.0 features a new ActiveX automation server that gives the
users the ability to remotely call LabVIEW programs from other programming
languages such as Visual Basic, Visual C/C++, Lab Windows/CVI, standard C
languages, Microsoft Excel or even another copy of LabVIEW.
Not only does the Data Acquisition
(DAQ) wizard automatically generate
a solution for the user, it also creates
the LabVIEW block diagram so that
users can modify the application
as their needs change. These DAQ
Wizards have also been added to the
Macintosh platform.
ActiveX Containers
This feature of LabVIEW allows peo
ple to share code across programming
environments. Reusable components
or objects of code that are written in
one language but can be called from
a variety of other environments are
important simply because they allow
code to be reused that would otherwise
need to be completely rewritten.
The most common type of reusable
component is an ActiveX control
and these can be embedded into any
ActiveX container – see Fig.2. Today,
the most popular ActiveX containers
are Visual Basic and Visual C++. With
the introduction of Version 5.0, Lab
VIEW is now an ActiveX Container.
10 Silicon Chip
This means that users can easily drop
any ActiveX control or document
onto a LabVIEW front panel, edit it
by clicking on it and control it using
a graphical approach on the block
diagram. Thus, a user might embed
a National Instruments Component
Works control, a web browser control,
a HiQ Notebook, an Excel spreadsheet,
a Word document, a calendar control
or any of more than a thousand other
controls and documents available
over the Internet and in software
worldwide.
This means that users are no
longer limited to the built-in controls
available in LabVIEW but can take
advantage of controls written in other
languages. Equally important, they
do not need to do any complicated
programming to take full advantage
of these other controls.
Automation Servers
These allow integration of LabVIEW
programs into other applications. For
example, Visual Basic is often used as
a tool for developing front-end appli
cations for databases. LabVIEW, on
the other hand, is an industry-leading
software tool used to develop data
acquisition and production test sys
tems. If a user could integrate the two
applications together, or call LabVIEW
programs from Visual Basic, then they
would have the flexibility to use both
tools in an application that stores
production test data in a database.
LabVIEW 5.0 features an Auto
mation Server that gives users the
ability to “remotely” call LabVIEW
programs from outside the LabVIEW
environment. Thus, the user can call
a Lab
VIEW Virtual Instrument (VI)
from any ActiveX Automation client,
such as a program written in C, Visual
Basic, a Microsoft Excel macro or even
from another copy of LabVIEW.
Thus, much in the same way that a
user calls a DLL from a program, now
they can call a LabVIEW program from
another application. In addition, the
user can control the entire LabVIEW
development environment itself from
another program.
Distributed Computing Tools
These are used to easily create dis
Fig.3: another feature of LabVIEW
5.0 is Translation Tools for
multilingual user interfaces and
software translation. This enables
the same LabVIEW program to be
run in numerous languages.
tributed LabVIEW applications that
will execute on computers across a
heterogeneous network.
Certain applications require that
their execution take place on multi
ple machines. If users must quickly
execute extremely intensive routines,
they may want the ability to divide the
tasks onto different computers. Or if
remote acquisition requires the user
to collect data from various locations,
a distributed system may also be the
best approach.
Typically, distributed systems are
complex to write because they require
a great amount of overhead code to
pass data between the computers or
to execute calls on remote machines.
With LabVIEW 5.0, users can create
distributed systems with ease.
Suppose a user has a collection of
acquisition routines and wants to call
each of them at any time from any of
several locations. Many programming
environments require networking
functions to send commands and
data to other computers; those remote
computers must constantly listen for
a connection. To send and receive
data, the user must perform tedious
data conversions to send information
across the network.
With LabVIEW 5.0, users simply
create their initial pro
grams, load
them on all machines where they
might execute and then write a simple
program to call them at a specified
location. When users execute the
“controller” program, it simply reads
the specified target and executes the
function at that location.
When using the ActiveX interface
the server automatically launches
LabVIEW if it is not already open,
so LabVIEW does not need to run
constantly on the target computer.
The user can choose to display the
program on the target machine as it
runs or have the program execute in
the background.
worldwide are well documented and
easy to use. In addition, as interna
tional markets continue to grow, it
becomes ever more important that
both documentation and software be
translated into the end-user’s native
language – see Fig.3.
With the new documentation tools
in LabVIEW 5.0, users can automat
ically generate software documenta
tion in the form of HTML (hypertext
mark-up language) and RTF (rich text
format) formats. Thus, with the click
of a mouse, an entire user manual,
function reference manual or online
help system can be generated. No
other tool makes the tedious task of
this documentation so simple.
Translation tools
These help large application de
velopment by providing the ability to
compare graphical code to determine
the differences between them – see
Fig.4.
These are used to create multilin
gual user interfaces and facilitate the
translation of software.
Software developers face several
challenges to make their software
successful worldwide. Good docu
mentation is often a time-consuming
task which some people choose to
ignore. However, studies indicate that
the most successful software packages
Graphical differencing tools
Multi-threading
To address the requirement of
high-performance, very reliable ap
plications on PC platforms, modern
operating systems, such as Windows
March 1998 11
Fig.4: the Graphical Differencing Tool in LabVIEW 5 enables the differences between two programs to be highlighted. This
enables new versions of instrumentation programs to be generated quickly.
Fig.5: the LabVIEW-based Intellichart from Densitron (Kent, England) is a paperless chart recorder with a TFT colour
display, touch screen controls and LAN interface in a robust case. It was designed for clean room environments as
encountered in activities such as microchip production or food processing. The graphical tools in LabVIEW 5 mean that
users can easily set parameters such as trigger level, scan speed, paper speed, X scale and so on. For further information,
contact National Instruments or the web site at www.densitron.com
12 Silicon Chip
SILICON CHIP SOFTWARE
Now available: the complete index to all
SILICON CHIP articles since the first issue
in November 1987. The Floppy Index
comes with a handy file viewer that lets
you look at the index line by line or page
by page for quick browsing, or you can
use the search function. All commands
are listed on the screen, so you’ll always
know what to do next.
Notes & Errata also now available:
this file lets you quickly check out the
Notes & Errata (if any) for all articles published in SILICON CHIP. Not an index
but a complete copy of all Notes & Errata text (diagrams not included). The file
viewer is included in the price, so that you can quickly locate the item of interest.
The Floppy Index and Notes & Errata files are supplied in ASCII format on a
3.5-inch or 5.25-inch floppy disc to suit PC-compatible computers. Note: the File
Viewer requires MSDOS 3.3 or above.
OR D ER FOR M
PRICE
❏
Floppy Index (incl. file viewer): $A7
❏
Notes & Errata (incl. file viewer): $A7
❏
Alphanumeric LCD Demo Board Software (May 1993): $A7
❏
Stepper Motor Controller Software (January 1994): $A7
❏
Gamesbvm.bas /obj /exe (Nicad Battery Monitor, June 1994): $A7
❏
Diskinfo.exe (Identifies IDE Hard Disc Parameters, August 1995): $A7
❏
Computer Controlled Power Supply Software (Jan/Feb. 1997): $A7
❏
Spacewri.exe & Spacewri.bas (for Spacewriter, May 1997): $A7
❏
I/O Card (July 1997) + Stepper Motor Software (1997 series): $A7
POSTAGE & PACKING: Aust. & NZ add $A3 per order; elsewhere $A5
Disc size required: ❏ 3.5-inch disc
❏ 5.25-inch disc
TOTAL $A
Enclosed is my cheque/money order for $A__________ or please debit my
❏ Bankcard ❏ Visa Card ❏ MasterCard
Card No.
Signature_______________________________ Card expiry date______/______
Name ___________________________________________________________
PLEASE PRINT
Street ___________________________________________________________
Suburb/town ________________________________ Postcode______________
Send your order to: SILICON CHIP, PO Box 139, Collaroy, NSW 2097; or fax your
order to (02) 9979 6503; or ring (02) 9979 5644 and quote your credit card number
(Bankcard, Visa Card or MasterCard).
✂
NT and Windows 95, as well as
Sun Solaris, are “multi-threaded”.
Applications that take advantage of
multi-threading have a number of
benefits, including better CPU utili
sation, better system reliability and
user interface response and the ability
to take advantage of multiprocessor
machines.
However, only a few applications
today are multi-threaded, simply
because it is difficult to implement.
LabVIEW Version 5.0 solves this
problem because, as a dataflow pro
gramming language, it is inherently
parallel in nature. This makes it nat
ural for users to create code that can
execute simultaneously in separate
threads. Thus, it is the ideal language
in which to develop multi-threaded
applications.
LabVIEW multi-threading technol
ogy is built into every virtual instru
ment (VI), or LabVIEW program, so it
is not necessary for the user to learn
any new programming techniques. In
fact, the user does not even need to
know what multi-threading is to ben
efit from it. However, for expert users
who want to have specific control
over threads, such as changing thread
priorities, the flexibility is available in
a straightforward dialog box option.
All of the complex tasks of thread
management are transparently built
into the LabVIEW execution system,
such that users need never concern
themselves with the tedious details of
thread management. Thus, while tex
tual-based programmers must learn
new and confusing programming
practices to create a multi-threaded
application, a LabVIEW user simply
writes a VI (virtual instrument) as he
or she always has. And to make an
existing LabVIEW VI multi-thread
ed, users simply have to load their
LabVIEW programs into Version 5.0.
For a more complete explanation of
multi-threading and its benefits, there
is an Application Note titled “Creat
ing Multi-threaded Applications to
Maximise System Performance and
Reliability.”
For further information on Lab
VIEW 5.0 or the full range of instru
mentation products, contact National
Instruments Australia, PO Box 466,
Ring
w ood, Vic 3134. Phone (03)
9879; fax (03) 9879 6277. Readers
can also access information by email
at: info.australia<at>natinst.com or at
http://www.natinst.com
SC
March 1998 13
|