This case study has presented the development process of a distributed
control system in the factory automation domain. Such a system is charac-
terized by a variety of concurrent activities that need to be controlled and
The analysis of the problem emphasized a typical issue that affects
distributed systems, i.e. the consistency problem. The network introduces
unpredictable time delays in the communication between remote com-
ponents that prejudice the correct behaviour of the entire system.
Architecture model . The consistency issue has been addressed in the
design phase, where a centralized architecture for the plant simulator and a
server architecture for the control modules and the
supervisor station were chosen.
Distribution paradigm . Since the simulator's architecture is highly
structured and the fundamental components (tank and pump) are reusable
building blocks with well-defined interfaces, it has been judged appropriate
to expose these interfaces to remote clients according to the stub
Middleware technology . The resulting system is structured as a distri-
server system that builds on the Java RMI mechanism for
remote component communication.
Computer integrated manufacturing (CIM) systems build on large
client - server control architectures and factory-wide information systems.
They are created by integrating multi-vendor, heterogeneous and ad hoc
subsystems, and their development spans a relatively long period of time.
A manufacturing control system accomplishes the production process
without human assistance. Large, distributed control systems are difficult
to design and manage. The presence of multiple concurrent activities
increases the difficulty further. The design of a control system must
enforce functional requirements and non-functional requirements (such
as optimum performance, high dependability, etc.).
Forces or tradeoffs
Optimum performance of the entire production system is achieved by
having a centralized controller that receives input data from the
manufacturing facilities, equipment and physical devices, maintains the
global state information, computes the global optimum and commands the
remote peripheries accordingly. However, centralized architectures are
highly sensitive to system failures, since the whole system depends on the
availability of the single decision-making component. Furthermore, the
design of centralized control systems tends to be hard and expensive as
the physical systems are by their nature geographically distributed: even
when technologically feasible, a centralized decision point might require
prohibitive hardware and software costs, especially for large systems. In
addition, centralized control problems have to be solved with ad hoc
techniques. Every new problem must be solved from scratch.