Development of a Tool for Control Loop Performance Assessment

This article describes the primary characteristics of a tool developed to perform a control loop performance assessment, named SELC due to its name in Spanish. With this tool, we expect to increase the reliability and efficiency of productive processes in Colombia’s industry. A brief description of SELC’s functionality and a literature review about the different techniques integrated is presented. Finally, the results and conclusions of the testing phase were presented, performed with both simulated and real data. The actual data comes from an online industrial repository provided by the South African Council for Automation and Control (SACAC).


Introduction
The need for reliable and effective control systems in the productive sectors of the industry has guided numerous investigations with a focus on the development of the monitoring and assessment of feedback control loop performance. The main objective in this field of research, also known as CPM, is to provide the operators and engineers of a plant the necessary information for determining whether the performance objectives and the desired characteristic response in the controlled process variables are being achieved [1][2][3][4][5].
Advances in literature and software development have been made in many countries like Japan, Brazil, and the USA [6], but remains a novelty in Colombia. Indutronica Del Caribe S.A.S., in collaboration with Colombia's Department of Science, Technology, and Innovation (COLCIENCIAS), decided to support the creation of a new tool to implement CPM in Colombia. This developed tool was named as Control Loop Assessment Software (SELC). Its primary purpose is to increase the operational robustness in industrial processes of the region and a novelty in Colombia. This paper's main objective is to present the methodologies followed in the development of this project and its results. In Sect. 2, we describe the proceedings followed, as well as the functional structure of the tool. Next, results of the tool's testing phase are presented in Sect. 3. Finally, Conclusions and possible aspects to improve are discussed in the conclusion section.

Methodology
To achieve the main objective of this project, four (4) methodological phases were defined. These are:

Functional Architecture Design
In phase 1, the stages that, in general, constitute the control loop assessment process were defined, using as reference Jelali's book [2]: • Benchmark selection. This step is concerned with the quantification of current performance and the selection of the benchmark against which the current control will be evaluated. • Assessment. In this step, we search for classifying the controller according to its performance, determining whether the controller can be considered healthy or, on the contrary, whether there are corrections needed to be made. • Diagnosis. When the analysis from the previous step indicates that the controller deviates from its desired performance, the causes for this must be identified, and the potential of improvement must be determined without disrupting the running system. • Improvement. After isolating the causes of poor performance, corrective actions, and possible solutions should be suggested to improve system performance.
Whether it is sufficient to re-tune, the controller must be determined and re-design or maintained the necessary loop components.
Each of these steps can be worked with different approaches and then properly integrated for a consistent performance monitoring strategy. The Control Loop Performance Software (SELC) developed to focus mainly on the implementation of the first three steps and provide the bases for the optimal implementation of the improvement step. Figure 1 shows the different functional blocks and several techniques that the tool must possess, using as a base the stages previously identified. Besides the assessment and diagnosis step, a pre-processing step has been added to remove any unwanted trend or noise, or to adjust the data scaling [2], necessary for the validity of the results.
Besides, performance assessment algorithms contain many options and parameters that the user has to specify. Due to this, the developed tool must provide each user with intuitive and simple access to the available functions and a way to input the necessary parameters. Also, results must be understandable and easy to read.

CPM Techniques Identification
As PID controllers are the most common type of controller in the local and national industry, chosen control loop assessment techniques for this type of loops were prioritized. To determine the methods to be implemented in the tool, the different criteria to be met by said techniques were established as followed [2]: • Non-Invasive: The process must not interfere with the normal functioning of the plant nor require special tests for obtaining the necessary data. • Objective metrics: The metric or standard must give an idea of the quality of the controller concerning a global standard. • Diagnosis Capacity: Ideally, the results must provide clues about the possible causes of bad performance, as well as the required actions to be taken. • Independent of Set-Point changes and disturbances: Given the number of setpoints and perturbations present in each loop, it is desired to ensure the tools' independence on these variables for comparison purposes. • Easy Estimation: preferably, the technique should not need extremely complex calculations or specific process knowledge, to avoid limitations in the application of the method in a real industrial case.
A literature review was performed to search for techniques for performance assessment and valve diagnosis that fulfill these requirements.
Performance Assessment. It was found that performance assessment methods are subdivided in two big families: Stochastic and Deterministic [7]. In general, stochastic methods can be applied with standard operation data and minimal process knowledge, but the information obtained may not be very conclusive. On the other hand, deterministic methods produce definitive metrics, with the disadvantage that the required data needs intrusive ways to get it.
In the stochastic category, we implemented the modification Harris index [8] proposed by Farenzena [9]. The signal is decomposed in three independent components: the time delay component, the control performance component, and the white noise component of the output. With this, we can define three new indices: The NOSI index, the DELI index, and the TUNI index, defined as shown in Eqs. (1)(2)(3). Notice that Harris index will be equal to 1 minus the TUNI index.
With these indices, it is possible to find which component is contributing the most to the total variance of the process, which facilitates the diagnosis process.
In addition, functionality was added to assess the response of a system against changes in the Set-Point. For this, the indices developed by Swanda and Seborg [10,11] based on settling time were used.
Valve Diagnosis. To allow preliminary diagnosis, the following methods for valve stiction detection were integrated to the developed tool: • Spectral Analysis: spectrograms can be a useful tool for the analysis of a signal in the frequency domain [12]. Spectral analysis can be useful for oscillation cycle identification in the output of a close system. These cycles can have different causes like wrong tuning, oscillatory disturbances, and actuators' problem. • PV vs. OP Graph: PV vs. OP graph can be used for the diagnosis of valve problems, using pattern recognition [13] or ellipse fitting [14]. • Kano-Maruta Method for stiction detection: Kano et al. [15] presented a datadriven model for stiction detection. It is based on the observation that stiction causes the appearance of sections where the valve position does not change even though the controller output changes. • Curve fitting method: He et al. [16] designed a method for stiction detection based on the shape that the signal takes after its first integrating component I a loop with stiction. The more triangular the signal's shape, the worst is the stiction degree.

SELC: Description of the Tool and Its Functions
After selecting the techniques to be implemented, the algorithm development phase started. In this phase, a programming platform was selected, and the code necessary for the tool operation was written. The chosen programming platform was Matlab due to the following reasons.
• A variety of functions and toolboxes.
• Simulink environment, a product for which there is no reasonable alternative yet.
• It is a compact platform: there is no need to install additional packages or IDLES.
• It is widely used in the scientific community The tool was named: "Control Loop Assessment Software" or SELC because of its acronym in Spanish. Per the functional architecture, an accessible and intuitive graphic user interface was designed. Functions can be easily accessed from a menu found at the top of the tool. Besides, some features use an auxiliary window for improving visual performance.
The Control Loops Assessment Software (SELC) allows its users to evaluate a control system by using both stochastic and deterministic methods. It also provides the option to perform a simple system characterization by fitting either a FOPDT or SOPDT transfer function. This characterization is especially useful for obtaining the time delay necessary for both stochastic and deterministic analysis. Other functionalities include: • Data Pre-processing techniques, such as scaling, mean removal, filtering, data sectioning, and sample time modification. • Signal Analysis Techniques, such as spectral analysis, autocorrelation, and crosscorrelation analysis, PV vs. OP graph, and stochastic and deterministic methods for loop performance. For its correct functioning, the data must be introduced in a comma-separated value format, organized in 4 columns, where the values for time, process variable, controller output, and set-point must be introduced. A typical view of SELC's user interface with data loaded can be seen in Fig. 2.

Test Phase Results
In this section, we present the results of the different test cases used to evaluate the performance of the tool.
CASE STUDY I: Assessment indices estimation with step Setpoint change.
In the first scenario, we modeled a chemical reactor's temperature control loop using the one provided by Smith and Corripio [17,Ch. 9] as a reference. White Noise with power 10 −B was introduced to the system to determine the influence of noise in the system performance. The Set-point value for the process was initially set at 87.5°C, with changes of 10°C, −30°C and 24°C at the instant 100, 300, and 800-time units after the beginning of the simulation.
Once concluded the simulation, the error, defined as the difference between the setpoint and the process variable, was calculated using the tool, as shown in Fig. 3. Using the error, the performance indices were calculated, which showed a significant impact of the time delay over the total variance of the process.
After this, a more focalized analysis was made by characterizing the system using the methods provided by the tool. A FOPDT transfer function was fitted to the process, with a goodness of fit of 90%. The parameters are shown in Table 1.
With the estimated time delay, the performance indices are calculated again with the results shown in Table 2. It is, then, confirmed that the time delay is the main contributor over the total variance of the process. This result goes matches with Smith   [9], a test for the quantification of the influence of the controller gain, time delay, and white noise over the total variance of the process was designed. In the first test, the controller gain K C was changed over a predefined range of values. The generated data were extracted, and the performance indices were calculated using the developed tool. In Fig. 4, it can be seen the plots of some of the datasets generated. A graph with the overall results is shown in Fig. 5. As can be seen, the TUNI index reports a high value when the controller is not able to respond adequately to changes in the process because of a small controller gain. The TUNI index reaches its minimum for a controller gain around 0.4%CO/%TO and then increases again because the system acquires an aggressive/oscillatory behavior. It can be concluded, then, that the TUNI index successfully captures the impact that the controller gain has over the whole process and that the developed tool is successful in estimating its value.  Results show how the NOSI index quantifies the increment successfully in white noise in the system. However, the DELI index maintains its importance over all the tests because of the nature of the process. Plots for some of the tests performed are shown in Fig. 6, with its respective performance indices. A graph with the overall results is shown in Fig. 7.  Finally, a test was performed to quantify the influence of time delay on the total variance of the process. The FOPDT model fitted previously was used to generate the data for this test by repeatedly changing the time delay value t 0 . Overall, it was shown that the DELI index successfully captures this variation, until the point where the controller is unable to respond adequately to the process, therefore causing instability captured by the TUNI index. The plots for some of the tests performed can be seen in Fig. 8. A graph with the overall results is shown Fig. 9.  Tests were made for demonstrating the tool's ability to assess control loops systems using the performance indices developed by Swanda and Seborg [10,11]. A stirred reactor was modeled in Simulink, using as a base the one found in Smith and Corripio's book [17,Ch. 13].
For this system, a set-point step change was programmed to occur at 15-time units, with two different sets of control parameters. The simulated output data was extracted, and SELC was used to assess each loop by the calculation of the deterministic indices. The different sets of parameters used in the case study are shown in Table 3. Set one is a modification of the model's original controller. Set two was obtained by using the optimization function fminsearch, found in MATLAB's optimization toolbox, using as a cost function the integrated absolute error of the output data concerning the Set-Point, shown in Eq. (4): As expected, the analysis's results show that controller 2 has a better performance than controller 1. Swanda and Seborg's performance classes place controller 1 in the Excessively Sluggish range and controller 2 in the Fair Performance range. We can conclude, then, that SELC was successful in assessing both controllers using the deterministic analysis. A summary of the results can be shown in Fig. 10.  CASE STUDY IV: Valve diagnosis for stiction using repository data. South African Council for Automation and Control (SACAC) provides access to an industrial PID data repository from different sectors of the industry [18]. The repository recollects information belonging to some faulty control loops, which includes categorization of the fault, a basic summary about the loop's nature, and the recorded data for the fault detection tests. For this case study, we tested the tool's ability to detect stiction by using the datasets found in the repository's stiction section.
Dataset 1 belongs to a pulp and paper plant's flow control loop with valve stiction detected [18]. The provided data was organized in the required format and charged to SELC's workspace. Plots for process variable and controller output against time are shown in Fig. 11.  Data pre-processing by normalization was made, and Kano-Maruta's method A [15] for valve stiction was used due to its high effectiveness in detecting stiction in flow control loops. As expected, valve stiction was detected successfully with a 0.28 stiction index. The curve fitting method is not recommended in this case, due to the irregularity of oscillations. For more information, refer to [16].
Dataset 2 belongs to a chemical plant's faulty level control loop with valve stiction detected [18]. More detailed information can be found in Thornhill's work [19]. Plots for process variable and controller output against time are shown in Fig. 12. As this is a level control loop, and there is no information available about valve position, the Kano-Maruta method is not recommended for valve stiction analysis [15]. Instead, we used curve fitting analysis on the process variables, as the level control loop tends to have an integrating nature [16].
The data was loaded to the tool's workspace, normalized, and filtered with a 2-time unit filter constant value. As there is a disturbance that may disrupt the results at time 5582, we sectioned the data till time 5500. The result confirmed the presence of valve stiction with a 0.73 stiction index, as seen in Fig. 13. CASE STUDY V: Tuning assessment using repository data.
For this case study, we tested the tool's ability to detect lousy tuning performance by using the datasets found in the repository's tuning section [18]. Dataset 1 belongs to a pulp and paper plant's quality control loop with indications of tight tuning [18]. The data was organized, loaded in the SELC's workspace, and normalized. Plots for PV vs. time and OP vs. time are seen in Fig. 14. Characterization made using SELC gave a 13.5-time unit delay. Discretized, this would be a delay of 15 discrete inputs. Performance assessment over a delay range from 10 to 20 discrete inputs was made, and it was discovered that the loop presented a TUNI index value close to 1 for every case, as seen in Fig. 15.
Besides, stiction tests were performed to discard it as the cause of a high TUNI index. Horch's correlation method [20], Kano-Maruta's method A [15], and the curve fitting method [16] were all used for the valve stiction detection, all of them with negative results, as seen in Fig. 16. Although not guaranteed, we can conclude a wrong tuning as the possible cause of bad performance in this loop, keeping in mind the need for testing for another type of faults (faulty sensors, an external disturbance, etc.).  Dataset 2 belongs to a chemical plant's flow control loop with traits of sluggish tuning [18]. As proceeded before, data was organized and normalized. Plots for process variable and controller output can be seen in Fig. 17. As Set-Point is variable in this dataset, the analysis was performed over the error. Characterization made using SELC gave us a process time delay of about 4.5-time units or six discrete inputs. Following this result, performance assessment was estimated over a range from 1 to 10 discrete inputs, showing an average TUNI value of around 0.87.
Tests for stiction detection using Kano-Maruta gave positive results, so further analysis is required. The curve fitting method is not reliable due to oscillation irregularity.

Conclusions
This work presents the development process of the Control Loops Assessment Software (SELC), which started because of INDUTRONICA DEL CARIBE's desire for innovation and new product development. This tool rises as an excellent opportunity for the improvement of the efficiency and economic profitability of industrial processes in a country like Colombia, while also helping INDUTRONICA DEL CARIBE to  increase its portfolio. The tool's functional architecture includes the options for data pre-processing, signal analysis, and fault diagnosis, and a literature review of each step was presented. Finally, we showed the results of the tool's testing phase, where it was proved SELC's ability for performance assessment and diagnosis. Nevertheless, it is still necessary to test the software with technical data of the region but, at the time of this paper's creation, we are still in the process of contacting industrial plants for the necessary data. Besides, improvement in SELC's functionality should also be considered, like making the software work in real-time.