Forum: Mikrocontroller und Digitale Elektronik 3V3 <-> 5V PWM


von bob b. (blobbob)


Angehängte Dateien:

Lesenswert?

hallo Forum,

ich habe vor einen Prozessorlüfter über einen µC zu steuern.

Der Lüfter Läuft mit 12V, und wie ich das aus der PWM Spezifikation 
rausgelesen hab, muss das PWM-Signal mit 5V Amplitude beim Lüfter 
eintreffen und das Tachosignal geht mit 5V raus.

Mein µC läuft mit 3,3V und verträgt keine 5V.
Könnt ihr bitte eure Meinungen zu beiden Schaltungen im Anhang geben?

Die linke Schaltung soll das PWM-Signal von 3,3V auf 5V Wandeln.
Dazu möchte ich einen selbstsperrenden MOSFET nutzen(sorry, falsches 
Symbol gezeichnet). Liegen 0V am Gate an(MOSFET sperrt), so fliest kein 
Strom durch den Widerstand --> keine Spannung über ihm abgreifbar. 
Liegen 3,3V am Gate an(MOSFET leitet), so fliest ein Strom und es sind 
rund 5V über dem Widerstand. MOSFET-Widerstand mal vernachlässigt.
Klappt das soweit?

Die rechte Schaltung soll das 5V-Tachosignal auf 3,3V teilen. Einfach 
über einen Spannungsteiler gemacht. Funktioniert das so für ein 
Prozessortachosignal?

der Bob

von René B. (reneb)


Lesenswert?

Rechts der Spannungsteiler geht, allerdings würde ich 4,7k aus der 
E-Reihe, statt 5,1k nehmen und dann die 10k zu 15k machen.

Links ist natürlich die invertierte PWM zu erzeugen. Ich würde als 
Verbindung zwischen n-Fet und µC einen 1k Widerstand nehmen (wieso 
stehen da 20?) und an der Verbindungsstelle zwischen diesem Widerstand 
und dem Gate noch einen 47k-Ohm Widerstand gegen Masse. Dieser soll das 
Gate bei undefiniertem Zustand des µC nicht durchschalten (also 5V am 
Lüftereingang).
Die Kühlung läuft dann so lange bis der µC kommt zwar ungeregelt, aber 
sie läuft.

Du musst keinen n-Fet nehmen, jeder npn-Bipolar tut es auch, dann kannst 
du dir wiederum den 47k Widerstand schenken.

von helmut 565 (Gast)


Lesenswert?

Oder Du nimmst HCT Gatter

von Karsten F. (Firma: von Dänemark) (bingo600)


Lesenswert?

Meiner lufter PWM ausgang sind Open-Collector.
Und ich brauche einne pullup widerstand zum 5v.

Vielleicht kann du deiner an 3v3 anschlussen.


Oopzz - sind deiner lufter ein 4-wire , mit separater pwm eingang ?
Dann vergiss was ich schreibt habe.

Bingo - Dänemark

von bob b. (blobbob)


Lesenswert?

Hallo, danke euch schonmal für dei Antworten.

@Rene
Warum würdest du das Widerstandsverhältnis beim Teiler so wählen? Da 
kommt man doch auf 3,8V statt 3,3V. Warum muss ich da eine invertierende 
PWM erzeugen? Sonst läuft der Lüfter wohl garnicht, bis der µC 
eingreift?(Edit: habs eben ausprobiert, wenn am PWM-Steuersignal massa 
anliegt, geht der lüfter aus :) ) Bei dem Pull-Down-Widerstand stimm ich 
dir natürlich voll und ganz zu. Und zu dem 20Ohm-Widerstand. Der ist um 
den Strom beim Laden der Gate-Kapazität zu begrenzen, ist hier 
nachempfunden Beitrag "Mosfet Gatewiderstand" .

@Helmut
An ein 74HCT Gatter habe ich auch schon gedacht, allerdings hab ich die 
bisher nur mit rund 20 Pins gefunden, was ein wenig übertrieben ist, 
wenn ich den Pegelwandel von 3,3V auf 5V nur auf einer Leitung brauch.

@karsten
Ja der PWM-Lüfter hat 4-Wire :)

von bob b. (blobbob)


Lesenswert?

Kann Post nichtmehr bearbeiten.

Hab das mit der PWM-Steuerleitung nochmal ausprobiert.
Der Lüfter ging bei auf masse gezogener Steuerleitung nur aus, weil ich 
ihn nicht mit 12V, sondern mit 5V hatte laufen lassen.

lass ich ihn mit 12V laufen und leg die Steuerleitung auf GND, so dreht 
der Lüfter langsam, wahrscheinlich ne Art Mindestfrequenz. Also muss es 
kein invertierendes PWM sein, wenn mich das nicht sotört, dass er nur 
mit Mindestfrequenz beim Start läuft, oder?

von hinz (Gast)


Lesenswert?


von René B. (reneb)


Lesenswert?

>Warum würdest du das Widerstandsverhältnis beim Teiler so wählen?
Weil ich in die falsche Richtung gerechnet habe :-)
Trotzdem sind 5,1 keine gängigen Widerstandswerte in den Sortimenten. 
Nimm lieber 15k unten und 10k oben, dann sind bei 5V über dem 
15k-Widerstand 3V.

>Warum muss ich da eine invertierende PWM erzeugen?
Du hast ja gesehen, dass der Lüfter bei GND fast nicht läuft, das heißt 
auf der Ausgangsseite deines µC ist ein HI-Pegel. Wenn du also 30% 
Leistung abrufen möchtest, braucht es am Lüfter 30%Hi und 70%Lo. Um das 
zu erreichen erzeugt dein µC aber 30%Lo und 70%Hi -> also invertiert.

Wenn du also im undefinierten µC-Zustand den Lüfter lieber voll laufen 
lassen möchtest, brauchst du den (47k) PullDown am n-Fet. Evtl laden dir 
Leckströme das Gate auf und dann liegt ja GND am PWM-Eingang des 
Lüfters. Bei npn-Bipolartransistor entfällt das.

>Und zu dem 20Ohm-Widerstand. Der ist um den Strom beim Laden der Gate-
>Kapazität zu begrenzen.
Da sind 20Ohm ganz schön klein! Im Ersatzschaltbild des Gates als 
Kondensator würden dann ja beim Pegelwechsel 165mA fließen. Das ist auch 
kurzzeitig bei vielen Schaltvorgängen ganz schön viel und für den 
µC-Ausgang heftig. 1k reicht auf jeden Fall. Es ist ja ein PWM-Eingang 
und keine Last hinter einem Leistungs-Fet mit mehreren nF Gatekapazität 
(um die ging es wohl in dem Thread). Ist ja nur ein winziger 
Kleinsignal-Fet.

Du kannst aber auch einfach mal ausprobieren oder der PWM-Eingang 
bereits 3,3V als Hi-Pegel akzeptiert: Nimm einfach mal Poti als 
Spannungsteiler und messe nach ab wann der Lüfter den Eingang als 
HI-Pegel akzeptiert. Meist sind die ja auch 3,3V kompatibel.

von hinz (Gast)


Lesenswert?

René B. schrieb:
> Du kannst aber auch einfach mal ausprobieren oder der PWM-Eingang
> bereits 3,3V als Hi-Pegel akzeptiert: Nimm einfach mal Poti als
> Spannungsteiler und messe nach ab wann der Lüfter den Eingang als
> HI-Pegel akzeptiert.

Man könnte ja einfach mal in den Specs nachlesen.

von René B. (reneb)


Lesenswert?

hinz schrieb:
> Man könnte ja einfach mal in den Specs nachlesen.
Dort heißt es zwar, dass der Eingang INTERN schon einen PullUp haben 
soll UND dass er möglichst 3,3V abhaben können soll. Aber was bringt es 
wenn man für die tollste Spec designt, wenn sich keiner daran hält. Also 
lieber schnell ausprobieren.

von bob b. (blobbob)


Lesenswert?

Hallo Rene,

der Lüfter hat einen internen Pull-Up, die Spannung liegt bei 4V.

Hallo hinz,
wenn du nichts hilfreiches zu sagen hast, lass es bitte. Zwei Posts und 
nichts dabei rumgekommen. Wenn du meinen ersten Post gelesen hast, 
sollte dir bekannt sein, dass mir das Datenblatt bekannt ist. Und dein 
zweiter post war noch weniger hiflreich als dein erster.

von hinz (Gast)


Lesenswert?

bob blob schrieb:
> Wenn du meinen ersten Post gelesen hast,
> sollte dir bekannt sein, dass mir das Datenblatt bekannt ist.

Daher war mir klar, dass du es nicht richtig gelesen hast.

von René B. (reneb)


Angehängte Dateien:

Lesenswert?

Hier mal drei konkrete Schaltungsvorschläge zur 
Geschwindigkeitssteuerung und einen zum einlesen der Rückmeldung.
Da intern ein PullUp vorhanden, brauchst du ja nur noch gegen Masse 
ziehen.

Der 2N7000 (5Cent bei Reichelt) ist ein kleiner n-Fet, der ab 2,1V 
durchschaltet, daher bestens geeignet für deine 3,3V Anwendung. Die 
Gatekapazität liegt bei max 60pF(!), mit einem 1k Widerstand sind wir 
dann immer noch bei einer 3dB-Ecke von über 2,5MHz -> bitte keine 20Ohm 
nehmen :-)

Die weniger aufwendige Möglichkeit ist der npn-Transistor, hier mal ein 
BC547 (4Cent bei Reichelt). Der Basisstrom wird mit 10k auf 0,25mA 
begrenzt, bei einer Stromverstärkung von mehr als 100 ist das also genug 
um den internen PullUp gegen Masse zu ziehen.

Die beiden erstegannten Möglichkeiten benötigen das invertierte Signal 
vom MCU. Wenns aber mal kompliziert, galvansich getennt sein soll und 
das nicht-invertierte Signal an der MCU rauskommen soll, gehts auch mit 
nem Optokoppler. Aber das hab ich nur mal spaßeshalber mit dazu 
genommen, denn spätestens mit der Tachorückmeldung ist nix mehr 
galvanisch getrennt :-)

Die Tachorückmeldung ist beschrieben als zwei Impulse pro Umdrehung an 
einem Open-Collector oder Open-Drain Ausgang, bei dem man selbst den 
PullUp setzt !
Da du das ja alles an dein eigenes Board anschließt würde ich einen 10k 
PullUp an 3,3V legen. Dahinter kannst du an der MCU ja direkt einlesen. 
Sicherheitshalber hab ich hier noch einen 47k-Widerstand am Eingang der 
MCU eingezeichnet.

Wenn du dich aber unbedingt an die Vorgabe halten möchtest, dass der 
PullUp am Tachoausgang gegen 12V gehen soll, dann ist dafür die 
Zeichnung ganz unten rechts, die dir dann den Eingang zum MCU auf etwa 
3V runterteilt und wieder mit 47k Widerstand zum Schutz versehen ist.
Es geht übrigens auch auf diese Weise, dass du die Tachorückmeldung am 
Mainboard anschließt UND selbst an deiner MCU einlesen kannst. Wenn das 
Sinn macht...

Das sollte doch reichen um eine Tachosteuerung für einen 4W-Lüfter zu 
bauen.

Viel Spaß!

von bob b. (blobbob)


Lesenswert?

Wow. Herzlichen Dank Renè!
Damit sollten keine Fragen merh auftauchen :)

Bob

von René B. (reneb)


Lesenswert?

Kein Problem, bei weiteren Fragen einfach in diesen Thread posten. Ich 
hab ihn in meiner Liste und du landest dann ja bei der normalen 
Threadliste auch wieder oben.
Rückmeldung ob und wie es läuft sind natürlich auch willkommen.

von bob b. (blobbob)


Lesenswert?

Rückmeldungen kommen, dauert aber noch. Mein Chinamultimeter ist 
ausgestiegen, da macht das weiterlöten keinen Sinn :P

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.