Re: PO0 Ports abfragen Kategorie: CC2-Unit & Appl.Board / CC2-Station (von Michi, http://www.elektronik.co.at - 24.09.2007 12:30) | ||
Als Antwort auf Re: PO0 Ports abfragen von der andy - 20.09.2007 17:08 | ||
| ||
Hallo Andi ! Will mich wirklich nicht aufrdrängen, denke aber nach deine Ausführungen mit der Ampel, da� wir ähnliche Dinge gemeint haben, daher noch folgende Dinge, die dir mit der Ampel vielleicht helfen: Vielleicht bist du SIL3. Das ist grob formuliert eine "Sicherheitsstufe", die sehr grob gilt wenn einer oder mehrere getötet werden könnten, also etwa Autoverkehr oder eben (möglicherweise) Ampeln. So wie ich es sehe, wollen wir beide wissen, ob die Lampe (und welche) leuchtet, der Portzustand sagt nicht viel, Relais könnte z.B. kleben. Aber jetzt wirds eine Konzeptfrage: wie bekommst du deine Ampel in "einen sicheren Zustand" (gelb blinken oder Totalabschaltung), wenn Fehler auftreten ? Eine Variante wären mehrkanalige Systeme (zwei haben bei drei recht, bei 2 Kanälen fürt Ungleichheit zur Abschaltung). Wirst du kaum machen. Andere Varianten wären "geeignete" �berwachungen in einem Einkanalsystem. Da� sich ein einziger Prozessor selbst kontrolliert, könnte vielleicht geeignet sein. (z.B. können "klebende" Relais eine hohe Wahrscheinlichkeit haben, = alle grün). Hier könnte ein einkanaliger Prozessor mit Not-Aus viel bringen. Andere Frage ist, ob sich EIN Prozessor überhaupt slbst kontrollieren kann-soll und wie. Das läuft meist auf eine Programmablaufkontrolle hinaus (volktstümmlich z.B. watchdog), der einen "narischen" Prozessor erkennen und beheben soll. Man könnte also z.B. mit einem Watchdog den korrekten Ablauf einer Sicherheitsroutine überwachen. Hier könntest du diene Lampenzustände (z.B. Ströme) prüfen und Notma�nahmen einleiten. Wenn die Sicherheitsroutine nicht mehr planmä�ig läuft, schlägt der Watchdog zu. Das ist aber nur eines von vielen Konzepten. Du könntest z.B. auch eine unabhängige Kontrollhardware bauen, die bei mehr als einem grünen Licht abschaltet. Das Konzept ist halt bei solche Sachen das wichtigste. Vielleicht bringts dir was, Michi > Hey Michi! > > Danke für Deine sehr ausführliche Antwort! > > Leider trifft Deine Antwort nicht meine Kernfrage. Mir geht es nicht darum zu überprüfen, ob der > Ausgang geschaltet hat. Das, wie Du vortrefflich formuliert hast, könnte ich natürlich nur durch > eine dahinter geschaltete Stufe, in welcher Form auch immer, kontrollieren. Jedoch, wie Du auch > bemerkt hast, wer kontrolliert dann diese Stufe? An irgendeiner Stelle bei�t der Schwanz immer > die Maus, oder doch die Maus den Schwanz? Schalte z.B. mit einem Max7311 von Andre eine > Ampel. In der Zuleitung dieser Ampel ist etwas verbaut, was kontrolliert, wieviel Strom und ob > Strom durch die Leitung flie�t. Dient zur Kontrolle a) ob das Relais geschaltet hat und b) ob > vielleicht die Lampe an der Ampel kaputt ist. Bei einer Ampel sollte man wissen, ob das Ding > jetzt wirklich Rot anzeigt oder gor nix. Aber auch hier gibt es natürlich Ecken, wo das Ganze > dann wieder den Schwanz der Maus erwischt. > > Zu meiner Frage. > > Ich schalte über PO0-3 4 Relais. Letztendlich wollte ich nur ein mögliches Register wissen, aus > dem ich auch nach x Sekunden noch auslesen kann, welcher Ausgang/Relais jetzt geschaltet > ist und welches nicht. > > Aber scheinbar ist die Lösung, zu Beginn des Programms einen definitieren Zustand her zu stellen, > um dann selber zu "protokollieren", was ich geschaltet habe und was nicht. > > Oder wei�t Du ein Register wo ich das ablesen kann? > > LG, > der andy > > > Hallo Andi ! > > > > selbst wenn das gänge, würde ich persönlich darin keinen Gewinn sehen: > > > > Angenommen, in einem Mikrokontroler geschehen deterministische Dinge (das ist nur > > grö�tenteils richtig, da ein winziger Anteil von "Fehlern" nie auszuschlie�en ist), > > dann mu� man davon ausgehen können, da� der Programmschritt richtig durchgeführt wurde. > > > > Ansonsten mü�te man hinter jeden Befehl eine Kontrolle schreiben, ob es gemacht wurde. > > Und dauernd kontrollieren, ob es immer noch so ist oder vielleicht schon nicht mehr. > > Kein effizienter Weg. > > Aber es kann in Sonderfällen tatsächlich eine Interessante Frage sein, ob man "sicher" sein kann, > > da� der Befehl richtig durchgeführtwurde und immer noch richtig ist. Läft auf erkennbare Fehler raus. > > (Prüfsummensicherungen, Mehrprozessorsysteme, unterschiedliche HW und SW) > > > > Vielleicht meinst du eine zweite Möglichkeit: > > Konnte der Port hardwaremä�ig den Pegel einstellen, auf den er gestezt wurde ? > > Er könnte ja z.B. einen Ma�eschlu� haben. > > Das halte ich insofern für vorweg unbeantwortbar, da man hier noch nicht wei�, welche nachfolgende > > Stufe (Transistor, LED, TTL, CMOS) den Pegel interpretiert. > > Man mü�te also das, was die nachfolgende Stufe daraus erkannt hat, wieder auf einen Eingang > > zurückführen und der Nutzen ist noch nicht gewi�, denn sollte ein neuer Versuch besser gelingen > > als der vorher gescheiterte ? Oder versucht man "Notma�nahmen" (z.B. Abschaltungen) zu setzen? > > Das geht alles in ein Gesamtkonzept. > > > > Grü�e > > Michi > > > > > > > Hi! > > > > > > Habs gesucht, leider nichts gefunden. > > > > > > Ist es möglich den Status der PO0-3 Ports abzufragen? > > > Also Port setzen oder nicht und dann, zur Kontrolle, eben den Status abfragen. > > > Geht das das irgendwie? > > > > > > Danke! Meine Seite: http://www.elektronik.co.at | ||
Antwort schreiben Antworten: |