JMC PR
This commit is contained in:
parent
e544e5bd33
commit
31521372c6
@ -569,7 +569,7 @@ Both analysis strategies obtained the same failure modes for the
|
|||||||
inverting amplifier (i.e. the same failure modes for the {\dc} INVAMP).
|
inverting amplifier (i.e. the same failure modes for the {\dc} INVAMP).
|
||||||
|
|
||||||
\subsection{Conclusion}
|
\subsection{Conclusion}
|
||||||
All FMEA is performed in the context of the environment and functionality of the enitity
|
All FMEA is performed in the context of the environment and functionality of the entity
|
||||||
under analysis.
|
under analysis.
|
||||||
This example shows that for the condition where the input voltage
|
This example shows that for the condition where the input voltage
|
||||||
is constrained to being positive, we can apply two levels of decomposition.
|
is constrained to being positive, we can apply two levels of decomposition.
|
||||||
@ -914,7 +914,7 @@ to periodically switch in test signals in place of the input signal.
|
|||||||
|
|
||||||
\subsection{Conclusion}
|
\subsection{Conclusion}
|
||||||
|
|
||||||
This example shows a three stages hierarchy, and a graph tracing the base~component failure modes to the
|
This example shows three stages of hierarchy, and a graph tracing the base~component failure modes to the
|
||||||
top level event. It also re-visits the decisions about membership of {\fgs}, due to the context
|
top level event. It also re-visits the decisions about membership of {\fgs}, due to the context
|
||||||
of the circuit raised in section~\ref{subsec:invamp2}.
|
of the circuit raised in section~\ref{subsec:invamp2}.
|
||||||
%
|
%
|
||||||
@ -1543,7 +1543,7 @@ A finer grained approach produces more potentially re-usable {\dcs} and
|
|||||||
involves several stages with lower reasoning distances.
|
involves several stages with lower reasoning distances.
|
||||||
The lower reasoning distances, or complexity comparision figures are given in the metrics chapter~\ref{sec:chap7}
|
The lower reasoning distances, or complexity comparision figures are given in the metrics chapter~\ref{sec:chap7}
|
||||||
at section~\ref{sec:bubbaCC}.
|
at section~\ref{sec:bubbaCC}.
|
||||||
This show that the finer grained models also benefit from lower reasoning distances for the failure mode model.
|
These show that the finer grained models also benefit from lower reasoning distances for the failure mode model.
|
||||||
|
|
||||||
|
|
||||||
\clearpage
|
\clearpage
|
||||||
@ -1874,8 +1874,8 @@ We now show the final {\dc} hierarchy in figure~\ref{fig:eulersdfinal}.
|
|||||||
% The output from the DQ is sent to the digital comparator formed by R3,R4
|
% The output from the DQ is sent to the digital comparator formed by R3,R4
|
||||||
% and IC3.
|
% and IC3.
|
||||||
% The output from this is sent to the summing integrator as the signal summed with the input.
|
% The output from this is sent to the summing integrator as the signal summed with the input.
|
||||||
\subsection{conclusion}
|
\subsection{Conclusion}
|
||||||
The \sd example, shows that FMMD can be applied to mixed digital and analogue circuitry.
|
The {\sd} example, shows that FMMD can be applied to mixed digital and analogue circuitry.
|
||||||
|
|
||||||
|
|
||||||
%\clearpage
|
%\clearpage
|
||||||
@ -1897,7 +1897,11 @@ The \sd example, shows that FMMD can be applied to mixed digital and analogue ci
|
|||||||
%% STATS MOVED TO FUTURE WORK
|
%% STATS MOVED TO FUTURE WORK
|
||||||
%%
|
%%
|
||||||
For this example we look at an industry standard temperature measurement circuit,
|
For this example we look at an industry standard temperature measurement circuit,
|
||||||
the Pt100. The four wire Pt100 configuration is a commonly used and well known safety critical circuit.
|
the `four~wire~Pt100'.
|
||||||
|
%
|
||||||
|
The four wire Pt100 configuration is a commonly used
|
||||||
|
and is a well known safety critical circuit.
|
||||||
|
%
|
||||||
Applying FMMD lets us look at this circuit in a fresh light.
|
Applying FMMD lets us look at this circuit in a fresh light.
|
||||||
We analyse this for both single and double failures,
|
We analyse this for both single and double failures,
|
||||||
in addition it demonstrates FMMD coping with component parameter tolerances.
|
in addition it demonstrates FMMD coping with component parameter tolerances.
|
||||||
@ -1964,9 +1968,9 @@ look-up tables or a suitable polynomial expression.
|
|||||||
\end{figure}
|
\end{figure}
|
||||||
%
|
%
|
||||||
%
|
%
|
||||||
The voltage ranges we expect from this three stage potential divider\footnote{
|
The voltage ranges we expect from this three stage potential divider\footnote{Two stages are required
|
||||||
two stages are required for validation, a third stage is used to measure the current flowing
|
for validation, a third stage is used to measure the current flowing
|
||||||
through the circuit to obtain accurate temperature readings}
|
through the circuit to obtain accurate temperature readings.}
|
||||||
are shown in figure \ref{fig:Pt100vrange}. Note that there is
|
are shown in figure \ref{fig:Pt100vrange}. Note that there is
|
||||||
an expected range for each reading, for a given temperature span.
|
an expected range for each reading, for a given temperature span.
|
||||||
Note that the low reading goes down as temperature increases, and the higher reading goes up.
|
Note that the low reading goes down as temperature increases, and the higher reading goes up.
|
||||||
@ -2094,17 +2098,17 @@ The Pt100 element is a precision part and will be chosen for a specified accurac
|
|||||||
One or other of the load resistors (the one we measure current over) should also
|
One or other of the load resistors (the one we measure current over) should also
|
||||||
be of this accuracy.
|
be of this accuracy.
|
||||||
|
|
||||||
The \ohms{2k2} loading resistors may be ordinary, in that they would have a good temperature co-effecient
|
The \ohms{2k2} loading resistors may be ordinary, in that they would have a good temperature co-efficient
|
||||||
(typically $\leq \; 50(ppm)\Delta R \propto \Delta \oc $), and should be subjected to
|
(typically $\leq \; 50(ppm)\Delta R \propto \Delta \oc $), and should be subjected to
|
||||||
a narrow temperature range anyway, being mounted on a PCB.
|
a narrow temperature range anyway, being mounted on a PCB.
|
||||||
%\glossary{{PCB}{Printed Circuit Board}}
|
%\glossary{{PCB}{Printed Circuit Board}}
|
||||||
To calculate the resistance of the Pt100 element % (and thus derive its temperature),
|
To calculate the resistance of the Pt100 element % (and thus derive its temperature),
|
||||||
having the voltage over it, we now need the current.
|
having the voltage over it, we now need the current.
|
||||||
Lets use, for the sake of example $R_2$ to measure the current flowing in the temperature sensor loop.
|
Lets use, for the sake of example, $R_2$ to measure the current flowing in the temperature sensor loop.
|
||||||
As the voltage over $R_3$ is relative (a design feature to eliminate resistance effects of the cables).
|
As the voltage over $R_3$ is relative (a design feature to eliminate resistance effects of the cables),
|
||||||
We can calculate the current by reading
|
we can calculate the current by reading
|
||||||
the voltage over the known resistor $R2$.\footnote{To calculate the resistance of the Pt100 we need the current flowing though it.
|
the voltage over the known resistor $R2$.\footnote{To calculate the resistance of the Pt100 we need the current flowing though it.
|
||||||
We can determine this via ohms law applied to $R_2$, $V=IR$, $I=\frac{V}{R_2}$,
|
We can determine this via Ohms law applied to $R_2$, $V=IR$, $I=\frac{V}{R_2}$,
|
||||||
and then using $I$, we can calculate $R_{3} = \frac{V_{R3}}{I}$.}
|
and then using $I$, we can calculate $R_{3} = \frac{V_{R3}}{I}$.}
|
||||||
As these calculations are performed by ohms law, which is linear, the accuracy of the reading
|
As these calculations are performed by ohms law, which is linear, the accuracy of the reading
|
||||||
will be determined by the accuracy of $R_2$ and $R_{3}$.
|
will be determined by the accuracy of $R_2$ and $R_{3}$.
|
||||||
|
@ -254,8 +254,9 @@ a per~mil representation of the {\ft} input current.
|
|||||||
%
|
%
|
||||||
For the purpose of example the `C' programming language~\cite{DBLP:books/ph/KernighanR88} is used.
|
For the purpose of example the `C' programming language~\cite{DBLP:books/ph/KernighanR88} is used.
|
||||||
%
|
%
|
||||||
A 'C' function function is declared with parenthesis to
|
A 'C' function is declared with parenthesis to
|
||||||
differentiate from other type of variables (data types or pointers).
|
differentiate from other type of variables (data types or pointers).
|
||||||
|
%
|
||||||
In this document we borrow that format, hence the C~language
|
In this document we borrow that format, hence the C~language
|
||||||
function called `main' will be presented as \cf{main}.
|
function called `main' will be presented as \cf{main}.
|
||||||
%
|
%
|
||||||
@ -895,7 +896,7 @@ We list these, and begin, from the bottom-up, to apply FMMD analysis.
|
|||||||
\subsection{FMMD Analysis of PID temperature Controller}
|
\subsection{FMMD Analysis of PID temperature Controller}
|
||||||
|
|
||||||
To summarise from the design stage,
|
To summarise from the design stage,
|
||||||
Identified electronic components:
|
the electronic components identified thus far:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item ADCMUX --- Electronics, analysed in previous example.
|
\item ADCMUX --- Electronics, analysed in previous example.
|
||||||
\item TIMER --- Internal micro controller timer
|
\item TIMER --- Internal micro controller timer
|
||||||
@ -955,8 +956,9 @@ $$ fm(PWM) = \{ HIGH, LOW \}.$$
|
|||||||
The Micro controller is a complex piece of highly integrated electronics.
|
The Micro controller is a complex piece of highly integrated electronics.
|
||||||
|
|
||||||
At a minimum it would include a micro-processor with PROM and RAM
|
At a minimum it would include a micro-processor with PROM and RAM
|
||||||
general I/O lines ane external interupt lines.
|
general I/O and external interrupt lines.
|
||||||
Typically therer are many other I/O module incorporated (e.g. TIMERS, UARTS, PWM, ADC, ADCMUX, CAN).
|
%
|
||||||
|
Typically there are many other I/O modules incorporated (e.g. TIMERS, UARTS, PWM, ADC, ADCMUX, CAN).
|
||||||
In this project we are using the ADCMUX, TIMER, PWM and general purpose computing facilities.
|
In this project we are using the ADCMUX, TIMER, PWM and general purpose computing facilities.
|
||||||
We have to therefore consider the general~computing, CLOCK, PROM and RAM failure modes.
|
We have to therefore consider the general~computing, CLOCK, PROM and RAM failure modes.
|
||||||
$$fm (micro-controller) =\{ PROM\_FAULT, RAM\_FAULT, CPU\_FAULT, ALU\_FAULT, CLOCK\_STOPPED \}.$$
|
$$fm (micro-controller) =\{ PROM\_FAULT, RAM\_FAULT, CPU\_FAULT, ALU\_FAULT, CLOCK\_STOPPED \}.$$
|
||||||
@ -965,7 +967,7 @@ $$fm (micro-controller) =\{ PROM\_FAULT, RAM\_FAULT, CPU\_FAULT, ALU\_FAULT, CLO
|
|||||||
Identified Software Components:
|
Identified Software Components:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item --- \cf{Monitor} (which calls PID algorithm and sets status LEDS)
|
\item --- \cf{Monitor} (which calls PID algorithm and sets status LEDS)
|
||||||
\item --- \cf{PID} (which calls cf{determine\_set\_point\_error} and \cf{output\_control})
|
\item --- \cf{PID} (which calls \cf{determine\_set\_point\_error} and \cf{output\_control})
|
||||||
\item --- \cf{determine\_set\_point\_error} (which calls convert\_ADC\_to\_T)
|
\item --- \cf{determine\_set\_point\_error} (which calls convert\_ADC\_to\_T)
|
||||||
\item --- \cf{convert\_ADC\_to\_T} (which calls read\_ADC which we can re-use from the last example)
|
\item --- \cf{convert\_ADC\_to\_T} (which calls read\_ADC which we can re-use from the last example)
|
||||||
\item --- \cf{read\_ADC}
|
\item --- \cf{read\_ADC}
|
||||||
@ -1027,7 +1029,7 @@ and the function \cf{determine\_set\_point\_error}.
|
|||||||
The pre-condition for \cf{determine\_set\_point\_error} is that the temperature read by it
|
The pre-condition for \cf{determine\_set\_point\_error} is that the temperature read by it
|
||||||
is accurate, and its post condition is to return the correct control error value.
|
is accurate, and its post condition is to return the correct control error value.
|
||||||
Most failure modes from a Pt100 are observable.
|
Most failure modes from a Pt100 are observable.
|
||||||
we can divide the post condition into two variants, a known incorrect error value, KnownIncorrectErrorValue
|
We can divide the post condition into two variants, a known incorrect error value, KnownIncorrectErrorValue
|
||||||
where we can detect the Pt100 value is suspect, and IncorrectErrorValue where we simply have
|
where we can detect the Pt100 value is suspect, and IncorrectErrorValue where we simply have
|
||||||
an incorrect error value. This analysis is presented in table~\ref{tbl:geterror}.
|
an incorrect error value. This analysis is presented in table~\ref{tbl:geterror}.
|
||||||
|
|
||||||
@ -1122,7 +1124,7 @@ $$fm(HeaterOutput) = \{ HeaterOnFull, HeaterOff, HeaterOutputIncorrect \}$$
|
|||||||
|
|
||||||
The status LEDS will be controlled by general purpose (GPIO) I/O pins.
|
The status LEDS will be controlled by general purpose (GPIO) I/O pins.
|
||||||
%
|
%
|
||||||
We could have say, three LEDS one flashing with a human readable mark
|
We could have, three LEDS, one flashing with a human readable mark
|
||||||
space ratio representing the heater output, one flashing at a regular interval to
|
space ratio representing the heater output, one flashing at a regular interval to
|
||||||
indicate the processor is alive and another flashing at an interval related to the temperature,
|
indicate the processor is alive and another flashing at an interval related to the temperature,
|
||||||
(to indicate if the temperature readings are within expected ranges).
|
(to indicate if the temperature readings are within expected ranges).
|
||||||
@ -1147,7 +1149,7 @@ We apply FMMD analysis to this {\fg} in table~\ref{tbl:ledoutput}.
|
|||||||
\centering
|
\centering
|
||||||
\includegraphics[width=300pt]{./CH5_Examples/euler_led_output.png}
|
\includegraphics[width=300pt]{./CH5_Examples/euler_led_output.png}
|
||||||
% euler_heater_output.png: 392x141 pixel, 72dpi, 13.83x4.97 cm, bb=0 0 392 141
|
% euler_heater_output.png: 392x141 pixel, 72dpi, 13.83x4.97 cm, bb=0 0 392 141
|
||||||
\caption{Euler diagram showing LEDOutput with its three LEDs and GPIO hardware elements, and its
|
\caption{Euler diagram showing LEDOutput with its three LEDs and GPIO hardware elements,
|
||||||
and its software component setLEDS.}
|
and its software component setLEDS.}
|
||||||
\label{fig:eulerheateroutput}
|
\label{fig:eulerheateroutput}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
Loading…
Reference in New Issue
Block a user