Keywords

1 Introduction

The increasing diversity of products manufactured by chemical process industries has made it more and more common for these industries to use reactors, conduits and storage vessels in which hazardous substances are handled at elevated temperatures and/or pressures. In fact, accidents in such units caused either by material failure (such as crack in the storage vessels), operational mistakes (such as raising the pressures temperature/flow-rate beyond critical limits) and secondary events appear in chemical reactions (undesired secondary reactions, hazard event of thermal runaway…etc) can have serious-often catastrophic-consequences (see [1, 2, 5, 27] for wide overview). Fault Detection and Isolation (FDI) of chemical reactors is then a difficult task and their modelling is often complex and therefore less developed in the literature. It is this fact that has motivated our research in this paper.

The graphical modelling such as the bond graph tool becomes further significant in this case, because it is appropriate for multiphysics modelling of complex systems, as it is given in [6, 28] through node and arcs which represent a power transfer (effort-flow) within a system and the interaction of different phenomena (chemical, thermal and fluidic). Indeed, the multiport elements represent energy dissipation (R-element), storage (C-element), inertia (I-element), balance and continuity equations (0- and 1-junctions) or inter-domain coupling (TF transformer and GY gyrator elements). However, this tool can be used for residual generation and monitorability analysis of systems [22, 23]. Analytical Redundancy Relations (ARRs) are derived from the set of over-determined equations obtained from the structural system model. Hence, the ARR derivation from bond graphs incurs high computational costs for equation derivation and structural equivalence checking, and this method cannot be applied when unknown variables cannot be eliminated because of the presence of algebraic loops and nonlinear non-invertible constraints [24]. Although, some times component signs for monitoring and diagnosis should be determined. Unlike bond graph methodology, a signed directed graph becomes more adequate for this situation.

In this context, a SDG model captures both the information flow and the direction of effect (increase and decrease). Iri et al. [7] were the first to introduce SDG for modeling chemical processes. Recently, Maurya et al. [13] have proposed algorithms for the systematic development of SDGs and digraphs for various types of systems and gave methodologies for SDG analysis to predict initial and steady-state responses of system variables for deviations in exogenous variables from their nominal value for fault diagnosis. In fact, nodes in the SDG assume values of (0), (+) and (−) representing the nominal steady-state value, higher and lower than steady-state values, respectively. Directed arcs point from a cause node to its effect node. Arc signs associated with each directed arc can take values of (+) or (−) representing whether the cause and effect change in the same direction or opposite direction, respectively. Based upon the procedure for SDG-based analysis, this graph has been combined with many approaches like the Qualitative Trend Analysis (QTA) [14] to improve the isolability of faults, moreover, Vedam et al. have combined the PCA and the signed directed graph [29], where a fault detection is performed using PCA and a SDG model is involved to isolate the root causes.

After all in our previous works [25, 26], case studies show that SDG-based initial response analysis helps in fault diagnosis, for nonlinear systems, considerably. The results can be further narrowed down by using steady-state measurements. It’s shown also, that almost no quantitative information is required to develop the SDG model; the diagnosis resolution and performance are quite good. The reliability of SDG-based analysis and fault diagnosis results is yet dependent upon the correctness of the mathematical model from which the SDG or the qualitative equations are developed. Initial or steady-state responses obtained from forward/back propagations can generate spurious solutions that can not indicate (identify) the actual fault.

Two causal graphical tools (BG and SDG) discussed above have more advantages than the PCA detailed in the next section. A more comprehensive comparison of causal graphical methods (qualitative and quantitative) for diagnosis is presented in [19].

In this paper, we keep our focus on methods that exploit the causal structure implied by the bond graph and signed directed graph models. Moreover, to overcome the problems cited above, we shall propose a combined nonlinear dynamic PCA and graphical approaches (BG, SDG) based fault diagnosis algorithm to update FDI systems to track process changes for industrial chemical processes when the secondary events (secondary reaction, hazard event of thermal runaway…etc) appear in a chemical reaction. This extension improves the fault detection and isolation stages based on ARRs [19]. Based on the behavioral, structural and causal properties of an integrated coupled bond graph models, a signed directed graph is hence deduced. Fault detection is later performed using initial responses of all measured variables. Whenever an abnormality is indicated, a nonlinear dynamic PCA (obtained by using a neuronal network with five layers and three hidden layers) and back/forward propagations through paths from exogenous variables to system variables on SDG models are combined so as to identify fault roots through contribution plots.

The rest of the paper is organized as follows. Section 2 presents a PCA theory and its interest for fault diagnosis. After that, Sect. 3 provides the integrated design scheme combining graphical and nonlinear PCA approaches for FDI system. The efficiency of the proposed methods is then applied to monitor the pilot reactor equipped with a mono-fluid heating/cooling system in Sect. 4, the main results are also discussed therein. Section 5 presents concluding remarks and future scope of works.

2 Nonlinear Principal Component Analysis

In this section, we focused on a NLPCA method which is assumed as an extension of linear PCA [11, 21]. The aim of NLPCA is to extract both linear and nonlinear relationships between process variables.

Let us consider \( x(k) = \left[ {x_{1} , \ldots ,x_{n} } \right]^{T} \in {\mathbb{R}}^{n} \) the vector formed with n observed variables at time instant k. The data matrix X, with m samples x(k), is then:

$$ X = \left[ {\begin{array}{*{20}c} {x_{1} (1)} & {x_{2} (1)} & \cdots & {x_{n} (1)} \\ {x_{1} (2)} & {x_{2} (2)} & \cdots & {x_{n} (2)} \\ \vdots & \vdots & {} & \vdots \\ {x_{1} (m)} & {x_{2} (m)} & \cdots & {x_{n} (m)} \\ \end{array} } \right] $$
(1)

By analogy to PCA, the data matrix X and the principal components matrix T are determined as follows:

$$ X = \hat{X} + E = F(T) + E\,and\,T = G(X) $$
(2)

where \( \hat{X} \) is the estimated of X, F and G are nonlinear vector functions which are selected to minimize the prediction error E. To extract the nonlinear principal components, an auto-associative neural network [9] is used in the present paper. This method is based on a neuronal network with five layers and three hidden layers. The first hidden layer represents the nonlinear function G and the last one is the function F (see Fig. 1), the bottleneck layer is the nonlinear principal component t i . The extraction of these components can be carried out of sequential or parallel way. Training of each network is complete when E, the sum of squared errors between the inputs and outputs of the network given in Eq. (3), is minimized:

$$ E(k) = \sum\limits_{i = 1}^{n} (x_{i} (k) - \hat{x}_{i} (k))^{2} $$
(3)
Fig. 1
figure 1

Network architecture

2.1 Fault Diagnosis Using a PCA

Fault detection using a PCA is based on two detection index: the SPE (squared prediction error) and the Hotelling’s T 2 [11]. Whenever the detection index exceeds its confidence limit [8], the presence of an abnormality is indicated. Process diagnosis using PCA model is done by identifying the measured variable with significant contributions to the residual [15]. The contribution of process variable j to the SPE-statistic at time period k is defined as:

$$ cont_{j}^{SPE} (k) = (e_{j} (k))^{2} = (x_{j} (k) - \hat{x}_{j} (k))^{2} $$
(4)

In the case of T 2-statistic, the contribution of process variable x j for a normalized principal component \( \left( {\frac{{t_{i} }}{{\sigma_{i} }}} \right)^{2} \) (\( \sigma_{i} \) is a singular value equal to \( \sqrt {\lambda_{i} } \)) is:

$$ cont_{i,j} = \frac{{t_{i} }}{{\lambda_{i} }}p_{i,j} x_{j} $$
(5)

where \( p_{i,j} \) is the jth element of the eigenvector \( P_{i} \) corresponding to the eigenvalue \( \lambda_{i} \). Thus, the total contribution to the \( T^{2} \)-statistic of a variable \( x_{j} \) is as follows:

$$ Cont_{j} = \sum\limits_{i = 1}^{l} cont_{i,j} $$
(6)

Consequently, a process variable is identified as a fault when it has the higher contribution plot.

2.2 Dynamic PCA

The PCA discussed previously assume implicitly that the observations at one time instant are statistically independent to observations at past time instances. For typical industrial processes, this suggests that a method taking into account the serial correlations in the data is needed in order to implement a process monitoring method with fast sampling times. Alternatively, PCA can be used to take into account the serial correlations by augmenting each observation vector with the previous s observations [10] and stacking the data matrix in the following manner:

$$ \begin{aligned} X(s) & = \left[ {X(k)\;X(k - 1)\; \cdots \;X(k - s)} \right] \\ & = \left[ {\begin{array}{*{20}c} {x^{T} (k)} & {x^{T} (k - 1)} & \cdots & {x^{T} (k - s)} \\ {x^{T} (k - 1)} & {x^{T} (k - 2)} & \cdots & {x^{T} (k - s - 1)} \\ \vdots & \vdots & \ddots & \vdots \\ {x^{T} (k + s - n)} & {x^{T} (k + s - n - 1)} & \cdots & {x^{T} (k - n)} \\ \end{array} } \right] \\ \end{aligned} $$
(7)

The procedure for selecting s is discussed in detail in [10].

3 Causal Graphical Approaches for FDI

3.1 Bond Graph Methodology

Bond graph language allows to deal with the enormous amount of equations describing the process behavior and to display explicitly the power exchange between the process components starting from the instrumentation architecture Dauphin-Tanguy [3]. The exchanged power between two variables A and B (Fig. 2) is represented by a bond (half arrow) and it is the product of two generic power variables named effort e and flow f. The causal stroke indicates the direction in which the effort signal is directed [18]. In a bond graph, two sources (\( S_{e} \) and \( S_{f} \)), three generalized passive elements (I, C, and R) and four constraints (0, 1, TF, and GY) are used to model any energetic processes.

Fig. 2
figure 2

Bond graph representation

3.1.1 Coupled Bond Graph

Industrial processes are very nonlinear, principally due to the interaction of different phenomena (chemical, thermal and fluidic). Therefore, the bond graph models the interaction of phenomena by a multiport element, indeed, the multiport elements represent energy dissipation (R-element) (electrical, mechanical or thermal friction), storage (C-element) (as compliance for instance or volume), inertia (I-element) (electrical inductance and mechanical inertia), balance and continuity equations (the 0- and 1-junctions) or inter-domain coupling (the TF transformer and GY gyrator elements). Finally to reproduce the architecture of the global system to be modelled, bond graph elements (R, C, I,..) are interconnected by a “0” junctions when they have a common effort and by “1” junction if their flow is the same. In addition to matter transformation phenomena, chemical and electrochemical processes involve additional complexity in the modelling task, since the mass that flows through the process carries the internal energy which is stored in it, and which is thus transported from one location to another in a non-dissipative fashion. Power variables are thus in vectorial form [17]:

$$ E = \left[ {\begin{array}{*{20}c} {e_{h} } & {e_{t} } & {e_{c} } \\ \end{array} } \right]^{T} $$
(8)
$$ F = \left[ {\begin{array}{*{20}c} {f_{h} } & {f_{t} } & f \\ \end{array} } \right]^{T} $$
(9)

where \( e_{h} \), \( e_{t} \) and \( e_{c} \) are, respectively, the hydraulic, thermal and chemical effort. \( f_{h} \), \( f_{t} \) and \( f_{c} \) are, respectively, the corresponding flows.

3.1.2 Bond Graph for FDI System

The causal properties of the BG model is used to determine the origin and consequences of faults, they also generate analytical redundancy relations (ARRs) based on energy conservation equations from junctions 0 and 1. There are essentially two parts in a monitored system using BG: a bond graph model and an information system. The bond graph model consists of the process and the set of actuators. The sensors and the control system form the information system. A system S may be described by a set of constraints F (which represents the system model), a set of variables Z and a set of parameters q; \( S = S(F,Z,\theta ) \). The constraints, F, can be seen as any relation which links the system variables and the parameters. It has to include information about the structure, the behavior, the measurement and the control system. The set of constraints, F, map to a set of variables, Z: known (K) contains the control variables u, the variables whose values are measured by the sensors, \( Y_{m} \); and the supervision parameter (such as set points) and is associated with the characteristics of R, C, and I elements. Unknown (X) are the power variables (flow and effort) that label the bonds. The constraints and variables are deduced directly from the bond graph model [17].

3.1.3 Generation of Fault Indicators

Finding the ARRs can be done by eliminating the unknown variables which are systematically obtained from the model BG thanks to causal properties and through causal paths.

  • Algorithms for generation the ARRs:

    1. (1)

      the Bond Graph model should be converted in preferred derivative causality (by reversing the causality of detectors);

    2. (2)

      write the equations of the model;

    3. (3)

      for all constitutive equations of the junction 0 and 1 containing at least one detector: Eliminate the unknown variables by covering causal paths in the bond graph and for sensors whose causality is reversed an ARR is deducted;

    4. (4)

      An ARR is obtained from each controller by comparing the measured output with the output predicted by the control algorithm;

    5. (5)

      repeat steps (3) and (4): if the ARRs obtained are strictly different from those already obtained then keep them, otherwise continue until all equations junctions and those regulators are considered.

  • Fault signature matrix:

    The structure of the residuals forms a binary matrix \( S_{ji} \) which expresses discrepancy in which component j (sensors, actuators, controllers and physical devices) can change the value of which residual, i.

    $$ S_{ji} = \left\{ {\begin{array}{*{20}l} 1 & {{\text{if}}\,{\text{the}}\,{\text{ith}}\,{\text{residual}}\,{\text{contains the}}\,{\text{jth}}\,{\text{component;}}} \\ 0 & {{\text{otherwise}}.} \\ \end{array} } \right. $$
    (10)

    The matrix \( S_{ji} \) is called the fault signature matrix that provides the logic for the process fault isolation after the monitoring application has detected a fault. Each component has a corresponding signature and its fault is isolable if its signature is unique, i.e. different from the signatures of all other components.

3.2 Signed Directed Graph

A signed directed graph is a representation of the process causal information, in which the process variables (and parameters) are represented as graph nodes and causal relations are showed by directed arcs [13]. Nodes in the SDG assume values of (0), (+) and (−) representing the nominal steady-state value, higher and lower than steady-state values, respectively. Directed arcs point from a cause node to its effect node. Arc signs associated with each directed arc can take values of (+) or (−) representing whether the cause and effect change in the same direction or opposite direction, respectively.

Definition 1

(exogenous variables) Exogenous variables are the variables (denoted by \( \forall e_{i} \varepsilon E \)) that are not affected by any other variable. They represent disturbance and fault variables and can change independently. Thus, there are no arcs incident on them [13].

Definition 2

(System variables) These variables (denoted by \( \forall x_{j} \varepsilon X \)) get affected by exogenous variables and affect each other. So, they have both input and output arcs associated with them. These are often called state variables also [13].

SDGs for the processes modeling can be derived from expert or operator knowledge of the process or from known model equations that define the behavior of the system. In this section, only algorithms for development the signed digraph models from analytic system models.

3.2.1 Build the SDG Model

  • Algorithm for systems described by DE: In systems described by differential equations, explicit causality is from right to left [20]. To develop the SDG, for every differential equation, the variable on the left-hand side is matched with that equation and directed arcs are drawn from all the variables on the right-hand side to the system variable on the left-hand side in that equation. The arc sign (\( e_{l} \to x_{i} \)) is given by \( [\frac{{\partial f_{i} }}{{\partial e_{l} }}] \).

    Example: Consider the DE system given below

    $$ \left\{ {\begin{array}{*{20}l} {\frac{{dx_{1} }}{dt} = x_{1} - x_{2} + 2e_{1} } \\ {\frac{{dx_{2} }}{dt} = - x_{1} - 4e_{1} } \\ \end{array} } \right. $$
    (11)

    The SDG for the DE in Eq. (11) is given in Fig. 3.

    Fig. 3
    figure 3

    SDG for the DE system

  • Algorithm for AE systems: A bi-partite graph between the equations and the system variables is drawn and a perfect matching is performed. A perfect matching between the equations and the dependent variables is a complete matching in which each equation is matched with a variable and no variable or equation is left unmatched. The arc sign sign(\( e_{l} \to x_{j} \)) is given by \( - (\frac{{\partial f_{i} }}{{\partial e_{l} }}/\frac{{\partial f_{i} }}{{\partial x_{j} }}) \).

    Example: Consider the AE system given by Eq. (12)

    $$ \left\{ {\begin{array}{*{20}l} {2x_{1} - e_{1} - e_{2} = 0} \\ {x_{1} - 2x_{2} + x_{3} - 2e_{1} = 0} \\ {2x_{2} + 4x_{3} - 3e_{1} + e_{2} = 0} \\ \end{array} } \right. $$
    (12)

    The SDG for Eq. (12) is shown in Fig. 4.

    Fig. 4
    figure 4

    a Bi-partite graph, b Perfect matching, c SDG

  • Algorithm for DAE systems: The previous two algorithms (DE and AE) are combined to develop the algorithm for DAE systems.

    Example: Consider the DAE system given by Eq. (13)

    $$ \left\{ {\begin{array}{*{20}l} {\frac{{dx_{1} }}{dt} = x_{1} - x_{2} + 2e_{1} } \\ {\frac{{dx_{2} }}{dt} = - x_{1} - 4e_{1} } \\ {2x_{2} + 4x_{3} - 3e_{1} + e_{2} = 0} \\ \end{array} } \right. $$
    (13)

    The corresponding SDG for Eq. (13) is represented in Fig. 5.

    Fig. 5
    figure 5

    SDG for the a DE, b AE, c DAE

3.2.2 Procedures for SDG Analysis

Definition 3

(Initial response) The initial response of a system variable is its first nonzero response [13].

Definition 4

(Steady-state response) The ultimate response of a dynamic system is governed by the AE system [13].

The SDG developed using algorithms presented in the previous section is analyzed to predict the initial response and/or steady-state response of the system for deviations in exogenous variables from their nominal value.

  • For DE systems, initial response of a system variable \( x_{j} \) due to changes in an exogenous variable \( e_{l} \) can be predicted by propagation through all the shortest path(s) from \( e_{l} \) to \( x_{j} \) in the SDG.

  • For AE systems, if it has only one perfect matching, the response of an AE system is predicted by propagation through paths in a SDG. If not, this response is incomplete but, there is an exception: in the SDG should exist negative cycles.

  • For DAE system, by considering the arc length for the arcs corresponding to the DE is 1 and to the AE is 0, the initial response, with only one perfect matching, is obtained by propagation through shortest paths from \( e_{l} \) to \( x_{j} \).

3.2.3 FDI Based on Signed Directed Graph

Algorithm 1

(initial response) This algorithm is applied for system equations and it consists on: the generation of SDG model, then determination of measured node deviations for a given fault (these deviations called initial response). Finally, comparing the simulation results with the prediction of initial response. Fault diagnosis for single faults using measurements simulation and initial response is performed separately. The possible faults are identified as the faults that are predicted by both analysis.

Algorithm 2

(steady-state response) [12] is applied when the system is in its steady-state (corresponding algebraic equations). Steps of this algorithm are given below:

  1. 1.

    Chose a system variable \( x_{i} \) and push it on to the stack S (initially S was empty). Go to Step 2.

  2. 2.

    For a chosen \( x_{i} \), use back-propagation to infer the signs of the predecessor nodes.

  3. 3.

    If the predecessor node \( x_{j} \) or \( e_{l} \) has not been explored in any other parts of the search tree, go to Step 4. Else, go to Step 5.

  4. 4.

    If this node is an exogenous variable (\( e_{l} \)), it could be a possible fault. To verify this, perform forward-propagation to predict the sign of measured nodes. If there are no violations, it is concluded that \( e_{l} \), with its sign, is a candidate fault, else it is not. In either case, go to Step 5. If the predecessor node is a system variable (\( x_{j} \)), it must be further explored. Push \( x_{j} \) on to the stack S and go to Step 2.

  5. 5.

    If there are no unexamined predecessor nodes, the search is complete and stop. Else select and explore another predecessor node from P(\( x_{i} \)). Go to Step 3.

4 New Algorithm for Multi-energy Systems

The proposed generalized algorithm combines graphical approaches [quantitative (BG) and qualitative (SDG)] and nonlinear dynamic PCA so as to improve the robustness of the isolation from residuals generated by a model based diagnosis system. This algorithm involves three steps: modelling, fault detection and isolation steps (see Fig. 6). The overall flow of the FDI algorithm is summarized as follows:

Fig. 6
figure 6

Proposed algorithm

  • Modelling step: The bond graph methodology is a suitable tool for modelling nonlinear processes with coupled phenomena. A signed directed graph model is then generated directly from this coupled bond graph, using causal and structural properties of these graphs (see BG-SDG analog Table 1), consequently, the graphical model is obtained.

    Table 1 BG-SDG analog
  • Fault detection is an important step because it indicates the state (normal or abnormal situation). Abnormal situations are detected when initial responses of all measured variables due to deviation in exogenous variables on the SDG model are determined. Thus, the given non-zero sign of a measured variable, a fault is detected.

  • Fault isolation: whenever a fault is detected, contribution plots of process variables are determined using a nonlinear PCA, the variable with a higher contribution is the faulty variable. It is selected (with its sign) and if it is a measured node in the SDG, a backward-propagation from this variable to the fault node is performed. If it was an exogenous variable then it constitutes a candidate fault.

Note that, when the contribution of process variables to SPE-statistic is used, sign of the selected variable is taken from initial response table.

5 Case Study and Discussion of Results

A case study is developed to test the effectiveness of the proposed scheme on a simulation model built in the Matlab/Simulink environment and Symbols 2003 software. The pilot unit that we have considered here is a continuous stirred tank reactor (CSTR) equipped with coolant jacket developed in [19]. The following exothermic reaction scheme is considered:

$$ \nu_{A} A + \nu_{B} B{ \rightleftharpoons }\nu_{C} C + \nu_{D} D $$
(14)

where \( \nu_{i} \) (for \( i = A, B, C, D \)) are the stoichiometric coefficients. A simple sketch of the process is shown in Fig. 7 and more details on the system description can be found in [4, 19]. The CSTR is highly nonlinear with its state variables, volume of the water inside the tank and total enthalpy, being nonlinear functions of the input flows. The tank’s thermodynamic properties and the output flow also have nonlinear characteristics. Moreover, inside the closed-loop, time varying reference signals causes plant’s dynamics to change rapidly. The relevant parameters of the reactor and jacket models are summarized in Table 2. In the previous researches [4, 19], because of modular and functional aspect of the bond graph, a pseudo bond graph model of the system developed from the energy and mass balances has been presented as subsystems modeled separately.

Fig. 7
figure 7

Scheme of the CSTR

Table 2 Simulation parameters

Thus to design a nonlinear FDI scheme, the SDG model must be constructed with the information obtained from coupled bond graph models in integral causality based on BG-SDG analog (see Table 1), as shown in Fig. 8. The positive (→) and negative (→) arcs indicate positive and negative influence.

Fig. 8
figure 8

SDG of a CSTR

The faults that may occur in the chemical process can be broadly divided into four groups; namely: physical faults (matter leakage in the tank reactor, blockage of the valve, thermal insulation and appearance of secondary reaction), actuator faults (pump defect), sensor faults (temperature and level sensors) and controller faults. These faults are listed in Table 3. In fact, nodes in the SDG assume values of (0), (+) and (−) representing the nominal steady-state value, higher and lower than steady-state values, respectively.

Table 3 Faults description

The initial responses are predicted by cause-effect propagation through the shortest paths on the SDG from local exogenous variables to relevant system variables. Hence, Table 3 shows the effect of the fault witch is propagated from the root node (fault node) to the nodes representing system variables in the SDG.

To perform comparison between these initial responses and simulation results, all faults are tested. In fact, two separate process faults are treated here. They are leakage of the mixture from the reactor vessel and appearance of secondary product. The rate of leakage in the tank [\( R( + ) \)] can be fast in a time window from 75 to 100 min. From Fig. 9, one can see that the measured variables (h, T, m C , m b ) are sensitive to fault 9. By comparing the initial response in Table 4, R(+) can be detected.

Fig. 9
figure 9

Variables responses in faulty case (leakage)

Table 4 Initial response

It is assumed now for example that the cooling system is never failing and that the exits of the regulators and the sensors are always correctly measured. A sudden appearance of secondary product \( E \) occurs from 70 min. The reaction dynamics are modified and the reaction scheme becomes:

$$ \nu_{A} A + \nu_{B} B{ \rightleftharpoons }\nu_{C} C + \nu_{D} D + \nu_{E} E $$
(15)

An exothermal chemical reaction requires an extensive knowledge of their thermodynamic characteristics, not only under normal operation conditions, but also in the case of deviations. Indeed, to stop the evolution of the secondary reaction and to eliminate these effects in real-time, it is necessary to add a reagent able to eliminate the undesirable products. As can be seen in Fig. 10, the chemical fault \( \mu_{E} ( + ) \) affects (T, m C and m D ) variables and generates a same qualitative signature \( \left[ {\begin{array}{*{20}c} 0 & + & 0 & 0 & + & + \\ \end{array} } \right] \). Thus, fault 3 is detected.

Fig. 10
figure 10

Variables responses in faulty case (chemical fault)

After a fault has been detected, the dynamic nonlinear PCA is then used. The case study has six measured variables (\( h \), \( T \), \( \mu_{A} \), \( \mu_{B} \), \( \mu_{C} \) and \( \mu_{D} \)), therefore, the vector \( x(k) \) is \( x(k) = \left[ {\begin{array}{*{20}c} h & T & {\mu_{A} } & {\mu_{B} } & {\mu_{C} } & {\mu_{D} } \\ \end{array} } \right]^{T} \). Here, only \( m = 50 \) samples are used. By using the eigenvalues analysis of the covariance matrix method and a Cumulative Percentage of Total Variation \( C(l) \), the number \( l \) of principal components retained is 2 (Fig. 11). In Fig. 11a, we can see that from \( l = 2 \) the eigenvalues is lower than 1. Indeed, as shown in Fig. 11b, the Percentage \( c(l) \) can explain 99.5 % from \( l = 2 \). To select the time-lagged \( s \), we have applied the algorithm presented in [10] which allows in this case study to get \( s = 1 \).

Fig. 11
figure 11

Principal component retained

When a leakage \( R( + ) \) is occurred, the contribution of process variables to \( SPE \)-statistic, as shown in Fig. 12, indicates that only the second variable (\( T \)) has the highest contribution with a positive sign (according to the initial response table). This variable is selected and as \( T \) is a measured variable in SDG model, backward propagation from this variable give \( R( + ) \), \( T_{A} ( + ) \) and \( T_{B} ( + ) \). But only the forward propagation from \( R( + ) \) allows the same pattern of measured variables found in the initial response table (we assumed that others exogenous variables (\( Q_{iA} \) and \( Q_{iB} \)) are in faulty-free case). Thus a leakage \( R( + ) \) is a root cause.

Fig. 12
figure 12

SPE in the case of leakage

Furthermore, we note that the contribution of process variables to SPE-statistic (Fig. 13) indicate that only the temperature variable T has the highest contribution with a positive sign in the occurrence of chemical fault (\( \mu_{E} ( + ) \)). This variable is selected and as T is a measured variable in the SDG model, therefore, the backward propagation from this variable is performed. By exploiting causal paths between variables of the SDG, the predecessor variables of T are \( \mu_{E} \) and \( Q_{iA} \), \( Q_{iB} \) and R. But only the forward propagation from \( \mu_{E} ( + ) \) allows the same pattern of measured variables found in the initial response table (we assumed that others exogenous variables (\( T_{A} \) and \( T_{B} \)) are in faulty free case). Thus an undesirable product \( \mu_{E} ( + ) \) is as a root cause. Consequently, \( R( + ) \) and \( \mu_{E} ( + ) \) are isolated as candidate faults.

Fig. 13
figure 13

SPE in the case of chemical fault

The above simulation results further demonstrate the merits of the proposed FDI algorithm. The result of a fault isolation is consistent when process and chemical faults are occurred so as the candidate fault is identified exactly.

Comparison of Causal graphical and PCA methods:

The signed directed graph (SDG) is a qualitative model-based diagnosis method. The qualitative model is created from causal or inferential analysis. Therefore, a detailed mathematical model is not necessary. The nodes of a SDG are process variables, measurements, inputs, and faults. To use a SDG for fault diagnosis, high and low thresholds are defined for variables. In fact, if a detailed model of the process is available then one can easily construct a SDG from the model. The causality concept in bond graph (BG) model is helpful in this regard. The procedure for the construction of a SDG from a bond graph model is similar to construction of temporal causal graphs from bond graph models as detailed in [16].

The SDG model can be used in different ways for diagnosis. The forward propagation method assumes one or more faults in variables (nodes) in the SDG and propagates the fault effects to adjacent nodes. The qualitative states of the measured variables are then recorded in a knowledge base which stores the symptoms seen in the measured variables for each fault case. The backward propagation method traverses from symptoms (qualitative states of measurements) to qualitative states of physical variables and needs conflict resolutions when ambiguities arise during the propagation process. The approach developed in this article has the potential to be a unified approach for carrying out various activities involved in process supervision by using a common modeling tool. Some process faults may not be isolated with the given sensor architecture. In such situations, more than one fault candidates are hypothesized. In fact, such Principal Component Analysis is often able to isolate the actual fault although the fault is structurally not isolating. Thus, the analysis of the transient’s setup due to fault occurrence gives useful information about the nature of the fault. A SDG can be derived from the bond graph model through a set of transformations. The SDG approach uses ACP to improve the fault isolation capability especially when some faults cannot be isolated structurally.

Note that the development of a combining graphical and PCA-based multiple fault diagnosis algorithm is introduced here in order to be used later. The proposed method is an extension of the single fault case. It consists, essentially after a construction of the signed directed graph model directly from the bond graph, on:

  • According to the obtained SDG model, determine the initial response of all measured variables due to the deviation of exogenous variables as in single fault diagnosis case;

  • For an abnormal situation, arrange the root nodes in lists that explain the same symptom;

  • For each symptom, get lists which contain combinations of the root nodes;

  • Contributions plots of PCA is used to fix the number N of faults that can affect the system. Hence, the correspond list is identified. For instance, if a contribution plots of two variables exceeds its confidence limit then N is set equal to 2;

  • The combination of greater than N fault origins occurring simultaneously should be deleted. For the others combinations, forward propagation from these exogenous variables for all measured variables is performed to obtain their deviations (signs), if this symptom is the same that found previously then this list (eventually combination) is considered as the root causes.

6 Conclusion

In this paper, the new FDI generalized algorithm for nonlinear processes with coupled energies in presence of chemical and thermodynamic phenomena has been addressed. Indeed, we investigated an automated framework for the interpretation of causal graphical approaches (coupled BG and SDG) using a nonlinear dynamic PCA to perform process monitoring in normal situations as well as in the presence of failures without any need of numerical calculations.

An advantage of this approach is the automation of SDG-based fault diagnosis where the situation ambiguities to determine the faulty variables is replaced by automated interpretation of the contribution plots using NPCA.

The proposed algorithm further reduced the number of spurious solutions of the SDG-based fault diagnosis, in which a faulty variable is selected by NPCA and the use of back/forward propagation on the SDG. The effectiveness of this combination is has been validated to a chemical reactor coupled with a complex heat exchanger taking into account chemical faults such as occurrence of secondary reaction.

In our future works, we will consider multiple fault diagnosis issues. Extension to nonlinear uncertain processes will be also envisaged.