Forum: Analoge Elektronik und Schaltungstechnik DC Motor + Mosfet + ESP32


von Christian H. (christian_h917)


Lesenswert?

Hallo zusammen!
Ich verwende einen eSP 32 mit dem ich über einen Mosfet, zwei Mini 105 
DC aktivieren. An den Motoren befindet sich zudem eine FR207 
Freilaufdiode. Im Prinzip funktioniert die Schaltung, wie gewünscht, 
jedoch bin ich auf einen relativ großen Akku mit Step down angewiesen. 
da die beiden Motoren zusammen kurzfristig beim Einschalten fast 8 A 
ziehen. Dadurch fällt die Spannung kurzfristig von 6 V auf 3 V Up, bis 
sich das Ganze wieder auf 6 V reguliert. Ich habe Kondensatoren 
verschiedene Größe getestet ohne Erfolg. Aktuell habe ich einen 
ausreichend großen Akku und Stepp down Element, mit dem es gerade so 
funktioniert, dennoch bin ich über die Lösung etwas unglücklich und 
frage mich ob es keine Möglichkeit gibt diese hohe Spitzenstromstärke 
abzufangen, dass die Motoren vllt langsamer starten und so kein 
spannungsdrop entsteht. Ich habe eine 7,4 lipo und ein step down der 5A 
leisten könnte.

: Verschoben durch Moderator
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Starte die Motoren doch mit einer Rampe. Das ist mit PWM keine grosse 
Sache. Wenn du die Motoren zu verschiedenen Zeiten pulst, verteilt sich 
auch der Anlaufstrom.

von Christian H. (christian_h917)


Lesenswert?

Dann benötige ich aber wohl noch eine Motor steuermodul oder? Momentan 
schalte ich ja nur GND mit dem mosfet

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


Lesenswert?

Christian H. schrieb:
> Dann benötige ich aber wohl noch eine Motor steuermodul oder?

Nö, PWM kann der ESP32 selber. Da ist ein dicker Mikrocontroller drauf, 
der vermutlich sonst nur Däumchen dreht und sich über das bischen Pulsen 
am Motorausgang freut.

von Christian H. (christian_h917)


Lesenswert?

hmm ja mag sein, aber in der art und weise  weiss ich nicht, wie ich es 
umsetzen sollte, da die Motoren dauerhaft an V+ angeschlossen sind und 
der Mosfet GND durchschaltet. also wenn ich da mit dem ESP arbeiten 
wollte, dass er den Anlauf ändert, müsste der ja statt der V+ das PWM 
Signal, dann würde ich aber nicht auf die Endgeschwindigkeit kommen.,
Ich dachte vllt an einen Kondensator, der sich aufladen muss und erst 
dann die volle Spannung zb besteht.

von Monk (roehrmond)


Lesenswert?

Für PWM spielt es keine Rolle, ob du den Pluspol oder den Minuspol des 
Motor schaltest. Bei Arduino dient die Funktion analogWrite() zur PWM 
Ausgabe.

Welchen MOSFET verwendest du?

: Bearbeitet durch User
von Christian H. (christian_h917)


Lesenswert?

Ah danke! ich habe mal etwas nachgelesen.
Dh ich schalte mit PWM den Mosfet immer kurz an / aus, um entsprechend 
ihn langsam anfahren zu lassen - richtig?

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


Lesenswert?

Christian H. schrieb:
> da die Motoren dauerhaft an V+ angeschlossen sind und
> der Mosfet GND durchschaltet.

Wie Steve auch schreibt, spielt das überhaupt keine Rolle. Der MOSFet 
wird erst mit kurzen, dann mit immer längeren Pulsen durchgesteuert, um 
den Motor langsam zu starten. Wobei langsam relativ ist, das kann 
innerhalb einer Sekunde stattfinden. Das musst du halt so programmieren, 
aber mit einem Kontroller wie dem ESP32 überhaupt kein Problem.

von Christian H. (christian_h917)


Lesenswert?

dann habe ich es verstanden! besten dank!

von H. H. (Gast)


Lesenswert?

Die Frage nach dem von dir verwendeten MOSFET solltest du besser 
beantworten.

von Monk (roehrmond)


Lesenswert?

Christian H. schrieb:
> Dh ich schalte mit PWM den Mosfet immer kurz an / aus, um entsprechend
> ihn langsam anfahren zu lassen - richtig?

Ja, das ist das Prinzip.

Hast du denn einen MOSFET, der mit 3,3V Steuerspannung die 8 Ampere 
schalten kann? Hier wäre auch wichtig, ob der ESP diesen schnell genug 
ein/aus schalten kann, sonst wird der heiß. Dann brauchst du womöglich 
zusätzlich einen MOSFET Treiber.

Also welchen MOSFET benutzt du?

: Bearbeitet durch User
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Naja, wir müssen diesen Anlauf ja nicht mit kHz laufen lassen, hier 
reichen ja  50Hz oder so. es geht ja nur um wenige Momente, bis der 
Motor dann auf Dauerstrich läuft.

von Christian H. (christian_h917)


Lesenswert?

RFP30N06LE MOSFET 30 A 60 V N-Kanal

von Christian H. (christian_h917)


Lesenswert?

RFP30N06LE MOSFET 30 A 60 V RFP30N06LE N-Kanal

naja die Dauerlast vom Motor sind nur 1 A. Wenn ich ihn langsam 
hochfahre, wird der mosfet ja nicht diese Last dauerhaft bewältigen 
müssen ☺

mit dem PWM sehr interessant. ich werde das morgen umsetzen und 
berichten!

von Monk (roehrmond)


Lesenswert?

Christian H. schrieb:
> Wenn ich ihn langsam hochfahre, wird der mosfet ja nicht diese Last
> dauerhaft bewältigen müssen

Überhitzung findet unter Umständen binnen weniger Millisekunden statt.

Qg ist jedoch gering genug. Wenn du mit der PWM Frequenz im niedrigen 
Bereich bis 1 kHz bleibst, wird das schon klappen. Ich glaube das ist 
bei Arduino eh die Standard Vorgabe.

Der Transistor ist allerdings erst ab 5V spezifiert. Nur mit Glück 
schaltet er schon bei 3,3V ordentlich durch.

Zwischen ESP und Transistor brauchst du einen Treiber mit mindestens 5V 
Ausgang. Z.B einen 74LVC1G17.

Siehe http://stefanfrings.de/transistoren/index.html#mosfet

: Bearbeitet durch User
von Christian H. (christian_h917)


Lesenswert?

hmm Standard Frequenz beim Arduino sind 5000 Hz - lieber auf 1000 gehen?

bislang klappt das "anschalten" auf HIGH über den Pin ja um den Motor zu 
aktivieren und den Mosfet zu schalten. Ich weiss aber gerade nicht 
sicher, ob das High Signal 3.3V oder sogar 5V sind (weil es ein glaub 
ich ein DEV Board ist).

Also sollte das High Signal 5V brauch ich keinen Treiber dazwischen?

Bei 3.3V sollte ich einen Treiber verwenden, auch wenn der Mosfet 
durchlässig ist?

Danke!! (das ist noch etwas Neuland für mich)

von Monk (roehrmond)


Lesenswert?

Christian H. schrieb:
> lieber auf 1000 gehen?

Ja. Oder besser 400 Hz, wenn es geht. 1000 Hz hört man nämlich lauter.

: Bearbeitet durch User
von Monk (roehrmond)


Lesenswert?

Christian H. schrieb:
> Bei 3.3V sollte ich einen Treiber verwenden, auch wenn der Mosfet
> durchlässig ist?

Würde ich machen. Denn wenn dein MOSFET mal kaputt geht, brauchst du 
viel Glück, tauglichen Ersatz zu finden. Die für 3,3V spezifizierten 
werden nämlich nicht mehr in THT hergestellt.

von Christian H. (christian_h917)


Lesenswert?

Aber wenn der Output eh bei 5V wäre, also das High Signal wäre es nicht 
notwendig oder?

von Monk (roehrmond)


Lesenswert?

Christian H. schrieb:
> Aber wenn der Output eh bei 5V wäre, also das High Signal wäre es nicht
> notwendig oder?

Das habe ich doch geschrieben. Der Transistor ist für 5V Spezifiziert.

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


Lesenswert?

Steve van de Grens schrieb:
> Oder besser 400 Hz, wenn es geht.

Wie gesagt, auch wenige dutzend Hertz wären ok. Da kann man auch mal 50 
oder 100 Hz wählen. Es geht nur um wenige Sekunden beim Anlaufen, da 
stört so ein kurzes Brummen sicher wenig.

von H. H. (Gast)


Lesenswert?

Die Frequenz wählt man passend zur Induktivität des Motors.

von Christian H. (christian_h917)


Lesenswert?

ok und was sagt mir das, H.H. ?:)

von H. H. (Gast)


Lesenswert?

Manchmal steht sowas im Datenblatt des Motors. Ansonsten muss man eben 
messen.
Und dann wählt man die Frequenz eben so, dass der Strom nicht übermäßig 
schnell ansteigt bzw fällt.

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.