Wie kann man ungefähr wissen, ob ein elektronisches System bald ausfallen wird, und sich davor schützen?

Ich denke an ein landwirtschaftliches Projekt, das die Verwendung eines Boards wie Arduino , Raspberry Pi oder Onion Mega beinhaltet (die Liste ist nicht exklusiv).

Da das System mit Sensoren arbeitet und das Leben seiner Stationen unterstützt, hängt ihre Gesundheit von der Arbeit der gesamten Kette von Komponenten ab.

Ich werde die Hauptplatine sicherlich an einem sicheren Ort aufbewahren, z. B. in einem feuchtigkeits- und temperaturbeständigen Gehäuse aufbewahren und Kontakte bei Bedarf isolieren, aber ich verstehe, dass diese Platinen eher für Bildung / Experimente als für den wirklichen Alltag gedacht sind Pflicht. Außerdem gibt es immer einen Fehlerfaktor in der Platine, der vom Hersteller kommt.

Also, ich frage mich, ob es Informationen darüber gibt, wie langlebig die Boards sind und ob sie für den 24/7-Betrieb über Wochen/Monate geeignet sind?

Wie stelle ich sicher, dass das System einen mehr oder weniger bestimmten Sicherheitsspielraum hat und weiß, wann ich es durch ein neues ersetzen sollte?

Ziemlich sicher, dass jedes gute System über eingebaute Redundanz verfügt. Vielleicht möchten Sie sich mit Ausfallsicherungen befassen.
Verwenden Sie auf jeden Fall Watchdog-Timer und Stromversorgungsmonitore, die Reset-Signale anlegen, und stellen Sie sicher, dass der Reset Ausgänge abschaltet, die Motoren und dergleichen steuern. Möglicherweise stellen Sie fest, dass mehr Informationen zu MTBF eher auf Industriemodulen als auf "Hobbyisten" wie Pi und Arduino zur Verfügung gestellt werden.
Aber ich verstehe, dass diese Boards eher für Bildung/Experimente als für den täglichen Einsatz gedacht sind. Dem stimme ich nicht zu. Die auf diesen Boards verwendeten Komponenten sind für normale Verbraucherprodukte ausgelegt und daher oft für eine (garantierte) Lebensdauer von 10 Jahren ausgelegt, wenn sie innerhalb der Spezifikationen für diese verwendet werden, siehe Datenblatt des Herstellers. Die Zuverlässigkeit wird mehr von Ihrer Software bestimmt und wie Sie sie verwenden. Misshandeln Sie das Board und es wird früher versagen. Wann es scheitert, ist äußerst unvorhersehbar.
@FakeMoustache, ich sehe den Standpunkt des OP zu Boards, nicht zu ICs oder Software. Die großen ICs sollten den gleichen Standard haben, wie Sie ganz richtig sagen. Aber die Herstellung, Montage, das Löten usw. und die Investition in die Überprüfung und kontinuierliche Verbesserung des Herstellungsprozesses sind möglicherweise nicht vorhanden. Schließlich handelt es sich um sehr kostengünstige Massenware, die Geld spart, wo immer es möglich ist, natürlich gegen die Kosten für Ausschuss und Rücksendungen, wenn sie zu weit gehen. Sie sind keine Idioten, aber sie haben unterschiedliche Zuverlässigkeitsziele. Wir können raten und vermuten, aber es ist hier ein Unbekannter.
Gute Frage (aber schwer gut zu beantworten) und verschiedene gute Kommentare und Antworten. || A / der entscheidende Punkt ist, dass Sie ein Gefühl für die zu erwartenden Ausfallraten bekommen können , ABER Sie können sich nie sicher sein und dürfen ein System nicht nur auf der Grundlage von Zuverlässigkeitsprognosen entwerfen. | Die Leute haben "ausfallsicher" erwähnt - VERSTEHEN SIE ES. Dies bedeutet NICHT „sicher vor Ausfall“, ABER dass, WENN ein Ausfall auftritt, das System so konstruiert ist, dass sichergestellt ist, dass kein Schaden als direkte Folge auftritt UND das System den Ausfall so aufnimmt, dass er ohne Schaden behandelt werden kann, sofern geeignete andere Konstruktionen vorhanden sind Vorsichtsmaßnahmen.
Zum Interesse: Die US-Mondrakete „Saturn V“ hatte bei ihrem Aufstieg einen Teil, wo sie für einen sehr kurzen Zeitraum zerstört worden wäre, wenn sie eines der N-Triebwerke verloren hätte, da die aerodynamischen Kräfte nicht von der bewältigt werden könnten andere Motoren. Das war NICHT ausfallsicher, wurde aber dennoch als unwahrscheinliches Ergebnis akzeptiert. - || Das andere wesentliche Konzept, das erwähnt wurde, ist „Redundanz“ – die Funktionen eines ausgefallenen Moduls werden von einem anderen Modul repliziert. Diese verriegelt sich mit „fail safe“. ...
... WENN Tierleben vom System abhängen und Sie Todesfälle vermeiden möchten, MÜSSEN Sie das System "ausfallsicher" planen - und Redundanz hilft, weniger oder keine Ausfallzeiten zu ermöglichen, WENN Fehler auftreten. Beachten Sie, dass ein Fehler in einem redundanten System die Redundanz aufheben KANN, aber NICHT den Aspekt der Ausfallsicherheit aufheben darf. Außerdem MUSS ein Fehler dem Systemmanager gemeldet und umgehend behoben werden, um das System wieder auf das vorgesehene Sicherheitsniveau zu bringen. || Probleme: Hohe Temperaturen, Kondensation, Feuchtigkeit, leitfähige oder wärmefördernde Verschmutzung, Bestien (Ameisen, Mäuse, Ratten, ...), Austrocknung (Strukturklebstoffe, die mit der Zeit versagen), ...
Halten Sie das Board bei konstanter, kühler Temperatur, niedriger Luftfeuchtigkeit (am besten trocken) und ohne Vibration. Lassen Sie die Luft um das Board herum zirkulieren, um es weiter zu kühlen. Haben Sie einige zusätzliche Kabellängen, wo Sie mit der Platine verbinden, um ein Ruckeln der Stecker und Löten und Spuren zu vermeiden. Niemals verdrehen oder Drehmoment anwenden, auch nicht beim Einbau. Und halten Sie die VDD sehr sauber. Wie geht man nun mit ESD um? Und Blitzeinschläge im täglichen Gebrauch vermeiden?
Zunächst müssen Sie wahrscheinlich den Pi aufgrund der SD-Karte ausschließen oder zumindest zuerst die Zuverlässigkeit dieser Karte und die in Alternativen verwendeten Speichermedien und Dateisysteme analysieren. Als nächstes müssen Sie überlegen, ob Sie Zugriff auf die Systemquellen haben, um die bereits bekannten Fehler zu beheben, was das derzeit verfügbare Onion Omega2 ausschließt ...
@RussellMcMahon Ja, sehr gute Punkte (Übrigens sollten all diese Kommentare in eine Antwort umgewandelt werden. Ich hoffe, Sie würden es tun). Über "ausfallsicher": Es ist wirklich ein irreführender Begriff, ich denke, er sollte im Ingenieurwesen nicht verwendet werden (abgesehen von sehr spezifischen und expliziten Kontexten). Ich bevorzuge wirklich bessere Begriffe wie fehlertolerant .
@LorenzoDonati Ich mag "ausfallsicher" als Begriff, solange die Bedeutung richtig verstanden wird. Vielleicht "Fail SAFE!!! " :-). Nützlich in zB Drachenfliegern. Ausfalltolerant fühlt sich in solchen Fällen nicht so gut an :-)

Antworten (2)

Sie müssen nach Informationen über RAMS- Engineering (Zuverlässigkeit, Verfügbarkeit, Wartbarkeit und Sicherheit) suchen.

Grundlegende RAMS-Konzepte und -Techniken

  • Ausfallrate : Anzahl der erwarteten Ausfälle eines Bauteils, einer Baugruppe oder eines Produkts pro Zeiteinheit.
  • MTTF (mittlere Zeit bis zum Ausfall) / MTBF (mittlere Zeit zwischen Ausfällen) : der Kehrwert der Ausfallrate. Die erwartete Zeit, in der Ihre Komponente/Baugruppe/Einheit unter bestimmten Bedingungen betrieben wird, bis ein Fehler auftritt.
  • ER (Established Reliability) vs. Nicht-ER-Komponenten : Sogenannte Hi-Rel (High Reliability)-Komponenten werden häufig in Chargen getestet, um ihre Ausfallrate festzustellen, was sie teuer macht. Für Nicht-ER-Komponenten wird dagegen eine eher pessimistische Ausfallrate nach tabellarischen Werten angenommen.
  • Parts Count Analysis (PCA) / Parts Stress Analysis (PSA) : Eine Methode zur Berechnung des erwarteten Werts für die Ausfallrate einer Baugruppe/eines Produkts, die aus der Ausfallrate jeder Komponente und der damit verbundenen Belastung (Temperatur, Feuchtigkeit, Leistung) abgeleitet wird /Spannungs-/Stromreduzierung usw.).
  • Derating : Der Prozentsatz der maximalen Leistung/Spannung/Stromstärke, bei der die Komponente/Baugruppe/das Produkt arbeitet. Je höher das Derating, desto geringer die Belastung und desto länger die MMTF.

  • Badewannenkurve : Eine Kurve, die beschreibt, wie sich die Ausfallrate während der Nutzungsdauer des Bauteils/der Baugruppe/des Produkts ändert. Siehe Bild unten.

  • Burn-in : ein zerstörungsfreier, anfänglicher Hochtemperaturtest (beschleunigte Alterung), der darauf abzielt, frühe Ausfälle in bereits defekten Komponenten/Baugruppen/Produkten auszulösen. Es ist eine Art Screening-Test.
  • Lebensdauertest : ein zerstörerischer Hochtemperaturtest (beschleunigte Alterung), der dazu bestimmt ist, die Zuverlässigkeit einer ganzen Menge von Komponenten/Baugruppen/Produkten anhand einer reduzierten Stichprobe festzustellen, die diesem Test unterzogen wird.

Badewannenkurve

Bildquelle . _

Wo soll ich anfangen?

  1. Laden Sie MIL-HDBK-217F, ZUVERLÄSSIGKEITSPROGNOSE VON ELEKTRONISCHEN GERÄTEN herunter . Dort finden Sie fast alle Tabellenwerte, die Sie benötigen. Sie müssen nicht alle darin beschriebenen Methoden von Anfang an implementieren, also keine Panik wegen der Komplexität.
  2. Erstellen Sie eine Excel-Tabelle für grundlegende Zuverlässigkeitsdaten aus Ihrer Stückliste (BOM). Die Spalten müssen mindestens die folgenden Informationen über die Komponenten enthalten: P/N, Beschreibung und Basisfehlerrate. Wir werden bei Bedarf später weitere Informationen hinzufügen.
  3. Füllen Sie das Excel-Blatt mit Daten zur Basisausfallrate aus und führen Sie eine einfache PCA durch, um Ihre erste grobe Annäherung an die Ausfallrate und MTTF Ihrer Baugruppe/Ihres Produkts zu berechnen. Vergessen Sie nicht, die Lötstellen in die Analyse einzubeziehen!
  4. Sehen Sie sich die Ergebnisse Ihrer PCA an und vergleichen Sie sie mit der für Ihre Anwendung erforderlichen MTTF:
    • Wenn die PCA eine unzureichende MTTF liefert, sind Sie bereits in Schwierigkeiten und sollten zu Ihrem Design, Ihrer Teileauswahl oder Ihren Berechnungen zurückkehren, um zu überprüfen, was daran falsch ist.
    • Wenn die PCA eine MTTF liefert, die weit über Ihrer Anforderung liegt (um das 1000-fache oder mehr), sollten Sie hier vielleicht aufhören. Überprüfen Sie einfach, dass keine Komponenten zu nahe an ihren maximalen Nennwerten arbeiten).
    • Wenn die PCA eine MTTF liefert, die über Ihrer Anforderung liegt, jedoch ohne ausreichenden Spielraum, müssen Sie die tatsächlichen Spannungen für die Komponenten berechnen.
  5. Wenn Ihre PCA nicht schlüssig war, müssen Sie eine PSA mit den tatsächlichen Belastungen und Umgebungsbedingungen (Temperatur, Feuchtigkeit) Ihrer Baugruppe / Ihres Produkts durchführen:

    • Gehen Sie zurück zu Ihrem Excel-Blatt und fügen Sie weitere Spalten hinzu, um die Pi-Faktoren in MIL-HDBK-217F (Temperatur, Qualität, Umwelt, Nennleistung, Spannungsbelastung usw.) zu berücksichtigen. Der Pi-Faktor sind Modifikatoren der Basisausfallrate gemäß den tatsächlichen Belastungsbedingungen.
    • Füllen Sie die neuen Felder in Ihrem Excel-Blatt mit Daten aus den Bauteildatenblättern, aber auch aus Ihren eigenen Schaltungssimulationen und Berechnungen.
    • Berechnen Sie die modifizierten Ausfallraten für jede Komponente gemäß ihren Pi-Faktoren neu.
    • Berechnen Sie die Gesamtausfallrate und MTTF Ihrer Baugruppe/Ihres Produkts neu.
    • Sehen Sie sich die Ergebnisse Ihres PSA an und vergleichen Sie sie mit der für Ihre Anwendung erforderlichen MTTF. Wenn die Ergebnisse gut sind, dann sind Sie fertig. Wenn nicht, suchen Sie nach den Komponenten, die am meisten zur Gesamtausfallrate beitragen, und gehen Sie ihre Probleme einzeln an : Ersatzkomponente mit höherer Leistung/Spannung/Stromstärke erforderlich? Änderungen bestimmter Designwerte erforderlich, um zu viel Leistung/Spannung/Strom in der problematischen Komponente zu vermeiden? Kühlkörper erforderlich? usw.
  6. Wenn Sie alles in Ihrer Macht Stehende getan haben, um die Gesamtausfallrate zu reduzieren, aber immer noch keine MTTF erhalten, die mit Ihren Anforderungen kompatibel ist, sollten Sie Ihrem Design möglicherweise Redundanz hinzufügen, die jedoch speziell auf Unterbaugruppen Ihres Produkts mit hoher ausgerichtet ist Teilausfallraten. Redundanz darf nur dann eingeführt werden, wenn MTTF-Berechnungen dies erfordern, und niemals präventiv. Warum? Weil Redundanz das Hinzufügen von Schaltelementen erfordert, die selbst ausfallen und ebenfalls unnötige Komplexität einführen können.

  7. Auch wenn Ihr PCA/PSA sagt, dass alles in Ordnung ist, denken Sie daran, dass dies nur für zufällige Fehler gilt! Die PCA/PSA befasst sich nicht mit den Frühausfallraten fehlerhafter Komponenten/Baugruppen/Produkte. Daher wird ein Burn-In Ihres Produkts vor dem Einsatz im Feld dringend empfohlen.

  8. Wenn Sie aktuelle statistische Daten über die Nutzungsdauer Ihrer Baugruppe/Ihres Produkts haben möchten, sollten Sie vielleicht einen Lebensdauertest durchführen. Aber das bedeutet, Geld für die Proben auszugeben, die während der Lebensdauertests zerstört oder abgenutzt werden, und Zeit (normalerweise etwa 1.000 Stunden oder mehr, abhängig von der Testtemperatur) und Mittel zu haben, um sie durchzuführen.

Anmerkungen unten:

  1. Es gibt auch spezialisierte Softwarepakete zur Zuverlässigkeitsvorhersage, die Ihnen all diese Berechnungen erleichtern. Nur Sie können entscheiden, ob Ihre Anwendung und Ihr Business Case eine solche Investition erfordern.

  2. Hier ist eine kostenlose Software zur Zuverlässigkeitsvorhersage, die ich gefunden habe (Offenlegung: Ich habe sie nie benutzt).

  3. Ich habe erfolglos nach Zuverlässigkeitsdaten (MTBF) für Raspberry Pi gesucht ...

Ich würde mir die doppelte Redundanz ansehen: zwei Platinen, von denen jede sich selbst überwacht, die zweite Platine und gemeinsame Ressourcen wie die Stromversorgung. Der Ausgang muss zustimmen, um kritische Dinge anzusteuern, und dies kann mit einem einfachen Dioden-ANDing erreicht werden. Kritische Dinge können die Aktivierung der Stromversorgung von Motoren oder anderen beweglichen Dingen sein. Die tatsächliche Implementierung hängt wirklich von Ihrer Schaltung und Anwendung ab.

Jedes Board kann ein „Lebenszeichen“ an das andere ausgeben, und das kann wirklich so tief oder flach sein, wie Sie möchten. Ein einfacher UART-to-other, der eine inkrementierende Zählung sendet, ist oberflächlich, da er zeigt, dass der andere lebt, aber nicht in welchem ​​​​Grad. Ein tieferes Schema wäre, einen Zustandswert dafür auszutauschen, wie jede Platine auf ihre Eingänge reagiert hat, und jedes Gatter die kritischen Ausgänge per Dioden-AND zu deaktivieren, wenn sie nicht übereinstimmen.

Ich habe das alles (Dioden-ANDing, Zustandsaustausch) einmal für ein sehr kritisches System gemacht und es hat gut funktioniert. Aber Sie müssen eine klare Vorstellung davon haben, was die Zustände sind, bevor Sie beginnen, da es nicht einfach ist, mit Entwicklungen zu arbeiten, die „optimiert und angepasst“ werden.

Sie könnten auch einen Betriebslebensdauer-Timer einbauen, wobei jede Einheit die Anzahl der Sekunden/Minuten/Stunden, die sie gelaufen ist, und die Anzahl der Stunden seit dem ersten Einschalten verfolgt. Das von Anfang an in Ihr System zu integrieren, kann aufschlussreicher sein, da Ihre Anwendung viel Kilometer verbraucht und oft billig zu implementieren ist.