mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wie nennt man diese Sicherheitschaltung ?


Autor: Tishima (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich hab schon in einigen mC Anwendungen eine Analoge 
Sicherheitsschaltung gesehen, die z.B. den Leistungsteil nur 
einschaltet, wenn am Eingang eine gepulstes Signal anliegt.

Nur, jetzt wo ich sie brauchen könnte ,finde ich sie weder ,noch weiss 
ich wonach ich suchen muss.

Kann mir da jemand weiterhelfen.

gruß,
Bjoern

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was soll das bringen?
Ist wohl kaum, um den Microcontroller mit Strom zu versorgen? Denn 
solange der Microcontroller nicht läuft, gibt er keinen Takt aus, das 
Netzteil liefert keinen Strom und der MC kann gar nicht erst anlaufen.
Wenn du unbedingt eine Sicherheitsschaltung willst, kannst du ja ein 
paar Varistoren nehmen und superflinke Sicherungen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
- Watchdog

- retriggerbarer Monoflop


Peter

Autor: Tishima (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein,
die Schaltung soll nichts mit Strom versorgen, es ging meist darum das 
an einem Portpin diese Sicherheitsschaltung hing, aus dem PortPin wurde 
eine gepulstes Signal an die Analoge Sicherheitsschaltung gegeben.

Der PortPin wurde in µC Software getogelt um zu gewaehrleisten das der 
Leistungsteil nur dann funktioniert, wenn der µC nicht abgestürzt ist.

Eigentlich müsste man das mit ner Charge Pump machen können.

Muss mal weitersuchen,
Bjoern

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Antwort kam schon von Peter:

- Watchdog

- retriggerbarer Monoflop

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst ja einen Watchdog-IC (z.B. den DS1232) etwas zweckentfremden.
Du kannst z.B. von deinem 8051 das ALE-Signal als Puls-Signal verwenden, 
oder was weiss ich - irgend ein Bussteuersignal halt, das mit der 
Programmausführung seinen Zustand wechselt (so kannst du ohne 
zusätzlichen Programmieraufwand das Funktionieren deines Controllers 
überprüfen).
Der Watchdog DS1232 hat nun einen /ST-Eingang (ST = Strobe). Wenn sich 
/ST innerhalb einer einstellbaren Zeit von 0.6 - 1.2s (glaube ich) nicht 
änert, dann schaltet der DS1232 seinen RESET-Ausgang auf low. Du 
könntest ja dieses LOW-Signal dazu verwenden, z.B. irgend ein Relais um- 
oder auszuschalten, oder ein Error-Flipflop zu setzen oder sowas in der 
Art.

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> Du kannst z.B. von deinem 8051 das ALE-Signal als Puls-Signal verwenden

Das macht keinen Sinn. Aufgabe des Watchdog ist es, zyklisch per Befehl 
(Software) zurückgesetzt zu werden.

Ebenso verwendet man heutzutage flash devices bei denen man (ich) ALE, 
zwecks reduzierung der EMI, abschaltet.

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey Joe,
okay du könntest Recht haben. Das mit ALE war nur so ne Idee, wie Dallas 
sie im Datenblatt des DS1232 vorstellt.

Gruss

Autor: Tishima (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ahhh, das hab ich gesucht

http://www.artofcnc.ca/ChargePumpSafety.pdf

Charge Pump Safety Circuit


danke fuer die hinweise

gruß,
Bjoern

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mmmmhhhhh, wußte nicht das es hierzu eine App Note gibt.

Dennoch ist der Ansatz mit ALE falsch. Verwendet man keinen externen 
Speicher so ist ALE Clock/6. Irgendwie immer noch Hardware. Es sagt aber 
nichts zum Programmfluß aus, z.B. Laufzeitfehler, hangup, deshalb soll 
ja der Watchdog bewußt per Software abgehandelt werden.

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Okay Joe, du hast mich überzeugt.
Btw: ich hab noch nie einen Watchdog-Timer verwendet, aber jetzt mal 
eine Frage dazu: Wenn der läuft - woher weiss ich im Programmcode, wann 
es Zeit ist, ihn zurückzusetzen?

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist relativ einfach.

Angenommen du hast dein Programm fertig und willst nun etwas Sicherheit 
hineinbringen dann mißt oder rechnest du deine Laufzeiten aus.

Messtechnisch: Deine MAIN schleife toggelt einfach einen Portpin, somit 
kannst du mittels Scope die Laufzeit z.B. in mSec. ausmessen. Ebenso 
kannst du die Laufzeiten einzelner Routinen messen, am Anfang der 
Subroutine PIN=1, am Ende PIN = 0. Wenn du nun alle deine Laufzeiten 
kennst dann kannst du z.B. die Aussage treffen das ein entsprechender 
PIN (bei normalem Programmablauf) alle 2 mSec. gesetzt wird. So wird nun 
auch das retriggerbare Monoflop beschaltet. Lauft dein Programm normal 
so wird das Monoflop immer retriggert und kann nicht schalten. Bleibt 
der Impuls aus so kann mit dem Monoflop ein RESET ausgelöst werden.

Wenn man etwas mehr Aufwand betreibt so läßt sich schließen ob Software 
oder Hardware den Fehler ausgelöst hat.

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ach so.
Okay, danke für die Info. Scheint also doch Sinnn zu ergeben, den 
Wachtdog per Portpin zu schalten ;)

Grüsse

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.