Zuverlässigkeitsanalyse
reliability·@trexcoder·
0.000 HBDZuverlässigkeitsanalyse
 In diesem Artikel werden die Grundlagen der Zuverlässigkeitsanalyse erläutert und veranschaulicht dargestellt. --- <h1>Inhalt</h1> <div class="toc"><ul class="toc-item"><li><a href="#Grundlagen-der-Zuverlässigkeitanalyse" data-toc-modified-id="Grundlagen-der-Zuverlässigkeitanalyse-1">1 Grundlagen der Zuverlässigkeitanalyse</a><ul class="toc-item"><li><a href="#Fehlertypen-und--Klassen" data-toc-modified-id="Fehlertypen-und--Klassen-1.1">1.1 Fehlertypen und -Klassen</a></li><li><a href="#Methoden-der-Zuverlässigkeitsanalyse" data-toc-modified-id="Methoden-der-Zuverlässigkeitsanalyse-1.2">1.2 Methoden der Zuverlässigkeitsanalyse</a><ul class="toc-item"><li><a href="#Zuverlässigkeitsanalyse-bei-konstanter-Fehlerrate" data-toc-modified-id="Zuverlässigkeitsanalyse-bei-konstanter-Fehlerrate-1.2.1">1.2.1 Zuverlässigkeitsanalyse bei konstanter Fehlerrate</a></li><li><a href="#Zuverlässigkeitsanalyse-bei-variabler-Fehlerrate" data-toc-modified-id="Zuverlässigkeitsanalyse-bei-variabler-Fehlerrate-1.2.2">1.2.2 Zuverlässigkeitsanalyse bei variabler Fehlerrate</a></li><li><a href="#Generelle-Initialisierung,-Bibliothekimportierung-und-Konfiguration" data-toc-modified-id="Generelle-Initialisierung,-Bibliothekimportierung-und-Konfiguration-1.2.3">1.2.3 Generelle Initialisierung, Bibliothekimportierung und Konfiguration</a></li><li><a href="#Implementierung-der-Familie-der-Weibullfunktionen" data-toc-modified-id="Implementierung-der-Familie-der-Weibullfunktionen-1.2.4">1.2.4 Implementierung der Familie der Weibullfunktionen</a></li><li><a href="#Plot:-Weibull---Dichtefunktion" data-toc-modified-id="Plot:-Weibull---Dichtefunktion-1.2.5">1.2.5 Plot: Weibull - Dichtefunktion</a></li><li><a href="#Plot:-Weibull---Verteilungsfunktion" data-toc-modified-id="Plot:-Weibull---Verteilungsfunktion-1.2.6">1.2.6 Plot: Weibull - Verteilungsfunktion</a></li><li><a href="#Plot:-Weibull---Harzadfunktion" data-toc-modified-id="Plot:-Weibull---Harzadfunktion-1.2.7">1.2.7 Plot: Weibull - Harzadfunktion</a></li></ul></li></ul></li></ul></div> --- # 1 Grundlagen der Zuverlässigkeitanalyse Die Analyse der Zuverlässigkeit ist die Betrachtung des Versagens von Komopenten und Systeme. Die Funktionen und Kennwerte der Zuverlässigkeit sind hilfsmittel zur Bewertung der Sicherheit, Verfügbarkeit und Instandhaltbarkeit. Im Automoiv-Berich steht oft die Sicherheit in Form der funktionalen Sicherheit im Fokus. Nach **DIN 40041:1990-12** wird die Zuverlässigkeit wie folgt Definiert. >*„Beschaffenheit einer Einheit bezüglich ihrer Eignung, während oder nach vorgegebenen Zeitspannen bei vorgegebenen Anwendungsbedingungen die Zuverlässigkeitsforderung zu erfüllen.“* Des Weitern kommt die Analyse der Zuverlässigkeit zugleich als Untersuchungsmethode der Fehlerursache im Qualitätsmanagement zum Einsatz. Hierbei steht die Minimierung der vermeidbaren Fehler im Vordergrund. Es hat sich jedoch herausgestellt, das einige Fehler schwerer auffindbar und behebbar sind als andere. Gründe dafür sind eineseits das sich einige Fehler prinzipiell nicht vermeiden lassen und zum anderen, dass bei einem wilkürlichen oder genauere gesagt rein zufälligen auftreten von Fehlern die Usache nicht nachvollziehbar ist. Dies führt zur Klassifiezierung und nähren Betrachtung von Fehlern. --- ## 1.1 Fehlertypen und -Klassen Fehler lassen sich durch unterschiedliche Betrachtungsweisen typisieren bzw. klassifizieren. Zum einen wäre dies die Betrachtung in welcher Form sie Auftreten. * **Systematische Fehler** * **Zufällige Fehler** Eine weite Kategorisierung ist die nach dem zeitlichen Verlauf des auftretens der Ausfälle. * **Frühausfall** * **Zufälliger Ausfall** * **Verschleiß- / Alterungsausfall** Hierbei ist ein starker Zusammenhang zu den vorhergenden Fehlertypen erkennbar. Es können die zufälligen Fehler als konstant über die Zeit angesehnen werden und die Systematischen Fehler jeweils zu den Frühausfälle und Fehler durch Verschleiß und Alterung zugeordnet werden. Beim genauen Betrachten der Aussfallkategorien wird ersichtlich, dass Frühausfälle oft herstellungsbedingt sind und über die Zeit durch eine bessere Beherschung des Herstellungsprozesses stark nachlassen. Das Auftreten von Verschleiß- und Alterungsausfälle sind hierbei stark von der Komponent abhängig und treten erst gegen ende der Lebensdauer auf und lassen sich nicht vermeiden sondern ausschließlich verzögern. --- ## 1.2 Methoden der Zuverlässigkeitsanalyse Es hat sich etabliert die Zuverlässigkeit von Systemen und Komponenten anhand der Ausfallrate zu Bewerten. Dabei gibt die Ausfallrate die Wahrscheinlichkeit an, mit der eine menge an Einheit in einem definierten Zeitintervalls ausfällt. Diese Betrachtungsweise bietet sich besonders bei der Untersuchung von elektronischen Geräten an, da hier der zufällige Fehler überwiegt und sich konstant über die Zeit verhält. Die Einheit für die Ausfallrate ist FIT, dies ist ein Akronym und steht für Failure In Time, wobei 1 FIT für einen Ausfall pro 10<sup>9</sup> Stunden. Die bestimmung der Ausfallrate wird wie in den folgenden Abschnitten näher erläutert. --- ### 1.2.1 Zuverlässigkeitsanalyse bei konstanter Fehlerrate Die Konstante Fehlerrate über eine Grundgesamtheit lässt sich durch die Division der im Beobachtungszeitraum Ausgefallenen Komponenten zur Gesamtzahl ermitteln. **Konstante Fehlerrate der Grundgesamtheit**  Hierbei beziehen sich die Parameter auf die Grundgesamtheit und werden wie folgt definiert:  Aus der vorangegangenen Definition lässt sich folgender Schätzer entwickeln der die Fehlerrate für eine Stichprobe bestimmt. **Schätzer der konstanten Fehlerrate**  Hierbei beziehen sich die Parameter auf eine Stichprobe und werden wie folgt definiert:  Des Weiteren lässt sich bei einer konstanten Fehlerrate folgern, dass die Dichtefunktion der Ausfallwahrscheinlichkeit eine Exponentialfunktion der nachfolgenen Form ist. **Ausfalldichtefunktion bei konstanter Fehlerrate**  Daraus lässt sich durch Integration die Vertilungsfunktion der Ausfallwahrscheinlichkeit und die Überlebensfunktion bilden. **Verteilungsfunktion**  **Überlebensfunktion**  Eine weitere wichtige Kenngöße ist die mittlere Dauer bis zum eintreten des Ausfalls die in den einschlägigen Normen und Literatur oft nur unter MTTF (Mean-Time-To-Failure) vorzufinden ist. Hierbei handelt es sich im Fall der Exponentialverteilung um den Erwartungswert der Zufallsvariablen *T*. **MTTF - mittlere Dauer bis zum Eintreten des Ausfalls**  --- ### 1.2.2 Zuverlässigkeitsanalyse bei variabler Fehlerrate Die konstante Fehlerrate spiegelt natürlich nur das grundsätzliche verhalten als Mittelwert wieder. Für elektronische Komponenten und Sytmen beschriebt dies zwar eine gute annäherung, jedoch ist bei einer vielzahl von Systemen mit einer variablen Fehlerrate über die Zeit zu rechnen. Als anschauliches Beispiel kann hier der Mensch dienen. Ein Mensch ob Mann oder Frau wird zwar in einem gewissen Maße zufällig "ausfallen", trotz allem überwiegt jedoch das friedliche alterungsbedingte Dahinscheiden. Daher wird zur gernerellen analyse ein Modell mit variabler Ausfallrate gesucht, das sozusagen die Vorgeschichte der untersuchten Komponenten ebenfalls berücksichtigt. In der Chronik der Zuverlässigkeitsanalyse kistallisierte sich die Weibullverteilung für diesen Verwendungszweck heraus. Bennant und für diesen Einsatzzweck entdeckt wurde diese von dem schwedischen Ingenieur und Mathematiker Waloddi Weibull um 1951. Die Funktion wird mittels zweier Parameter beschrieben. Dies sind zum einen der Skalenparamerte  und zum anderen der Formparameter . Im praktischen Umfled kann der Formparameter im Bereich gefunden werden. Des Weiteren lässt sich die Weibullverteilung durch eine geschickte Wahl von  in andere Wahrscheinlichkeitsverteilungen überführen:  *Wobei für alle nachfolgenden Definitoinen folgender Definitionsbereich gilt:*  **Dichtefunktion**  **Verteilungsfunktion**  **Überlebensfunktion**  **Ausfallraten-/Hazardfunktion**  **Erwartungswert}**  Kommt man nun auf die im Eingang des Kapitels aufgefühten Fehlertypen zurück, so können diese bei entsprechnder Wahl von  mittels der Weibull-Funktionenen abgebildet werden:  --- ### 1.2.3 Generelle Initialisierung, Bibliothekimportierung und Konfiguration ```python #Magics % matplotlib notebook #% matplotlib inline #Pakete und Module from matplotlib import pyplot as plt from matplotlib.colors import LinearSegmentedColormap from mpl_toolkits.mplot3d import Axes3D from cycler import cycler import numpy as np #Farben th_rot ='#c81e0f' th_orange='#ea5a00' th_violett='#b43092' th_grau = 'darkgray' th_dunkel_grau= 'gray' # Erstellen der TH-CI-Farbmap th_cmap = LinearSegmentedColormap.from_list('',[th_rot,th_grau,th_orange,th_violett,th_dunkel_grau],128) th_color_cycler= cycler('color', th_cmap(np.linspace(0,1,10))) #Graph-Konfigurationen plt.rcParams['figure.figsize'] = (8,6) # Festlegen der generrellen Plotgröße plt.rcParams['axes.grid'] = True # Grid anzeigen plt.rcParams['grid.linestyle'] = ':' # Festlegen der Grid-Linienart plt.rcParams['axes.prop_cycle']= th_color_cycler # Festlegen der Plot-Farben ``` --- ### 1.2.4 Implementierung der Familie der Weibullfunktionen ```python def weibfunc_in_def_area(func, t,scale,shape): return 0.0 if t * scale * shape <= 0 else func(t,scale,shape) _weibull_pdf = lambda t, scale, shape: scale * shape * (t * scale) ** (shape - 1) \ * np.exp(-(scale * t) ** shape) _weibull_cdf = lambda t, scale, shape: 1- np.exp(-(scale * t) ** shape) _weibull_survival = lambda t, scale, shape: np.exp(-(scale * t) ** shape) _weibull_hazard = lambda t, scale, shape: scale * shape * (t * scale) ** (shape - 1) def weibull_pdf(t,scale,shape): return np.array([weibfunc_in_def_area(_weibull_pdf, ti,scale,shape) for ti in t]) def weibull_survival(t,scale,shape): return np.array([weibfunc_in_def_area(_weibull_survival, ti,scale,shape) for ti in t]) def weibull_cdf(t,scale,shape): return np.array([weibfunc_in_def_area(_weibull_cdf, ti,scale,shape) for ti in t]) def weibull_hazard(t,scale,shape): return np.array([weibfunc_in_def_area(_weibull_hazard, ti,scale,shape) for ti in t]) ``` --- ### 1.2.5 Plot: Weibull - Dichtefunktion ```python # Parameter Definition scale = 1 scale_aged = 0.1 shape_early = 0.5 shape_rand= 1.0 shape_aged= 2.5 # Laufvariable t = np.linspace(0,20,1000) # Weibull-Dichtefunktion der einzelenen Ausfallarten weibull_aged = 0.8*weibull_pdf(t,scale_aged,shape_aged) weibull_rand = 0.05*weibull_pdf(t,scale,shape_rand) weibull_early = 0.15*weibull_pdf(t,scale,shape_early) # Weibull-Dichtefunktion über alle Ausfallarten weib_pdf_union = weibull_aged + weibull_rand + weibull_early # Erstellen der Legendebezeichnungen label_early = r'{}: {}; {}: {} $\,\rightarrow \,$ Frühausfälle'.format( r'$\lambda$',scale, r'$\beta$',shape_early) label_rand = r'{}: {}; {}: {} $\,\rightarrow \,$ Zufällige Ausfälle'.format( r'$\lambda$',scale, r'$\beta$',shape_rand) label_aged = r'{}: {}; {}: {} $\,\rightarrow \,$ Verschleißausfälle'.format( r'$\lambda$',scale_aged, r'$\beta$',shape_aged) #Plotten der Funktionen fig, ax1= plt.subplots(1,1, figsize=(5,5), sharex=True) ax1.plot(t,weibull_early, label= label_early, color= th_rot) ax1.plot(t,weibull_rand, label= label_rand, color= th_violett) ax1.plot(t,weibull_aged, label= label_aged, color= th_orange) ax1.plot(t, weib_pdf_union, label= 'Ausfallarten vereint', color= 'k', linewidth=3, linestyle=':') # Konfiguration des Ausgabegraphens ax1.set_ylabel(r'$f(t) \, \rightarrow$') ax1.set_xlabel(r'$t \, \rightarrow $') ax1.set_title('Weibull - Dichtefunktion') ax1.set_xlim(0,20) ax1.set_ylim(0,.15) ax1.legend() # Speichern des Graphs als PDF fig.savefig('Dichtefunktion.pdf') ```  --- ### 1.2.6 Plot: Weibull - Verteilungsfunktion ```python # Weibull-Verteilfunktion über alle Ausfallarten weib_cdf_union = 0.15*weibull_cdf(t,scale,shape_early) \ + 0.05*weibull_cdf(t,scale,shape_rand) \ + 0.8*weibull_cdf(t,scale_aged,shape_aged) weib_cdf_union /= weib_cdf_union.max() #Plotten der Funktionen fig, ax1= plt.subplots(1,1, figsize=(5,5), sharex=True) ax1.plot(t,0.15*weibull_cdf(t,scale,shape_early), label= label_early, color= th_rot) ax1.plot(t,0.05*weibull_cdf(t,scale,shape_rand), label= label_rand, color= th_violett) ax1.plot(t,0.8*weibull_cdf(t,scale_aged,shape_aged), label= label_aged, color= th_orange) ax1.plot(t,weib_cdf_union, label= 'Ausfallarten vereint', color= 'k', linewidth=3, linestyle=':') # Konfiguration des Ausgabegraphs ax1.set_ylabel(r'$F(t) \, \rightarrow$') ax1.set_xlabel(r'$t \, \rightarrow $') ax1.set_title('Weibull - Verteilungsfunktion') ax1.set_xlim(-0.005,20) ax1.set_ylim(0,1.005) #ax1.legend() # Speichern des Graphs als PDF fig.savefig('Verteilungsfunktion.pdf') ```  ### 1.2.7 Plot: Weibull - Harzadfunktion ```python # Weibull-Harzadfunktion über alle Ausfallarten weibull_hazard_union = 0.15*weibull_hazard(t,scale,shape_early) \ + 0.05*weibull_hazard(t,scale,shape_rand) \ + 0.8*weibull_hazard(t,scale_aged,shape_aged) #Plotten der Funktionen fig, ax1= plt.subplots(1,1, figsize=(7,5), sharex=True) ax1.plot(t,0.15*weibull_hazard(t,scale,shape_early), label= label_early, color= th_rot) ax1.plot(t,0.05*weibull_hazard(t,scale,shape_rand), label= label_rand, color= th_violett) ax1.plot(t,0.8*weibull_hazard(t,scale_aged,shape_aged), label= label_aged, color= th_orange) ax1.plot(t,weibull_hazard_union, label= 'Ausfallarten vereint', color= 'k', linewidth=3, linestyle=':') # Konfiguration des Ausgabegraphens ax1.set_ylabel(r'$\lambda(t) \, \rightarrow$') ax1.set_xlabel(r'$t \, \rightarrow $') ax1.set_title('Weibull - Ausfallrate') ax1.set_xlim(0,13) ax1.set_ylim(0,.35) ax1.legend() # Speichern des Graphs als PDF fig.savefig('Ausfallrate.pdf') ``` 