Hallo zusammen. Hab mir ein System zur Heizungssteuerung für ein Prototypen aufgebaut. Dafür wurde eine Bedieneinheit auf Basis Arduino erstellt und der Einfachheit halber über Uart mit einem Reglerboard (FiOStd) verbunden. Das Reglerboard schaltet in Summe 18 Halbleiterrelais (~6mA/Stufe), was soweit eigentlich gut funktioniert. Ich bin mit der gesamten Stromaufnahme aber hart am Limit zum absoluten Maximum des µC. Problem: Von Zeit zu Zeit bleibt das FiOStd einfach hängen und verändert seine Ausgänge (PWM, DIO, etc.) nicht mehr. Die Uart Kommunikation ist nicht daran Schuld, sie funktioniert einwandfrei. Außerdem ist die Zeitspanne bis zum Absturz immer unterschiedlich. Frage: Kann es sein, dass das Board überlastet wird und dadurch hängen bleibt? Macht ein Transistorschalter Sinn, um die Belastung zu reduzieren? Was kann sonst zu einem Absturz des Boards führen? Danke im Voraus für die Hilfe.
> Was kann sonst zu einem Absturz des Boards führen?
Sauberer Aufbau, Versorgungsspannung gut entkoppeln.
Freilaufdioden an Relais, darauf achten das die
Ausgangspins des Mikrocontrollers nicht zu viel
Strom liefern muessen, sauberes Layout, ordentliche
Verkabelung...
Meine Antwort ist so allgemein wie deine Frage...
ohne_namen
- Aufbau ist ordentlich durchgeführt - Versorgungsspannugn kommt sauber von einem Phoenix Contact Netzteil mit 12V - Freilaufdiode ist bei den Halbleiterrelais nicht notwendig, da ich einen Optokoppler am Eingang schalte "...darauf achten das die Ausgangspins des Mikrocontrollers nicht zu viel Strom liefern muessen..." ==> Genau das war mein Frage, ob es sein kann, dass der Controller hängen bleibt, wenn die Ausgänge zu viel Strom ziehen?! Wer lesen kann ist eindeutig im Vorteil ;)
asdf a. schrieb: > ==> Genau das war mein Frage, ob es sein kann, dass der Controller > hängen bleibt, wenn die Ausgänge zu viel Strom ziehen?! Kann eigentlich nicht sein - zur Zeit haben wir keinen Vollmond. Häng die Hälfte deiner Hardware ab und lass laufen - dann weißt du es genau. Wird halt irgendwo ein Programmfehler sein, so wie in 95% aller Fälle.
> Wer lesen kann ist eindeutig im Vorteil ;)
Und ohne dass du wenigstens mal einen Schaltplan,
Stromlaufplan oder genauere Angaben ueber deine
Schaltung (was fuer ein Board, wie sind die Ausgaenge
beschaltet) usw., ist alles andere
nur Raterei. ;->
ohne_namen
asdf a. schrieb: > - Aufbau ist ordentlich durchgeführt --> Das werden wir wohl so hinnehmen müssen. Es gibt übrigens verschiedene Definitionen von "sauber". > - Versorgungsspannugn kommt sauber von einem Phoenix Contact Netzteil > mit 12V --> Ich denke ohne_namen meinte die Versorgungsspannung des µC. Da ist doch noch was zwischen dem "sauberen Netzteil" und dem µC, oder? Außerdem hat das Netzteil rein garnichts mit Entkopplung zu tun. > "...darauf achten das die Ausgangspins des Mikrocontrollers nicht zu > viel Strom liefern muessen..." > ==> Genau das war mein Frage, ob es sein kann, dass der Controller > hängen bleibt, wenn die Ausgänge zu viel Strom ziehen?! Niemand weiß, wie Du deine Relais schaltest. Falls Du vielleicht mehrere auf einmal schaltest, kann es durchaus sein, dass Dir die Versorgungsspannung wegbricht. Insbesondere, wenn Du (wie Du erwähnt hast) knapp an den Max.Ratings bist. > Wer lesen kann ist eindeutig im Vorteil ;) Verkneif's Dir doch einfach.
Danke erst mal und sorry für den Seitenhieb (aber wer austeilt muss auch einstecken können) ;) Bei dem µC Board handelt es sich um das Evaluation Board FiOStd von Aimagin. Dort ist ein Spannungsregler drauf, der 3,3V bis 800mA ausgibt. Ob die Spannung immer sauber ist, kann ich nicht 100%ig sagen. Vom Leistungsvermögen ist der Regler auf jedenfall genug. Aufbau sieht so aus, dass ich direkt aufs vom µC PWM Ausgang (10Hz) aufs SSR gehe. Dessen Eingang ist lediglich ein Optokoppler mit R. Und ja, ich schalte mehrere auf einmal. Was mich eben wundert ist, dass der µC hängen bleibt und die Ausgangswerte beibehält. Wenn die Versorgungsspannung des µC zusammenbricht, würde dieser doch reseten, oder lieg ich da falsch?
asdf a. schrieb: > Bei dem µC Board handelt es sich um das Evaluation Board FiOStd von > Aimagin. Hast Du vielleicht einen Link zum Schaltplan? > Was mich eben wundert ist, dass der µC hängen bleibt und die > Ausgangswerte beibehält. Wenn die Versorgungsspannung des µC > zusammenbricht, würde dieser doch reseten, oder lieg ich da falsch? Nur wenn Du die BOD (BrownOut-Detection) eingeschaltet hast und der Spannungseinbruch lang genug ist, um erkannt zu werden. Um im Falle des Hängenbleibens einen Reset durchzuführen wäre der Watchdog erforderlich, aber zuerst sollte die Ursache beseitigt werden.
asdf a. schrieb: > Was mich eben wundert ist, dass der µC hängen bleibt und die > Ausgangswerte beibehält. Wenn die Versorgungsspannung des µC > zusammenbricht eher 'einbricht' Es ist eher unwahrscheinlich, dass die Versorgungsspannung komplett bis auf 0V einbricht. Was natürlich sein kann ist, dass sie kurzfristig mal von 3.3V auf (hausnummer) 1.5V einbricht. Und was dann alles passiert oder nicht passiert, kann dir kein Mensch garantieren. Aber das alles ist nur eine Hypothese. Das kann das Problem sein, muss es aber nicht. Sorg halt mal dafür, dass kein Schmutz auf der Versorgungsspannung sein kann, weiil du keine reale Hardware schaltest. Wo nichts schaltet, können auch keine Schaltspitzen auftreten. Wenn dann dein µC immer noch abschmiert, dann wird es bei einem industriell gefertigtem Board wohl eher an deinem Programm als am Board liegen. >, würde dieser doch reseten, oder lieg ich da falsch? Bitte nimm zur Kentniss, dass hier keiner Hellsehen kann. Niemand kann aus der Ferne beurteilen, was jetzt genau und exakt in deinem konkreten Fall das spezifische Problem ist. Es gibt viele Möglichkeiten und letzten Endes wirst du selber dem Problem auf die Schliche kommen müssen. Schon alleine deshalb weil wir von dieser Seite des Monitors so schlecht mit Messgeräten an dein Equipment rankommen, bzw. Dinge probieren können. Wenn du den Verdacht hast, dass du mit zuvielen Verbrauchern deinen µC überlastest, dann nimm einige Verbraucher weg, sodass du sicher nicht mehr knapp an der Grenze bist. Wenn dann das Problem weg ist, dann ist das zumindest mal ein deutlicher Fingerzeig, wohin die Reise gehen könnte. Das ist doch nicht so schwer - wenn du µC arbeiten willst, dann wirst du nicht umhin kommen, auch mal selber dir Teststrategien und Möglichkeiten zu überlegen, wie du vermutete Problemkreise abklären kannst. Das ist ganz normaler Technikerarbeit, das man rausfindet, was eigentlich los ist. Und ja, manchmal kommt einem die Intuition und der Zufall zu hilfe. Wenn man aber nur rumsitzt und nichts tut, ändert sich nichts und man findet nichts raus. > Was mich eben wundert ist, Wenn (und ich betone: wenn) die Hypothese stimmt, dass du Spikes auf der Versorung hast, dann kann alles mögliche passieren. Ein Betrieb ausserhalb der Spezifikationen ist nun mal per Definition 'nicht spezifiziert, worauf man vertrauen kann und worauf nicht'.
Man kann auch mal ein Testprogramm schreiben, dessen einzige Aufgabe es ist, wie ein Wilder alle Relais durchzuschalten, in systematisch koordinierten Sequenzen, in zufälligen Sequenzen, alle auf einmal, einen nach dem anderen und mal nachsehen, ob sich da was tut. Testprogramme sollen einfach sein, damit man die Wahrscheinlichkeit drückt, im Testprogramm selber einen Fehler zu haben. Man will ja schliesslich einen spezifischen Punkt testen (in deinem Fall: spezielle nicht näher bekannte Kombinationen von Schaltvorgängen lassen das System abschmieren) und nicht erst stundenlang ein Testprogramm debuggen, bis man zum eigentlichen Test vordringt.
:
Wiederhergestellt durch User
asdf a. schrieb: > Was mich eben wundert ist, dass der µC hängen bleibt und die > Ausgangswerte beibehält. Wenn die Versorgungsspannung des µC > zusammenbricht, würde dieser doch reseten, oder lieg ich da falsch? ja, schon. Für den Fall des Spannungseinbruchs hat man ja die brown-out-Technik eingeführt. Dort wird bei Unterspannung ein reset ausgelöst. ältere Kontroller stürzen bei Unterspannung einfach ab. Was die Abstürze des Programms angeht, ein Tipp: Kaffee ohne Filter kochen und in eine Tasse gießen. Den Satz anschließend untersuchen. Dort hast Du die gleiche Chance die Lösung des Rätsels zu finden wie wir. Wer im Kaffeesatz lesen KANN, ist eindeutig im Vorteil, wir könnens nicht.
asdf a. schrieb: > > Bei dem µC Board handelt es sich um das Evaluation Board FiOStd von > Aimagin. Dort ist ein Spannungsregler drauf, der 3,3V bis 800mA ausgibt. > Ob die Spannung immer sauber ist, kann ich nicht 100%ig sagen. Vom > Leistungsvermögen ist der Regler auf jedenfall genug. Strommäßig vielleicht, aber thermisch? 12V-3,3V machen auch bei nur wenigen mA schon genug Ptot, die bei den üblichen PCB-Kühlflächen solcher Regler eher.... schnell kritisch werden. > > Aufbau sieht so aus, dass ich direkt aufs vom µC PWM Ausgang (10Hz) aufs > SSR gehe. Dessen Eingang ist lediglich ein Optokoppler mit R. Und ja, > ich schalte mehrere auf einmal. Welchen R für die LED? > GGfs ist dem U-Regler schon so recht warm? Wenn Du dann schaltest kann quasi die interne Übertemperatursicherung ansprechen und Deine 3,3V waren 3,3V.... Mag der uC aber nicht wenn die nicht sind was sie sein sollen. Wie gesagt, die Glaskugeln sind alle ob Deiner Schaltplanverweigerung etwas trüb.... Grüße MiWi
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.