Forum: Analoge Elektronik und Schaltungstechnik Frage zur Berechnung von Basiswiderstand BC547B mit Motor 5V


von Vanessa (Gast)


Angehängte Dateien:

Lesenswert?

Hallo!

Ich möchte den Transistor BC547B als Schalter verwenden und damit einen 
3V Vibrationsmotor mit Ic=63mA optimal ansteuern.
Eingangsspannung sind 5V von einem Arduino Uno Pin. Am Kollektor liegen 
3.3V.

Um den Basiswiderstand zu berechnen, habe ich in den Datenblättern die 
Gleichung IC=10*IB gefunden--> Daher müsste der DC current gain in der 
Sättigung 10 sein, wenn ich das richtig verstanden habe?

Mit der Gleichung Rb= (Uein- UBEsat)/IB habe ich mir dann den 
Basiswiderstand berechnet. UBEsat habe ich aus den Kennlinien im 
Datenblatt mit 0,7V herausgelesen.

Daraus bekomme ich einen Widerstand von 682 Ohm.

Jetzt nun meine Frage: Habe ich den richtigen Rechenvorgang gewählt?

Wenn ich nicht mit der Gleichung IC=10*IB rechne, sondern den DC current 
gain selbst wähle mit z.b. 50, kommt ja ein Widerstand im 3kOhm Bereich 
heraus.

Wie würdet ihr den Basiswiderstand wählen, um das optimale Schalten zu 
Erreichen?

Freue mich auf eine Antwort!

: Verschoben durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Vanessa schrieb:
> Wie würdet ihr den Basiswiderstand wählen, um das optimale Schalten zu
> Erreichen?
Halb so wild. Du musst da nicht unbedingt das "Optimum" erreichen, 
sondern einfach nur eine zuverlässige Funktion. Nimm also irgendwas 
zwischen 470R und 4k7.
Ich würde zum Stromsparen (und der geringeren Belastung des 
Ausgangspins) eher einen hochohmigen Widerstand nehmen...

: Bearbeitet durch Moderator
von Clemens L. (c_l)



Lesenswert?

Vanessa schrieb:
> Um den Basiswiderstand zu berechnen, habe ich in den Datenblättern die
> Gleichung IC=10*IB gefunden--> Daher müsste der DC current gain in der
> Sättigung 10 sein, wenn ich das richtig verstanden habe?

Auf der ersten Seite wird bei der Spezifikation von VCE(sat) ein Faktor 
von 20 benutzt.

10 oder 20? Beides ist üblich.

> Wenn ich ... den DC current gain selbst wähle mit z.b. 50, kommt ja ein
> Widerstand im 3kOhm Bereich heraus.

Aber 50 ist schon ziemlich nah an dem nicht-gesättigten Gain von 110, da 
könnte es sein, dass der Transistor nicht sehr gesättigt ist.

Im Datenblatt von ONSemi sieht man, dass der Basisstrom groß genug sein 
muss, um zu verhindern, dass der Transistor aus der Sättigung 
herausrutscht, insbesondere bei einem größeren Kollektorstrom.

: Bearbeitet durch User
von Zeiger (Gast)


Lesenswert?

Baue Dir besser einen Basisspannungsteiler mit z.B. zwei 
4,7kOhm-Widerständen auf. Damit kann Dein Transistor auch bei 
irgendwelchen parasitären Strömen nicht einschalten.

von Zeiger (Gast)


Lesenswert?

Clemens L. schrieb:
> an dem nicht-gesättigten Gain von 110,

Beim BC547B sollte der minimale Gain laut Datenblatt bei 200 liegen.

von Vanessa (Gast)


Lesenswert?

Lothar M. schrieb:
> Vanessa schrieb:
>> Wie würdet ihr den Basiswiderstand wählen, um das optimale Schalten zu
>> Erreichen?
> Halb so wild. Du musst da nicht unbedingt das "Optimum" erreichen,
> sondern einfach nur eine zuverlässige Funktion. Nimm also irgendwas
> zwischen 470R und 4k7.
> Ich würde zum Stromsparen (und der geringeren Belastung des
> Ausgangspins) eher einen hochohmigen Widerstand nehmen.

ich habe es bereits mit einem 680 Ohm Widerstand ausprobiert, dabei 
blieb der Motor still. Mit 3,3kOhm hat es ganz gut funktioniert.

Was würde passieren, wenn ich z.B. auf Dauer einen 10kOhm Widerstand 
benutzen würde?

von Zeiger (Gast)


Lesenswert?

Vanessa schrieb:
> Was würde passieren, wenn ich z.B. auf Dauer einen 10kOhm Widerstand
> benutzen würde?

Es wird funktionieren. Aufgrund von Alterung und Temperaturänderungen 
könnte sich die Geschwindigkeit Deines Motors etwas ändern.

Vanessa schrieb:
> ich habe es bereits mit einem 680 Ohm Widerstand ausprobiert, dabei
> blieb der Motor still.

Das ist unlogisch, also entweder hast Du irgendwas falsch gemacht oder 
irgendeine Strombegrenzung schlug zu.

von Roland F. (rhf)


Lesenswert?

Hallo,
Vanessa schrieb:
> ich habe es bereits mit einem 680 Ohm Widerstand ausprobiert, dabei
> blieb der Motor still. Mit 3,3kOhm hat es ganz gut funktioniert.

Zeig mal deine Schaltung.

rhf

von Vanessa (Gast)


Angehängte Dateien:

Lesenswert?

Roland F. schrieb:
> Hallo,
> Vanessa schrieb:
>> ich habe es bereits mit einem 680 Ohm Widerstand ausprobiert, dabei
>> blieb der Motor still. Mit 3,3kOhm hat es ganz gut funktioniert.
>
> Zeig mal deine Schaltung.
>
> rhf

von hinz (Gast)


Lesenswert?

Da fehlt die Freilaufdiode.

Und BC547B ist nicht besonders geeignet dafür. BC337-40 schon ehr, 
2N7000 noch mehr.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Vanessa schrieb:
> ich habe es bereits mit einem 680 Ohm Widerstand ausprobiert, dabei
> blieb der Motor still
Bist du sicher, dass der nur 680 Ohm hat?

Vanessa schrieb:
> 2019-03-19_12.27.44.png
>    3,6 MB, 19 Downloads
Für Fotos, auch wenn es Fotos von "Zeichnungen" sind, bitte JPEG 
verwenden.
PNG taugt nur für computergenerierte Zeichnungen und Screenshots.
Ich habe die Datei mal ein wenig verkleinert...

: Bearbeitet durch Moderator
von Vincent R. (vinc) Benutzerseite


Angehängte Dateien:

Lesenswert?

Wie wäre es mit einem Lastwiderstand am Kollektor, um die Last des 
Motors zu simulieren? Dies würde am Kollektor auch ein etwas 
definierteres Potential erzeugen, im Gegensatz zu dem sehr hochohmigen 
Voltmeter.

Man kann dann Vc gegen Masse messen für verschiedene Vb (0V = aus, 5V = 
ein).

Vincent

: Bearbeitet durch Moderator
von Marek N. (Gast)


Lesenswert?

Vincent R. schrieb:
> Voltmeter

VM = Vibrationsmotor

von Michel M. (elec-deniel)


Lesenswert?


von Michael B. (laberkopp)


Lesenswert?

Vanessa schrieb:
> ich habe es bereits mit einem 680 Ohm Widerstand ausprobiert, dabei
> blieb der Motor still. Mit 3,3kOhm hat es ganz gut funktioniert.

Sicher nicht. Vielleicht waren es 6l8 und 330R.

> Was würde passieren, wenn ich z.B. auf Dauer einen 10kOhm Widerstand
> benutzen würde?

Der Motor wird nicht laufen.

Dein erstes Problem besteht darin, daß du glaubst, daß ein 63mA Motor 
63mA zieht.

63mA ist der Dauerstrom der unter Belastung fliessen darf ohne daß der 
Motor überhitzt.

Im Leerlauf zieht ein Motor weniger.

Unter Belastung mehr, man kann Motore nämlich überlasten, die werden 
dann auf Dauer heiss und etwas brennt durch.

Ein Vibra-Motor läuft fast im Leerlauf.

Aber beim Ablaufen zieht der Motor genau so viel Strom wie beim 
Blockieren, und die ELektronik muss den Anlaufstrom schalten können, 
also kurzfristig aushalten.

Ein 100mA Transistor ist für einen 63mA (Nennstrom) Motor zu klein, also 
unterdimensioniert, er hätte das Recht bereits beim ersten Anlaufen 
kaputt zu gehen.

Der BC337 klingt besser. Wie viel Strom der Transistor aushalten sollte 
kann man prüfen in dem man die Stromaufnahme des Vibra-Motors misst wenn 
er kurzzeitig blockiert wird.

Es sind mehr als 63mA.

Daher muss auch der Basisstrom höher sein als 63mA/20 = 21mA. So viel 
bringt aber ein Arduino Uno nicht. Also nimmt men entweder einen zweiten 
Transistor oder einen Darlington oder einen NMOSFETs mit im Datenblatt 
augeführtem RDSon und Drain-Strom bei 2.7V Gate-Spannung wie IRF7401.

Und die Freilaufdiode nicht vergessen.

von hinz (Gast)


Lesenswert?

Michael B. schrieb:
> oder einen NMOSFETs mit im Datenblatt
> augeführtem RDSon und Drain-Strom bei 2.7V Gate-Spannung

Bei 4,5V reicht hier völlig.

von ergo70 (Gast)


Lesenswert?

63 mA / 20 = 3.15 mA, oder?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Michael B. schrieb:
> Daher muss auch der Basisstrom höher sein als 63mA/20 = 21mA.
Mir würde das überschlägig arg zu denken geben, wenn ich einen 
63mA-Motor über einen Transistor mit 21mA ansteuern muss...   ;-)

Vanessa schrieb:
> einen 3V Vibrationsmotor mit Ic=63mA
Leg den Motor doch einfach mal direkt an die 3,3V, halte ihn fest und 
miss wie vorgeschlagen den Blockierstrom (zieh das zügig durch). Dann 
wissen wir, welchen Strom der Motor beim Anlaufen ziehen wird und worauf 
die Schaltung ausgelegt werden muss.

: Bearbeitet durch Moderator
von Michael B. (laberkopp)


Lesenswert?

ergo70 schrieb:
> 63 mA / 20 = 3.15 mA, oder?

Ich meine, er bringt vermtulich nicht genug um den höheren Anlaufstrom 
zu schalten.

Wie hoch der Anlaufstrom und damit Basisstrom dann real ist, muss 
Vanesse noch messen.

Wir kennen je nur den Nennstrom.

von Karl B. (gustav)


Angehängte Dateien:

Lesenswert?

Hi,
sehe ich das richtig,
die Steuerspannung ist maximal 5V und Spannung am Kollektor nur 3,3 V ?
Da müssten dann als reine Vorsichtsmaßnahme noch die Dioden an die Basis 
einmal an Vcc und einmal an GND, um zu verhindern, dass Basisspannung 
höher als Vcc und niedriger als GND werden kann.
Soll nur ein und ausgeschaltet werden, oder auch noch die Drehzahl 
eingestellt?

Beim bloßen Schalten passiert dem Transistor nichts, wenn er dann in die 
Sättigung gefahren wird. Aber sonst käme er in "verbotenen" Bereich.

Also ich würde einem MJE3055 ohne Kühlkörper nehmen. Mindestens jedoch 
BC140-16.

ciao
gustav

: Bearbeitet durch User
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.