The object model of the experiment is described using State Manager Language (SML). This language allows detailed specification of the objects such as their states, actions and associated conditions. The main characteristics of this language are :
object : RUN_CONTROL
state : READY
action : START_RUN
do MOUNT TAPE
if (TAPE not_in_state MOUNTED) then
do MOUNT_ERROR ERROR_OBJ
move_to ERROR
endif
do START READOUT_CONTROLER
if (READOUT_CONTROLER in_state RUNNING)
move_to RUN_IN_PROGRESS
...
state : RUN_IN_PROGRESS
when (TAPE in_state FILE_FULL)
do PAUSE_RUN
when (READOUT_CONTROLER in_state ERROR)
do ABORT_RUN
action : ABORT_RUN
...
object : READOUT_CONTROLER/associated
state : READY
action : START
...
state : RUNNING
action : PAUSE
action : ABORT
...
In DELPHI the full online system is controlled through this mechanism, the various areas of DELPHI have been mapped into SMI domains: sub-detector domains, DAS domain, SC domain, TRIGGER domain, etc. The full system comprises about 1000 SMI objects in 50 different domains.
A high level of automation of the experiment's control system is very important in order to avoid human mistakes and to speed up standard procedures.
Using the SMI mechanism the creation of a top level domain - BIG BROTHER - containing the logic allowing the interconection of the underlying domains (LEP, DAS, SC, etc.) was a very easy task. Figures 4-1 Big-Brother Control
Under normal running conditions BIG BROTHER pilots the system with minimal operator intervention as shown in Figure Figure 4-1. In other test and setup periods the operator becomes the top-level object, using the user-interfaces he can send commands to any SMI domain.