Real Time System Editor


You are on:
Home > Data Acquisition Systems > RTSE

Overview

The Real Time System Editor (RTSE) turns Innovative's Data Acquisition and Signal Generation hardware into an off-the-shelf system ready to use. Providing  bandwidth from kHz to MHz on both analogue and digital signals across single and multiple channels. The user simply selects the signal processing blocks (tokens) from the library palettes, configures their parameters and connects the wires in the desired configuration. The system is now ready to run! No need to write any software!

RTSE works with the Matador and ChicoPlus family of boards to provide multiple channels of acquisition & replay, such as the Delfin with 32 24-bit ADC's & 6 24-bit DAC's. Systems can be scaled to use multiple boards of the same type to produce 64, 96, 128 etc channel systems.

RTSE makes use of all the hardware features that provide advanced acquisition techniques, such as synchronised sampling and triggering.

RTSE will stream ADC channels to disk, display real time plots in time & frequency domain, filter, FFT. Signals maybe generated or streamed from disk to DAC's. Digital TTL or ECL signals can be recorded to disk or replayed from disk.

RTSE has a UserCode facility so that users can easily write their own custom signal processing code in C/C++ if necessary.

RTSE allows users to save the system configuration to a file for future use.

Performance

RTSE is based around high performance PC's using Windows 2000/XP and (optionally) RAID systems. RTSE is built upon Innovative Integration's Armada toolset and OpenWire. This offers high performance streaming making the best use of the Pentium 4's memory interface and Intel's MMX & SIMD optimised Maths Libraries. All data is passed around as arrays, with the minimal number of memory copies.

For example, a Delfin with all 32 24 bit ADC channels running at 48ksps with all channels going into 350 tap FIR filters and the results going to disk file and 8 channels to a scope can be achieved with a 2.8GHz 800 MHz FSB Intel Pentium4 machine! That's ~6MB/s across the PCI, ~6MB/s to disk, and over 1000 million floating point math operations for just the filters, plus updating time graphs at 15Hz. Its impressive what can be achieved in Real Time on a Pentium with the right software!

System Editor


The System Editor is where the user chooses and wires up the necessary tokens for the desired system. Each token is given a name and a postfix which is the token number. Wires maybe connected individually or a bunch at a time, for example, all 32 outputs from a Delfin may be connected in one go to a DataLogger. The user can name each individual wire and the names are propagated to where wires are connected so the user can easily see what's going where.

The example above shows a SigGen (signal generator) and a ChFReader (channelised file reader) being summed and feed to a Delfin DAC channel. The Delfin ADC channel is feeding a ChFLog (channelised file logger) and 2 Scope tokens.

The System Editor also allows the user to configure the system to run multiple loops, stop on certain conditions (like End of File) and configure the streaming engine.

Scope

The Scope token provides visualisation and measurement facilities to single or multiple channels, in the Time and Frequency domain. The Scope receives all samples from the input wires and updates the display and measurements at the chosen rate. This is to conserve Host CPU bandwidth when rates are high. The Scope can measure Vppk, Vrms, frequency, period, rise time, fall time, Vmax, Vmin, Vmean, pulse width, duty cycle. The Scope can trigger from a chosen voltage level with time delay like a DSO. The frequency spectrum display includes averaging. 

File Access

RTSE supports two types of signal wire, ChF (channelised floats) and Blk (blockmode).

  • Blk mode wires contain the raw data format that comes from the hardware. For example a ChicoPlus with AD16's will supply raw 16 bit samples packed across 32 bit words, and that's the data format in the Blk wire. The advantage of this is speed! The Host CPU does not need to manipulate individual samples in the data.
  • ChF mode wires carry a single channel of data in floating point format, eg data from one ADC in floating point scaled to whatever units the user wants. This mode makes handling the data easy but it places a slightly higher load on the Host CPU.

RTSE has file access tokens for both Blk mode and ChF mode. These tokens provide read from file or write to file. The ChF tokens will handle multiple ChF wires, and assign a file to each channel, with optional indexed file naming so that filenames are appended with the channel number, signal name, time, date etc.

The user may set limits on file sizes for logging and instruct the system to stop or go to the next loop when the file is full/empty.

Maths & Filters

The Maths library contains token's for Signal Generation (Sine, Square, Triange, Gaussian, Random, Impulse), summing all inputs, inversion, Gain, Lowpass Filter, Highpass Filter, Bandpass Filter, Bandstop Filter, FFT and a FIR where the user specify's the filter coefficients.

UserCode

RTSE has a UserCode facility which allows the user or third parties to write a Windows DLL in C/C++ that contains tokens that can be accessed in a RTSE system. This is perhaps the most powerful aspect of RTSE, because it means a user can build a data acquisition system with no necessary knowledge of the hardware drivers etc and just write the signal processing code necessary for their application.

Above is an example for a token that adds all it's inputs together to make one output channel. It can be seen that accessing the data is simple in C/C++. Data is passed in and out as array's of floats, one array per channel. The user is told the number of samples and the sample rate. The token can have parameters that the user can set (9 floats and 1 string) and the parameters are passed back to the token at runtime.

Video Tutorials

Here are some links to video tutorials on RTSE.

Click on each to view the Video in Internet Explorer

Features