1 Automation, Department of Electrical Engineering, Technical University of Denmark2 Department of Electrical Engineering, Technical University of Denmark3 Automation and Control, Department of Electrical Engineering, Technical University of Denmark4 Department of Chemical and Biochemical Engineering, Technical University of Denmark5 F.L. Smidth A/S
High-level control systems have been utilized in the process industry for decades, and also in cement production their use is well established. In comparison to manual control their ability to increase production and quality of end product, while reducing energy consumption and emission, is well recognized. Therefore, the payback time may be less than one year. It is common however, that the systems are disabled only a few months after commissioning because the process has changed in such a way that it does no longer matching the systems’ tuning. The cause of this can be raw materials changing, wear of machinery, and reconstruction of the plant etc. Therefore, in order to keep a constant, high performance, the high-level control system requires regular maintenance by means of expert personnel readjusting and modifying the algorithm, which is resource demanding. The aim of this Ph.D. project is to minimize or eliminate the amount of resources needed to keep a high performance. Current high-level control algorithms are sophisticated and complex software. An analysis of such algorithms shows that only 10% of the source code can be considered implementation of control theory. The remaining 90% handles other tasks but nevertheless still require maintenance. For the 10% of the algorithm that is control related, the maintenance issue is to some extent addressed by research topics such as adaptive control, which aim at retuning the parameters of the algorithm to match the changing process. In this project however, it has been chosen to focus on the remaining 90% of the algorithm which still require manual modifications to cope with a changed process. Although this issue has gained limited attention from academia so far it is well recognized by the industry. In the process of maintaining an algorithm it has turned out that navigating the source code, understanding the interaction of signals and tracking down the statement in the code responsible for the problem is the issues which require expert knowledge and they are very time consuming. In contrast, it is relatively simple to conduct the actual modification once the few statements to be modified have been found. Current SCADA systems allow logging of signals while the control system is running which may be useful in the diagnostic process. However, each signal to be logged must be explicitly specified, and typically only measurements, setpoints and key performance indicators are therefore logged. Thus, critical algorithm-related information is not available post-mortem. A number of tools and methods has therefore been developed which aim firstly at monitoring a running algorithm to raise an alarm in case the algorithm starts to 3 behave abnormally. Secondly, a set of tools and methods are proposed to help the human expert to diagnose and locate the part of the algorithm that is responsible for the malfunction. These steps are based on information extracted from the algorithm at runtime by means of a technique called program slicing. Thus, instead of monitoring the process to detect changes, attention is focused on the control algorithm itself. In addition to the signals already logged by the SCADA system, enough data is collected at each execution of the control algorithm so an exact replay of its execution can be performed later. The resolution of this replay is down to single-stepping through the lines of source code, keeping track of variable values from the execution of one statement to the other. The method has been tested on a full scale control algorithm, showing that computational cost at runtime is neglectable and that the amount of additional data to be logged is compatible with the storage capacity of current computers. Preliminary statistical analysis of the logged data shows that normal and abnormal behavior of a real-world control algorithm can be distinguished so an alarm can be raised. The method enables backtracking of signal dependencies in the algorithm which can be used to semi-automatically guide the human expert to the responsible part of the algorithm. This feature is demonstrated in a simple control algorithm.
Main Research Area:
Andersen, Nils Axel, Recke, Bodil, Recke, Bodil Olesen, Ravn, Ole