A Reusable Framework for Rolling Mills

Esprit Project 22897
Software Technologies
to home page

Background and State-of-the-Art

Siemens AG as one of the major European developers of process automation systems has identified the costs of software development as the key factor of European competitiveness. By now European companies are the market leaders in process automation of rolling mills. Current numbers indicate, however, that this market position is going to change in favour of US and Far East companies.
The software for rolling mills is currently developed with traditional programming languages (Fortran, C) which restrict the reuse of software to a rather low level (source code and procedure libraries). To uphold their market position, European companies have to increase reuse in order to cut down their software development costs.

In contrast to currently used techniques, object-oriented languages and frameworks allow software reuse on a much higher level (design). Instead of individual procedures, the whole logic of systems can be reused. This speeds up software development and improves the quality of software (correctness, robustness, uniformity, maintainability). Because of the large diversity of rolling mills, differing in types and many details, the technical domain of rolling mills is an ideal and novel application area for frameworks.

Process Automation and Optimization of Hot Rolling Mills

A hot rolling mill transforms metal bars (steel or aluminium) to thin metal strips by rolling them under high temperature and force (Figure 1).

Figure 1. Schematic model of a hot rolling mill

Using special hardware (sensors, actuators), this transformation is supervised, controlled and visualized by a software system which is called a process automation system (PAS). In addition, a PAS collects process data and uses them to optimize the above process. A PAS is a self-contained part of inter- operating software systems (Figure 2) which include a production planning and control system (i.e., the planning and coordination of work tasks) and basic automation (e.g., measuring instruments, stand control systems). A typical task of a PAS is to compute the speed and the roll force for all stands using measured data according to mathematical and physical models.

Figure 2. Software levels in rolling mill automation

Although different types and configurations of rolling mills share characteristics, the software for process automation systems is usually rewritten from scratch for every new project. Reuse-if at all-takes place only by browsing for individual algorithms in source code or procedure libraries. Reusable code is extracted in a tedious and error-prone way. Software development makes up 30% of the total costs of a PAS.
Siemens, Mandator and USP are committed to strengthen the efficiency and quality of industrial software development in Europe by exploring the promising new technology of object-oriented frameworks.

Quality Assurance for Work Products

In process automation-as in any industrial field-the quality of work products (e.g., the thickness of metal strips) has to be controlled and guaranteed. This is usually done by collecting process data (descriptors) from which certain target parameters (goals) are derived. Depending on the actual problem and the structure of the collected data, different goal-finding techniques can be applied, for example, mathematical models, inductive learning strategies (ID3, AQ), conceptual clustering, fuzzy logic, neural networks, genetic algorithms, or rule bases. These techniques can be easily interchanged if they are modeled in the form of an object-oriented framework.

In order to find a (combined) model that supplies the most accurate prediction, experiments have to be performed. For this purpose comfortable data and model manipulation techniques have to be provided and the selected model has to be transformed from a learning system into a production system.


An object-oriented framework is a semi-finished software system that can be adapted to different needs by plugging in custom components or by extending particular parts of the framework. The underlying technique is object-orientation, which allows reuse and extensibility on a high level, i.e., without modifying or studying existing code. Frameworks capture the common aspects of several applications in a certain problem domain. They represent the core of any application in the domain and can be customized by programming only those parts which are specific to the application under development.

The benefits of using frameworks for software development are: Frameworks emerged in the late eighties and have become rather popular recently. Some frameworks have been developed so far but mostly in the academic field and mostly for domains such as graphical user interfaces or operating systems. There is hardly any framework for industrial domains, partly because industrial domains have to deal with tough requirements, partly because developing such a framework requires profound domain knowledge which is usually not available at universities. Such frameworks can only be developed together with domain experts from industrial partners. This is one of the goals of the proposed project.