Forum: Analoge Elektronik und Schaltungstechnik Ein pnp transistor Pegelwandler


von StefanSchmelz (Gast)


Lesenswert?

Hi zusammen,
ich hab bereits im Forum gesucht, aber nix gefunden das mich 
zufriedenstellt...
Bevor ich mit meinem Eigentlichen Problem loslege, will ich euch erstmal 
erzählen, wie ich zu meiner Frage und meinem Problem Komme:

Ich helfe einem Freund von mir seine Treppe mit Ledstreifen zu 
beleuchten. Er hat auf YouTube ein Video gesehen, wo jede Stufe einzeln 
aufleuchtet und wieder aus geht. Wollte er nachbauen, hat aber leider 
keine Ahnung von Elektronik...
Ich scheine ein bisschen zu lieb zu sein, denn ich hab mich 
breitschlagen lasse nicht nur den Code zu schreiben, sondern auch die 
Lücken bei der Treiberbelektronik zu füllen...
Am Anfang wollte er einen Arduino Mega und 2 8xRelais-Module benutzen, 
aber dann hab ich ihm Geraten lieber N-Kanal Mosfets zu benutzen, weil 
vollkommen ausreichend und weniger anfällig weil die Treppe oft benutzt 
wird...
Jetzt benutzen wie auch 2 74hc595 Schieberegister, weil ich die grad 
rumliegen hatte und man dann keinen unmöglich großen Arduino braucht.

Dann hat der übliche Feature creep zugeschlagen und er wollte gerne über 
wlan Helligkeit einstellen und die Einschaltezeit und 
laufgeschwindigkeit anpassen können, also hat sich der Arduino nano in 
einen Wemos d1 mini verwandelt....

Jetzt brauch ich aber Pegelwandler, denn meine Exemplare vom 74hc595 
wollen nicht zuverlässig mit den 3.3V Ausgängen...

Jetzt bin ich mit meiner Geduld weit genug am ende, dass ich mir sag, 
dass ich entweder das Projekt an die wand werfe, oder es direkt richtig 
mache und Pegelwandler einbaue.
Kurzer Blick in meine Transistor Schublade:
Power Mosfets - check
Power Npns - check
Power pnps - check
kleine mosfets - leer
kleine npns - leer

Aber ich hab eine Tüte mit bc557 gefunden und suche jetzt nach einer 
Pegelwandlerschaltung die nur pnp transistoren und widerstände braucht. 
Da ich einige signale sowieso invertiren muss, am besten zusätzlich noch 
einen der invertiertiert.
Ich finde Leistungstransistoren für so kleine logik signale ein bisschen 
übertrieben, außerdem ist platz auf der Platine auch kanpp...

Und das Beste an allem ist: selbst, wenn ich jetzt noch npn Transistoren 
bestelle, dann sind die nicht da, bis wir das in Betrieb haben müssen, 
denn seine Trau kommt Samstag heim und das soll eine Überraschung 
werden.

Zur not benutze ich einfach noch ein paar irfz44n die wir zum schalten 
der Leds benutzen.
Das Projekt mit Code und Schaltplan kommt auf github falls und wenn es 
eingebaut ist. Ich kann das aber gerne schon jetzt machen, damit ihr 
schauen könnt.
Vielen Dank im Voraus und noch einen schönen Abend an alle :-D

: Verschoben durch Moderator
von HildeK (Gast)


Lesenswert?

Vorausgesetzt ich verstehe dein Problem richtig:
Ja, das geht. E an +5V, C an einen R und den dann an GND.
Die Basis miss man jetzt mit einem Teiler an +5V und den μC-Ausgang 
legen und den so auslegen, dass bei 3.3V die Basis eben nicht mehr als 
0.3-0.5V sieht, bei 0V am μC jedoch der Transistor zu leiten beginnt.

von Stefan S. (stefanschemlz)


Angehängte Dateien:

Lesenswert?

Ist das ungefähr so gemeint?
(Widerstandwerte passen nicht)
Und wie mach ich das bei denen die invertieren sollen?
Hab jetzt mal so überschlägig gerechnet, eigentlich sollte der 
Basiswiderstand mit 1kOhm vollkommen ausreichend sein, oder war ich 
schon wieder zu müde?
Und für den anderen Widerstand hab ich mir 10kOhm ausgesucht weil ich 
davon viele hab.

: Bearbeitet durch User
von HildeK (Gast)


Lesenswert?

Stefan S. schrieb:
> Ist das ungefähr so gemeint?
> (Widerstandwerte passen nicht)
Nicht ganz. Es fehlt ein Widerstand zwischen B und E.
Der muss zusammen mit dem Basiswiderstand einen Teiler bilden, so dass 
er bei HIGH am Ausgang des μC den Transistor auch abschaltet. In deiner 
Schaltung ist der PNP dauernd leitend, weil zwischen E und vor dem R_B 
5V-3.3V=1.7V liegen. Dieser Wert muss auf <0.5V kommen.

> Und wie mach ich das bei denen die invertieren sollen?
Die Schaltung invertiert schon. Das passt man doch mit der SW an.

Es gibt auch noch weitere Varianten:
siehe https://www.mikrocontroller.net/articles/Pegelwandler
oder
NPN, B über R an 3.3V, E an μC-Ausgang, C über Widerstand an +5V.

von Stefan S. (stefanschemlz)


Lesenswert?

Ich glaub das wird mir alles langsam ein bisschen zu kompliziert....
Dann sind die ifz44 halt overkill, aber wenigstens kann ich da nix 
falsch machen...

Wahrscheinlich liegen die pnp Transistoren nur weil nich die nicht mag. 
Ich hab schon länger nichts mehr mit Bipolar Transistoren gemacht und 
müsste mich da erstmal wieder einlesen...
Könnte auch einen hex schmitt-trigger benutzen für den invertierenden, 
aber ich muss nur einen einzigen invertieren...

Die anderen drei könnte ich mit puffern machen, fand ich aber auch 
übertrieben

von Stefan S. (stefanschemlz)


Lesenswert?

HildeK schrieb:
> Nicht ganz. Es fehlt ein Widerstand zwischen B und E.
> Der muss zusammen mit dem Basiswiderstand einen Teiler bilden, so dass
> er bei HIGH am Ausgang des μC den Transistor auch abschaltet. In deiner
> Schaltung ist der PNP dauernd leitend, weil zwischen E und vor dem R_B
> 5V-3.3V=1.7V liegen. Dieser Wert muss auf <0.5V kommen.
>
>> Und wie mach ich das bei denen die invertieren sollen?
> Die Schaltung invertiert schon. Das passt man doch mit der SW an.

Ich hab meine Schaltung grad ausprobiert und die funktioniert ganz gut, 
dafür, dass sie nach deiner Aussage nicht funktionieren kann. zumndest 
der invertierende ist jetzt geklärt, fehlen nur noch die die das nicht 
tun sollen

von Stromberg B. (Gast)


Lesenswert?

Nimm für R1 und R2 je einen 10k Widerstand. Für den Widerstand zwischen 
B und E (Vorschlag von HildeK) kannst du zwei 10k Widerstände parallel 
schalten, wenn du so viele davon hast.

Für die nichtinvertieremde Stufe kannst du noch eine gleiche zweite 
Stufe hinter der ersten Stufe schalten.

von Stefan S. (stefanschemlz)


Lesenswert?

Danke, dann mach ich das so :-D
Auf bald mit dem github link ;-)

von Christian M. (Gast)


Lesenswert?

StefanSchmelz schrieb:
> denn seine Trau kommt Samstag heim

Uiuiui, sorry, aber das reicht NIE bis dann! Ich würde sie einfach mal 
leuchten lassen und froh sein, dass das wenigstens geht...

Gruss Chregu

von Peter D. (peda)


Lesenswert?

StefanSchmelz schrieb:
> Jetzt brauch ich aber Pegelwandler, denn meine Exemplare vom 74hc595
> wollen nicht zuverlässig mit den 3.3V Ausgängen...

Da glaube ich eher dem Datenblatt, d.h. der HC595 läuft an 2..6V. Der 
Fehler liegt also woanders.
Wogegen die HC595 empfindlich sind, sind Reflexionen auf langen 
Leitungen. Robuster sind die langsamen Hochvolt-CMOS (3..18V), z.B. 
CD4094.

Sag doch erstmal, was überhaupt die LEDs brauchen (V, A).
Es gibt fertige LED-Treiber ICs, die haben für jeden Ausgang ein eigenes 
PWM-Register. Damit kann man also ohne zusätzliche Schaltungsaufwand die 
LEDs einzeln dimmen.

von HildeK (Gast)


Angehängte Dateien:

Lesenswert?

Stefan S. schrieb:
> Ich hab meine Schaltung grad ausprobiert und die funktioniert ganz gut,
> dafür, dass sie nach deiner Aussage nicht funktionieren kann.

Wenn dein Logiksignal 3.3V beträgt, dann liegt die Basis über 1k an 3.3V 
und der Emitter an 5V. Damit leitet der Transistor.
Wenn dein Logiksignal 0V hat (LOW), dann liegen 0V über 1k an der Basis 
und der Transistor leitet auch.
Wenn das bei dir nicht so ist, dann hast du was anderes aufgebaut als 
gezeichnet.

Es müsste in etwa so beschaltet werden wie im Anhang.

von HildeK (Gast)


Lesenswert?

Nachtrag: R1 darf auch noch kleiner sein, bis runter zu 2k2.
Besser also 2k7 oder 3k3 wählen.

von MaWin (Gast)


Lesenswert?

StefanSchmelz schrieb:
> Jetzt brauch ich aber Pegelwandler, denn meine Exemplare vom 74hc595
> wollen nicht zuverlässig mit den 3.3V Ausgängen

Mit einem PNP kann man aus keinem 0V/3.3V Ausgang ein 0V/5V 
Ansteuersignal machen.

Aber ein 74HCT595 (HCT statt HC) liesse sich direkt steuern.

Und nicht jeder MOSFET kann mit 5V aus einem 74HC(T)595 richtig 
durchgesteuert werden, die geeigneten Typen heissen LogicLevel.

Ein TPIC5B595 könnte die LEDs direkt steuern.

Und eine Treppe die das Tempo vorgibt in der ich sie besteigen soll ist 
dämlich schwachsinnig.

von Peter D. (peda)


Lesenswert?

Als Pegelwandler 3,3V->5V geht auch ein beliebiges HCT-IC, z.B. 74HCT04.

Eine Notlösung wäre auch, den 3,3V Ausgang als Open-Drain zu 
konfigurieren mit nem externen Pullup nach 5V. Dann kommt High auf etwa 
3,9V.

: Bearbeitet durch User
von MaWin (Gast)


Lesenswert?

Peter D. schrieb:
> Eine Notlösung wäre auch, den 3,3V Ausgang als Open-Drain zu
> konfigurieren

Wenn das IC an den Pins 5V tolerant ist und keine Schutzdiode nach VCC 
hat.

Also in 99% der Fälle geht das nicht.

von HildeK (Gast)


Lesenswert?

MaWin schrieb:
> Mit einem PNP kann man aus keinem 0V/3.3V Ausgang ein 0V/5V
> Ansteuersignal machen.

Aber einen Ausgang mit 5V/0V (invertierend eben) - siehe 
Beitrag "Re: Ein pnp transistor Pegelwandler"
Wenn der Eingang von einem µC kommt (Arduino), dann ist das in SW 
anpassbar und damit ebenbürtig.

von Peter D. (peda)


Lesenswert?

MaWin schrieb:
> Wenn das IC an den Pins 5V tolerant ist und keine Schutzdiode nach VCC
> hat.

Für die Schutzdiode habe ich +0,6V angesetzt, daher die 3,9V.
Eine Profilösung ist das natürlich nicht.

von karadur (Gast)


Angehängte Dateien:

Lesenswert?

Ohne Invertierung

von Stefan S. (stefanschemlz)


Lesenswert?

Die 74HC595 laufen an 5V, der esp8266 gibt maximal 3.3 Volt aus. Ich hab 
die Schaltung hier auf einem Steckboard vor mir und mit einem Arduino 
funktionierte sie.

Die Leds brauchen 12V 15A (Alle zusammen) und es sind 16 Stufen mit 
ungefähr 110-160cm breite.

Und zu den Vorschlägen zu ersatz chips:
Ich kenne die Chips selbst alle, aber die hab ich leider grade nicht da 
und bestellen wird nichts mehr bis morgen...

Die idee Mit open Drain ist sehr gut, aber die esp Pins mögen es laut 
datenblatt nicht mit mehr als 3.6 Volt belegt zu werden.

Ich hab leider nur npn Transistoren die richtig Leistung ab können, die 
sind mir zu teuer und zu groß dafür. Ebenso die NFets die ich noch 
habe....
Wenn ich bis nach Weihnachten zeit hätte, wäre das kein Problem, dann 
würde ich ein paar pca9685 bestelen.

Und die Pegel vom Schieberegister funktionieren zumindest mit den 
Streifenlängen ganz gut, auch wenn die nicht direkt logic level 
transistoren sind.

Ich würde gern invertierende und nichtinvertierende Pegelwandler 
benutzen, weil ich dann gegebenenfalls pwm mit output enable machen 
kann, ohne das duty cycle umrechnen zu müssen. (OE ist active low)

Im zweifel nehm ich jetzt 2 Inverter hintereinander...
ANsonsten hat die Diskussion wahrscheinlich nicht mehr viel sinn

von Michael B. (laberkopp)


Lesenswert?

karadur schrieb:
> Ohne Invertierung

Kindchen, das funktioniert so nicht, mach dir mal das Verhalten eines 
Ausgangs mit Schutzdioden klar.

: Bearbeitet durch User
von karadur (Gast)


Lesenswert?

H=3V3+ca. 0V65 + 0V2
L=ca. 0V1+0V2

sollte bei HC passen

von Peter D. (peda)


Lesenswert?

Stefan S. schrieb:
> ohne das duty cycle umrechnen zu müssen. (OE ist active low)

PWMs lassen sich in der Regel auch invertierend konfigurieren.
X = -X; ist aber auch kein riesiger Rechenaufwand.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Wenn du die HC595 auch aus den 3,3V speist, kannst du am Ausgang die von 
HildeK beschriebene Schaltung mit dem PNP benutzen. Du musst aber immer 
noch beachten, das ein IRFZ44 kein Logiklevel MOSFet ist, also deutlich 
mehr als 3,3V oder 5V am Gate benötigt, um voll durchzuschalten.
Am einfachsten wird die Schaltung mit IRLZ44 direkt an dem 5V Ausgang 
von HildeK.

: Bearbeitet durch User
von StefanSchmelz (Gast)


Lesenswert?

Das mit den IRFZ44N weiß ich, aber danke für den Hinweis (-:

Ich wollte aus Platzgründen lieber die wandler am Eingang vom 
Schieberegister haben, damit ich nicht 16 Pegelwandler bauen muss. Platz 
ist luxus da woder controller sitzen kann.

Ich würde IRFZ44 benutzen, wenn ich welche da hätte...

Wie oben schon erwähnt kann ich bis morgen nicht mehr bestellen. Wenn 
das Ganze Projekt nicht ein spontaner Schnellschuss und ein drei Tage 
projekt wäre, würde das alles ganz anders aussehen.

Wenn ich noch welche gehabt hätte, hätte ich auch mosfet Treiber und 
einen pca9685 gekauft. Außerdem hätte ich die software Seite anders 
gemacht...

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.