Embodiments described herein generally relate to fault-diagnosis mechanisms for a sensor network of a cascade, parallel and feedback combination of subsystems and sensors.
Specifically, the embodiments described herein are directed to the detection and isolation of fault(s), based on Kalman filters, in any of the subsystems and sensors that are subject to disturbance and measurement noise.
The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
The practical importance of fault diagnosis, including fault detection and isolation (FDI), continues to gain interest by both industry and academia. Typically, FDI techniques are classified either as model-free or model-based techniques. Modern engineering systems are ever increasing in complexity and tend to be distributed over wide areas, thus relying on a network of sensors to collect the necessary data.
A sensor network (SN) includes spatially distributed sensors to monitor the status of a system, events phenomena, or environmental variables such as temperature, sound, vibration, pressure, motion, or the presence of harmful pollutants. The development of sensor networks using wireless or wired means and/or their combination is motivated by a wide variety of practical applications, including military applications such as battlefield surveillance, many industrial and civilian application areas, including industrial process monitoring and control, machine health monitoring, environment and habitat monitoring, healthcare applications, home automation, and traffic control. Furthermore, SN's are also used to monitor the integrity of a network of pipes carrying various fluids (water, oil, gas or other) and also find applications in target-tracking experiments. The advent and proliferation of both wireless sensors and embedded processors and the consequent deployment of intelligent sensors have undoubtedly been the key drivers behind the ever-increasing use of SNs.
Typical approaches for fault detection are based on generating a residual using a Kalman filter (KF), and using Bayes binary decision theory to assert the presence or absence of a fault. For fault isolation, Bayes' multiple hypotheses testing and a Bank of Kalman filters-based scheme are generally used. However, in these approaches each Kalman filter is driven with all the inputs (except one) of the system. A critical limitation in the widespread use of such techniques to detect (and isolate faults) is the large distance between the sensor nodes. For instance, the case wherein, the distance between two sensor nodes in a network is large, and a Kalman filter is activated with all the inputs of the network, may possibly lead to a faulty detection. Furthermore, activating each KF with all the inputs, poses memory limitations and speed limitations on a processor that performs computations to determine the location of faults within the network.
Accordingly, a framework that detects and isolates faults in a network in an efficient manner, wherein each Kalman filter is activated only by a pair of input measurements is desired, thereby reducing the computational complexity involved in determining the location of the faults within the network.
The present disclosure provides a model-based approach to develop a fault diagnosis scheme for a sensor network that includes a cascade, parallel and feedback combination of subsystems. The model described herein detects and isolates a fault in any of the subsystems and measurement sensors that are subject to disturbances and/or measurement noise. A bank of Kalman filters (KF) is employed to detect and isolate faults. Each KF is driven by either a pair of consecutive sensor measurements or, a pair of a reference input and a sensor measurement. Accordingly, a KF residual is shown to be a reliable indicator of a fault in the subsystems and sensors located in the path between the pair of the KF's inputs used. The fault diagnosis procedure described herein analyzes each of the associated paths and leads to both the detection and isolation of any fault that occurs in the analyzed paths. According to one embodiment, the fault detection and isolation technique described herein is successfully evaluated on several simulated scenarios including a physical fluid system (two-tank system) in order to detect and isolate faults including sensor faults, actuator faults and leakage faults.
According to one embodiment, the Kalman filer residual is an indicator of a fault in both the subsystems and sensors located in the path between the pair of the KF's inputs used. Bayes decision strategy is further used to assert the presence or absence of a fault. The subsystems and sensors located in the path between the pair of inputs driving the KFs whose residuals are used to assert the presence of a fault, are assigned ‘binary 1's’ while the subsystems and sensors located in other paths are assigned ‘binary 0's’. Thus the physical system formed of all subsystems and sensors used is transformed into an equivalent binary tree that is governed by a truth table from which tree branches containing faulty subsystems and sensors are identified and the faulty elements, both detected and isolated using binary logic. Further, according to another embodiment, multiple faults in either sensors or subsystems are successfully isolated as long as both sensor and subsystem faults do not occur simultaneously. A fault in a subsystem or in a sensor is cross-checked by analyzing different paths between sensor nodes, thereby increasing the reliability of the fault detection mechanism.
Accordingly, an embodiment of the present disclosure provides a method for detecting and isolating faults in a sensor network including a plurality of sub-systems. The method includes: receiving, by a processing circuit, a plurality of signal measurement pairs in the sensor network, wherein each signal measurement pair corresponds to a path in the sensor network, and using these measurement pairs to drive a Kalman-filters corresponding to the paths in the sensor network; computing, by the processing circuit, a Kalman-filter residual for each signal measurement pair, wherein the Kalman-filter residual indicates the presence of a fault on the path corresponding to the analyzed signal measurement pair; assigning for each signal measurement pair, a binary-detection value for each sensor and sub-system lying on the path corresponding to the signal measurement pair, based on the computed Kalman-filter residual and a predetermined threshold corresponding to the signal measurement pair; and computing, by the processing circuit, a binary-decision value for each sensor and sub-system in the sensor network, by performing a logical-AND operation of the assigned binary-detection values of the sensors and sub-systems.
Another embodiment provides for a sensor-network system including a plurality of sub-systems and sensors and a processing circuit. The processing circuit is configured to: receive a plurality of signal measurement pairs in the sensor network, wherein each signal measurement pair corresponds to a path in the sensor network, with each pair driving a Kalman-filter corresponding to its own, path in the sensor network; compute a Kalman-filter residual for each signal measurement pair, wherein the Kalman-filter residual indicates the presence of a fault on the path corresponding to the signal measurement pair; assign for each signal measurement pair, a binary-detection value for each sensor and sub-system lying on the path corresponding to the signal measurement pair, based on the computed Kalman-filter residual and a predetermined threshold corresponding to the signal measurement pair; and compute by the processing circuit, a binary-decision value for each sensor and sub-system in the sensor network, by performing a logical-AND operation of the assigned binary-detection values of the sensors and sub-systems.
Another embodiment provides a non-transitory computer readable medium having stored thereon a program that when executed by a computer causes the computer to execute a method of detecting and isolating faults in a sensor network including a plurality of sub-systems. The method includes: receiving, by a processing circuit, a plurality of signal measurement pairs in the sensor network, wherein each signal measurement pair corresponds to a path in the sensor network, with each pair driving a Kalman-filter corresponding to the path in the sensor network; computing, by the processing circuit, a Kalman-filter residual for each signal measurement pair, wherein the Kalman-filter residual indicates the presence of a fault on the path corresponding to the signal measurement pair; assigning for each signal measurement pair, a binary-detection value for each sensor and sub-system lying on the path corresponding to the signal measurement pair, based on the computed Kalman-filter residual and a predetermined threshold corresponding to the signal measurement pair; and computing, by the processing circuit, a binary-decision value for each sensor and sub-system in the sensor network, by performing a logical-AND operation of the assigned binary-detection values of the sensors and sub-systems.
The foregoing paragraphs have been provided by way of general introduction, and are not intended to limit the scope of the following claims. The described embodiments, together with further advantages, will be best understood by reference to the following detailed description taken in conjunction with the accompanying drawings.
Various embodiments of this disclosure that are proposed as examples will be described in detail with reference to the following figures, wherein like numerals reference like elements, and wherein:
Kalman filtering (also referred to herein as linear quadratic estimation (LQE) technique), uses a series of measurements observed over time, containing noise (random variations) and other inaccuracies, and produces estimates of unknown variables that tend to be more precise than those based on a single measurement alone. More formally, a Kalman filter operates recursively on streams of noisy input data to produce a statistically-optimal estimate of the underlying system state.
In what follows, the fault diagnosis scheme developed according to an embodiment of the present disclosure is described with reference to
The sensor network 250 includes a plurality of sensors that are modeled by a set of sensor gains {ksi}, represented as 203A-203Q. The additive noise signals affecting the sensors is represented as {vi}, and labelled as 205A-205Q. According to one embodiment, both simple and multiple faults, i.e. at any time instant more than one subsystem or sensor may be faulty are considered. The objective is two-fold, i.e., to detect whether there is a fault in the sensor network and if there is a fault detected, to indicate which sub-system or which sensor is faulty. The subsystem G, is in general a dynamical system while the sensors are modeled as static gains k. Accordingly, an integrated model-based and model-free approach is employed for fault diagnosis. In the model-based scheme, a bank of Kalman filters is employed for detecting faults in the system. In one embodiment, a suboptimal, instead of the optimal time-varying, Kalman filter is employed using the steady-state optimal Kalman gain. The Kalman filter is designed for the nominal fault-free model of the sensor network shown in
According to one embodiment, the Kalman filter using the pair {yi(k), yj(k)} is governed by the following equations:
{circumflex over (x)}
ij(k+1)=Aij0{circumflex over (x)}ij(k)+Bij0yi(k)+Kij0(yj(k)−Cij0{circumflex over (x)}ij(k))
e
ij(k)=yj(k)−Cij0{circumflex over (x)}ij(k) (1)
where eij(k) is the residual; Kij0 is the nominal Kalman gain, (Aij0,Bij0,Cij0) is the state-space model of the system formed of subsystems and sensors located between the measurement nodes of yi(k) and yj(k), i.e.:
The state-space model (Aij0, Bij0, Cij0) is assumed to be observable and is derived from the transfer function that relates yi(k) and yj(k). The parameter xij(k) is the estimate at step k of the Kalman filter. Observability of a system is a measure of how well the internal state of the system can be inferred by the knowledge of the outputs of the system. Specifically, a map relating yi(z) to yj(z) can be obtained as follows:
The map relating uj(z) and ui(z) is given by:
substituting for ui(z) yields:
From
Note that in equation (2), wij(k) is, in general, a vector of the disturbances, Eij0 is a matrix indicating the entry points of the disturbances, vij depicts the effect of the disturbances wij(k) and the measurement noises vi and vj that affect the output yj.
According to another embodiment, the Kalman filter using the reference input-measurement pair {r(k),yi(k)} is given by:
{circumflex over (x)}
rj(k+1)=Arj0{circumflex over (x)}ri(k)+Brj0(k)+Krj0(yj(k)−Crj0{circumflex over (x)}ij(k))
e
rj(k)=yj(k)−Ci0{circumflex over (x)}rj(k) (7)
where erj(k) is the residual; Krj0 the Kalman gain and the triplet (Arj0, Brj0,Crj0) the state-space model of the system formed of subsystems and sensors located between the measurement nodes of r(k) and yj(k), and is assumed to be observable. Similar to equation (2), the state-space model (Aij0,Bij0,Cij0) given below in equation (8) is derived from the transfer function of equation (9) that relates r(k) and yj(k)
where vrj(z)=vj(z)+ksjυrj(z) and where wrj(k) is, in general, a vector of the disturbances, Erj0 is a matrix indicating the entry points of the disturbances, vrj represents the effect of the disturbances wrj(k) and the measurement noise vj affecting the output yj.
Equation (9) can be derived as follows: referring to
In order to derive the output, denoted by uji, which is due to the ith input noise component υi only, we need to first set all other input noise components υj, j≠i to zero. Next by simply re-drawing the closed loop of
The individual outputs (ujk(z),k≠i) due to each of the remaining (q−1) input noise components can be obtained in a similar way to that of (11). Superposing the individual outputs due to the reference input r on the one hand, and to each of the q noise components, υi, i=0, 1, 2, . . . q−1, on the other, as given by (10) and (11) respectively, yields the following expression for the total input:
Thus, by using the relation between yj and uj, namely
yj=ksjuj+vj, the expression as shown in equation (9) can be obtained.
According to one embodiment of the present disclosure, the residual generated by the Kalman filter, which is used for a particular pair of nodes can be expressed in terms of its associated model mismatch term ΔG(z)=G0(z)−G(z), where G0(z) and G(z) respectively correspond to the actual and the nominal transfer functions of the system for that particular pair of nodes. In what follows, the expressions of the residuals are derived for the two pairs described in the disclosure, namely a pair of measurements and a reference input-measurement pair. In the derivation described below, an expression for the residual of a Kalman filter where the actual model of the system deviates from its nominal model (fault-free), in a general setup is first described. The results are applied to obtain the fault diagnosis of a sensor network.
Let (A,B,C) be the true state-space system model (or equivalent transfer function model G(z)=N(z)/D(z)) that generates the system output y(k), and let (A0, B0, C0) be the nominal or fault-free system model (or equivalent nominal transfer function model G0(z)=N0(z)/D0(z)). The system is affected by a disturbance w(k) and a measurement noise v(k), which are both assumed to be zero-mean white noise processes. A model mismatch occurs if the nominal Kalman filter (KF) model (A0, B0, C0) differs from the true system model (A,B,C). An expression for the residual, denoted by e(z), is derived in terms of the model mismatch term ΔG(z)=G0(z)−G(z). Note that in the above description the parameter N(z) corresponds to the numerator and the parameter D(z) corresponds to the denominator of the transfer function.
The Kalman filter for the nominal system (A0, B0, C0) is given by:
{circumflex over (x)}(k+1)=(A0−K0C0){circumflex over (x)}(k)+B0r(k)+K0y(k)
e(k)=y(k)−C0{circumflex over (x)}(k) (13)
where (A0, B0, C0) is the nominal value of (A,B,C), and e(k) is the residual. Expressing this model in the frequency domain yields:
{circumflex over (x)}(z)=(zI−A0+KC0)−1B0r(z)+(zI−A0+K0C0)−1K0y(z)
e(z)=y(z)−C0{circumflex over (x)}(z) (14)
By expressing the residual e(z) in terms of r(z) and y(z) we get:
e(z)=(I−C0(zI−A0+K0C0)−1K0)y(z)−C0(zI−A0+K0C0)−1B0r(z) (15)
Assume that the actual model of the system is denoted by the triplet (A,B,C). Thus, we have
x(k+1)=Ax(k)+Br(k)+Ew(k)
y(k)=Cx(k)+υ(k) (16)
The frequency-domain expression that relates the output y to the input r, the disturbance w and measurement noise υ becomes:
Accordingly, the residual of the Kalman filter can be expressed as:
In order to prove the above equation (18), we make use of the following matrix identity:
where |(.)| denotes determinant of (.), A is an (n×n) matrix, B is an (n×1) column vector, C is a an (1×n) row vector, and D is a scalar, Consider the term: I−C0(zI−A0+K0C0)−1K0. Using the matrix identity given by equation (19) we get:
Consider the square bracket on the upper right-hand side of (20). As the determinant does not change by elementary operations on its rows and columns, post-multiplying the second row by K0 and adding it to the first row yields:
where D0(z)−|zI−A0|, F0(z)=|zI−A0+K0C0|. Consider the scalar matrix C0(zI−A0+K0C0)−1B0. Using the matrix identity of (19) we get:
Consider now the upper term in the square bracket on the right-hand side. Again, as the determinant does not change by elementary operations on its rows and columns, post-multiplying the second row by K0 and subtracting it from the first row, yields
Substituting equations (22) and (25) in the expression for the residual, i.e. equation (15), we obtain equation (18).
According to one embodiment, the residual of the Kalman filter takes the form:
e(z)=F0−1(z)D0(z)[ΔGr(z)+v(z)] (26)
where G(z)=D(z)−1N(z)=C(zI−A)−1B; G0(z)=C0(zI−A0)−1B0=D0−1(z)N0(z); ΔG=G(z)−G0(z) is the deviation of the system model G(z) from its nominal model, G0(z). Consider the expression for the residual given in (18). Replacing y(z) by its expression of (17) in (18) and simplifying the result, we get:
Thus, we have:
F
0(z)=det(zI−A0+K0C0) (28)
v(z)=C(zI−A)−1Ew(z)+[C(zI−A)−1K+I]υ(z) (29)
Rewriting (27) as a sum of the model mismatch term ef(z) and a noise term e0(z) yields
e(z)−ef(z)+e0(z) (30)
where
e
f(z)=ΔG(z)(F0−1(z)D0(z)r(z)) (31)
e
0(z)=F0−1(z)D0(z)v(z) (32)
ef(z) and e0(z) are the filtered reference input and noise, respectively, with the filter's transfer function being given by F0−1(z)D0(z). Thus the residual e(z) is the sum of two components, one of which (ef(z)) is deterministic and the other (e0(z)) stochastic. Therefore the residual e(z) will inherit its statistical characterization directly from its noisy component, e0(z), which is assumed to be normally distributed. The deterministic component ef(z) is a function of the model mismatch ΔG(z) and hence is termed herein as the model-mismatch indicator. The model-mismatch indicator expresses the deviation in the output of the system, caused by a fault-induced perturbation in the system model, and hence is employed herein to monitor the status of the system. Therefore, if there is a model mismatch, the residual signal e(k) would be a normally-distributed stochastic process with a non-zero mean value ef(k).
According to one embodiment, the expected final (or steady-state) value of the residual is zero if and only if there is no model mismatch, i.e.:
and the residual is a zero-mean white noise process if and only if there is no model mismatch and the gain K of the Kalman filter is optimal, i.e.:
if and only if ΔG=0 and the Kalman gain K is optimal, where m is the time lag and σe2=E[e2(k)]. Therefore, the residual for a pair of measurements {yi(k), yj(k)} can be decomposed into 2 terms: A deterministic fault (or model mismatch)-indicator term (with the subscript ‘f’) and a noise term (with the subscript ‘0’), as shown below:
Gl0(z) and ksj0 are the nominal subsystem and the sensor gain respectively. Alternatively, for the reference input-measurement pair, we have:
e
rj(z)=efrj(z)+e0rj(z) (38)
e
frj(z)=ΔGrj(z)(Frj0−1(z)Drj0(z)r(z)) (39)
e
0rj(z)=Frj0−1(z)Drj0(z)υrj(z) (40)
Note that efij(z)(efrj(z)) and e0ij(z)(e0rj(z)) are the filtered versions of the input and the noise, respectively, where the filter's transfer function is given by F0−1(z)D0(z). Thus the residual eij(z)(erj(z)) is the sum of two components, one of which efij(z)(efij(z)) is the model-mismatch indicator and the other e0ij(z)(e0rj(z)) is assumed to be a zero-mean white noise process. The model-mismatch indicator is the deviation in the output of the system, caused by a fault-induced perturbation in the system model, and hence is employed herein to monitor the status of the system.
Additionally, The model mismatch indicator efij(z)(efij(z)) is zero if and only if there is no fault. If there is a fault, the mismatch indicator will belong to the same class as that of the reference input signal. For example, it will be constant, a sinusoid and a colored noise respectively, if the reference input is constant, a sinusoid and a colored noise. Furthermore, according to another embodiment, the auto-correlation of the residual eij(z)(erj(z)) is a better visual indicator than the residual as the correlation operation attenuates the noise component and shows clearly the characteristics of the auto correlation of the mismatch indicator. In there is no fault, the auto-correlation of the residual will be a delta function. In the faulty case, the auto correlation of eij(z)(erj(z)) will not be a delta function. For example, the auto correlation function may be for instance, a triangular with a peak value at the zero lag for constant input, a sinusoid for a sinusoid input, and an impulse response of the coloring filter for colored noise reference input.
According to an embodiment of the present disclosure, faults in subsystems and sensors are effectively detected and isolated using Bayes decision strategy. Let H0rj(H0ij) and H1rj(H1ij) be two hypotheses indicating respectively, the presence and absence of a fault. The Bayes decision strategy then takes the general form:
where ts(e) is the test statistics of the residual e and η is the threshold value computed, taking into account the variance of the noise term e0(k), prior probabilities of the two hypotheses, the cost associated with correct and wrong decisions, and the probability of a false alarm. Alternatively, the test statistics for a reference input r(k) that is either a constant or a sinusoid of frequency f0 or an arbitrary signal can be expressed as:
where Pee(f0) is the power spectral density of the sinusoid. Therefore, Bayes decision strategies for the reference input-measurement pair and the measurement-measurement pair take the following respective forms:
In order to detect simple or multiple faults and isolate the faulty subsystem (s) and sensor(s), a binary logic approach is employed. If hypothesis H0rj or H0ij is true from (43) or (44), respectively, then all the components located in the path between the pair of nodes are assigned a binary zero indicating none of the components is faulty. The hypotheses are then treated as false and denoted by a zero, i.e., H0rj=0 or H0ij=0. If hypothesis H1rj or H1ij is true, then at least one component is faulty. This is indicated by assigning a binary one to all the components located in the path. The hypotheses are then treated as true and denoted by a one, i.e., H1rj=1 or H1ij=1. Furthermore, components, which are not located in the path between the pair of nodes, are assigned a ‘don't care’ character x, which can assume either 0 or 1.
Based on the above convention, according to an embodiment, a truth table can then be derived whose columns indicate the components under test and whose rows indicate the status of the fault at these components. The derivation of such a table is described later with reference to
According to one embodiment, simple faults that may occur in both subsystems and sensor, wherein only one component may be faulty at any one time is detectable. Specifically, if there are q subsystems, Gi, i=0, 1, 2, . . . , q−1, in a sensor network, then a single fault occurring in any one of the q subsystems at any one time can be detected and isolated. Alternatively, if there are (q+1) sensors, ksi, i=0, 1, 2, . . . , q, in a sensor network, then a single fault occurring in any one of the (q+1) any one time can be detected and isolated.
According to one embodiment, multiple faults in sensors (subsystems) with no fault in any subsystems (sensors). Specifically, if there are (q+1) sensors, ksi, i=0, 1, 2, . . . , q, then provided there are no faults in the subsystems Gi i=0, 1, 2, . . . q−1, then multiple faults occurring simultaneously in any subset of sensors, of size i with 1≤i≤(q+1) can be detected and isolated. Alternatively, if there are q subsystems, then Gi, i=0, 1, 2, . . . , (q−1), then, provided there are no faults the sensors used, i.e. ksi, i=0, 1, 2, . . . , q, then multiple faults occurring simultaneously in any subset of the subsystems, of size i with 1≤i≤q can be detected and isolated. In the above-described types of faults that are detectable, the following assumptions are taken into account: (a) the reference input must be persistently exciting in order to excite all the modes of the subsystems so that all types of faults resulting from variations in the subsystem parameters may be detected. For example, a constant or sinusoidal reference input can only detect a fault resulting from variations in the steady-state gain or gain at the input frequency, (b) a sensor and a subsystem cannot be faulty at the same time, and (c) multiple faults: more than one sensor can be faulty if none of the subsystem is faulty and more than one subsystem can be faulty if none of the sensor is faulty. Note however, that in the case of single or multiple sensor fault (in the absence of any subsystem fault) there is redundancy in the sensor fault isolation phase as faults are decided by analyzing separate residuals associated with (a) pairs of relevant measurements, and (b) the pairs made of the reference input and relevant measurements. Hence these two separate decisions may be cross-checked for accuracy by verifying whether both analyses yield the same results.
In the example sensor network 300, we assume that at least one sensor is not faulty and describe the method of detecting and isolating a faulty sensor or sub-system. Without any loss of generality, the sensor ks0 is assumed to be the fault-free one. For the sake of explanation, in the following, two cases of fault scenarios are considered: Case 1: H001=1; H112=1; H0r0=0; H1r1=1; H1r2=1; H0r3=0; H123=1 and Case 2: H001=0; H112=1; H023=0; H1r0=1; H1r2=1; H1r3=1; H123=1.
Tables 1 and 2 depict the truth tables which include seven rows associated with fault statuses of all consecutive pairs of measurements {yi-1,yi}:i=1, 2, 3 and all the reference input-to-measurements pairs {r,yi}:i=0, 1, 2, 3, as denoted in the first column. The columns indicate both the subsystems and sensors used, i.e., G0, G1, G2, ks0, ks1ks2; ks3, and the rows indicate the 2 sets of pairs, i.e. pairs of consecutive measurements and reference-measurement pairs. These 2 sets of pairs appear as part of the Bayes decisions H0rj(H1rj), H0(i−1)i (H1(i−1)i) that are associated with residuals {e(i-1)j} and {erj}. These Bayes decisions reflect the fault statuses of all of the 7 components (3 subsystems and 4 sensors) based on the Bayes binary decision strategy, with each row indicating ‘1’ for a fault, a ‘0’ for no fault and ‘x’ for a “don't care condition”, i.e. either a ‘1’ or a ‘0’. Altogether, there are therefore 7 components and 7 pairs of nodes to be considered for fault isolation.
The intersection of each column with the elements of the seven rows indicate the fault status of the component in that particular column. By performing a logical-AND operation on the seven binary results in each column, a new binary value is obtained and stored in a decision vector df that is represented in the last row in Tables 1 and 2. Note that Tables 1 and 2 are built on the assumption that subsystem and sensor faults cannot occur simultaneously.
A KF is driven by the pair of measurements associated with the start and end of each analyzed path. For instance, for path (r,3) in Table 1, the KF is driven by inputs r and y3. The components within this path are G0, G1, G2 and ks3. If the KF residual test statistic is less than the threshold, thus indicating no fault, then a ‘0’ is assigned to all the components within this path, and an “x” is assigned to those outside the path. Similarly for path (r,3) in Table 2, the KF is driven by inputs r and y3. In this case, the test statistic exceeds the threshold, thus indicating a fault. Here, we can only say that either G0 or G1 or G2 or ks3 is faulty. Hence a ‘1’ is assigned to G0, G1, G2 and ks3, indicating an OR operation, whilst components not in the path, i.e. ks1 and ks2 are assigned an ‘x’.
Note that due to feedback, every path (r,1) (r,2) and (r,3) will be affected if any of the subsystems G0, G1 or G2 is faulty and if so, a “1” will be assigned to all of these components. As for path (2,3), if the status of any of its components ks1, G2 and ks3 is found faulty, then a ‘1’ will be assigned to all of them in an OR operation. Finally, by logically-ANDing the columns, one can exactly pinpoint the faulty components in those paths (rows) that intersect with the columns for which the decision value df is 1.
Furthermore, as stated previously, in the cascade connection of the subsystems in the closed-loop configuration, a single fault occurring in any particular subsystem Gi will indicate a fault in all the components located along the paths (r,y0), (r,y1), (r,y2) and (r,y3), due to the feedback connection. In both cases 1 and 2, faults are isolated from the analysis of at least two different paths. Specifically, in case 1, the isolation of the fault was reached from the analysis of the paths connecting the pairs of measurement nodes (0,1), (1,2) and (2,3); and the paths connecting the reference input and the measurement nodes (r,1),(r,2), whereas in case 2, the isolation of the faults was confirmed from analyzing the pairs (1,2), (2,3); (r,0), (r,1), (r,2), (r,3), respectively, as shown by the shaded rows and columns in Tables 1 and 2.
The sensor network is subject to possible faults in the controller G0, in the control input sensor ks0, in the actuator G1, the flow sensor ks1, the height sensor ks2 and the tank G2 due to leakage. The leakage γl is caused by the opening of the drain valve. Note that the portion of fluid entering the second tank G2, after incurring a leakage is represented as 1−yl (407B).
The following Kalman Filters are employed to detect a fault in the system: (1) KFru detects a fault in the controller G0, or in the actuator G1, or in the tank G2, or in the controller sensor ks0, or in the height sensor ks2; (2) KFrf detects a fault in the controller G0, or in the actuator G1, or in the tank G2, or in the height sensor ks2 or in the flow sensor ks1; (3) KFrh detects a fault in the controller G0, or in the actuator G1, or in the tank G2 or in the height sensor ks2; (4) KFeu detects a fault in the controller G0 or in the sensor ks0; (5) KFfh detects a fault in the actuator G2, or in the flow sensor ks1, or in the controller sensor ks0; and (6) KFfh detects a fault in a the tank G2, flow sensor ks1 or height sensor ks2.
In what follows, a model of the two-tank system 400 is first derived followed by a detailed description of the fault determination.
The flow Qi is expressed by the following first-order nonlinear equation:
{dot over (Q)}
i
=−a
m
Q
i
+b
mϕ(u) (45)
where u is the control input to the motor, am and bm the parameters of the motor-pump subsystem and ϕ(u) a dead-band and saturation-type of nonlinearity. The Proportional and Integral (PI) controller is given by:
{dot over (x)}
3
=e=r−h
2
u=k
p
e+k
l
x
3 (46)
where kp and kl are the PI controller's gains and r is the reference input. With the inclusion of the leakage, the liquid level system can be modeled as:
where φ(.)=sign(.)√{square root over (2g(.))},Clφ(H1):=Ql is the leakage flow rate, C0φ(H2):=Q0 is the output flow rate, H1 is the height of the liquid in tank 1, H2 the height of the liquid in tank 2, A1 and A2 the cross-sectional areas of the 2 tanks, g=980 cm/sec2 the gravitational constant, C12 and Co the discharge coefficients of the inter-tank and output valves, respectively. The linearized state-space model of the entire system is given by:
{dot over (x)}=Ax+Br
y=Cx (48)
where x, A, B and C are given by:
where qi, ql, q0, h1 and h2 are respectively the increments in Qi, Ql, Qo, H10 and H20, whereas a1, a2, α and β are parameters associated with the linearization process, α is the leakage flow rate, ql=αh1, and β is the output flow rate, and qo=βh2.
According to an embodiment, four simple faults are considered herein and defined as follows: (1) an actuator fault in subsystem G1, (2) a flow sensor fault in ks1, (3) a height sensor fault in ks2 and (4) a leakage fault in subsystem G2 (due to variations in yl). The Kalman filter bank used here consists of 6 Kalman filters with pairs of inputs (r,u),(r,f),(r,h),(e,u)(u,f) and (f,h), and denoted respectively by KFru, KFrf, KFrh, KFufKFeu and KFuh. As pointed out earlier, it is assumed that only a simple fault can occur at any given time instant. Each of the six Kalman filters used is designed using the identified nominal model relating its own pair of inputs. The residuals of these Kalman filters are then used to detect and isolate the various possible faults, as described next.
According to one embodiment, a number of experiments were performed using National Instruments LAB VIEW software to acquire the required data pertaining to the height of the water level in the tank, the flow rate, and the control input to the actuator under normal (no fault) and “faulty” scenarios. Data on the faults were obtained by emulating (a) actuator faults, (b) flow sensor faults, (c) height sensor faults and (d) leakage faults.
For the data shown in
For the sake of convenience, Table 4 depicts the truth tables for the faults based on the test statistics of only experiment 3 (ex. 3). Bayes binary decisions for the paths (r,u), (r,f), (r,h), (e,u), (u,f) and (f,h) are shown by a ‘1’, ‘0’ and ‘x’ to indicate if there is a ‘fault’, ‘no fault’ and ‘not applicable (don't care status labelled by ‘x’)’, respectively.
From the last row indicating the binary decision vector df, it can be seen that a fault in either the actuator or in the flow sensor are accurately isolated. However, in the “leakage or height sensor fault” scenario, Table 4 asserts that both the tank (G2) and the height sensor (ks2) are faulty, instead of pinpointing only to the tank as being the sole faulty component. The reason for this is that both of the leakage fault parameter (yf), which affects the tank, and the height sensor appear together in cascade in all of the paths. Further due to saturation type nonlinearity, when there is a leakage fault the PI controller is unable to maintain the reference height. In the case when the saturation limit is not reached under a fault condition, that is when the fault size is small (an incipient fault), there is no problem in isolating the leakage from height sensor fault. Furthermore, In the cascade connection of the subsystems in the closed-loop configuration, a single fault occurring in any particular subsystem G1, or G2, or sensor ks2 will indicate a fault in all of the components located along the paths (r,u), (r,f), and (r,h).
According to one embodiment, fault diagnosis of a class of nonlinear system using an adaptive Kalman filter is described. The system includes scheduling parameters, and emulator parameters. The scheduling parameters are chosen such that they are capable of tracking variations in the system model as a result of changes in the operating regime of the system. The emulator parameters, on the other hand, simulate variations in the subsystems during the identification phase and have negligible effect during the operational phase. The nominal model and the influence vectors (described below), which are the gradient of the feature vector respect to the emulator parameters, are identified off-line from a number of emulator parameter perturbed experiments. A Kalman filter is designed using the identified nominal model. As the system varies, the Kalman filter model is adapted using the scheduling variables. The residual is employed for fault diagnosis purposes.
A fault is detected and isolated for the following practical cases, Case 1: the measurements include all the inputs and/or the outputs of all the subsystems whose faults have to be detected and isolated. For example, if fault in a sensor, a controller, an actuator and a plant is to be detected and isolated, then measurements include the sensor output, the controller input and the output, the actuator inputs as well as the input and the output of the plant, and Case 2: where the measurements are restricted to inputs and/or outputs of only some of the subsystems whose faults have to be detected and isolated (that is the inputs and/or the outputs of some subsystems may not be accessible). For example a fault in a sensor, a controller, an actuator or a plant is to be detected and isolated even if the measurement is restricted only to the input and the output of the system.
According to an embodiment, the class of nonlinear systems considered herein may be approximated by a piecewise linear model for the intended applications, including the detection and isolation of incipient faults. The scheduling variables are configured to track the behavior of the nonlinear system over all operating regimes.
The scheduling variable ξ is a function of the state of the system x(k). A finite number of l-indexed scheduling variables, {ξl}, are selected to cover all the relevant operating regimes.
The scheduling vector is a p×1 discrete-time vector given by:
ξl=[ξ1lξ2lξ3l.ξpl]T,l=0,1,2, . . . (49)
The index l indicates an operating point, and ξ0 is the scheduling variable indicating the nominal fault-free operating regime. The nonlinear model of the system is linearized at each discrete variable ξl to obtain a set of piecewise-linear approximate models {G(ξl,z):l=0, 1, 2, . . . }. The transfer function,
of the overall system relating the input r(k) and the output y(k) may be expressed using a linear regression model as:
y(k)=ψT(k)θ(ξl)+v(k) (50)
wherein, ψT(k)=[−y(k−1)−y(k−2) . . . −y(k−na)r(k−1)r(k−2) . . . r(k−nb)] (51)
ψ(k) is an M×1 data vector, M=na+nb, na and nb are respectively the orders of the numerator N(ξl,z) and denominator D(ξl,z), θ(ξl) is an M×1 feature vector, which is a function of the scheduling variable ξl:
θ(ξl)=[a1(ξl)a2(ξl) . . . an
where {ai(ξl)} and bi(ξl) are respectively the coefficients of D(ξl,z) and N(ξl,z).
Emulators are a powerful tool to use whenever access to the variables of interest is either not possible or difficult/costly to achieve. Accordingly, the role of emulators in the identification and fault diagnosis phases is described below by analysing the following 3 cases: case (a) the case when the map relating the feature vector of the overall system, θ(ξl), to the individual feature vectors, θi(ξl), of the subsystems Gi(ξl,z), i=0, 1, 2, . . . , q−1, is known a priori. Examples include systems where the structure of its model may be derived from the physical laws and further the structure of the identified and the actual models are the same. Let this map be represented by the function ϕ(., ., . . . , .) given below:
θ(ξl)=ϕ(θ0(ξl),θ1(ξl), . . . ,θq−1(ξl)) (53)
In this case, the fault isolation problem is considerably simplified since the required procedure would simply consists of first identifying θ(ξl), and then estimating from it, θi(ξl) using the known functional relationship θ(ξl)=ϕ(θ0(ξl), θ1(ξl), . . . , θq−1(ξl)). A subsystem Gi(ξl,z) is asserted to be faulty if the estimate of its feature vector θi(ξl) deviates from its nominal fault-free value.
In case (b), when the parameters of the subsystems are accessible, then it is possible to estimate the mapping function ϕ(., ., . . . , .) by performing a number of parameter-perturbed experiments using emulators as explained next. Example includes controllers whose parameters are accessible and which may be manipulated.
In case (c), the map relating the feature vector and the parameters of the subsystems is not known and the parameters within a subsystem are not accessible.
In practice, this case is the most common and hence mot general of the 3 cases. To overcome this practical problem, emulators are included at the input, output, or both to indirectly induce variations in the associated subsystems during the identification phase. The emulator is a hardware or software device which takes the form of a transfer function with its own accessible parameters that are called emulator parameters. An emulator is connected in cascade with a subsystem (whose faults have to be detected and isolated) during the identification stage, and it has a negligible effect on the system's dynamical behavior during the operational stage. In many practical problems, the emulator is chosen to mimic the macroscopic behavior of the system characterized by gain and phase changes in the system transfer function. The emulator is chosen either as a constant gain (γi), a pure delay of d time instants (γi,z−d), an all-pass first-order filter
a Blaschke product of all-pass first-order filters
where γj induces phase variations, or any other combination of these. Note here that the inclusion of time delay in the emulators allows us to model a larger class of practical fault-generation mechanisms, ranging from those with no delay at all (instantaneous ones) to those with non-negligible delays.
During the operational phase, emulators, termed as nominal emulators, are selected such that they have a negligible effect on the behavior of the overall system. The static emulators are disconnected, i.e. they are set equal to unity. The dynamic emulators, on the other hand, are not disconnected. They are chosen to be stable with their transfer functions approximately equal to one, so that the order of the system during the identification and the operational phase are identical. The rationale behind this is that it is difficult to develop a fault diagnosis scheme for a system where there is a jump in the model order during a transition from one phase to the other.
a static gain γi, and a different static gain γj. Note, that the emulator and the scheduling parameters play an important role in the identification of a system with applications including fault diagnosis, health monitoring and condition-based maintenance. An emulator mimics variations in the associated subsystems during identification whereas the scheduling parameters track the variations in the operating regime of the system.
For the sake of simplicity, the emulator is considered in
γ=[γ1γ2.γq]T (54)
Let γ0 be nominal fault-free parameter value and its variation Δγ as given below:
Δγ=γ−γ0 (55)
Also let θ0(ξl) be the nominal fault-free feature vector corresponding to the nominal emulator parameter values γ0. The deviation in the feature vector is a nonlinear function of the deviations in the emulator parameters:
Δθ(ξl,Δγ)=θ(ξl)−θ0(ξl)=φ(ξl,Δγ) (56)
where θ0(ξl) is the nominal fault-free feature vector corresponding to the emulator parameter values γ0. The nonlinear function φ(ξl,Δγ) can be expressed as a power series in {Δγi} with a finite number of terms as given below:
where Ωi(ξl), Ωij(ξl), Ωijk(ξl), . . . , Ω123 . . . q(ξl) are M×1 vectors which denote the first, second, third and up to qth partial derivatives of θ with respect to γ, and which termed influence vectors given by:
The nominal feature vector and all the partial derivatives are computed at the scheduling variable ξl. The influence vectors are the measures of sensitivity of the feature vector to the variations in the emulator parameters. Let Ω(ξl) be a matrix formed of all the influence vectors, which is termed here as the influence matrix, and defined as:
Ω(ξl)=[Ω1(ξl) . . . Ω1(ξl) . . . Ω12(ξl) . . . Ωij(ξl) . . . Ω123(ξl) . . . Ωijk(ξl) . . . Ω123 . . . q(ξl)] (59)
Substituting for the finite power series expression (57) for the feature vector in the linear regression model (50) yields:
Note that the linear regression model of equation (7) is also termed as the diagnostic model. This model is more general, more informationally rich and thus more accurate, than the traditional one as it includes products of the deviations in the emulator parameters. Hence, compared to the traditional models, which are functions only of the scheduling parameters, the diagnostic model of (7) can encompass applications requiring fault diagnosis of systems where multiple component faults may occur simultaneously.
The accuracy and reliability of the identified model are critical for superior fault diagnosis performance. Accordingly, by an embodiment of the present disclosure, a method of identifying the nominal model is characterized by the feature vector {circumflex over (θ)}0(ξl) and is estimated by performing a number of experiments by varying one or more emulator parameters {γi} to cover likely operating regions in the neighborhood of, and including, a given operating point as shown in
In practical systems, the input-output data of subsystems whose faults have to be detected and isolated may be accessible or restricted to those of some subsystems. Accordingly, if the input-output data of all sub-systems is available, the bank of Kalman filter approach for each pair of measurements as previously described may be used. However, if only some subset of data is available, an influence vector approach may be utilized. In the influence vector approach, the measurements are restricted to inputs and/or outputs of only some of the subsystems (that is the inputs, outputs or both of some subsystems may not be accessible). For example, a fault in a sensor, a controller, an actuator or a plant is to be detected and isolated even if the measurement is restricted only to the input and the output of the system. In this case, influence vectors associated with each fault type (or the direction of each fault type) is computed during the identification phase and a fault type is determined from the maximum correlation between the KF residual and the hypothesized residual estimates.
In general, the bank of Kalman filter approach is computationally efficient, simple, and provides a closed form solution to both simple and multiple faults. On the other hand, the influence vector approach is computationally efficient, and simple, and provides a closed form solution for simple faults. For multiple faults, however, there are no closed form solutions and the optimal solutions can be computed iteratively.
According to an embodiment, in the influence vector approach, a finite number of scheduling variables, ξl, are selected to cover the relevant operating regimes. The scheduling variable is a p×1 discrete-time vector:
ξl=[ξ1lξ2lξ3l.ξpl], for l=0,1,2 . . .
The index e indicates an operating point, and ξ0 is the scheduling variable indicating the nominal fault-free operating regime. The nonlinear model of the system is linearized at each discrete variable ξl to obtain a set of piecewise linear approximate models {G(ξl,z)}. A subsystem Gi(ξl,z) may be a process (or a plant), a controller, an actuator, or another device, and is associated with an emulators Ei(z). The parameter γi of Ei(z) is selected so that it is capable of monitoring solely the health of the subsystem Gi(ξl,z). The emulator parameter vector γ for the entire interconnected system is a (q×1) vector that augments {γi,i=1, 2, . . . , s} for all subsystems, Gi(ξl,z), i=1, 2, . . . , s, that are subject to failure. Let γ=[γ1γ2γ3 . . . γs]T=[γ1γ2 . . . γq]T be the overall q×1 diagnostic parameter vector γ formed of all the subsystem diagnostic parameters {γi}.
The linear regression model of the system during the identification phase takes the following form:
y(k)=ψT(k)(θ0(ξl)+Δθ)+v(k) (61)
where
where θ0(ξl) is the nominal fault-free feature vector corresponding to the emulator parameter values γ0; y0(k)=ωT(k)θ0(ξl) is the nominal output; Ωi(ξl), Ωij(ξl), Ωijk(ξl), . . . Ω123 . . . q(ξl) are M×1 vectors, termed influence vectors, which denote the first, second, third and up to qth partial derivatives of θ with respect to γ as given by,
The nominal feature vector and all the partial derivatives are computed at the scheduling variable ξl. The nominal feature vector θ0(ξl,γ0) and influence matrix Ω formed of influence vectors, Ω=[Ωi(ξl), Ωij(ξl), Ωijk(ξl), . . . Ω123 . . . q(ξl)], completely describe how subsystems {G(ξl,z)} affect the overall interconnected system. The set of influence vector Ω is estimated by minimizing the log likelihood function l(γ|e) during the identification phase using the reliable and accurate identification scheme described earlier with reference to
Accordingly, the estimate of the influence vector can be represented as:
The fault detection problem can be posed as binary composite hypothesis testing problem, wherein the threshold value is chosen as an acceptable trade-off between the correct detection and false alarm probabilities. The Bayes detection decision strategy is similar to equations (42) and (43) as previously described.
With regards to fault isolation, a Bayesian multiple composite hypotheses testing scheme is employed. It is based on determining which of the diagnostic parameters γi:i=1, 2, 3, . . . , q has varied. According to an embodiment, a maximum likelihood (ML) method, which is an efficient and unbiased technique is employed to estimate the variation Δγ. The ML estimate Δ{circumflex over (γ)} of Δγ is obtained by minimizing the log likelihood function l(γ|e) given by:
wherein the subsystem Gi(z) is asserted to be faulty if |Δγj| exceeds some threshold value. Furthermore, the fault indicator function Φ(k)φ(Δγ) is a nonlinear function of {Δγi} as shown in (62), and as result, there is no closed-form solution to the minimization problem except for the case of simple faults.
The method starts in step S900 and proceeds to step S910. In step S910, a plurality of paths in the sensor network is identified based on a pair of signal measurements. According to one embodiment, the pair of signal measurements may be a reference signal-sensor measurement pair, or a pair of consecutive sensor measurements. Note that for a sensor network system including a single reference signal input and Q sensors, there are Q pairs of reference signal-sensor measurements and (Q−1) pairs of consecutive sensor measurement. As described previously, with reference to
The process then proceeds to step S920, wherein the Kalman-filter residual is computed for each signal measurement pair. The details regarding the computation of the residuals are described previously with reference to
Further, in step S930, the process computes for each signal measurement pair, a binary value (referred to herein as a binary-detection value), for each sensor and sub-system lying on the path defined by the measurement pair. Based on the computed Kalman-filter residual value and a predetermined threshold, either a ‘1’ or a ‘0’ is assigned to the sensors and sub-systems lying on the path. As described previously, if the computed residual value is less than a predetermined threshold (corresponding to the path identified by the signal measurement pair), then all the sensors and sub-systems lying on the path are assigned a binary value of ‘0’, indicating that none of the components (sensors and sub-systems) are faulty. However, if the computed residual value is higher than the predetermined threshold, then all the components (sensors and sub-systems) that lie on the path are assigned a binary value of ‘1’, indicating that at least one of the components along the path is faulty.
The process further proceeds to step S940, wherein a fault in the sensor network is isolated by performing a logical-AND operation on the binary detection values (assigned in step S930) of the sensors and sub-systems in the network. According to an embodiment, a binary value that is computed by performing the logical-AND operation (referred to herein as a binary-decision value) indicates which component of the network is in a faulty state. Furthermore, specific details regarding the computations of the above steps are described previously with reference to
Additionally, each of the functions of the above described fault detection and isolation method may be implemented by a control circuitry, which includes one or more processing circuits. A processing circuit includes a programmed processor, for example, processor (central processing unit) 2100, as shown in
In what follows, the salient features of the fault detection and isolation techniques described herein are re-iterated for sake for completeness.
With regard to the feature of detecting and isolating faults, the faults may be simple (a fault in only one subsystem) or multiple faults in subsystems (simultaneous faults in two or more subsystems), and the detection method further estimates fault size. The system is subject to disturbances and the output measurement is corrupted by noise. The measurements may be restricted to inputs and/or outputs of only some of the subsystems whose faults have to be detected and isolated (that is the inputs and/or the outputs of some subsystems may not be accessible). For example, a fault in a sensor, a controller, an actuator or a plant is to be detected and isolated even if the measurement is restricted only to the input and the output of the system. Bayes' decision strategy is employed to detect and isolate a fault. In this case influence vectors associated with each fault type (or the direction of each fault type) are computed during the identification phase and a fault type is determined from the maximum correlation between the KF residual and the hypothesized residual estimates.
For the case wherein measurements include all the inputs and/or the outputs of all the sub-systems whose faults have to be detected and isolated, a bank of Kalman filter may be utilized. For example, if fault in a sensor, a controller, an actuator and a plant is to be detected and isolated, then measurements must include the sensor output, the controller input and the output, the actuator inputs as well as the input and the output of the plant. Only the residuals from all the KFs are employed for fault detection and isolation. The influence vector (or fault direction) is not required, and hence is not estimated. Only the residuals from all the Kalman filters are employed for fault detection and isolation. Bayes' decision strategy is then used to assert the presence or absence of a fault. Bayes' decision strategy is simple, computationally efficient and gives a closed-form solution for the detection and isolation of both simple and multiple faults.
The residuals of the Kalman filters are generated from all possible pairs of (a) sensor measurements {yi(k),yj(k)} with yi(k) as input and yj(k) as the desired output as well as (b) the reference input and measurements {r(k),yj(k)} with r(k) as the input and yj(k) as the desired output. Furthermore, with regard to cross-checking the faults, a fault in a subsystem or in a sensor is cross-checked by analyzing different paths between sensor nodes, thereby increasing the reliability of the described detection and isolation scheme. Note that the key property of the KF is that ‘the residual is a zero-mean white noise process with minimum variance if and only if there is no systemic and model mismatch errors and if there is model-mismatch, the residual will have an additive term indicating model mismatch.
The identified model used in the Kalman filter captures the dynamic and static behaviors of the system, not only at a given operating point but also over the entire operating regimes. Operating points are tracked by scheduling variables, which are measured in real time and include exogenous signals such as the set point, internal variables such as the velocity and power, environment variables such as the altitude, temperature, pressure and air speed. At each operating point, a linear model is identified using a reliable and accurate identification scheme.
The system is identified by perturbing the emulator parameters to mimic various likely operating scenarios (instead of the typical schemes that are based on identifying the nominal mode from a single experiment). The identified model is optimal in the sense that it captures the static and dynamic behavior of the system over a wide region around a given operating point.
The KF is designed by identifying a piecewise linear model to approximate the nonlinear system over the entire operating regime. The Kalman filter thus obtained is adaptive and piecewise linear. Further, it is adapted along the trajectory of the operating points using the scheduling variables. Unlike the extended Kalman filter, it is optimal at each operating point, simple, computationally efficient and does not suffer from convergence problems.
The status of the system including a) the performance, b) systemic error, c) model mismatch, and d) presence of a fault is monitored by exploiting the key property of the Kalman filter. Using the Bayes decision strategy, a test statistics and a threshold value is selected to assert the status of the system stated above. The test statistics is a function of the residual and depends upon the reference input to the system. Threshold values are selected to ensure a high probability of correct decision without exceeding an acceptable probability of false alarm.
The reliability, accuracy and optimality (variance of the residual is minimum) of the Kalman Filter is ensured if it satisfies the key property of the residual namely the residual is a zero mean white noise process. Following steps are taken if the key property of the Kalman filter is not met: (a) Online tuning: If there is a systemic error, the Kalman gain is tuned online to ensure that the residual is a zero mean white noise process, (b) Re-identify and re-design: if online tuning is not successful, then there is model mismatch. The constant term in the residual is analyzed to determine if there is a fault. If there is no fault, the system is re-identified and the Kalman filter is redesigned for the identified model, and (c) Fault accommodation: If there is a fault then the fault is accommodated. Furthermore, incipient faults can be accommodated in time before they grow large to cause performance degradation or in the extreme case a failure and a shutdown of the system.
Additionally, according to another embodiment, a soft sensor may be developed using the Kalman filter scheme described herein. Soft sensors are invaluable in industrial applications in which hardware sensors are either too costly to maintain or to physically access. Software-based sensors act as the virtual eyes and ears of operators and engineers looking to draw conclusions from processes that are difficult—or impossible—to measure with a physical sensor. With no moving parts, the soft sensor offers a maintenance-free method for fault diagnosis and process control. They are ideal for use in aerospace, pharmaceutical, process control, mining, ml and gas, and healthcare industries.
Further, the claimed advancements may be provided as a utility application, background daemon, or component of an operating system, or combination thereof, executing in conjunction with CPU 2100 and an operating system such as Microsoft Windows 7, UNIX, Solaris, LINUX, Apple MAC-OS and other systems known to those skilled in the art.
CPU 2100 may be a Xenon or Core processor from Intel of America or an Opteron processor from AMD of America, or may be other processor types that would be recognized by one of ordinary skill in the art. Alternatively, the CPU 2100 may be implemented on an FPGA, ASIC, PLD or using discrete logic circuits, as one of ordinary skill in the art would recognize. Further, CPU 2100 may be implemented as multiple processors cooperatively working in parallel to perform the instructions of the inventive processes described above.
The computer 1099 in
The computer 1099 further includes a display controller 2108, such as a NVIDIA GeForce GTX or Quadro graphics adaptor from NVIDIA Corporation of America for interfacing with display 2110, such as a Hewlett Packard HPL2445w LCD monitor. A general purpose I/O interface 2112 interfaces with a keyboard and/or mouse 2114 as well as a touch screen panel 2116 on or separate from display 2110. General purpose I/O interface also connects to a variety of peripherals 2118 including printers and scanners, such as an OfficeJet or DeskJet from Hewlett Packard.
A sound controller 2120 may also be provided in the computer 1099, such as Sound Blaster X-Fi Titanium from Creative, to interface with speakers/microphone 2122 thereby providing sounds and/or music. The speakers/microphone 2122 can also be used to accept dictated words as commands.
The general purpose storage controller 2124 connects the storage medium disk 2104 with communication bus 2126, which may be an ISA, EISA, VESA, PCI, or similar, for interconnecting all of the components of the robot-guided medical procedure system. A description of the general features and functionality of the display 2110, keyboard and/or mouse 2114, as well as the display controller 2108, storage controller 2124, network controller 2106, sound controller 2120, and general purpose I/O interface 2112 is omitted herein for brevity as these features are known.
While aspects of the present disclosure have been described in conjunction with the specific embodiments thereof that are proposed as examples, alternatives, modifications, and variations to the examples may be made. Accordingly, embodiments as set forth herein are intended to be illustrative and not limiting. There are changes that may be made without departing from the scope of the claims set forth below.
This disclosure claims the benefit of U.S. Provisional Application No. 62/001,315, filed on May 21, 2014, the disclosure of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
62001315 | May 2014 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 15888446 | Feb 2018 | US |
Child | 16049213 | US | |
Parent | 14695987 | Apr 2015 | US |
Child | 15888446 | US |