Forum: Mikrocontroller und Digitale Elektronik (Vor-) Widerstand berechnen


von Fabian (Gast)


Lesenswert?

Hallo zusammen,
ich habe zwar  die Formeln dazu, aber ich denke ich gebrauche sie 
falsch.

Ich möchte mir gerne einen Attiny13 zulegen.

Laut Datenblatt verträgt dieser per I/O Pin 40mA und ingesamt an der 
Masse und Spannungsquelle 200mA. Dieser soll mit 4.5 Volt (Batterie) 
betrieben werden. Laut Datenblatt verträgt er maximal 6 Volt auf kurze 
Zeit.

Ich käme dann zur Vermutung, dass ich einen 25 Ohm Widerstand verbauen 
müsste (Innenwiderstand der Batterie ausser Acht gelassen).

Laut 
http://www.sachsendreier.com/msw/projekte/blinksdings/blinksdings.html
wird allerdings gar kein Widerstand benötigt. Ausser einem 10K, falls 
dieser programmiert werden sollte. Nun stellt sich die Frage wieso genau 
10K, und wieso eigentlich (wenn er nicht programmiert werden sollte) 
kein Widerstand?


Ausserdem soll damit auch eine LED angesteuert werden
(http://www.produktinfo.conrad.com/datenblaetter/1000000-1099999/001050453-da-01-en-LED_ROT_5MM_L_7113SEC_J3.pdf).
Laut Datenblatt komme ich auf (4.5-2.2)/0.03 = 76.7 Ohm Minimum.
In der oben genannten Webseite, werden jedoch immer mindestens 220er 
wenn nicht sogar ganze 1K verwendet.

Vielen Dank für eure Hilfe!

von Max H. (hartl192)


Lesenswert?

Fabian schrieb:
> Ich käme dann zur Vermutung, dass ich einen 25 Ohm Widerstand verbauen
> müsste (Innenwiderstand der Batterie ausser Acht gelassen).
Wo würdest du dein Widerstand einbauen?

> Ausserdem soll damit auch eine LED angesteuert werden
>(http://www.produktinfo.conrad.com/datenblaetter/1000000-1099999/001050453-da-01-en-LED_ROT_5MM_L_7113SEC_J3.pdf).
> Laut Datenblatt komme ich auf (4.5-2.2)/0.03 = 76.7 Ohm Minimum.
> In der oben genannten Webseite, werden jedoch immer mindestens 220er
> wenn nicht sogar ganze 1K verwendet.
Du musst und solltest deine LED nicht mit der Absolute Maximum DC 
Forward Current betreiben.

: Bearbeitet durch User
von Samuel C. (dragonsam)


Lesenswert?

> Ich käme dann zur Vermutung, dass ich einen 25 Ohm Widerstand verbauen
> müsste (Innenwiderstand der Batterie ausser Acht gelassen).
In die Versorgung des µC solltest du besser keinen Widerstand einbauen. 
Der holt sich soviel Strom wie er braucht.

> Laut
> http://www.sachsendreier.com/msw/projekte/blinksdings/blinksdings.html
> wird allerdings gar kein Widerstand benötigt. Ausser einem 10K, falls
> dieser programmiert werden sollte. Nun stellt sich die Frage wieso genau
> 10K, und wieso eigentlich (wenn er nicht programmiert werden sollte)
> kein Widerstand?
Dieser 10k zieht den Resetpin auf 5V. Ohne diesen Widerstand bleibt der 
µC im Reset und läuft somit nicht an.
Würdest du Reset hingegen direkt mit 5V verbinden würde der Controller 
zwar anlaufen, du könntest ihn aber nicht mehr programmieren.

> Ausserdem soll damit auch eine LED angesteuert werden
> 
(http://www.produktinfo.conrad.com/datenblaetter/1000000-1099999/001050453-da-01-en-LED_ROT_5MM_L_7113SEC_J3.pdf).
> Laut Datenblatt komme ich auf (4.5-2.2)/0.03 = 76.7 Ohm Minimum.
> In der oben genannten Webseite, werden jedoch immer mindestens 220er
> wenn nicht sogar ganze 1K verwendet.
Abgesehen davon, dass man LEDs im Normalfall mit maximal 20mA betreiben 
sollte, kann man sie auch mit deutlich weniger betreiben. Für Testzwecke 
tun es auch 10mA, 5mA oder noch weniger, daher pauschal so große 
Widerstände für LEDs.

von Max H. (hartl192)


Lesenswert?

Samuel C. schrieb:
> Ohne diesen Widerstand bleibt der
> µC im Reset und läuft somit nicht an.
Was ist mit dem internen Pullup?

von Dietrich L. (dietrichl)


Lesenswert?

Samuel C. schrieb:
> Dieser 10k zieht den Resetpin auf 5V. Ohne diesen Widerstand bleibt der
> µC im Reset und läuft somit nicht an.

Der µC hat einen internen Ziehwiderstand, daher läuft er schon an. 
Lediglich bei störbehafteter Umgebung ist ein zusätzlicher externer 
Widerstand empfohlen.
Und beim Programmieren ist er notwendig, da der interne zu hochohmig ist 
und das Programmiergerät nicht zuverlässig arbeitet.

Gruß Dietrich

von Samuel C. (dragonsam)


Lesenswert?

Richtig, tut mir leid, vergessen.

von Fabian (Gast)


Angehängte Dateien:

Lesenswert?

Habe es mal am Schaltplan (von mikrocontrollerspielwiese.de) 
eingezeichnet.

Falls es falsch sein sollte, bin ich um jede Hilfe froh ;-)

von Samuel C. (dragonsam)


Lesenswert?

Jetzt hast du aber nichts von dem was wir sagten umgesetzt.

von Max H. (hartl192)


Lesenswert?

Den 25Ohm kannst du weglassen, der ist eher kontraproduktiv. Den 
Vorwiderstand kannst du mit diesem Wert nicht kaufen, 82Ohm wäre der 
nächste der E12-Reihe, du musst und solltest deine LED aber wie gesagt 
nicht mit der Absolute Maximum DC Forward Current betreiben.

: Bearbeitet durch User
von Fabian (Gast)


Lesenswert?

Samuel C. schrieb:
> Abgesehen davon, dass man LEDs im Normalfall mit maximal 20mA betreiben
> sollte, kann man sie auch mit deutlich weniger betreiben. Für Testzwecke
> tun es auch 10mA, 5mA oder noch weniger, daher pauschal so große
> Widerstände für LEDs.

Aha! Daran habe ich gar nie gedacht. Bin immer davon ausgegangen, dass 
ich die Stromstärke über den Mikrocontroller (PWM) steuern werde.

Samuel C. schrieb:
> Jetzt hast du aber nichts von dem was wir sagten umgesetzt.

Es war erst der erste Beitrag da als ich mich an den Schaltplan 
hergemacht habe, bin leider ziemlich langsam im antworten ;-)

von Fabian (Gast)


Lesenswert?

Max H. schrieb:
> Den 25Ohm kannst du weglassen, der ist eher kontraproduktiv. Den
> Vorwiderstand kannst du mit diesem Wert nicht kaufen, 82Ohm wäre der
> nächste der E12-Reihe, du musst und solltest deine LED aber wie gesagt
> nicht mit der Absolute Maximum DC Forward Current betreiben.

Und woher weiss ich, dass die 200mA nicht überschritten werden? Sollte 
man die Stromstärke einfach messen?

Ich vertraue zwar auf deine Aussage, dass er nicht benötigt wird. Jedoch 
ist es für mich als Laie nicht nachvollziehbar wieso er sogar 
kontraproduktiv ist.

Der Attiny13 wird mein erster Mikrocontroller werden, daher entschuldige 
ich mich, falls ich etwas komische Fragen stelle.

von Samuel C. (dragonsam)


Lesenswert?

im Datenblatt steht, wieviel der µC selbst verbraucht. Die Verbraucher 
solltest du auch kennen. Bei einer LED zum Beispiel kannst du ja die 
Sttromaufnahme berechnen. Daher kennst du den Strom. Und ja, im Notfall 
wird gemessen.

Der Widerstand ist deshalb kontraproduktiv, weil an ihm eine Spannung 
abfällt. Je höher der Strom, desto höher der Spannungsabfall. D.h. je 
mehr deine Schaltung verbraucht, desto weniger Spannung kommt bei ihr 
an. Der Rest wird verheizt.

von MaWin (Gast)


Lesenswert?

Max H. schrieb:
> Den 25Ohm kannst du weglassen

Allerdings sollte er stattdessen einen 100nF 
Vielschicht-Keramikkondensator zwischen GND und VCC vom ATTiny bauen, 
der nicht ohne Grund in quasi allen Schaltungen dort auftaucht.

Fabian schrieb:
> Bin immer davon ausgegangen, dass
> ich die Stromstärke über den Mikrocontroller (PWM) steuern werde.

Nein. Den maximalen Strom bestimmst du mit dem Widerstand vor der LED, 
und der Strom sollte geringer sein als der maximalen Strom der LED 
(meist 30mA) und der maximale Strom des uC-Ausgangs (meist 20mA).
Die 40mA liefert der uC nicht freiwillig, der ist kurzschlussfest und 
begrenzt deen Strom irgendwo zwischen 20mA und 40mA. Mehr bekommst du 
nur in/aus einem Pin, wenn du mit höherer/niedrigerer Spannung (als 
6V/0V) absichtlich reindrückst, und dann geht der uC bei 40mA kaputt. Du 
willst also keine 40mA, sondern eher 20mA oder weniger.

Nur eine weitere Helligkeitsreduzierung kannst du dann über PWM 
erreichen.

von Karl H. (kbuchegg)


Lesenswert?

Fabian schrieb:
> Max H. schrieb:
>> Den 25Ohm kannst du weglassen, der ist eher kontraproduktiv. Den
>> Vorwiderstand kannst du mit diesem Wert nicht kaufen, 82Ohm wäre der
>> nächste der E12-Reihe, du musst und solltest deine LED aber wie gesagt
>> nicht mit der Absolute Maximum DC Forward Current betreiben.
>
> Und woher weiss ich, dass die 200mA nicht überschritten werden?

Du weisst ja, was du an Aussenbeschaltung an den Pins hängen hast.
Deren Stromverbrauch rechnest du zusammen, rechnest noch ein paar 
Milliampere für den µC selber dazu und hast das Ergebnis.
Wobei man sowieso nicht auf Knirsch an die Grenze rangeht. Die 200mA 
sind Obergrenze. Aber du fährst ja dein Auto auch nicht ständig mit 
7000U/min, nur weil das die Obergrenze für deinen Motor ist.

> Ich vertraue zwar auf deine Aussage, dass er nicht benötigt wird. Jedoch
> ist es für mich als Laie nicht nachvollziehbar wieso er sogar
> kontraproduktiv ist.

Weil jedes Bauteil soviel Strom zieht, wie es benötigt.
Strom wird gezogen und nicht gedrückt. Der Verbraucher bestimmt wieviel 
Strom in ihn reinfliesst.

In dem Fall ist es eben der µC, der vom Netzteil eine bestimmte Menge 
Strom zieht. Und das tut er ganz von alleine.

Eine LED ist da anders. Bei einer LED ist der Strom davon abhängig, 
welche Spannung über der LED anliegt. Je höher die Spannung, desto mehr 
Strom rinnt da auch. Und vor allen Dingen: bereits kleine 
Spannungsänderungen bewirken enorme Unterschiede im Stromfluss.
Wenn man bei einer LED genau und exakt ihre Spannung anlegen würde, dann 
würde auch die LED nur soviel Strom ziehen, wie eben es genau für diese 
Spannung zutreffend ist. Nur schafft man das nicht. Die Spannung kannst 
du nicht so genau einstellen und vor allen Dingen ist das für jede LED 
anders. Daher geht man da den umgekehrten Weg. Man begrenzt den Strom 
und dann fällt über der LED genau die dazu entsprechende 
Spannungsdifferenz ab.

von Ingo L. (corrtexx)


Lesenswert?

Fabian schrieb:
> Der Attiny13 wird mein erster Mikrocontroller werden, daher entschuldige
> ich mich, falls ich etwas komische Fragen stelle.
Der Controller selbst braucht sagen wir mal 10mA. Wenn du jetzt an einen 
Pin eine LED hängst, dann braucht er 10mA + LED_Strom.

Die 200mA sind halt die Obergrenze, d.h. wenn du 10 LED mit je 20mA 
dranhängst wird es eng, da du dann 20mA * 10 + 10mA Eingenverbrauch über 
die VCC/GND Anschlüsse führen muss, was laut Datenblatt zu viel ist.

Somit gingen nur 9 LED a`20mA + 10mA Eigenverbrauch. Ich hoffe es wird 
etwas deutlich was mit den 200mA im DB gemeint ist.

von Peter (Gast)


Lesenswert?

Fabian schrieb:
> Und woher weiss ich, dass die 200mA nicht überschritten werden? Sollte
> man die Stromstärke einfach messen?

Der Controller nimmt sich soviel Strom wie er braucht.

Deine Steckdose liefert dir ca. 3,68kW. Wenn du jetzt einen Handylader 
10W ansteckst, dann musst du auch nicht einne Vorwiderstand für die 
Differenz von 3,67kW vor dein Handyladegerät schalten.

Du solltest dir dringend das Datenblatt zu Gemüte führen. Da steht wie 
der Controller zu beschalten ist. Die Hersteller wissen schon was sie 
tun.

von Karl H. (kbuchegg)


Lesenswert?

Karl Heinz schrieb:

> Nur schafft man das nicht. Die Spannung kannst
> du nicht so genau einstellen

d.h. so ganz stimmt das nicht.
Genau das ist das Prinzip einer Konstantstromquelle.
Eine Konstantstromquelle misst ständig den Strom, den der Verbraucher 
abnimmt und regelt die Spannung so nach, dass der Verbraucher genau den 
gewollten Stromverbrauch hat. D.h. eine Konstanstromquelle stellt die 
Spannung über der LED genau so ein, dass durch die LED (aufgrund ihrer 
Kennlinie) genau die gewünschte Menge an Strom rinnt.

: Bearbeitet durch User
von Fabian (Gast)


Lesenswert?

Samuel C. schrieb:
> Der Widerstand ist deshalb kontraproduktiv, weil an ihm eine Spannung
> abfällt. Je höher der Strom, desto höher der Spannungsabfall. D.h. je
> mehr deine Schaltung verbraucht, desto weniger Spannung kommt bei ihr
> an. Der Rest wird verheizt.

Auch daran habe ich ganz und gar nicht gedacht. :-)

MaWin schrieb:
> Max H. schrieb:

> Allerdings sollte er stattdessen einen 100nF
> Vielschicht-Keramikkondensator zwischen GND und VCC vom ATTiny bauen,
> der nicht ohne Grund in quasi allen Schaltungen dort auftaucht.

Wird gemacht.

> Die 40mA liefert der uC nicht freiwillig, der ist kurzschlussfest und
> begrenzt deen Strom irgendwo zwischen 20mA und 40mA.
> Nur eine weitere Helligkeitsreduzierung kannst du dann über PWM
> erreichen.

Ich bin bis jetzt davon ausgegangen, dass der Ausgang entweder 0mA oder 
eben die 40mA liefern würde.

von Fabian (Gast)


Lesenswert?

Karl Heinz schrieb:
> Du weisst ja, was du an Aussenbeschaltung an den Pins hängen hast.
> Deren Stromverbrauch rechnest du zusammen, rechnest noch ein paar
> Milliampere für den µC selber dazu und hast das Ergebnis.
> Wobei man sowieso nicht auf Knirsch an die Grenze rangeht. Die 200mA
> sind Obergrenze. Aber du fährst ja dein Auto auch nicht ständig mit
> 7000U/min, nur weil das die Obergrenze für deinen Motor ist.

Mensch, da fehlt mir noch einiges an Basiswissen.
Bin davon ausgegangen, dass der µC einfach alles zieht was er kriegen 
kann.

Daher kam ich auch auf die 25 Ohm. R=5V/200mA

von Stromfluss (Gast)


Lesenswert?

Fabian schrieb:
> Ich bin bis jetzt davon ausgegangen, dass der Ausgang entweder 0mA oder
> eben die 40mA liefern würde.

Der Strom ist abhängig von der Last (dem Widerstand), die am Ausgang 
hängt.
Beschäftige Dich mal ausführlich mit dem Ohmschen Gesetz.

von Karl H. (kbuchegg)


Lesenswert?

Fabian schrieb:

> Bin davon ausgegangen, dass der µC einfach alles zieht was er kriegen
> kann.

Sowas gibts auch.
Nennt sich dann aber Kurzschluss und nicht µC :-)

von Fabian (Gast)


Lesenswert?

Werde mir heute mal die exakten Bauteile wie auf der Website besorgen 
(mikrocontrollerspielwiese). Und um das ganze zu programmieren exakt 
danach aufbauen.

Und nach dem programmieren, werde ich es mal nach Lust und Laune umbauen 
und einige Teile wohl zerstören in meiner Unwissenheit. Dank eurer Hilfe 
hier sind zwar nun einige Fragen geklärt, aber unzählige neue kamen 
dazu. Aber der Drang einfach mal etwas handfestes vor mir zu haben ist 
aktuell einfach zu gross und die Bauteile sind ja zum Glück ziemlich 
günstig ;-)

von Karl H. (kbuchegg)


Lesenswert?

Fabian schrieb:
> Werde mir heute mal die exakten Bauteile wie auf der Website besorgen
> (mikrocontrollerspielwiese). Und um das ganze zu programmieren exakt
> danach aufbauen.
>
> Und nach dem programmieren, werde ich es mal nach Lust und Laune umbauen
> und einige Teile wohl zerstören in meiner Unwissenheit.

Das wichtigste ist, dass deine Spannungsversorgung stabile 5V liefert 
und nicht schwankt (vor allen Dingen nicht nach oben). Ist die 
Versorgung so ausgelegt, dass das Netzteil einbricht wenn ein paar 100mA 
fliessen, dann ist das besser als wie wenn du beispielsweise ein 
PC-Netzteil benutzt, das auch noch problemlos ein paar Ampere in die 
Schaltung liefern kann und dabei dann alles verkokelt.

Keine Sorge, so schnell kriegt man einen AVR nicht klein. Die können 
einiges ab.

von Florian (Gast)


Lesenswert?

Fabian schrieb:
> Werde mir heute mal die exakten Bauteile wie auf der Website besorgen
> (mikrocontrollerspielwiese). Und um das ganze zu programmieren exakt
> danach aufbauen.

Wenn du nicht wirklich noch einen Rechner mit Parallelschnittstelle hast 
und dieses Programmierkabel nachbauen willst würde ich mir einen 
fertigen Programmer kaufen (z.B. USBASP gibt es günstig).

Wenn irgendetwas beim Programmieren nicht funktioniert muss man dann 
nicht Fehler im selbstgebauten Programmieradapter und in der 
Mikrocontroller-Schaltung suchen.

von Fabian (Gast)


Lesenswert?

Florian schrieb:
> Wenn du nicht wirklich noch einen Rechner mit Parallelschnittstelle hast
> und dieses Programmierkabel nachbauen willst würde ich mir einen
> fertigen Programmer kaufen (z.B. USBASP gibt es günstig).

Besitze noch einen alten Pentium 4 Computer, welcher diese besitzt.
Werde mir später dennoch einen solchen USB-Adapter zulegen, dann hat die 
alte Brummkiste endlich ausgedient.

> Wenn irgendetwas beim Programmieren nicht funktioniert muss man dann
> nicht Fehler im selbstgebauten Programmieradapter und in der
> Mikrocontroller-Schaltung suchen.

Soviel kann ich doch gar nicht falsch machen ;-)


Vielen Dank an all die netten Helfer hier!
Echt ein top Forum! Werde ich meinen Kollegen weiterempfehlen.

von Karl H. (kbuchegg)


Lesenswert?

Fabian schrieb:

> Soviel kann ich doch gar nicht falsch machen ;-)

Der Spruch fällt in die Kategorie "Berühmte letzte Worte"

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
Noch kein Account? Hier anmelden.