Robin_PHD/symptom_ex_process/sys_abs.tex
2010-07-24 12:27:14 +01:00

262 lines
11 KiB
TeX

ection{The Symptom abstraction Process}
% TO DO: separate these two:
\paragraph{Symptom Extraction Described}
The objective of `symptom abstraction' is to analyse the functional~group and find
how it can fail
when specified components within it fail.
Once we know how functional~group can fail, we can treat it as a component or sub-system
with its own set of failure modes.
\paragraph{FMEA applied to the Functional Group}
As the functional~group is a set of components, the failure~modes
that we have to consider are all the failure modes of its components.
Each failure mode (or combination of) investigated is termed a `test case'.
Each `test case' is analysed.
%
The component failure modes in each test case
are examined with respect to their effect on the functional~group.
%
The aim of this analysis is to find out how the functional~group reacts
to each of the test case conditions.
The goal of the process is to produce a set of failure modes from the perspective of the functional~group.
\paragraph{Symptom Identification}
When all `test~cases' have been analysed, a second phase is applied.
%
This looks at the results of the `test~cases' as symptoms
of the sub-system.
Single component failures (or combinations) within the functional~group may cause unique symptoms.
However, many failures, when looked at from the perspective of the functional group, will have the same symptoms.
These can be collected as `common symptoms'.
To go back to the CD~player example, a failed
output stage, and a failed internal audio amplifier,
will both cause the same failure; $no\_sound$ !
\paragraph{Collection of Symptoms}
The common symptoms of failure and lone~component failure~modes are identified and collected.
We can now consider the functional~group as a component and the common symptoms as its failure modes.
Note that here because the process is bottom up, we can ensure that all failure modes
associated with a functional~group have been handled.
Were failure~modes missed, any failure mode model could be dangerously incomplete.
It is possible here for an automated system to flag unhandled failure modes.
\ref{requirement at the start}
%%%
%%%\section{The Process : To analyse a base level Derived~Component/sub-system}
%%%
%%%To sumarise:
%%%
%%%\begin{itemize}
%%% \item Determine a minimal functional group
%%% \item Obtain the list of components in the functional group
%%% \item Collect the failure modes for each component
%%%% \item Draw these as contours on a diagram
%%%% \item Where si,ultaneous failures are examined use overlapping contours
%%%% \item For each region on the diagram, make a test case
%%% \item Examine each failure mode of all the components in the functional~group, and determine their effects on the failure~mode behaviour of the functional group
%%% \item Collect common symptoms. Imagine you are handed this functional group as a `black box', a `sub-system' to use.
%%%Determine which test cases produce the same fault symptoms {\em from the perspective of the functional~group}.% Join common symptoms with lines connecting them (sometimes termed a `spider').
%%% \item The lone test cases and the common~symptoms are now the fault mode behaviour of the sub-system/derived~component.
%%% \item A new `derived component' can now be created where each common~symptom, or lone test case is a failure~mode of this new component.
%%%\end{itemize}
%%%
%%%
%%%
%%%
%%%\section{A general derived Component/Sub-System example}
%%%
%%%Consider a functional group $FG$ with components $C_1$, $C_2$ and $C_3$.
%%%
%%%$$ FG = \{ C_1 , C_2 , C_3 \} $$
%%%
%%%Each component has a set of related fault modes (i.e. ways in which it can fail to operate correctly).
%%%Let us define the following failure modes for each component, defining a function $FM()$
%%%that is passed a component and returns the set of failure modes associated with it
%%%\footnote{Base component failure modes are defined, often with
%%%statistics and evironmental factors in a variety of sources. \cite{mil1991}
%%%}.
%%%
%%%To re-cap from the definitions chapter \ref{chap:definitions}.
%%%
%%%Let the set of all possible components be $\mathcal{C}$
%%%and let the set of all possible failure modes be $\mathcal{F}$.
%%%
%%%We can define a function $FM$
%%%
%%%\begin{equation}
%%%FM : \mathcal{C} \mapsto \mathcal{P}\mathcal{F}
%%%\end{equation}
%%%
%%%defined by (where $C$ is a component and $F$ is a set of failure modes):
%%%
%%%$$ FM ( C ) = F $$
%%%
%%%%\\
%%%
%%%And for this example:
%%%
%%%$$ FM(C_1) = \{ a_1, a_2, a_3 \} $$
%%%$$ FM(C_2) = \{ b_1, b_2 \} $$
%%%$$ FM(C_3) = \{ c_1, c_2 \} $$
%%%
%%%
%%%\paragraph{Finding all failure modes within the functional group}
%%%
%%%For FMMD failure mode analysis, we need to consider the failure modes
%%%from all the components in the functional group as a flat set.
%%%This can be found by applying function $FM$ to all the components
%%%in the functional~group and taking the union of them thus:
%%%
%%%$$ FunctionalGroupAllFailureModes = \bigcup_{j \in \{1...n\}} FM(C_j) $$
%%%
%%%We can actually overload the notation for the function FM
%%%and define it for the set components within a functional group $FG$ (i.e. where $FG \subset \mathcal{C} $) thus:
%%%
%%%\begin{equation}
%%%FM : FG \mapsto \mathcal{F}
%%%\end{equation}
%%%
%%%Applied to the functional~group $FG$ in the example above:
%%%\begin{equation}
%%% FM(FG) = \{a_1, a_2, a_3, b_1, b_2, c_1, c_2 \}
%%%\end{equation}
%%%
%%%This can be seen as all the failure modes that can affect the failure mode group $FG$.
%%%
%%%\subsection{Analysis of the functional group failure modes}
%%%
%%%For this example we shall consider single failure modes.
%%%%For each of the failure modes from $FM(FG)$ we shall
%%%%create a test case ($fgfm_i$). Next each test case is examined/analysed
%%%%and its effect on the functional group determined.
%%%
%%%\par
%%%%\vspace{0.3cm}
%%%\begin{table}[h]
%%%\begin{tabular}{||c|c|c|c||} \hline \hline
%%% {\em Component Failure Mode } & {\em test case} & {\em Functional Group} & {\em Functional Group} \\
%%% {\em } & {\em } & {\em failure mode} & {\em Symptom} \\ \hline
%%%%
%%%$a\_1$ & $fs\_1$ & $fgfm_{1}$ & SP2 \\ \hline
%%%$a\_2$ & $fs\_2$ & $fgfm_{2}$ & SP1 \\ \hline
%%%$a\_3$ & $fs\_3$ & $fgfm_{3}$ & SP2\\ \hline
%%%$b\_1$ & $fs\_4$ & $fgfm_{4}$ & SP1 \\ \hline
%%%$b\_2$ & $fs\_5$ & $fgfm_{5}$ & SP1 \\ \hline
%%%$c\_1$ & $fs\_6$ & $fgfm_{6}$ & \\ \hline
%%%$c\_2$ & $fs\_7$ & $fgfm_{7}$ & SP2\\ \hline
%%%%
%%% \hline
%%%\end{tabular}
%%%\caption{Component to functional group to failure symptoms example}
%%%\label{tab:fexsymptoms}
%%%\end{table}
%%%%\vspace{0.3cm}
%%%
%%%Table~\ref{tab:fexsymptoms} shows the analysis process.
%%%As we are only looking at single fault possibilities for this example each failure mode
%%%is represented by a test~case.
%%%The Component failure modes become test cases\footnote{The test case stage is necessary because for more complex analysis we have to consider the effects of combinations of component failure modes}.
%%%The test cases are analysed w.r.t. the functional~group.
%%%These become functional~group~failure~modes ($fgfm$'s).
%%%The functional~group~failure~modes are how the functional group fails for the test~case, rather than how the components failed.
%%%
%%%For the sake of example, let us consider the fault symptoms of $\{fgfm_2, fgfm_4, fgfm_5\}$ to be
%%%identical from the perspective of the functional~group.
%%%That is to say, the way in which functional~group fails if $fgfm_2$, $fgfm_4$ or $fgfm_5$ % failure modes
%%%occur, is going to be the same.
%%%For example, in our CD player example, this could mean the common symptom `no\_sound'.
%%%No matter which component failure modes, or combinations thereof cause the problem,
%%%the failure symptom is the same.
%%%It may be of interest to the manufacturers and designers of the CD player why it failed, but
%%%as far as we the users are concerned, it has only one symptom,
%%%`no\_sound'!
%%%We can thus group these component failure modes into a common symptom, $SP1$, thus
%%%$ SP1 = \{fgfm_2, fgfm_4, fgfm_5\}$.
%%%% These can then be joined to form a spider.
%%%Likewise
%%%let $SP2 = \{fgfm_1, fgfm_3, fgfm_7\}$ be an identical failure mode {\em from the perspective of the functional~group}.
%%%Let $\{fgfm_6\}$ be a distinct failure mode {\em from the perspective of the functional~group i.e. it cannot be grouped as a common symptom}.
%%%
%%%
%%%We have now in $SP1$, $SP2$ and $fgfm_6$ as the three ways in which this functional~group can fail.
%%%In other words we have derived failure modes for this functional~group.
%%%We can place these in a set of symptoms, $SP$.
%%%%
%%%$$ SP = \{ SP1, SP2, fgfm_6 \} $$
%%%%
%%%%
%%%These three symptoms can be considered the set of failure modes for the functional~group, and
%%%we can treat it as though it were a {\em black box}
%%%or a {\em component} to be used in higher level designs.
%%%%
%%%The next stage of the process could be applied automatically.
%%%Each common symptom becomes a failure mode of
%%%a newly created derived component. Let $DC$ be the newly derived component.
%%%This is assigned the failure modes that were derived from the functional~group.
%%%We can thus apply the function $FM$ on this newly derived component thus:
%%%
%%%$$ FM(DC) = \{ SP1, SP2, fgfm_6 \} $$
%%%
%%%Note that $fgfm_6$, while %being a failure mode has
%%%not being grouped as a common symptom
%%%has \textbf{not dissappeared from the analysis process}.
%%%Were the designer to have overlooked this test case, it would appear in the derived component.
%%%This is rather like a child not eating his lunch and being served it cold for dinner\footnote{Although I was only ever threatened with a cold dinner once, my advice to all nine year olds faced with this dilemma, it is best to throw the brussel sprouts out of the dining~room window while the adults are not watching!}!
%%%The process must not allow failure modes to be ignored or forgotten (see project aims in section \ref{requirements}).
%%%
%%%
%%%\subsection{Defining the analysis process as a function}
%%%
%%%It is useful to define this analysis process as a function.
%%%Defining the function `$\bowtie$' to represent the {\em symptom abstraction} process, we may now
%%%write
%%%
%%%$$
%%%\bowtie : SubSystemComponentFaultModes \mapsto DerivedComponent
%%%$$
%%%%
%%%%\begin{equation}
%%%% \bowtie(FG_{cfm}) = DC
%%%%\end{equation}
%%%%
%%%%or applying the function $FM$ to obtain the $FG_{cfm}$ set
%%%%
%%%Where DC is a derived component, and FG is a functional group:
%%%
%%%\begin{equation}
%%% \bowtie(FM(FG)) = DC
%%%\end{equation}
%%%
%%%
%%%%The $SS_{fm}$ set of fault modes can be represented as a diagram with each fault~mode of $SS$ being a contour.
%%%%The derivation of $SS_{fm}$ is represented graphically using the `$\bowtie$' symbol, as in figure \ref{fig:gensubsys4}
%%%
%%%% \begin{figure}[h+]
%%%% \centering
%%%% \includegraphics[width=3in,height=3in]{./symptom_abstraction4.jpg}
%%%% % synmptom_abstraction.jpg: 570x601 pixel, 80dpi, 18.10x19.08 cm, bb=0 0 513 541
%%%% \label{fig:gensubsys3}
%%%% \caption{Deriving a new diagram}
%%%
%%%
%%%This sub-system or derived~component $DC$ , with its three error modes, can now be treated as a component (although at a higher level of abstraction)
%%%with known failure modes.
%%%This process can be repeated using derived~components to build a
%%%hierarchical
%%%fault~mode
%%%model.
%%%
%%%
%%%
%%%
%%%