Every Property can be sampled at a specified sustained frequency, up to 200
Hz, limited by hardware.
A sampling frequency of 1KHz for a limited number of Distributed Object Properties
must be allowed in order to implement a "virtual oscilloscope" whereby, for
example, noise sources in the IF chains can be correlated and identified.
The Sampling System is equivalent and covers the requirements of the Fast
Data Dump in [RD45 - EVLA Engineering
Software Requirements, 1.2 Fast Data Dump], although it is not integrated
in the Object Explorer.
The Event and Notification System transports sampling data.
The samples are stored in a data file for later analysis or to be passed to
applications like MatLab for analysis of engineering data [RD45
- 1.1-R8]. Every sample is time-stamped to allow correlating data from different
sources. [RD01 - 4.3.1. Sampling]
The samples can be plotted in near real-time on a user interface on the operator
terminal or any other user station. The plotting application subscribes to the
sampling data from the notification channel, which is fed by the sampling manager, and
periodically updates the running plot with the new data [RD01
- 5.1.4 Analysis tool]. The plotting application can also display sampling
data from data files. The plotting application can be:
- A Java application that uses Java plotting widgets and in particular widgets
aware of the Property internal structure to define plotting scales and units.
- A COTS application, like LabView[RD13]
[RD01 - 10.5.7 Analysis and plotting],
with advanced plotting and analysis capabilities.
Multiple samples can be super-imposed on the same plot with the same time
base, even if the data are received from different distributed objects, possibly
on different antennae (Partially implemented).
Also, it should be possible to plot samples against one another, an example
being VI curves (voltage vs. current) used in biasing mixer junctions (Not
implemented yet).
Data transport is optimized. The samples are NOT sent one by one to the central
control computer responsible for storing data, but are cached on the local computer
and sent in packets (for example with 1 Hz. Frequency). This is of primary importance
to keep network load under control. [RD01
- 4.3.1. Sampling]
There is a sampling engine implemented as a Component:
It can be activated on any local computer
Can be configured to sample one or more Properties at given frequencies.
It sends periodically at low frequency packets of data to a sampling
server that stores the data for later analysis or provides them to near-real-time
plotting applications.
Sampling must not reduce the performance of the control system or
the network. The caching of data will reduce network traffic while assuring
that the sampling processes runs with lower priority than control processes
will reduce the impact on the performance of the control system.
Figure 3.21: Sampling architecture
XML seems an interesting data format for sampling files. This format allows
also easy data exchange with relational databases. Style sheets based on the
eXtensible Style Language (XSL) can be used to transform XML files in other
formats, like simple ACSII blank delimited tabular files.