Вы находитесь на странице: 1из 7

24

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 54, NO. 1, FEBRUARY 2005

Remote Calibration Using Mobile,


Multiagent Technology
Mihaela M. Albu, Member, IEEE, Alessandro Ferrero, Fellow, IEEE, Florin Mihai, Member, IEEE, and
Simona Salicone, Student Member, IEEE

AbstractInstrument calibration, though unavoidable, is extensively time and resource consuming. It often involves a distinct
layer of data management and security. Since many of the available digital instruments are provided with communication interfaces, one can build a remote calibration system from the actual
hardware and a computing unit with Internet connection capabilities. This paper, after showing a simple clientserver architecture,
discusses how the use of mobile, multiagent techniques is expected
to solve most of the security issues, working as well and effectively
as a traditional, agent-free clientserver architecture.
Index TermsMobile agents, remote calibration.

Presently, the interconnection capabilities offered by the


commercial software available for the development of virtual
instruments (VIs) make possible the immediate implementation
of a clientserver architecture for driving the instrument to be
calibrated and the calibrating device remotely. This solution,
however, requires installing the software implementing the
client structure on a computing platform at the remote calibration site. This involves several security issues, since the
installation should be done by the staff of the customer who ordered the calibration, and is not under control of the staff of the
calibration laboratory who will sign the calibration certificate.

I. INTRODUCTION

HE RECENT development of PC-driven instruments and


the evolution of the networking capabilities of PCs over
a world-wide network (Internet) has led to the realization of
distributed measurement systems, for both didactic [1], [2] and
industrial [3] applications.
The remote calibration of measuring instruments is an interesting application of these techniques that has not yet been fully
exploited, mainly due to the legal issues involved by the possible lack of security which is intrinsically associated with the
remote operations.
However, the capability of calibrating an instrument on-site
instead of sending it to a calibrating lab, provided the instrument
itself has a standard interface to a PC and a calibrating device
can be sent to the instruments location and operated remotely,
allows to save time and money, because of both the lower cost
of the calibration operation and the reduced time interval during
which the instrument is not available [due to the time spent traveling back and forth from the calibration lab and waiting for the
device under test (DUT) to be calibrated].
This approach appears to be particularly effective whenever
the calibration of low-cost process instruments is involved. In
fact, the calibration of these instruments is generally required
by several quality standards, and is quite expensive, if compared
with the instrument cost. However, on the other hand, since it
does not require top-class calibration devices nor strict ambient
conditions, it can be performed by using traveling standards.

Manuscript received June 15, 2003; revised April 30, 2004.


M. M. Albu and F. Mihai are with the Facultatea de Electrotehnica, Universitatea Politehnica Bucuresti, 313-77206 Bucuresti, Romnia (e-mail:
albu@electro.masuri.pub.ro).
A. Ferrero and S. Salicone are with the Dipartimento di Elettrotecnica,
Politecnico di Milano, 32-20133 Milano, Italy (e-mail: alessandro.ferrero@polimi.it).
Digital Object Identifier 10.1109/TIM.2004.838139

II. CALIBRATION SOLUTIONS


From a strict technical point of view, a remote calibration can
be executed with a clientserver architecture, where the instrument to be calibrated (DUT) and the calibrating device are situated in the same location (though not necessarily on the same internet node) and connected to a client system. The client system,
which comprises at least two different client applications, one
corresponding to the DUT and the other one to the calibrator device (CLD) receives the commands from the server, running on
a computing platform fully controlled in the calibration laboratory, and sends them to these devices through the selected interface. It scans the instrument reading and transmits it to the server
over the active Internet connection. All operations required to
prepare the calibration certificate are performed by the server.
Several improvements can be carried out on this basic structure,
mainly concerned with self-recognition of the available interface and the instrument to be calibrated and with the implementation of security functions to prevent illegal modifications of
the software running at the client site.
Examples of the clientserver architectures for remote calibration, carried out in the LabVIEW1 environment, are shown
in Figs. 1 and 2.
Despite all possible improvements, this solution requires the
installation of the client VI at the clients site. This operation
may not be in total control of the staff of the calibration lab
(mainly because sending a person on site would be more expensive than sending the instrument to the calibration lab), thus,
plugging a possible hole in the security of the whole process,
since the client VI can be illegally modified before installing it.
In this technology, the master application has to be launched
first, and the client application will then connect to it, using
previous information on the IP number of the computer unit at
the calibration site.
1http://www.ni.com

0018-9456/$20.00 2005 IEEE

ALBU et al.: REMOTE CALIBRATION USING MOBILE, MULTIAGENT TECHNOLOGY

25

Fig. 1. (a) Master and (b) client front panels for a period-function calibration (DUT: Keithley 2000 multimeter; CLD: Fluke 5500A calibrator).

III. MULTIAGENT TECHNOLOGY


A software agent can be defined [4] as a software entity that
functions continuously and autonomously in a particular environment, often inhabited by other agents and processes.
The main characteristics of software agents (they can be mobile, communicative, and collaborative) make them appropriate
for current computing environments, which often consist of distributed software running on distributed platforms.
A subset of agent systems is made by the mobile agents who
exhibit, as their main feature, the capability of fault tolerance
and recovery. They also can provide distribution software control, distributed repository sharing, and auditing.
Mobile agents are autonomous. They can visit any host in a
network and this usually requires a procedure to keep track of
their paths or to locate them.

Most system agents implement a specific access control in


order to address consequences of allowing restricted access to
resources controlled by remote third entities. For example, in
clientserver architectures, the client applications are enforcing
an authorization policy in order to access resources controlled
by the servers.
When considering the application of an agent system to assist the calibration process on the Internet, the most challenging
problem is the agent intrusion into the remote system as an executable code. One has to discriminate the agent activity from
other possible malicious attempts.
Most of the agent systems developed until now are fully implemented on Java platforms, which assures the portability, but
is an unfriendly environment for measurement tasks.
Considering the special task of instrument communication,
the software environment, in which the calibration agent system

26

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 54, NO. 1, FEBRUARY 2005

Fig. 2. Master front panel for dc-voltage calibration (DUT: Keithley 2000 multimeter; CLD: Fluke 5500A calibrator).

is playing, is drastically limited by the hardware capabilities and


the most suitable environment hosting the instrument drivers.
A platform was developed in LabVIEW, where the various
modules (executable VIs) can interact in an agent-like mode.
These pieces of code are able to:
monitor remote execution,
interact asynchronously with remote events,
authenticate mutually,
perform self-protection, and
notify the sending host of their failure while executing on
a remote host.
In this particular application, the calibration process is completely localized in time by the acknowledge signal sent after
setting up the hardware, and therefore, the agent system requirements related to its protection, integrity, and confidentiality are
not of critical importance. On the contrary, the agent authentication (the code might maliciously send instrument commands
able to destroy the calibrating system) and data security after the
read process are of crucial importance as long as this step is
simply validating the calibration procedure.
IV. CALIBRATION PROTOCOL USING SOFTWARE AGENTS
The solution to the problem of calibration security is to keep
the whole calibration process under control of the server, with
all client programs downloaded by the server to the client in
a sort of stealth way so that no changes can be operated at
the client site. The technology to attain such a result is already
available, though not yet applied to calibration tasks: the mobile, multiagent technology. Papers [5][11] address the use of
software agents in order to handle tasks performed by multiple
instruments. Some of the applications [6], [7] are considering
the Internet as the layer connecting the user, the measurement
system, and the agent. The increased complexity of the measurements involves the collaboration of multiple agents [multiagent systems (MAS)], as in [10], [11]. Security issues, together

with the universal TCP/IP communication, address the use of


the mobile-agent technology [5]. The used technologies were
developed mainly in a Java environment, as this is providing a
maximum transparency over computing platforms.
The most complex and demanding process, in terms of security, is the calibration validation. Attempts to solve this problem
considered first the online features of a secure Internet connection for monitoring the calibration procedure [9]. Because the
DUT and the calibrator providing traceability for all the required
functions of the DUT have to be physically in the same location,
the mobile agent technology appears the most appropriate for
this kind of application [7], [8].
A. Calibration Protocol
We will further consider the calibration protocol for a digital
multimeter, as complying with the standards in use [12]. The
calibration procedure will always require an operator at the DUT
location, as long as the physical connections are subject to different layouts in the calibration process. What can be remotely
initiated and supervised is the actual data collecting and processing. For example, the calibration of a 4 1/2 digit multimeter
involves the following steps:
verification of DUT general technical conditions: display
integrity, isolation resistances, etc.;
verification of the reference conditions (temperature, atmospheric pressure, humidity, supply voltage amplitude, distortion and frequency, and electromagnetic exterior fields);
assessment of the accuracy limits on each measurement
function;
fluctuation at the displayed value at zero-input quantity;
and
input resistance measurement.
In either conventional or remote calibration, each of the above
steps involves human intervention in order to acknowledge the

ALBU et al.: REMOTE CALIBRATION USING MOBILE, MULTIAGENT TECHNOLOGY

physical layout as required by the calibration procedure. A further improvement can be done with a connector device, which
basically assures the appropriate connections between the DUT
and CLD, in a remote way, and has to be controlled by a computer unit. The concordance between the DUT displayed value
and the actual measured one has presently to be proven by a
human operator, according to the standards in use [12]. Though
this could be done, when remote procedures are considered, by
a camera surveillance and video broadcast over the Internet, it
seems useless, unless DUT display integrity has to be checked
since both the DUT and CLD are controlled by the same unit
that can easily check the compatibility between the data read on
the DUT and the one sent to the CLD.
In the following, only the third step of the calibration procedure will be considered, e.g., the assessment of DUT accuracy
on a single function: dc voltage measurement [12]. The calibration algorithm follows the two procedures highlighted below.
1) Limits of error on the base measurement range (with the
highest accuracy or with the highest input resistance).
on the polarity:
on each decimal range, five measurement points,
uniformly distributed;
on the upper measurement range limit;
in five distinct measurement points in the vicinity
of the upper measurement range limit and implying transitions around the 0-digit (e.g., 07999,
08000, 08999, 18999, 19 000).
on the polarity:
in three distinct measurement points uniformly
distributed along the measurement range.
2) Limits of error on the other measurement ranges:
on the polarity only:
in three distinct measurement points in the
vicinity of the upper measurement range limit.
B. Internet-Based Calibration: Architecture Overview
The typical physical layer of a remote calibration process is
presented in Fig. 3. It employs at least one DUT and one CLD,
both connected to either a serial or a parallel interface to a remote computing unit (RCU) which has either a fixed or mobile Internet provider (IP) allocated. METCAL and WEBCAL
are remote computing units that are connected to the RCU and
to each other through the Internet and cooperate in controlling
the remote calibration process. At the customer location, which
is designated to be the actual physical location of the DUT
and CLD, at least one human operator (HO) should check the
physical connections between the RCU, DUT, and CLD, before
each calibration procedure. This solution was employed for calibrating a Keithley multimeter (DUT) using a Fluke calibrator
(CLD) connected via a GPIB interface with a computer unit
(RCU), located at Politecnico di Milano. In this case, METCAL
is an RCU located at the Technical University of Bucharest.
The calibration process is initiated via a web page, hosted by
WEBCAL, accessed from anywhere on the web. For practical
reasons, the acknowledgment of correctness of the physical calibration layout has to be initiated from the common location of
the RCU, CLD, and DUT.

27

Fig. 3. General physical layer of the remote calibration process.

Fig. 4.

General structure of the calibration multiagent system (CMAS).

C. A LabVIEW Calibrator Agent System


A novel approach, based on mobile MAS is presented and
applied to the instrument calibration process. Compared to a remote laboratory with PC-driven instruments [13], a calibration
application will need less effort involved in designing the user
interface since this local-available interface should only be confined at the monitoring and alarm level. Fig. 4 presents the general structure of the agent system developed in the LabVIEW environment for remote calibration on the Internet shown in Fig. 3.
The web page hosted by WEBCAL is shown in Fig. 5. The user
(usually the HO at the RCU location) initiates the calibration
procedure activating the link on the calibration web page, mentioning the IP address of the RCU. This procedure allows the
calibration process to be pursued in a clean room. While accessing this link from other than RCU address, a mobile code
(A Player) migrates on the RCU machine, detecting the software
platform available there. This is necessary in order to commute
between the LabVIEW codes available for Windows and Unix
OS. On the same web page, monitoring information (calibration
status, errors, etc.) are available. Regardless the web location of
the HO, another mobile code (A Identifier) is transferred on the
RCU, together with a code pointing to the METCAL address
(this address is continuously changed, for security reasons, by
the agent A Manager). Agent A Identifier maintains the communication between the METCAL station (under the jurisdiction of the Calibration Office) and the equipment connected to
the general purpose interface bus (GPIB) of the RCU located at
the client side. The main task of this Agent is to find the GPIB

28

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 54, NO. 1, FEBRUARY 2005

Fig. 5. Web page monitoring the calibration process. Agent A Player is initiating the calibration process.

Fig. 6. Diagram of the A Calibrator agent VI.

address of each device (DUT and CLD) connected to RCU and


also to identify the DUT type. This information will allow the
selection, on the METCAL station, of the specific calibration
procedure. The diagram of the A Identifier agent VI is shown
in Fig. 6. In this implementation, the Agent can identify only
equipment having a valid GPIB address. One can observe, from

Fig. 6, that the Agent is testing practically all addresses (from


1 to 30) in order to identify those allocated to equipment connected to the DUT. It is important to underline that a successful
report given by A Identifier agent does not ensure the correctness of the calibration physical layout. Agent A Identifier sends
standard SCPI command *IDN? in order to identify the type

ALBU et al.: REMOTE CALIBRATION USING MOBILE, MULTIAGENT TECHNOLOGY

29

Fig. 7. Client application (as seen on a METCAL machine).

of the equipment connected at the GPIB interface. The commands sent to both the calibrator and calibrated devices are processed by a third agent, A Supervisor. This agent (a VI module
similar to the server application in Fig. 2, though without a visible user interface) is activated together with an RCU port address listening to the actual string of the appropriate calibration procedure. This address is simultaneously acknowledged
by A Manager, running on the database server unit. Each measurement value is stored into a remote database, preventing the
misuse of the RCU. The agent providing data encryption and
encoding to the Access-type database is A Manager.
The calibration data are then processed on the METCAL site
using secure access to the calibration results. A Manager is responsible for ensuring the communication between METCAL
and the RCU (via the port announced by A Identifier and used
by A Supervisor), and for the calibration monitoring as seen on
the WEBCAL page.
Fig. 7 presents a stage in the calibration process as managed
by the LabVIEW agent system.
The front panel in Fig. 7 is for testing purposes only, though
not necessary, as long as the calibration result is presented as a
standard spreadsheet which manages the measurements stored
on the remote database. The most critical step in this process
is to assure the concordance between the DUT functions and
parameters selected for the calibration procedure and the corresponding controlling commands sent to the CLD.
If any doubt arises about the concordance between the CLD
and DUT setup, the A Supervisor agent stops the procedure and

requires an acknowledgment from the HO in order to restart the


process.
From a functional point of view, all above-described agents
behave and interact like mobile agents [4][6]. As far as their
implementation is concerned, the presently available mobile,
multiagent technology is mostly developed in Java, while the
modern measurement instruments, based on digital techniques,
are mostly developed in LabVIEW. Since LabVIEW is an open
environment, the above-described agents can be developed in
Java and made available to a LabVIEW calibration environment,
which is likely to be more familiar to the practitioners in the instrumentation and measurement field.
On the other hand, object-oriented features can also be easily
added to LabVIEW so that the mobile agents can be developed in the same environment as the remaining parts of the remote calibration system. Moreover, the availability, in the LabVIEW libraries, of interfaces to the most popular instruments
and easy-to-use interfaces to the TCP/IP commands, strongly
suggests to adopt LabVIEW as the development environment,
though it has not yet been considered as the natural environment
for developing the mobile agent technology. The only strict requirement, in such an implementation, is that all platforms involved in the calibration process need to have installed a LabVIEW environment, at least a run-time engine.
V. CONCLUDING REMARKS
Remote calibration is a demanding task both in terms of hardware and data security. Due to the various possible locations of

30

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 54, NO. 1, FEBRUARY 2005

the devices that have to be periodically calibrated, using a special communication layer for this task only would be unrealistic. Instead, the Internet layer can be used, but only with additional checking of the data integrity. Due to the wide range of
instrument types and their command library, an agent system becomes a competitive solution. In this paper, a LabVIEW implementation of a calibrating agent system is proposed. Tests have
been performed with a calibration setup in Politecnico di Milano
and the calibrating entity at Technical University of Bucharest.
The preliminary results show the effectiveness of this method
and will be used as a reference for the next developments, on a
software environment that will be fully independent of the employed platform.

REFERENCES
[1] L. Benetazzo, M. Bertocco, F. Ferraris, A. Ferrero, C. Offelli, M. Parvis,
and V. Piuri, A web-based distributed virtual laboratory, IEEE Trans.
Instrum. Meas., vol. 49, pp. 349356, Apr. 2000.
[2] M. Bertocco, F. Ferraris, C. Offelli, and M. Parvis, A clientserver architecture for distributed measurement systems, IEEE Trans. Instrum.
Meas., vol. 47, pp. 11431148, Oct. 1998.
[3] L. Cristaldi, A. Ferrero, and S. Salicone, A distributed system for electric power quality measurement, IEEE Trans. Instrum. Meas., vol. 51,
pp. 776781, Aug. 2002.
[4] J. M. Bradshaw, An Introduction to Software Agents. Cambridge, MA:
MIT Press, 1997, pp. 346.
[5] G. Fortino, D. Grimaldi, and L. Nigro, Multicast control of mobile measurement systems, IEEE Trans. Instrum. Meas., vol. 47, pp. 11491154,
Oct. 1998.
[6]
, An agent-based measurement laboratory over internet, in Proc.
IEEE AUTOTESTCON, 1999, pp. 6166.
[7] R. A. Dudley and N. M. Ridler, Internet calibration direct to national
measurement standards for automatic network analyzers, in Proc. IEEE
IMTC, vol. 1, 2001, pp. 255258.
[8] A. Carullo, M. Parvis, and A. Vallan, Security issues for internet-based
calibration activities, in Proc. IEEE IMTC, vol. 1, 2002, pp. 817822.
[9] N. Oldham and M. Parker, Internet-based test service for multifunction
calibrators, in Proc. IEEE IMTC, vol. 3, 1999, pp. 14851487.
[10] X. Luo, D. Liu, D. Ye, R. Che, and C. Cui, Multi-agent based distributed
measurement systems in CORBA environment, in Proc. IEEE IMTC,
vol. 2, 2001, pp. 821826.
[11] Z. Papp and H. J. Hoeve, A multiagent based modeling and execution framework for complex simulation, control and measuring tasks,
in Proc. IEEE IMTC, vol. 3, 2000, pp. 15611566.
[12] Metrological Verification for Multimeters (Norma tehnica de Metrologie
NTM4-16-90: Verificarea metrologica a aparatelor electronice cu
afisare numerica (digitale) pentru masurat tensiuni, curenti, rezistente
in curent continuu (multimeter digitale), in Romanian), Romanian
Standardization Committee, 1993. Ed. Tehnica.
[13] K. Holbert and M. Albu, A signal processing laboratory employing
on-line teaming for remote experiments, in Proc. American Soc. Eng.
Education Ann. Conf. Expo. Nashville, TN, June 2003.

Mihaela M. Albu (M96) was born in Craiova,


Romania. She received the Ph.D. degree from the
Universitatea Politehnica Bucuresti, Bucharest,
Romania.
She is presently a Professor of Electrical Engineering at Universitatea Politehnica Bucurestiy.
Her research interests include power quality, instrumentation, and remote experimentation. During
20022003, she was on leave at Arizona State
University as a Fulbright Fellow.

Alessandro Ferrero (M88SM96F99) was born


in Milan, Italy, in 1954. He received the M.Sc. degree
in electrical engineering from the Politecnico di Milano, Milan, in 1978.
In 1983, he joined the Dipartimento di Elettrotecnica, Politecnico di Milano, as an Assistant Professor
of Electrical Measurements. From 1987 to 1991,
he was Associate Professor of Measurements On
Electrical Machines and Plants at the University of
Catania, Catania, Italy. From 1991 to 1994, he was
Associate Professor of Electrical Measurements at
the Dipartimento di Elettrotecnica of the Politecnico di Milano. Since 1994, he
has been Full Professor of Electrical And Electronic Measurements at the same
department. His current research interests are concerned with the application
of digital methods to electrical measurements and measurements on electric
power systems under nonsinusoidal conditions.
Prof. Ferrero is a member of AEI (the Italian Association of Electrical and
Electronic Engineers), ANIPLA (the Italian Association for Industrial Automation), he is Chair of the Italian Association on Electrical and Electronic Measurements, and he is member of the AdCom of the IEEE Instrumentation and
Measurement Society.

Florin Mihai (M02) was born in Ploiesti, Romania.


He received the M.Sc. degree in electrical engineering from the Universitatea Politehnica Bucuresti,
Bucharest, Romania, where he is currently pursuing
the Ph.D. degree.
His current research interests are concerned with
remote experimentation and database applications.

Simona Salicone (S01) was born in Milan, Italy. She


received the M.Sc. and Ph.D. degrees in electrical engineering from the Politecnico di Milano, Milan, in
2000 and 2004, respectively.
In 2000, she joined the Dipartimento di Elettrotecnica of the Politecnico di Milano as a part-time researcher on a research project aimed at the metrological characterization of complex, distributed measurement systems In 2004, she became a full-time researcher in the same department.
Ms. Salicone is a member of the Italian Association on Electrical and Electronic Measurements.

Вам также может понравиться