Professional Documents
Culture Documents
Review of Virtual Instrumentation
Review of Virtual Instrumentation
INSTRUMENTATION
CONTENTS
• Virtual instrumentation model
• Graphical system design model
• Block Diagram & Architecture of Virtual Instrument
• Data-flow techniques
• Hardware & software in virtual instrumentation
• Virtual instrument and traditional instrument
• Comparison with conventional programming
• OPC (Object linking and Embedding (OLE) for process control)
• HMI/SCADA software
• Active X programming
Virtual Instrumentation
• Virtual instrumentation is an interdisciplinary field that merges sensing, hardware
and software technologies in order to create flexible and sophisticated instruments
for control and monitoring applications.
• Virtual instrumentation is the use of customizable software and modular
measurement hardware to create user-defined measurement systems, called virtual
instruments.
• Virtual instruments are computer programs that interact with real world objects by
means of sensors and actuators and implement functions of real or imaginary
instruments.
• The sensor is usually a simple hardware that acquires data from the object,
transforms it into electric signals and transmits to the computer for further
processing. Simple virtual measuring instruments just acquire and analyse data,
but more complex virtual instruments communicate with objects in both
directions.
Virtual Instrumentation Model
Virtual instrumentation is the combination of user-defined software and modular
hardware that implements custom systems (“virtual instruments”) with
components for acquisition, processing/analysis and presentation.
Modular Hardware - subdividing the entire hardware design into smaller parts called modules or
skids, that can be independently created and then used in different systems.
Data Acquisition
“Data acquisition is the process of gathering or generating information in an
automated fashion from analog and digital measurement sources such as sensors
and devices under test.”
A physical input/output signal is typically a voltage or current signal. A voltage
signal can typically be a 0-5V signal, while a current signal can typically be a
4- 20mA signal.
Data Analysis
• Raw data may not convey useful information immediately.
• Signal processing is frequently needed to transform the signal, remove noise
disturbances, or compensate for environmental effects.
• Analysis is a fundamental part of many test, measurement, and control applications.
• Analysing a signal gives you additional insight into what your data means—you can
get a clearer picture of your desired signal or monitor a signal for a particular
behaviour.
• Data analysis may include Time Domain Analysis, Frequency (Spectral) Analysis,
Digital Filters, Curve Fitting and Data Modeling, Differential Equations, Linear
Algebra, Nonlinear Systems, Optimization, Root Finding, PID and Fuzzy Control.
Data Presentation
• This stage is used to present the data in a suitable form for post analysis of data.
This is also called as data storage stage. e.g., CRO recorders, plotter and other
display devices.
One key element behind the success of the virtual instrumentation approach is
LabVIEW, a software development tool originally developed to support the
requirements of virtual instrumentation.
• Researchers can acquire reference data from files or databases and incorporate it
into the model.
• Results from the simulation process are saved for post-analysis and visualization
and can be used to introduce changes into the model.
• The transition from the prototyping phase to the deployment phase can be very fast
and efficient because the same set of tools used for prototyping can, in most cases, be
applied to the final deployment of the system in the field.
• The deploy stage is mostly about hardware - where you put your design in the final
stage.
GSD Advantages
• In this case, the block diagram executes from left to right, not because the objects
are placed in that order, but because the Subtract function cannot execute until the
Add function finishes executing and passes the data to the Subtract function.
• Remember that a node executes only when data is available at all of its input
terminals and supplies data to the output terminals only when the node finishes
execution.
Dataflow Example for Multiple Code Segments
• Consider which code segment would execute first—the Add, Random Number, or
Divide function.
• You cannot know because inputs to the Add and Divide functions are available at
the same time, and the Random Number function has no inputs.
• In a situation where one code segment must execute before another, and no data
dependency exists between the functions, use other programming methods, such
as sequence structures or error clusters, to force the order of execution.
Wires
• You transfer data among block diagram objects through wires. Wires connect the
control and indicator terminals to the Add and Subtract function.
• Each wire has a single data source, but you can wire it to many VIs and functions
that read the data.
• Wires are different colors, styles, and thicknesses, depending on their data types.
• A broken wire appears as a dashed black line with a red X in the middle, as shown
above. Broken wires occur for a variety of reasons, such as when you try to wire
two objects with incompatible data types.
Common Wire Types
Hardware in Virtual Instrumentation
To check for the error the program has to be compiled Errors are indicated as we wire the blocks
or executed
Front panel design needs extra coding or needs extra Front panel design is a part of programming
work
Text based programming is not interactive Graphical programming is highly interactive
This is the text based programming where the The programming is data flow programming
programming is a conventional method
Logical error finding is easy in large programs Logical error finding in large programs is quiet
complicated
Program flow is not visible Data flow is visible
It is Text based Programming It is icon based programming and wiring
Passing parameters to sub routine is difficult Passing Parameters to sub VI is easy
OPC (Object linking and Embedding (OLE) for process control)
• OLE for Process Control (OPC), which stands for Object Linking and Embedding (OLE) for
Process Control, is the original name for a standard specification developed in 1996.
• The standard specifies the communication of real-time plant data between control devices
from different manufacturers.
• The OPC Specification was based on the OLE, COM, and DCOM technologies developed by
Microsoft for the Microsoft Windows operating system family.
• The evolution of OLE started, in 1990, on the top of Dynamic Data Exchange (DDE) concept
of Microsoft, and was later reimplemented with Microsoft Component Object Model (COM)
and then Distributed COM (DCOM) as its bases, and eventually led to ActiveX controls.
• Industrial automation systems require open standards which can be adopted by any provider
of control systems, instrumentation, and process control for multi-vendor interoperability.
Term Meaning
OPC OPC stands for OLE for Process Control
OPC is based on the core OLE technologies COM and DCOM.
• All the capabilities of an HMI are present in a EWS as well as the ability to design &
update controller logic based on the conditions in the respective field sites and send the
commands to manage & control PLC’s & RTU’s on the network through communication
equipment.
• Data Historian:
• Data historian is a computer or memory unit which acts as a centralized data base for
logging all process information within an industrial control system.
• Information stored in this database can be accessed to support various analysis from
statistical process control to enterprise level planning.
• Communication routers:
• A router is a communication device that transfers messages between two networks i.e. a
LAN to a WAN or between MTU’s & RTU’s.
Geographically distributed field sites
• RTU (Remote Terminal Unit):
• Its primary task is to control and acquire data from process equipment at the
remote location and to transfer this data back to a central station.
• Each RTU is connected with various sensors and actuators that manage local
process or field equipment's.
• It collects the information from various sensors and sends the information to the
MTU.
• Many RTUs store the data in their database and waits for a request from the MTU
to send or transmit the data.
• In sophisticated systems, PLCs are used as RTUs which directly transfers the field
data and controls the parameters without a request from the MTU.
• It is a remote telemetry data acquisition unit located at remote stations.
•PLC (Programmable Logic Controller):
•PLC is a small industrial computer which originally replaced relay logic. It had inputs and
output similar to those an RTU has.
•It contained a program which executed a loop, scanning the inputs and taking actions based
on these inputs.
• ActiveX/COM refers to the process of controlling one program from another via
ActiveX.
• Like networking, one program acts as the client and the other as the server.
• LabVIEW supports automation both as the client and the server. Both programs,
client and server, exist independent of each other but are able to share
information.
• The client communicates with the ActiveX objects that the server opens to allow
the sharing of information.
• The automation client can access the object's properties and methods. Properties
are attributes of an object.
• Another program can set or retrieve an object's attributes.
• Similarly, methods are functions that perform an operation on objects. Other
applications can invoke methods.
ActiveX Controls and Containers
• The most common usage of ActiveX is via ActiveX controls, which are embeddable
components that exist inside ActiveX containers.
• Any program that can function as an ActiveX container allows you to drop ActiveX
controls into the program as a container.
• From these containers, the ActiveX controls have their own functionality and
properties.
• LabVIEW is an ActiveX container and can house ActiveX controls. Again, properties
and methods manipulate the embedded control.
• The ability to view movie files, pdf files and similar interactive applications is made
possible through the use of ActiveX.
• A container is an application in which the object is embedded. In the example of an
excel spread sheet that is embedded in a word document, MS word is the container.
ActiveX Events