|
Features
EuroSim Hardware Interfaces During Simulation
For projects which are in later phases of development,
there is often a need to combine pure simulation with real
equipment or breadboards. This could be necessary for
testing onboard software running on a separate platform;
or maybe experimenting with an engineering model.
Alternatively, it may be desirable to interface to another
simulation facility which offers dedicated support in a
specialised area.
EuroSim offers all of the above possibilities, by
providing a set of standardised interfaces so that
communication is possible with other equipment or
simulators at runtime. The various possibilities are
described below.
Interfacing External Devices to EuroSim
Support for the following interfaces/protocols is
available: serial, VME, TCP/IP, MIL1553B and GPIB. All of
these allow equipments to be included as input and/or
outputs within the simulation processes: so-called
hardware-in-the-loop simulations.
To maintain the real-time performance of the simulator,
any calls to these interfaces from EuroSim models need to
use the provided library calls which are based on standard
Unix communication calls.
Synchronising Another Simulator with EuroSim
By default, EuroSim uses the SGI internal clock (itimer)
to synchronise the scheduling. However, if an interface to
another simulator is required, the synchronisation of the
two sets of simulation activities is an important factor.
Various options are available through the use of the
external interrupt device driver (available on SGI
Challenge/Onyx platforms):
-
EuroSim tasks can generate output interrupts to one of
the external interrupt drivers (which can be used to
generate pulses to synch the other simulator)
-
EuroSim tasks can be triggered on receipt of an incoming interrupt
-
a user defined handler can be installed for incoming interrupts
-
input interrupts can be used as the (external) realtime
clock of the EuroSim scheduler, instead of the
default itimer mechanism
Exchanging Data/Events Asynchronously With Another Simulator
A library is also provided to allow another simulator
(acting as an external client) to connect to a Eurosim
simulator across a TCP/IP interface and to establish a
loose (asynchronous) coupling between the two
simulations. From the moment that the two simulations are
coupled, the client will receive the state changes of the
EuroSim simulator, and has read/write access to (a subset
of) the EuroSim data dictionary.
The data access is implemented through creating a 'view'
of the data dictionary, which can be the complete set of
model data items, or a subset chosen according to the
local simulation needs. A 'view' is a local copy of the
required data variables, which is then updated at regular
intervals across the network. The client can specify the
update frequency and if the data is to be compressed
(sending updated values).
|