Transmission Test Stand Control System
The system is for testing automotive transmissions, clutches, pumps (e. g.
power steering gear pumps) and similar equipment both in the production and
the product development environment.
Below, the links marked with an * lead to JPEG screen shots and may take some time to load.
The system is a multi-processor VMEbus based system using PowerPC MVME2600
series processor running pSOS+ (back-end) for the data acquisition and real-time processing; VMIC
VMIVME7686 PC running NT 4.0 (front-end) for the user interface; and Allen - Bradley PLC-5 VME (PLC-5/V40L) for
the machine motion control. The back-end processor is also a system controller. All I/O devices are controlled
by the back-end processor and include Acromag AVME9325-5 200 Khz 16/32 channels scanning A-D cards and various
SBS (GreenSpring) Industry Packs such as 16-bit A-D, IP-Quadrature (4-channel quadrature/up-down counter),
16-bit D-A converter IPs, and IP-Unidig (Discrete I/O) IPs. An 8 GB Ultra SCSI VME form factor disk storage
module is connected to VMIC PC. The module provides front panel SCSI connector for various external devices.
All communication between bus-masters (front-end, back-end, and PLC) during system operations is via VMEbus.
The back-end program is loaded, at system startup, using a TFTP server.
From the user's perspective, the software consists of four groups of programs:
Test Result Manager,
User PLC Interface Software.
The back-end program has been developed using DIAB C++ compiler and SDS debugger; all NT application has been
developed in VC++.
The Test Manager consists of two cooperating components communicating via VMEbus: the back-end program and the
front-end program, and executes the test sequence. The front-end part of the Test Manager allows some interactive
control over test sequence execution and manual machine manipulation using
built by the Setup Editor. It
also provides on-line presentation of test data via HMI forms and strip charts, as well as real-time display of
(usually used for machine debugging and calibration). The back-end component of the Test
Manager contains its I/O subsystem and the commands, alarm program, and test sequence execution engine.
At system start time, the front-end part of the Test Manager reads the system configuration file built with the
Setup Editor and sends it to the back-end via VMEbus backplane. The back-end verifies that the configured devices
are, in fact, present, configures and starts the device drivers, and starts the I/O subsystem to collect the data
from external devices according to the logical and physical channel definitions contained in the setup file.
The alarm program, if contained in the setup file, is started immediately after I/O initialization and executes
(specified in the setup, usually 20 ms). From that point, the back-end continuously collects
input data from all external devices and outputs to the external devices as requested by the alarm program, or
by commands as they are received from the front-end. The back-end maintains an I/O history buffer, arranged by
logical channel, containing all input and output values for a period of time defined in the setup (usually 5 to
10 seconds). The input data rates are, at present, 2 Khz for scanning A-Ds, 1 Khz for quadrature data, and
once-in-a-time-slice (50 Hz at 20 ms) for the channels assigned to PLC and discrete I/O. All outputs are at
(defined in setup, usually 500 ms) the back-end sends the most recent part of its history
buffer to the front-end. The latter maintains approximately 30-second long continuous I/O history buffer used
for on-line presentation in the form of
and for archiving of data upon user or programmed request
(taking snapshots). The strip charts of data recorded in the snapshots can be displayed off-line using the
Test Explorer application.
The test sequence can be executed by the Test Manager either upon interactive request from a user or automatically
via programmed (see below) interface. For example, the test sequence can be started when an alarm program detects
a bit set in PLC (part arrived) with the PLC also supplying the product and part number information read from an
RF tag. In case of manual initiation the required information is supplied by the user interactively. In either
case, the front-end reads the test sequence files and the related model parameter file. It, then, substitutes the
value of model parameters for their symbolic names, formats the sequence, and ships it to the back-end via VMEbus.
The back-end begins executing the sequence immediately upon receipt.
The Test Result Manager consists of two components, both running on the front-end. First, the Log Processor, runs
as an NT service, at the specified time interval. It processes the test log files written by the Test Manager and
saves the accumulated results in a Microsoft Access database. The second, Test Explorer, is an interactive application
providing the access to the result database and to the I/O data contained in the snapshot files.
The Test Explorer can be ran from another Windows computer connected to a network.
The editors allow the user to configure the system and to build individual test sequences; they are
Test and Step Editors,
Model Parameter Editor, and
All editors are interactive applications on the front-end; they have no direct interface to the Test Manager.
The editors can be ran on another Windows (NT or Win95) machine.
The Setup Editor is an interactive tool for building the system configuration. First, it is used to specify
used in the system, their VMEbus addresses and basic
characteristics of the device drivers*;
second, to build the list of
logical I/O channels*
them to the physical I/O channels on the
devices specified in the first step; third, to build a set of
that can be executed
the Test Manager, or
from other programs (such as alarm); and fourth, to build an alarm program used
by the Test Manager to monitor the test stand condition. The commands and the alarm program are written in the
built-in interpreted language and are executed by the back-end component of the Test Manager.
These four components of the system configuration are written to a file that is read by the Test Manager.
The Test and Step Editors are interactive tools for building test sequences. A
is a sequence
of blocks; each
being a group of test steps that can be repeated a specified number of times. A step
is a set of two programs,
written in the same interpreted language
as the commands and the alarm (see above). A step initialization part of each step is executed once; a step
condition is executed each time slice (the value of the time slice is specified in the setup, 20 ms is typical)
and can be
pre-defined time period or explicitly by EXIT_STEP, EXIT_BLOCK, or EXIT_SEQUENCE
statement (either in the initialization or condition part of a step). The execution of both, the step
initialization and step condition begins at the same time. Upon termination of a step the execution
of a sequence continues with the next step in the same block, if any, or with the next block in the sequence
if no more steps is left in the current block or if the step was terminated by EXIT_BLOCK.
The execution of a block continues until it either has been executed prescribed number of times or until
either EXIT_BLOCK or EXIT_SEQUENCE has been encountered. Upon termination of a block the sequence continues
with the next block, if any, or terminates. The EXIT_SEQUENCE causes the sequence to be terminated immediately.
The Step Editor also provides a facility to define, for each step, the continuous waveforms
is played into a user designated output channels, usually D-As; any waveform built from a constant, a ramp,
a quarter sine, a half sine, and a sine of various amplitude and duration can be used in a profile. All
profiles defined for a step begin to play at the beginning of a step execution. A profile on a specific
channel is played until either another profile for the same channel is defined by another step or until it is
explicitly stopped by the language statement. Upon termination of a sequence all active profiles continue
The test sequence is represented as a set of files: a file for the sequence itself, a file for each block,
a file for each step.
The test sequence is executed by the back-end component of the Test Manager.
Model Parameter Editor*
allows the use of symbolic names for the values used in a test sequence that vary
from model to model within the same product or product family thus greatly reducing the number of the test
The Model Parameter File produced by the editor is read by the front-end component of the Test Manager.
The Form Editor is an interactive tool for building
used for display of selected channel values
and for manual intervention during sequence execution. A specific form can be loaded into the Test Manager
interactively or requested using the LOAD_FORM language statement.
The Allen-Bradley RXLogix package running on VMIC PC is used for PLC programming; RSView is used for the
PLC panel interface.
Back to the SEA home page