Ich habe ein Uno, das ich seit 3 Jahren benutze. Ich werde es wieder in einem ziemlich kritischen Projekt verwenden, bei dem ein Versagen des Boards ziemlich teuer und gefährlich sein kann. Daher möchte ich sichergehen, dass das Board nicht bald das Ende seiner Lebensdauer erreicht oder bald ausfällt. Gibt es einen zuverlässigen Weg, um herauszufinden, wie lange die Platine funktioniert, ohne dass es zu Ausfällen oder Leistungseinbußen kommt?
arduino-uno
safety
reliability
Ascheshr
quelle
quelle
Antworten:
Leider gibt es im Kontext der Festkörperelektronik nicht viele Möglichkeiten, den "Verschleiß" wirklich zu bestimmen.
Die wahrscheinlichsten Fehlerquellen sind die Elektrolytkondensatoren und die Steckverbinder.
Erstens, wenn Sie eine ATmega-CPU für etwas verwenden, das möglicherweise jemanden verletzen könnte, KONTAKTIEREN SIE ATMEL UND SPRECHEN SIE ÜBER SICHERHEITSHINWEISE . Die in den meisten Arduino-Modellen verwendete ATmega-CPU ist für die Verwendung in solchen Situationen nicht geeignet.
In JEDEM Datenblatt:
Nun, realistisch gesehen, ist dies wahrscheinlich größtenteils anwaltrechtlich abweisend, aber Sie sollten dennoch geeignete Vorsichtsmaßnahmen treffen.
Wirklich, während es auf einem herkömmlichen Arduino-Board nichts gibt, das sich wirklich abnutzt, außer den Anschlüssen, warum versuchen Sie, 30 US-Dollar zu potenziell enormen Kosten zu sparen? Kaufe einfach ein neues Board.
Ich würde Ihnen auch dringend empfehlen, ein Board mit einem SMT ATmega328P zu wählen, da dadurch die IC-Sockelkontakte aus der Liste der Bedenken entfernt werden. Entfernen Sie nach Möglichkeit auch die Stiftleisten und löten Sie die Drähte direkt auf die Platine. Versuchen Sie, die Anzahl der Anschlüsse zu minimieren, da diese häufig ausfallen.
quelle
Einer der Abschnitte des Arduino, der mit der Zeit wahrscheinlich unzuverlässig wird, ist sein Gedächtnis. Es gibt drei Speicherpools im Mikrocontroller, die auf Avr-basierten Arduino-Boards verwendet werden:
Der Speicher ist ein Teil der Karte, der überprüft und verifiziert werden kann und somit auf Zuverlässigkeit / Gesundheit bewertet wird. Eine sehr grundlegende Möglichkeit, den Speicher zu überprüfen, besteht darin, ein bestimmtes 8-Bit-Muster (Byte-Zeichen) über jede Adresse im Speicher zu schreiben und dann den an jeder Adresse vorhandenen Wert zu lesen. Wenn der geschriebene Wert mit dem gelesenen Wert übereinstimmt, funktioniert der betreffende 8-Bit-Block im Speicher zum gegenwärtigen Zeitpunkt ordnungsgemäß.
Die Abnutzung des ROM-Speichers erfolgt normalerweise blockweise, dh n * 8-Bit-Blöcke verschlechtern sich mit der Zeit. Für einen 2-KByte-ROM-Chip kann der Zustand des Chips geschätzt werden, indem von jedem Byte auf dem Chip geschrieben und gelesen und der Prozentsatz der ordnungsgemäß funktionierenden Blöcke berechnet wird. Wenn der Prozentsatz fehlgeschlagener Blöcke signifikant ist (15% -20%), bedeutet dies, dass der Speicher wahrscheinlich bald ausfällt.
Der Testcode kann mit separaten Methoden für jeden der Speicherabschnitte geschrieben werden.
SRAM
Alle statisch oder dynamisch deklarierten Variablen werden im SRAM zugewiesen. Wir könnten also ein großes Zeichenarray (~ 2000) deklarieren und jedes Element mit 255 (alle Bits 1) füllen. Dann könnten wir versuchen, jedes dieser Elemente zu lesen und festzustellen, ob der gelesene Wert tatsächlich 255 ist.
EEPROM
Das EEPROM kann mithilfe der EEPROM-Bibliothek bearbeitet werden . Die Bibliothek bietet Funktionen zum Lesen und Schreiben von bestimmten Stellen im EEPROM. So können alle Speicheradressen durch einfaches Durchlaufen des gesamten Speicherplatzes getestet werden. Diese Operation erfordert 500 Schreib- und Lesevorgänge.
Abhängig von der Board-Nutzung fällt das EEPROM am wahrscheinlichsten zuerst aus, ist jedoch für den Board-Betrieb nicht kritisch.
Blitz
Mit der
PROGMEM
Direktive können Daten im Flash-Speicher abgelegt werden . Ähnlich wie bei SRAM kann hier ein großes Array deklariert und initialisiert werden. Dann können Werte gelesen und überprüft werden.quelle
Schließen Sie die Karte an einen USB-Anschluss Ihres Computers an und überprüfen Sie, ob die grüne LED-Betriebsanzeige auf der Karte leuchtet. Standard-Arduino-Boards (Uno, Duemilanove und Mega) haben eine grüne LED-Betriebsanzeige in der Nähe des Rücksetzschalters.
Eine orangefarbene LED in der Nähe der Mitte der Platine (im Bild unten mit „Pin 13 LED“ gekennzeichnet) sollte beim Einschalten der Platine ein- und ausgeschaltet werden (die Platinen werden ab Werk mit vorinstallierter Software geliefert, um die LED zu blinken, um dies zu überprüfen) das board funktioniert).
Wenn die Betriebsanzeige nicht aufleuchtet, wenn die Karte an Ihren Computer angeschlossen ist, wird die Karte wahrscheinlich nicht mit Strom versorgt.
Die blinkende LED (verbunden mit dem digitalen Ausgangsstift 13) wird durch den auf der Platine laufenden Code gesteuert (neue Platinen sind mit der Blink-Beispielskizze vorinstalliert). Wenn die Pin 13 LED blinkt, läuft die Skizze korrekt, was bedeutet, dass der Chip auf der Platine funktioniert. Wenn die grüne Power-LED leuchtet, die Pin 13-LED jedoch nicht blinkt, befindet sich möglicherweise der Werkscode nicht auf dem Chip. Wenn Sie keine Standardplatine verwenden, verfügt diese möglicherweise nicht über eine integrierte LED an Pin 13. Überprüfen Sie daher die Dokumentation auf Details Ihrer Platine.
Online-Anleitungen für den Einstieg in Arduino finden Sie unter Windows , Mac OS X und Linux .
quelle