Hi Leute, ich habe eine Schaltung mit einem Attiny2313 und 13 Leds. Attiny schaltet einen Npn Transistor BCR505 mit integriertem Basiswiderstand. Sobald 5V anliegen blitzen alle Leds gleichzeitig kurz auf bevor dann die richtige Reihenfolge beginng. Wenn ich die Transistoren überbrücke und direkt vom Attiny an die LEDs gehe dann funktoniert alles. Im Anhang ist ein kleines Bild zu meiner Schaltung. Wo ist mein Fehler?
Warum setzt du NPN Transistoren als Highside Switch ein? Wo ist der Strombegrenzungswiderstand für die LED? Die Basis darf auch eine Strombegrenzung haben. Wofür überhaupt der Transistor?
Arduino F. schrieb: > Die Basis darf auch eine Strombegrenzung haben. MinusT schrieb: > Transistor BCR505 mit integriertem > Basiswiderstand.
Route 6. schrieb: > Arduino F. schrieb: >> Die Basis darf auch eine Strombegrenzung haben. > > MinusT schrieb: >> Transistor BCR505 mit integriertem >> Basiswiderstand. Mit Verspätung bemerkt... Du bist zu schnell...
Arduino F. schrieb: > Warum setzt du NPN Transistoren als Highside Switch ein? Damit die Leds kurz aufblitzen. Sonst täten sie das nicht, da der integrierte BE-Widerstand die Basis beim Einschalten wie ein Pulldown auf 0 legte, bis der Controller soweit ist.
Eine Möglichkeit: +UB. --- Widerstand --- LED --- Kollektor BC547c Attiny2313 Ausgang --- 12k --- Basis BC547c GND --- Emitter BC547c GND --- 100nF --- Basis BC547c MfG. Mandi
Vielen Dank für die Antworten. Die Led hat einen Vorwiderstand (40Ohm), den habe ich vergessen einzuzeichnen. Mandi schrieb: > Eine Möglichkeit: > > +UB. --- Widerstand --- LED --- Kollektor BC547c > Attiny2313 Ausgang --- 12k --- Basis BC547c > GND --- Emitter BC547c > GND --- 100nF --- Basis BC547c Für was dient der Kondensator ?
@MinusT Der Kondensator unterdrückt den kurzen Impuls, welcher beim Einschalten der Versorgungsspannung entsteht. Hatte ein solches Problem mit einem MCP23S17, wo auch über einen Transistor BC547c die LED kurz aufblitzte. Abhilfe brachte ein 100nF Kondensator von der Basis nach GND. MfG. Mandi
Mandi schrieb: > Eine Möglichkeit: > > +UB. --- Widerstand --- LED --- Kollektor BC547c > Attiny2313 Ausgang --- 12k --- Basis BC547c > GND --- Emitter BC547c > GND --- 100nF --- Basis BC547c > > MfG. Mandi Eine sehr seltene Form des Schaltplanes. Fast so schön wie Prosa :-)
Habe grade nachgemessen die Leds ziehen 123mA maximal im Betrieb. Der Attiny2313 kann bis zu 200mA liefern. Da überlege ich wirklich die Transistoren rauszuschmeißen und direkt an attiny anzuschliessen. Strom pro Led ca 10mA. Ansonsten muss ich neue Platine ätzen und darauf habe ich gar keine Lust.
Nicht ganz richtig. 40mA max pro Pin aber nicht mehr als 200mA pro IC .Also 5 Pins a 40mA gleichzeitig.
Aber es würde gehen wenn ich 12 leds mit 10mA betreibe?
Vielen Dank, dann habe ich was zu tun. Schönen Abend noch.
Hallo Leute, habe das Problem mit einem zusätzlichen Basiswiderstand gelöst. Jetzt blitzen die LEDs nicht mehr auf. Jedoch habe ich jetzt ein anderes Problem :( Ich habe einen W78 5V0 Spannungsregler. Der stellt sich nun als zu "langsam" heraus. Der Impuls ist bereits weg und die LEDs leuchten nicht mal auf. Welche Spannungsregler sind schneller? Ich muss von 24V auf 5V runterregeln. Benötigter Strom ca 0,12A.
Hi Verstehe das Problem nicht. Der Spannungsregler wird aus der Versorgungsspannung 5,0V machen, egal, was darauf an Impulsen >>5V unterwegs sind - ist Sein Job. Wie willst Du den Impuls erkennen? Wie sieht die aktuelle Schaltung aus? MfG
MinusT schrieb: > Ich muss von 24V auf 5V runterregeln. Benötigter Strom ca 0,12A. Aua, linear geregt sind das 2,3 Watt Verlustleistung !
Karl M. schrieb: > Aua, linear geregt sind das 2,3 Watt Verlustleistung ! Ja :( Ich weiss leider sonst nicht wie ich zum Ziel komme. Es ist nur eine Vermutung dass der Regler zu langsam ist. Ich habe hier schnell 2 Schaltpläne gemacht, der eine ist Original wie es jetzt aussieht. Es sind 4 Pins an der Platine. 1 und 2 ist die Spannungsversorgung aus einer Konstantstromquelle. 3 und 4 sitzt ein Varistor den ich mit einem 10 MOhm Widerstand auf meiner Platine ersetzt habe. Ich habe meine Zeichnung hier ein wenig vereinfacht, es sind bei mir auch 12 Leds auf der Platine. Jedoch habe ich den Kondensator zwischen 3 und 4 weggelassen. Die Originale Platine zieht 90mA. Meine Platine zieht 120mA. Ich habe extra einen Step Down Regler eingesetzt weil der nicht warm wird, nun vermute ich dass er anscheinend zu langsam ist. Sobald Spannung anliegt blitzen die LEDs nur kurz und schwach auf und sind wieder weg. Der 24V Impuls liegt ca 500 Msec an. Evlt liegt es an etwas anderem aber ich weiss nicht woran.
MinusT schrieb: > Der 24V Impuls liegt ca 500 Msec an. Vermutlich 500ms und nicht Mega-s. Solche wichtigen Informationen sollte man gleich zu Anfang nennen. Einen Schaltregler braucht man da wohl nicht. Damit der MC schnell aus die Puschen kommt, die Resetzeit auf kürzest möglich setzen und dafür BOD enablen. Die 4,4k sind überflüssig. Was soll der MC in den 500ms überhaupt machen?
:
Bearbeitet durch User
Hi Ich stehe immer noch auf dem sprichwörtlichem Schlauch. MinusT schrieb: > Der Impuls ist bereits weg und die LEDs leuchten nicht mal auf. Kommt der Impuls direkt vom AVR? In wie fern musst Du dann darauf reagieren? Wäre eine Versorgung der LEDs von der 24V-Seite her machbar? Hätte gleichzeitig den Vorteil, daß auf 5V-Seite nahezu kein Strom mehr benötigt wird, der Linear-Regler daher kaum Strom liefern muß und so ein ggf. jetzt vorhandener Spannungseinbruch ausgeschlossen ist. Da die LEDs einzeln angesteuert werden, kommt die Ansteuerung auch einzeln? Wie sieht der Ablauf aus, was hast Du Dir beim Platinen-Layout gedacht, was soll Es werden? MfG
Die LEDs sollen nacheinander aufleuchten und nacheinander wieder ausgehen. So eine Art Knight Rider Licht. Wie kann ich BOD einstellen? Zum programmieren benutze ich einen Arduino Uno.
Patrick J. schrieb: > Wäre eine Versorgung der LEDs von der 24V-Seite her machbar? Ja das wäre mein nächster Schritt. Es ist auch möglich ja. Die Frage ist nur ob es sich was ändert. Klar man muss keine 19V mehr über dem Regler killen aber wenn die Zeit wieder nicht ausreicht dann habe ich leider nichts gewonnen.
Ich bin erst seit paar Wochen an diesem Thema dran und ich lerne noch. Wäre es eine Möglichkeit 0V auf den Reset Pin zu legen? Was bringt in meinem Fall wenn ich BOD aktiviere, und vor allem auf welche Spannung soll ich das machen?
Patrick J. schrieb: > Ich stehe immer noch auf dem sprichwörtlichem Schlauch. > > MinusT schrieb: >> Der Impuls ist bereits weg und die LEDs leuchten nicht mal auf. > > Kommt der Impuls direkt vom AVR? > In wie fern musst Du dann darauf reagieren? Patrick J. schrieb: > Wie sieht der Ablauf aus, was hast Du Dir beim Platinen-Layout gedacht, > was soll Es werden? Patrick J. schrieb: > MfG
Es geht um eine Aufgabe in der Berufsschule. Wir sollen uns was ausdenken und etwas ins Auto einbinden. Manche arbeiten mit Raspberry Pi zum kommunizieren und um diverse Daten anzuzeigen die im normalen Bordcomputer nicht sichbar sind. Wollte ich eigentlich auch aber es war bereits vergeben. In unserer Gruppe haben wir uns entschieden in den Blinkern ein Lauflicht zu integrieren. So wie bei Knight Rider. Zuerst wollten wir eine einfache Schaltung mit Kondensatoren die die Leds nacheinander aufleuchten lassen. Doch das war für die Aufgabe nicht genug. Wir sollten einen MC benutzen. Wir haben einen Arduino Uno zur Verfügung. Damit haben wir einen Attiny2313 programmiert. Platinen sind auch schon fertig und die ersten Tests verliefen erfolgreich. Es wurde aber bis jetzt nur an einer Batterie getestet. Da hat alles problemlos funktioniert, wir waren zuversichtlich und dachten dass wir fertig sind. Neue Platinen anzufertigen ist kein Problem. Die Tests am Auto selbst haben aber gezeigt dass es da noch Probleme gibt. Der Kurze blinkimpuls reicht nicht aus die Leds zum Leuchten zu bringen. Wir haben dann zu Testzwecken einen 47uF Kondensator angeschlossen zwischen 24V und 0V. Dass hatte als Ergebnis dass der erste Blinkimpuls dunkel ist, der Kondensator geladen wird und beim zweiten Impuls leuchten die Leds auf wie gewollt, jedoch minimal zeitversetzt. Also blinkt unser Aufbau nur 1 von 2 mal. Im Anhang sind die Bilder von den Platinen. Eine Platine ist nur für die Leds und die andere für die Steuerung inkl dem Spannungsregler.
0V an Reset: In der Regel macht man es so
1 | 5V----10kOhm------------Resetpin |
2 | |
|
3 | = 100nF |
4 | |
|
5 | GND
|
dem 100nF Kerko kann man einen Taster parallel schalten und wenn man den drückt wird der Resetpin auf GND gezogen wodurch der µC resetten wird. Im KFZ Bereich solltet ihr eine Drosselspule einfügen (>100µH) welche kurze Impulse aus dem Bordnetz dämpft. Ich verwende diese Drosselspule gerne auch als Begrenzungswiderstand für die nachgeschaltete Z-Diode danach gehe ich erst auf den Spannungsregler. Ganz vereinfacht müsste ihr ja nur in ein Register eine 1 links- bzw. rechtsschieben und an den Port übergeben um ein Lauflicht zu erzeugen und das ganze mittels Timer oder Schleifen verzögern.
Danke für die Antwort. Wird es im meinem Fall überhaupt Sinn machen 0V auf Reset zu setzen? Die Spannung ist eigentlich sauber da die aus einem Steuergerät kommt.
> Aua, linear geregt sind das 2,3 Watt Verlustleistung ! Der W78 ist aber ein Schaltregler, die Verluste dürften sich in Grenzen halten. http://www.produktinfo.conrad.com/datenblaetter/150000-174999/167805-da-01-en-SCHALTREGLER_W78_5V0_5V.pdf Das Problem sehe ich darin, dass der 24V Impuls kürzer ist als die gewünschte Leuchtdauer des Lauflichts. An den Spannungsregler müssten dauerhaft 24V angelegt werden, der Triggerimpuls sollte dann über Spannungsteiler oder Optokoppler auf einen µC-Eingang gehen. Dann fällt auch das lästige "Einschaltblitzen" weg, bzw tritt nur einmal auf, wenn die Schaltung an die 24V angeschlossen wird.
Der Sinn dieses kleinen RC Filters ist es ja die Resetspannung etwas zu puffern damit kein ungewollter Reset auftritt.
Thomas O. schrieb: > Der Sinn dieses kleinen RC Filters ist es ja die Resetspannung > etwas zu > puffern damit kein ungewollter Reset auftritt. Und ich dachte immer, das wäre dafür da, um die Mindestresetdauerlänge zu garantieren.
Die Leuchtdauer ist nicht das Problem. Dann können wir stufenlos über den attiny regeln/programmieren. Das Problem ist nur dass er sich gar nicht einschaltet. Es war nur meine Vermutung dass der Regler zu langsam ist.
Aktueller Stand ist dass das Blitzen nicht mehr auftritt. Der Resetpin vom attiny ist aktuell nicht belegt.
Ist die Schaltung immer noch wie in "nachbau.png" gezeigt aufgebaut? Ich bin immer noch ein wenig verwirrt: -> Wo sind die erwähnten Anschlüsse 1 und 2? -> Warum müssen die LEDs noch mal so an den µC angeschlossen sein? Interessehalber: Das Layout sieht so nach sPrint aus. Der Schaltplan aber nicht nach sPlan, sondern irgendwie grafisch zusammengebastelt.
Überhaupt: 24V? Was istn das für ein Auto? Feuerwehr, LKW? Die Kollektoren der Treibertransistoren können gern direkt an die Rohspannung. Spart Verlustleistung im Regler, das müssten dann die Transistoren richten. Teilt sich aber gut auf, die Verlustleistung. Ist ja auch nur kurz. Der Arduino braucht vllt. zu lange, bis alles initialisiert ist? Leider weis ich das auch nicht genaus, was da im einzelnen alles gemacht wird, bevor er überhaupt mit seiner Arbeit beginnt. StromTuner
Hab hier nochmal alles ganz genau aufgezeichnet. Nicht grade übersichtlich aber genauso ist es auf der Platine gelöst. Ist ein normaler PKW, Bordspannung ist 12V. 24V sind gemessen. Liegt vllt daran dass es 12 Leds sind die auf der original Platine in Reihe geschaltet sind. Das Programm ist ziemlich einfach geschrieben, zuerst werden die Pins zugeordnet (Eingang/Ausgang) und dann fängt es an mit digitalWrite(1, HIGH); delay(2); digitalWrite(2, HIGH); delay(2); usw. Die Zeit 2 soll die Verzögerung darstellen. Die originale Platine hat einen 4 Poligen Stecker, der wird gelöst und in unsere Steuerungsplatine reingesteckt. Darauf befindet sich noch ein 13 poliger Stecker der dann zu der Blinker Platine läuft. Musste so gemacht werden weil die die Bautele nicht auf die Blinkerplatine passen.
Falls es hilft, um einen Programmierfehler auszuschliessen haben wir die "delays" rausgenommen. Die Leds sollten dann im normlan Blinkertakt aufleuchten, taten sie aber auch nicht. Man hat wieder nur kurz was gesehen und war wieder weg.
Oh ich sehe grade mir ist da ein Fehler unterlaufen, habe die Transistoren falsch verbunden auf der Zeichnung. Tut mir leid. Die Basis läuft natürlich über 4,4k an den MC.
> Ist ein normaler PKW, Bordspannung ist 12V. > 24V sind gemessen. Liegt vllt daran dass es 12 Leds sind die > auf der original Platine in Reihe geschaltet sind. Da scheint also deutlich mehr im Auto zu stecken, als ein einfacher Schalter. Möglicherweise erkennt diese Schaltung die Modifikation als "Defekt" und unterbricht daher den Strom eher, als gewollt.
Hab jetzt nur deinen letzten Schaltplan gesehen. Aber was soll das genau bringen? Die LEDs mit der Anode an die Basen der Transistoren? Was sollte denn da überhaupt funktionieren? Und vom W78...der ADJ geht an den GND des Attiny aber wieso hat der keinen GND? Was hast du dir denn dabei gedacht? Und wie verwendest du eigentlich die NPNs? Ist ja ein ziemlicher Nachteil die so als quasi Highside-Schalter einzusetzen. Und welchen Vorteil soll es haben, dass sie den Ausgang des Attiny zu den jeweiligen LEDs schalten? Wie ist es denn um dein Grundverständnis von Elektrotechnik bestellt? Scheint mir, nichts für ungut, nicht weit her zu sein.
Ich entschuldige mich nochmal für den Fehler in der Zeichnung. Die Transistoren sind richtig angeschlossen. Basis an MC Ermitter an die LED Collector an 5V. Pin2 auf dem Schaltplan ist 0V! Stefan U. schrieb: > Da scheint also deutlich mehr im Auto zu stecken, als ein einfacher > Schalter. Möglicherweise erkennt diese Schaltung die Modifikation als > "Defekt" und unterbricht daher den Strom eher, als gewollt. Nicht ganz. Das Steuergerät wirft erst einen Fehler wenn ich den Stecker abziehe. Dann gibt es einen Fehler und die Spannung wird abgeschaltet. Bis dahin kommen ganz normal 24V an im Blinkertakt. M. K. schrieb: > Wie ist es denn um dein Grundverständnis von Elektrotechnik bestellt? > Scheint mir, nichts für ungut, nicht weit her zu sein. Das mit dem Highside hast du Recht. Das wird geändert. Ich lerne Mechatroniker. Also nichts Halbes. Nichts Ganzes. Erstes Jahr Mechanik. Zweites Jahr Elektrotechnik. In einem Jahr kann man sich leider nicht vertiefen, das dritte Lehrjahr ist dann nur Praxis angesagt, sowas wie ein Praktikum.
in dem Moment in dem man den µC mit Strom versorgt befindet er sich kurz im Reset in diesem Zustand sind die Pins als Eingänge mit aktiviertem Pullup aktiv. Es liegt also eine Spannung an den Pins über den Pullup Widerstand an evtl. fließt genug Strom um die Transistoren durchzusteuern um das zu verhindern braucht du externe Pulldownwiderstände damit auch im Resetzustand keine Spannung an den I/Os anliegt. Mit NPN Transitoren solltest du die LEDs auf der Masseseite schalten. Eigentlich solltest du hier alles finden was du brauchst. https://www.mikrocontroller.net/articles/AVR-Tutorial https://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen
Was genau bringt mir das? Wird das an den Resetpin angeschlossen?
Das komische ist halt nur wenn ich die Spannungsversorgung per Hand an eine Batterie anschliesse und mit der Hand den Blinker Takt vorgebe funktioniert alles problemlos.
Das sollte halt hin damit die Schaltung unempfindlicher gegen äußere Einflüsse wird. http://www.atmel.com/images/atmel-2521-avr-hardware-design-considerations_applicationnote_avr042.pdf Ließ dir das durch das erklärt einiges.
> Die Kollektoren der Treibertransistoren können gern direkt an die Rohspannung. > Spart Verlustleistung im Regler, das müssten dann die Transistoren richten. Das halte ich nicht für sinnvoll. Der Wirkungsgrad des Reglers dürfte deutlich höher sein als der der Transistoren.
Bist Du sicher, daß Du auf Deiner Steuerplatine keinen "Kurzen" gebaut hast? Die dünne Begrenzungslinie, wahrscheinlich für den Kühlkörper, könnte alle 3 Beinchen des Reglers vebunden haben...
Richtig erkannt. Das waren nur Markierungen für den Regler. Die sind selbstverständlich nicht auf der Platine drauf. Wie gesagt alles funktioniert problemlos an einer normalen Spannungsquelle wie zum Beispiel einer Autobatterie oder Akku vom Akkuschrauber. Nur im Auto will er nicht.
Also habe ich doch Recht, dass im Auto mehr Technik steckt, als du denkst. Vielleicht liegen dort nicht einmal die von Dir genannten 24V an - möglicherweise ein PWM Signal. hast du das überhaupt mal nachgemessen (mit mehr als einem Multimeter)?
> 24V sind gemessen. Liegt vllt daran dass es 12 Leds sind Alter... kann es sein, das ihr in eurer Spielgruppe ÜBERHAUPT keinen Plan habt, was da eigentlich abgeht? Ihr hängt da direkt am BCM, also konkret am Lichtmodul und wundert euch, das da nichts richtig "funktinioboniert"? Das ist ein LED-Treiber, der versucht einen konstanten Strom durch die teuren original-LED zu jagen und regelt diesen auch noch aus. Da kann man nicht einfach einen 7805 und einen Attiny drannhängen... Miss also nicht die Spannung, die das Modul bereitstellt, sondern den Strom und versuche die Stromaufnahme deines Blinkymoduls in jeder Betriebslage konstant auf dem Wert der Original-LEDs zu halten. Den Varistor mit 10MΩ zu ersetzen lasse ich unkommentiert. Es handelt sich aber sicher um einen temperaturabhängigen, und nicht um einen Spannungsabhängigen Widerstand. Aber - ich habe es nicht gemessen. - 10KΩ evtl.? Auch deine LEDs sollten in Reihe bleiben und nicht leuchtende durch eine Z-Diode gebrückt werden, deren Z-Spannung knapp unterhalb der LED-Flußspannung liegt. Stromversorgung für den AVR wird LowSide über einem Reihenwiderstand abgegriffen und nicht als Festspannungsregler. (Oder HighSide, wenn alles auf "24V" referenziert ist) Leute, Leute... StromTuner PS: bin sowieso erstaunt, das noch keiner was von "Versicherungsschutz" "ABE" usw. mimimimimiert hat.
MinusT schrieb: > Richtig erkannt. Das waren nur Markierungen für den Regler. > Die sind selbstverständlich nicht auf der Platine drauf. > Wie gesagt alles funktioniert problemlos an einer normalen > Spannungsquelle wie zum Beispiel einer Autobatterie oder Akku vom > Akkuschrauber. > Nur im Auto will er nicht. Hast du mal mit dem Oszi die Spannungsversorgung im Auto überprüft? Vielleicht koppelt da was ein was bis zum uC durchschlägt und diesen stört. Beim Auto echt nicht ungewöhnlich.
>an einer normalen > Spannungsquelle Du hast eine "normale" Stromquelle ... StromTuner EDIT: eine normale, getaktete, temperaturüberwachte Stromquelle StromTuner
Danke für die Antworten. Axel R. schrieb: > Aber - ich habe es nicht gemessen. - 10KΩ evtl.? Ja es ist ein Temperatur abhängiger Widerstand. 10kOhm sind richtig. Ein Schreibfehler. Den Strom haben wir auch gemessen. Es sind 90mA. Unsere Schaltung zieht 120mA. @Axel R das Auto fährt nicht mal. Wir haben 2 Autos in der Ausbildungshalle. Im Betriebs werden Lackierer und Mechatroniker ausgebildet und wir arbeiten an diesen Autos. Ich habe ja bereits oben erwähnt dass es vermutlich eine KSQ ist. Ich war nur unsicher. Wie kann man denn den Strom immer konstant halten wenn es zu keinem Zeitpunkt dazu kommt dass alle LEDs gleichzeitig leuchten?
>>Wie kann man denn den Strom immer konstant halten wenn es zu keinem >>Zeitpunkt dazu kommt dass alle LEDs gleichzeitig leuchten? >Auch deine LEDs sollten in Reihe bleiben und nicht leuchtende durch eine >Z-Diode gebrückt werden, deren Z-Spannung knapp unterhalb der >LED-Flußspannung liegt. Ein entsprechend bemessener Widerstand tut hier auch. Eine LED sollte bei 2V über ihr noch nicht leuchten, denk ich mal. testen.
1 | 2V/120mA= 16Ω |
BTW. mir ist bewusst, das eure Schaltung nur deshalb 120mA zieht, weil ihr ja parallel mit den LEDs am AVR hängt. Die LEDs müssen den Strom (die 90mA vonm Original), wenn Sie in dann in Reihe sind, auch vertragen. Du nimmst also alle LEDs, die Du hast und hängst die, wie im Original in Reihe. Über jede machst Du einen schaltbaren Widerstand. Steuerst Du diesen an, geht die LED aus, der Strom fliesst weiterhin, nur jetzt an der LED "vorbei" durch den aktivierten Widerstand. Die letzte LED ersetzt Du generell durch einen solchen Widerstand. Da immer in etwa der gleiche Strom fliesst, fällt an diesem auch immer in etwa die gleiche Spannung ab. Jene nimmst du als Betriebsspannung für deinen ATTiny. Nur als Vorschlag... StromTuner
Das klingt vielversprechend, vielen Dank. Wird sowas mit einem Transistor gelöst? Oder wie kann man den Widerstand schaltbar machen.
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.