Distributed controllers

Discrete model

Distributed control systems may include several autonomous controllers either working asynchronously (with data exchange via network), or co-existing within one device thus being synchronized. The distributed architecture may create new trajectories in the system’s state space which are not the case in local centralized architectures. Consider the case of two previously presented subsystems working concurrently.

 

Figure 1. Two concurrent processes in the plant being observed by two independent controllers.

 In the non-timed model the greedy transitions ensure that the model generates all possible sequencing of commands. In the state presented in the Figure there 12 enabled steps: {{tg1,t3},{tg2,t8},{tg1,t3,tg2,t8}} X {{},{t2},{t7},{t2,t7}}. For example: { tg1,t3,t2},{tg2,t8,t2,t7}, {tg1,t3,tg2,t8}, etc. Thus, the step {tg1, t3} models the situation when the Observer1 has started processing, while the other observer still has not.

The proposed solution allows easy change of the from distributed to centralized architecture. To model placing both observers in the same controller device (syncronization), it is enough to substitute the two tick generating transitions tg1 and tg2 by tg12 as shown in the Figure 1. Then only 4 steps would be possible in the given state: {tg12,t3,t8} X {{t2},{t4},{}}.

Timed model

In timed models behavior similar to the “greedy” transitions is modeled  by means of synchro-sets. All transitions in the controller part of the model, which  are driven by the “greedy” in the non-timed model, are marked as members of a particular synchro-set, associated with the controller. Membership in a  synchro-set has the only consequence on the firing of transitions: all enabled transitions belonging to the same set are included in the firing step only all together. It has no impact in the simplest case when a module has the safe marking and one firing spontaneous transition at once. But in case of several simultaneous actions taking place in controller there is need to separate them out from other groups of actions taking place in other controllers.

Figure 2. Synchro sets 

In the example in Figure 2  we define two synchro sets : S1={t3,t4,t5} and  S2={t8,t9,t10} to model the allocation of the observers to separate devices. Reachability graph for this model is presented in Figure  with initial state S1 equivalent to that shown in Figure and with clock values equal to 0 at all places.

Figure 3. Reachability graph for the timed model with two synchro-sets
(The “observers” reside in independent devices). The bold arcs have duration 1.

Path in the reachability graph corresponds to a particular scenario of system’s operation. Consider, for example, the path outlined in Figure 3. The state/time diagram of the model propagating along this path is shown in Figure 4. Behavior along the path is as follows: the observer 1 starts computation in respond to occurrence of the marking in p2. It makes two computation steps before the observer 2 starts its execution in respond to another event (marking in p7). Since the results of computations may be used by other controllers, their sequencing is important.

Figure 4. State/timing diagram of the outlined path in the reachability graph.
(Small intervals represent states with zero-duration, larger intervals represent states with duration 1).


© 2003, Martin Luther University of Halle-Wittenberg, Automation Technology Lab.
Recommended browser: IE4.0 or higher
Document created and maintained by: Valeriy V. Vyatkin