www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Betriebssicherheit MC-Schaltung


Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
folgendes Szenario:
ein MC (Mega8) hängt über GPRS an der "langen Leine", soll auf
Anforderung Messwerte übermitteln. Diese Bereitschaft muss so gut
möglich gewährleistet sein (da kann nicht mal eben einer hingehen und
einen resetknopf drücken). Watchdog, Spannungsüberwachung etc. ist
alles drin. Die Anforderung kommt über die UART, zeitlich völlig
unbestimmt. Wäre nun durch einen wie auch immer gearteten Fehler z.B.
der receiver disabled oder die Baudrate verstellt oder das I-Flag
gelöscht oder oder oder, bekäme ich die Anforderung nicht mehr mit,
auch der watchdog hilf mir da nicht, Programm läuft ja.
Langer Rede, kurzer Sinn: hat jemand Erfahrungen damit? Können durch
äussere elektrische Störungen einzelne Bits gekippt werden? Hab schon
überlegt, in der main die ganzen Einstellungen zu überprüfen und ggf.
zu korrigieren oder einmal pro Stunde das Teil in den watchdog-reset
schicke (eine Stunde Ausfall kann toleriert werden).

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst für die Variablen und Konstanten verschiedene Speicher wählen,
bei Mega8 Flash, inbt. EEPROM und evtl. ein serielles EEPROM via I2C
anhängen. Die Majorität der Abfragen entscheidet über die Gültigkeit.
Auch Watchdog einsetzen. Und evtl. Datenstrom auf Plausibilität
prüfen.
Michael

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Grundsätzlich:
Passieren kann alles. Die erste Gegenmaßnahme ist ein gutes Layout und
eine störsichere Auslegung der Schaltung.

Im Speziellen:
Hast du nicht die Möglichkeit mit dem GPRS-Modul hin und wieder kurz
Kontakt aufzunehmen? So eine Art: "Klopf Klopf Noch jemand zu Hause"?
Wenn der Kontakt nicht bis $Timeout zustande kommt -> Systemreset
auslösen (z.B. Watchdog überlaufen lassen oder per Portleitung eine
Monoflop triggern)

Auch weitere Peripherie kann man so von Zeit zu Zeit abfragen ob noch
alles in Ordnung ist.

Matthias

Autor: Winfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei gutem Design sollte es extrem selten passieren. Aber alles, was
wichtig ist, sollte man z.B. über Checksummen absichern und regelmäßig
prüfen.

Wie betriebssicher gut designte Schaltungen und Software funktionieren,
zeigt mir mein Linux-Server. Der läuft manchmal über ein Jahr durchweg
und dann unterbreche ich das Ganze nur, weil ich wg. irgendwas mal neu
booten muss, nicht weil der abgestürzt wäre. Und ein PC ist nunmal noch
viel komplexer als ein kleiner Microcontroller mit ein wenig
Pheripherie.

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn das GPRS Modem über AT Befehle angesteuert wird dann wirklich
zwischendurch mal gucken ob es noch da ist. Vor allem kann man so auch
gleich noch mitprüfen ob noch das GSM Netz vorhanden ist (nicht das das
einer die Antenne gezogen hat).


Martin

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Besten Dank erst mal für die Ideen.
Direkt mit dem Modem kann ich nicht babbeln, dazwischen hängt noch ein
BECK IPC SC12 mit TCP/IP, und dessen Software mache ich nicht. Ich habe
die Hardware und die MC-Software. Werde mal mit dem Softwarefritzen vom
SC12 reden, dass der auf eine Anfrage vom meinem MC auch was antwortet.
Oder alternativ, dass der SC12 beim AVR einen Hardwarereset auslöst,
wenn der sich tot stellt. Dann bin ich den Kram komplett los :-), auf
die höhere Ebene delegiert, ich glaube, dass gefällt mit am besten.

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was auch ganz mächtig in die Hose gehen kann sind "malloc Orgien".
Wenn Dein heap Fragmentiert wird und das Speichermanagement das gar
nicht oder nicht in geeigneter Weise abfängt, "hängt" Dein Programm
irgendwann fest.

Das bezieht sich natürlich in erster Linie auf C-Programme.
Also -- Vorsicht mit malloc, und niemals ein free vergessen :-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.