RLS filter approach for linear distributed canning industry optimization Author Sternheim Misuraca, M. R. Degree in Electronics Engineering, University of Buenos Aires, Argentina Project Engineer, Sistemas Industriales, ABB Argentina Email: mariano.sternheim@ar.abb.com Sponsor and site coordination Barberis Tosti, W. E. Degree in Electronics Engineering, University of La Plata, Argentina Production Manager, Lubricantes y parafinas - CILE, YPF Argentina Email: walter.barberis@ypf.com Abstract In this paper we present a first order, adaptive recursive least squares (RLS) stochastic filter to conduct real-time, on-line estimation of the optimal weights of a distributed linear canning station. This approach will allow for real time, optimal weight target distribution, which adapts to process values changes that would affect filling speed, such as fluid pressure and temperature. The system was successfully implemented through an AC800M controller in the 205 liters canning plant of the Complejo Industrial de Lubricantes y Especialidades (CILE) of YPF Argentina, as part of a mass modernization plan of the CILE plants. Productivity of the plant increased 1.5-15+%, and operators were relieved of manual adjustment of weight target distribution, which is a very demanding task. 1 Introduction and problem set up 1.1 Linear canning machines Linear canning devices are common in several types of industries. They are usually equipped with low cost PLCs which execute basic programs to run the machine. Their processing capacity is very limited, and code access and reprogramming is difficult and sometimes not possible. They are not oriented to optimize production. In contrast, ABB offers high end, advanced controllers which allow for process management and, in parallel, process optimization. Also, ABB programming language is easy to read, modify and debug. It s a solution designed for program 1
1 Introduction and problem set up 2 enhancement and optimization. In this case we will inspect the 205 liters oil canning machine of CILE complex in YPF La Plata, Argentina. This system was developed in the context of a mass modernization plant for the complex, for which ABB has developed the revamping of the intelligent warehouse and of the canning machines of 205L, 20L and currently 4L and 1L. One of the goals of YPF is to optimize their plants after revamping is concluded. The process is managed by an AC800M controller, running on an 800xA system. After installing the system, we developed the optimization program that is described in this paper. We start describing the device and process. The canning machine is separated into different stations, sequentially performing a specific task to the containers. The stations are linked by a linear conveyor, which moves only when all stations are done with the container they are performing its task on - see figure 1. Functionally, every station starts its appropriate task when the conveyor stops. When all stations are done, the conveyor carries each container simultaneously to the next station, and the process is repeated. The issue at stake is that if a station takes too much time, it bottle-necks production, since all the others must wait for it to finish to receive the next container and perform the appropriate task. Fig. 1: Plant PG2 workplace - running under 800xA system The canning device includes seven stations 1. The first station rotates the container so the oil injector (located in the filling stations, which are the 3rd and 4th stations) will be aligned to the container oil input. In the process, the serial number is printed on the side of the container. This is standard procedure in canning industry.
1 Introduction and problem set up 3 2. The second station removes the container s cap, and pushes it forward to the capping station (5th position). 3. The third station partially fills the container with oil, up until the set weight limit. Filling speed is fast. 4. The fourth station completes the container full capacity (205 liters). Filling speed is fast until a few liters remain, which are completed using slow fill. 5. The fifth station caps the container. 6. The sixth station seals the cap. 7. The seventh and last station checks the sealing. In figure 2, we see the architecture of the filling section. It consists on an AC800M PM866 controller, which uses profibus to communicate with S800 I/O and the Hardy scales which read container weight from its respective load cell. Injectors are managed by the controller. It is important to note that the filling stations have dual speed injectors, slow and fast fill, opened through electro-valves. Valve opening is set mechanically, and actual speed depends on such opening - set by operators to can as fast as possible constrained to avoid oil splashing or emulsifying, and also depends on fluid temperature, pressure, density, etc. 1.2 Simultaneous filling Fig. 2: Filling section system architecture The reason why there are two filling stations is that the filling process lasts around twice the time the other stations demand. If there were a single filling station, after half the container is filled, all other stations would have finished, and then would have been forced to wait until the single filling station finished.
1 Introduction and problem set up 4 By having two filling stations, all stations should work simultaneously with no dead time. Fig. 3: Filling stations Filling the container, despite of being split in two stations, is still the most time-taxing station. Considering that the sum of the amount of oil filled on each station is fixed, and has to complete the container, it is both mathematically and intuitively easy to see that the amount of time each station takes to perform the filling needs to be equal, in order to maximize production - i.e. if there is a filling station which is idle, it could be filling, thus lowering the time it takes for the other station to finish. Production time is then equal to the time taken by the most time-demanding filling station. The filling speed of each station is different, as a general rule. The second station is usually slower than the first one, since it must comply with regulated tolerances regarding the weight of a full container. Also, even if speeds were correctly characterized for a given scenario, they are bound to change, because oil viscosity is seriously affected by temperature and oil pressure. These facts imply that even if an operator tried to set up optimal weight targets so the stations would complete their tasks simultaneously, slight changes in temperature would deviate the speed balance, thus a filling station would take less time than the other, and be wasting filling time since the conveyor would not move until all stations finished their task. The key concept is that if a filling station is idle, weights could be balanced, so that the one taking more time would fill less fluid, making the idle station complete such amount, reducing overall time. Operators usually seek for optimal weight distribution manually, but it is a very time-demanding task, and performance quickly drops due to process variable changes. Therefore, the problem consist on automatically select, in real time, the weight targets of each filling station, so the containers are fully filled, and the filling stations finish simultaneously. Another requirement is to make the system adapt to temperature, pressure, or any other process value changes, to select the new optimal weight balance. To solve this problem, we implemented a recursive least squares filter, to identify the filling speed of each station. This is a type of adaptive filtering technique which
2 Mathematical model 5 iteratively uses new information to improve estimation, and includes a forgetting factor to discard the effect of old information. Thus, it is well suited to run the estimation in real time and allow for set point changes due to temperature, pressure of other process value changes. Also, it is optimal in the sense of asymptotically minimizing the mean squared error (MSE). 2 Mathematical model 2.1 LS and WLS filters We seek to estimate the filling speed V of each filling station. Once we have this information, we can obtain the weight limit ω from the equal filling time condition. Total weight is always total capacity times density ω t = 205L δ. Slow fill weight ω s target is known since it is set by an operator to prevent fluid overflow, and slow filling time t s can be measured and estimated. We start computing the filling time of each station, F t. Superscript a indicates the first station, and superscript b indicates the second station F a t = ωa V a F b t = t s + ω t ω a ω s V b since filling times must be equal, we obtain the following condition ω a = ω t ω s + t s V b V a + V b (1) finally, we compute the weight target of the second station subtracting ω a and ω s from the total target weight ω b = ω t ω a ω s In order to estimate fast filling speed and slow filling time, we have incremental weight measurements, and the corresponding incremental time measurements, i.e. the amount of weight gained in the corresponding elapsed time. We approximate the filling model using a first order linear equation, where the filling speed V times τ n renders the weight gained. However, since the measurement is noisy, we add a noise component η n. The sub-index represents time ω n = Vτ n + η n (2) The noise η n R is modeled as a zero mean random variable, which accounts for the measurement errors of both the filling time and gained weight. The time τ n R is also a random variable, but we define it as deterministic, transferring the noisy component to η n. The filling speed V R is what we want to estimate to solve the problem. Finally, the measured weight ω n R is a real random variable, with mean equal to Vτ n, and variance equal to the variance of η n. Stacking N equations as defined in 2, we have
2 Mathematical model 6 ω = ω n N+1 ω n N+2. ω n = τ n N+1 τ n N+2. τ n V + η n N+1 η n N+2. η n = τ V + η (3) Conditions are met to apply Least Squares (LS) filter, which estimates the best fit of a noisy linear model, in the sense of minimizing the mean square error - details can be seen in [1] and [2]. The estimator is defined as follows ˆV = (τ t τ ) 1 τ t ω (4) This is appropriate when dealing with a finite set of measurements in off-line estimation. However, when measurements inputs flow constantly into the system, and specially when the parameters can change, older measurements become less representative than new measurements, since the newer measurements account for the present value of the parameters. To solve this, the inner product is weighted with the positive definite, symmetric matrix Λ, constructing the Weighted Least Squares (WLS) estimator (see [2]) Λ = λ N 1 0 0... 0 0 λ N 1 0... 0............... 0... 0 0 λ 0 with 0 < λ < 1. The WLS estimator is defined as ˆV = (τ t Λτ ) 1 τ t Λω = n j=n N+1 n j=n N+1 λ n j τ j ω j λ n j τ 2 j (5) E[τ ω] E[τ 2 ] If time windows τ j were constant for each j, the above equation would be a weighted moving average. However, the above equation is also an stochastic filter, where the estimation of the correlation of the time and weight measurements is divided by the second order moment of the time measurement (not-centered variance). Such filter is statistically richer if it is computed with different time measurements. Notice that for λ = 1, LS and WLS methods are equal. However, since λ < 1, the contribution of λ n j in the old measurements, i.e. low values of j, renders the less significative term. This is the reason why λ is referred to as a forgetting factor. (6) 2.2 RLS filter At this point, if we had a set of finite measurements to process altogether, WLS filter would solve our problem. However, we have a constant flow of data (new measurements) which we want to process to account for real time changes in the estimation. To that end, we use the Recursive Least Squares (RLS) filter, which
2 Mathematical model 7 allow us to iteratively add just new information to the estimation, greatly reducing computational burden, allowing the filter to adapt when new information is available. More details can be seen in [3] Since τ is a vector and not a matrix, recurrences are simplified and can be easily computed. We start defining a n and b n We compute a n+1 and b n+1 as ˆV n = n λ n j τ j ω j j=0 n λ n j τ 2 j j=0 = a n b n n+1 a n+1 = λ n j τ j ω j = λa n + τ n+1 ω n+1 (7) j=0 n+1 b n+1 = λ n j τ 2 j = λb n + τ 2 n+1 (8) j=0 and finally obtain the filling speed estimate as ˆV n+1 = a n+1 b n+1 (9) We recursively estimate the aforementioned quantities for each filling station, obtaining ˆV a n and ˆV b n. To solve 1, we must estimate the slow filling time of the second filling station. We have access to noisy measurements of the slow fill time, and we model such measurements as t m s (n) = t s(n) + ν n (10) Instead of averaging all measurements, we use the RLS filter to take advantage of the forgetting factor λ. The slow filling time estimator is thus written ˆt s (n) = n λ n j t m s (j) j=0 (11) n λ n j j=0 We are now able to compute 1, and determine optimal weight configuration to minimize canning time. Note that this strategy does not tax the controller, since the required computations are below ten multiplications and sums. Also, the estimation is performed in real time, which means that the system will respond to changes in fluid temperature, pressure, mechanical changes, etc, bound to the forgetting factor of the estimator.
3 Industry implementation results 8 3 Industry implementation results We implemented the system on an AC800M Controller, which was already controlling the YPF 205 liters oil canning plant. The controller load was almost unchanged, given the low computational cost of this solution. Also, no new hardware was required, since weight scales and load cells were already installed to control filling. 3.1 Practical considerations Weight changes were selected as guiding measurements. Weight windows were chosen to be large at the beginning of the filling, to average the effect of fluid motion on the measurement, and then start to shorten in such way that the next window is half its prior. Correlated time measurements were taken through counters. This approach allow us to determine five measurements by container. Convergence of the estimation is fast, as expected of RLS filters. When time measurements exceed expected limits, the measurement is discarded since it is identified as lack of fluid, abnormal low pressure, manual intervention, etc. Measurements are also discarded when the system stops automatic cycle out of emergencies. This approach allow us to discard outliers, and keep estimations healthy. The system can be switched off, in the event of an operator having to perform manual tasks. When the system is switched on again, the estimators are reset, discarding all prior information. This is useful in case an operator manuallly changes valves opening, or oil pressure. Also, the estimation is automatically reset after product density changes, so old information related to a different product does not affect the estimation. 3.2 System performance The system was successfully installed in the YPF CILE 205L canning plant. To evaluate its performance, we measure the canning time when the weight target of the first filling station is manually set, and then compare it to the canning time when the weight target is automatically set. As mentioned earlier, production time is equal to the time taken by the most time-demanding filling station. It is important to note that a slow forgetting factor was chosen, to increase stability of the steady state estimation, in detriment of speed of convergence. We first examine the canning time when weight targets are manually set. In figure 4, weight target of the first filling station is manually set to 110kg (right vertical axis). The second station will complete the 205 litres capacity of the container, which in this case is about 70kg. We observe a mean canning time of nearly 35 seconds, with a mean time difference between filling stations of around 6.7 seconds, which means that one of the stations is idle for that period of time, wasting filling capabilities. If the filling gap were shorter, less filling time would be wasted.
3 Industry implementation results 9 Fig. 4: Manual weight setting performance Now we examine the automatic weight target setting - see figure 5. The system takes about four containers to converge to a stable solution, with no prior information, which is fast compared to a set production (180 containers). Such performance is appropriate to account for real time estimation, since pressure or temperature changes are far less abrupt that starting the estimation with no prior information. After weight target settles, mean canning time drops to 30.7 seconds, increasing productivity nearly 14%. Mean time gap between fillings consequently drops to 0.8 seconds. Fig. 5: Automatic weight setting performance Improvement of this magnitude - 14% - is massive, and an operator could
3 Industry implementation results 10 certainly adjust weight distribution to improve performance. However, this type of machines require operators engaged in several other duties, and productivity drops often remain unnoticed for long periods of time. Also, since performance is affected by process variable changes, weight distribution needs to be constantly supervised, demanding a great deal of time. The automated approach not only allows for massive productivity increase, but it also frees operators of a very demanding task. Finally, we wish to compare the performance of the automatic system with the manual system, when operators are fully committed to increase performance. We start measuring the performance of a product thoroughly tuned by an operator. In figure 6 we see good performance for manual adjustment. Mean canning time is 21.3 seconds, and mean time difference between filling stations is 0.8 seconds. Fig. 6: Manual weight setting performance Now we examine steady state performance of the automatic system. In figure 7 we see canning time dropping to 21 seconds, and time difference to 0.4 seconds. In this case, production improvement is around 1.5%, which is still very important. An operator could not perceive the difference between 0.4 and 0.8 seconds.
4 Conclusions 11 4 Conclusions Fig. 7: Automatic weight setting performance We have presented a low cost stochastic filter for optimizing linear distributed canning devices, using an AC800M controller in the CILE plant of YPF Argentina as part of a mass modernization plan of their plants, as requested by YPF. Recursive Least Squares (RLS) filtering allows us to automatically set, in real time, optimal weight distribution to minimize canning time, adaptively accounting for process variable changes (such as temperature and pressure). Real plant measurements show that production improvement ranges from 1.5% to 3% when operators are fully and continuously committed to optimizing production, and can go up to 20% when operators do not notice performance drop due to process variable changes, which is a very common scenario. In conclusion, the implemented system greatly improves plant production, not only out of increased performance, but also because operators are relieved of a very time-demanding task. Acknowledgments To Walter Barberis, Production Manager of CILE, YPF Argentina, for presenting the optimization problem and for sponsoring the project. To the CILE crew for their assistance in the implementation and set of the system, as well as the measurement and result evaluation process. To Alejandro Carrasco, Engineering Manager of Industrial Systems - ABB Argentina, for his assistance in the writing of the present paper.
5 Bibliography 12 5 Bibliography [1] S. Kay, Fundamentals of statistical signal processing, volume I: Estimation theory. Prentice Hall, 1993. [2] Kailath, A. H. Sayed, and Hassibi, Linear Estimation. New Jersey: Prentice Hall, 2000. [3] A. H. Sayed and T. Kailath, A state-space approach to adaptive rls filtering, Signal Processing Magazine, IEEE, vol. 11, pp. 18 60, 1994. [4] S. Kay, Fundamental of Statistical Signal Processing Vol II Detection Theory. New Jersey: Prentice Hall, 1998.