Motorsteuerung mit einer MOS-FET Brücke

Arduino MOS FET Brücke

mos-fet-h-bridge

Eine H-Brücke (H-Bridge) ist eine Schaltung, um einen Elektromotor vorwärts und rückwärts drehen zu lassen. Sie besteht aus zwei Verstärkerkanälen, die sich wiederum aus zwei MOS-FETs oder Powertransistoren zusammensetzen. Es sind jeweils zwei Transistoren unterschiedlicher Polarität ( z.B. FET N und FET P).

Im Beispiel sind pro Kanal ein N-Channel und ein P-Channel MOS-FET zusammen geschalten. Verwenden kann man z.B. den FET-N IRF9Z30 und den FET-P IRFZ40. Je nachdem, ob man ein GND- oder Plus-Signal sendet, sperrt der eine der beiden Transistoren, während der zweite den Stromkreis schließt.

Pin 9 Pin 12 Pin 10 11 Motor
HIGH LOW LOW HIGH Rechts
LOW HIGH HIGH LOW Links

Es ist ebenfalls möglich, über ein PWM-Signal die Geschwindigkeit des Motors zu regulieren.

In der schematischen Ansicht sieht man schnell, wie die H-Brücke (H-Bridge) zu ihrem Namen kommt.

mos-fet-h-bridge-schematics

EDIT: Vielen Dank an Uwe, der hier auf signifikante Probleme hingewiesen hat.

330 Kommentare zu „Motorsteuerung mit einer MOS-FET Brücke

  1. Hallo,

    interessanz, welche MOS-FETS könnte man hier verwenden?
    Vermutlich könnte das Gate noch einen vor R gebrauchen… oder? Sind die Schaltungen ehr shematisch zu verstehen oder hast du sie so schon aufgebaut?

    Viele Grüße.

    Torsten

  2. Die meisten Schaltungen habe ich schon aufgebaut und getestet. Die hier auch.

    Im Gegensatz zu normalen Transistoren ist ein Vorwiderstand am Gate nicht nötig, da in Wirklichkeit dort kein Strom fließt.

    Verwenden kann man z.B. den FET-N IRF640 und den FET-P IRF9640.

    Ich schreibe das gleich in den Artikel. Danke für die Anregung :)

  3. Hi,

    sach mal gibt es Probleme, wenn man den Motor nicht mit Batterien, sondern mit 24V betreibt?.

    Müsste man dann einen Widerstand (ca 10kOhm) zwischen Negativ und GND schalten?

    mfg bema09

  4. @bema09: Da sollte es keine Probleme geben – vorausgesetzt, Dein Motor ist ein 24V Motor. Ein Widerstand ist nicht nötig und auch nicht zu empfehlen.

    Gewähr und Haftung kann ich dafür natürlich nicht übernehmen :)

  5. jo, vielen dank für die antwort…

    leider funktioniert es nicht.. der arduino sendet ab einer spannung von 14V kein anständiges steuerungssignal mehr, sondern nur eine spannung um die 90mV.

    bei 13V läuft alles wie gewollt..

    hast du da eine idee, was das Problem seien könnte?

    mfg bema09

  6. Hast Du die 24V direkt in die Buchse des Arduino gesteckt? Das hoffe ich nicht, denn diese Spannung wird heruntergeregelt und das nur zwischen ca. 6 und 12 V.

    Du musst die 24V anstelle der Batterien einbringen (wie oben im Bild).

    Oder hast Du es so gemacht?

  7. Hi,

    also ich bin mir nicht ganz sicher, aber die Schaltung, also das Schaltbild oben, ist meiner Meinung nach hochgradig ungewöhnlich.

    So eine Art der Beschaltung habe ich noch nicht gesehen.

    Es ist unüblich, einen N-Kanal Fet mit neg. Spannungen am Gate zu beaufschlagen, und umgekehrt auch unüblich, einen P-Kanal Fet mit pos. Spannungen am Gate zu „belästigen“.

    Grüße
    Jürgen

  8. hmm also brauch ich immer zwei pwm ausgänge für einen motor, wobei einer von den zwei minus und der andre plus seien muss?? im programm also:
    analogWrite(10,255);
    analogWrite(11,-255);
    ne gibt ja minus 255 nicht aber kann mir einer mal weiterhelfen? bitte :D

  9. analogWrite(10,255);
    analogWrite(11,0);

    und wenn man den motor langsamer machen möchte,
    reicht es dann wenn man nur einen ausgang verändert oder muss man den einen niedriger und den anderen höher machen ?

  10. @Leo: Nicht ganz, Du brauchst nur einen PWM und einen normalen Digitalen:

    digitalWrite(10,HIGH);
    analogWrite(11,value); // von 0 – 255

    Das lässt den Motor in Richtung 1 in der Geschwindigkeit value drehen,

    digitalWrite(10,LOW);
    analogWrite(11,value); // von 255 – 0

    lässt den Motor in Richtung 2 in der Geschwindigkeit value drehen :)

  11. Hallo,

    Ich habe dazu eine Frage, ich kenne die Schaltung so ähnlich, aber mir erschliesst sich nicht wie die Bauteile mit volgendem Problem umgehen ohne abzurauchen. Bzw wie der Motor da vernünftig geregelt sein soll.

    Nehmen wir an die Schaltung wir mit einem PWM und einem Digital betrieben. PWM einschaltdauer dabei 50%.
    Nun wird die Schaltung 50% der Zeit den Motor beschleunigen, aber die restliche Zeit eine Motorbremse aktiviert (Motor dreht „frei“ ist aber kurz geschlossen über den Masse Anschluss der Brücke)

    Was passiert da, oder ist das gar kein Problem?
    Mfg
    Flail

  12. Hallo,

    ich habe die Schaltung nachgebaut, leider tut sich bei mir nichts. ich benutze als externe Stromversorgung eine 9V Batterie. Ich kann die Pins schalten wie ich will an den Motorpins liegt keine Spannung an. Wo könnte das Problem liegen?

    Gruß, Stefan

  13. Das Schaltbild kommt mir extrem vereinfachend vor. Zum Beispiel fehlen da die Freilaufdioden. Je nach FET-/Transistortyp können die zwar schon eingebaut sein, aber ins Schaltbild gehören die auf jeden Fall, da sie essentiell wichtig sind, um Beschädigungen zu vermeiden.

  14. Beno: Ah, gute Frage: Das kommt natürlich auf die FETs an. Ein IRF640 kann bis zu 200V und 18A schalten – das aber bitte nicht probieren. 200 V können sehr gefährlich sein.

  15. Das ist gut werde es heute probieren bin schon gespannt ob es funltioniert. Ich bräuchte nämlich 40V dann müsste das schon funktionieren, danke für die schnelle antwort

  16. Hallo stefan ich hätte noch eine Frage kann ich wen ich einen Wegsensor habe das ich automatisch die Drehrichtung umkehren kann. Vielen Dank für deine Antwort

  17. sorry stefan das ich mich erst jetzt wieder melde das mit dem sensor habe ich schon hinbekommen, trotzdem danke immer für deine schnellen Antworten

  18. hi
    ich bin schüler der 9 klasse des heißt das ich nicht so arg viel ahnung von der ganzen sache hier habe. Trotzdem soll ich eine art Roboter bauen. ich muss einen 9V motor ansteuer der sich in beide Richtungen drehen soll. Die Frage ist ob das mit dieser Schaltung hier Funktioniert wenn nein wie ich eine andere Schaltung bauen könnte
    danke schon mal im Vorraus XD
    mfg rapper98

  19. danke für die schnelle Antwort
    Nein ich muss des Projekt mit dem Arduino machen darauf gibt es dann eine Note . Also muss es mit dem Aruino funktionieren. Hättest du da eine Idee dazu? Weil ich bin gerade echt überfordert welches Programm und Schaltung ich benutzen könnte.
    mfg rapper98

  20. vielen dank hat mir echt weiter geholfen XD
    könnte sein, dass ich mich nochmal melde wenn ich etwas nicht versteh.
    Nochmal vielen dank und frohe Weihnachten

  21. „Copy!You say these 2 people to definitely, who win who negative?“After, a long time’s the private of Wei Er duke slowly floats.

    At agree after negotiation truly come to company to arrive under the report every day, if occupy and then accompany Shen Xiu Yuan to go out, have no matter at any time after canning leave, truly took leave Shen Xiu Yuan and dynasty joss-stick to leave company.

    „That pours BE, this up says all too generally, again say that you have no a chain to lead spirit again and saw is also useless.“

    „Not ability, can not begin!It is prescriptive at school.“

    One after being huge ring shines on to lose and is shaken to back, immediately after again is a blood.However shine on to lose no longer stop, accelerated skill, Long Mo Chan of hand suddenly left suddenly right, suddenly ascend suddenly next the dynasty Be green to leave a dozen.

  22. Du hast doch nen Pegelständen vergessen. Der arduino legt 5 Volt an da leiten dann beide Transistoren, wenn die Brücke eine Versorgungsspannung größer 5 Volt hat..

  23. Vielen Dank für den Artikel!
    Ich habe alles so aufgebaut, allerdings gibt es noch ein Problem:
    Als P-Kanal-Mosfets nutze ich zwei IRF9630, N-Kanal-Mosfets IRF630.
    Die N-Kanal-Fets arbeiten perfekt, allerdings schalten die P-Kanal-Fets dauerhaft durch, auch wenn keine Gate-Spannung anliegt!
    Muss ich (wie hier beschrieben) jeweils einen Transistor vor die beiden Fets schalten?
    Vielen Dank im Voraus!

    Grüße,
    Christian

  24. @Christian: Das könnte auf jeden Fall Abhilfe schaffen. Bei den Beispiel hier habe ich versucht, das Prinzip mit so wenig wir möglich Bauteilen zu realisieren.

  25. Hallo,

    ich habe genau die Schaltung nachgebaut. Die Schaltung funktioniert auch soweit, aber die Transistoren werden teilweise sehr heiß. Manchmal auch so heiß, dass das Plastik an den Füßen der Transistoren schmilzt. Ist das normal? Kann ich mir nur schwer vorstellen…
    Der Motor ist ein Lego Motor 5292 mit einer maximalen Stromaufnahme (im blockiertem Zustand) von etwa 3,5A mit 9V.
    Funktioniert das vielleicht doch nicht so, wie ich mir das gedacht habe?
    Ein passendes Netzteil mit der Spannung und genügend Stromzufuhr ist vorhanden.

  26. @Marcel: Ja, das ist unangenehm, aber FETs können schon ziemlich heiß werden. Du kannst mehrere parallel schalten, um die Last zu verteilen und/oder sie mit Kühlkörpern ausstatten. Eine H-Brücke oder ein Motor-Shield wären da eine Alternative. 3,5A sind aber auch schon ein beachtlicher Strom.

  27. Hallo,

    erstmal vorweg: die Seite ist wirklich Klasse!

    jetzt zu meinem Problem ;-)

    Ich habe die Schaltung wie oben aufgebaut, mit den FET-N IRF640 und den FET-P IRF9640. Ich habe allerdings vor einen 24 Volt Motor damit zu steuern, zum test habe ich erstmal einen alten PC-Lüfter angeschlossen (12 Volt). Bei 5 Volt funktioniert alles super, der Lüfter dreht schön langsam. Sobald ich mit meinem Labornetzteil bei ca. 10 Volt bin, hört der Lüfter auf zu drehen, die Mosfets werden knallheiß und es kommt ein eher metallisch-elektrischer Geruch zum Vorschein. An dieser Stelle habe ich abgebrochen, bevor alles kaputtgeht.

    Hat von euch jemand eine Idee was ich falsch gemacht haben könnte ? Fehlt da nur die Kühlung ?

    Gruß

    Frank

  28. You can certainly see your enthusiasm within the work you write.
    The arena hopes for more passionate writers like you who aren’t afraid to say
    how they believe. At all times follow your heart.

  29. Hallo,
    ich habe den Code so gemacht:
    dadurch dreht sich mein Robotor einmal 3 sekunden nach links und dann 3 sekunden nach rechts…
    Den linken Motor habe ich an pin 8 und 9
    den rechten an pin 11 und 12 (einfach anschliessen ich weiss nicht mehr genau wie ich die Motoren angesteckt habe, also welcher Pin für forwärts und rückwärts war…)

    int motor1l = 8;
    int motor1r = 9;

    int motor2l = 11;
    int motor2r = 12;

    void setup()
    {

    pinMode(motor1l, OUTPUT);
    pinMode(motor1r, OUTPUT);

    pinMode(motor2l, OUTPUT);
    pinMode(motor2r, OUTPUT);

    }

    void loop()
    {
    analogWrite(motor1r, 100);
    digitalWrite(motor1l, LOW);

    analogWrite(motor2l, 100);
    digitalWrite(motor2r, LOW);

    delay(3000);

    analogWrite(motor1l, 100);
    digitalWrite(motor1r, LOW);

    analogWrite(motor2r, 100);
    digitalWrite(motor2l, LOW);

    delay(3000);
    }

  30. As more and more homeowners are forced to leave their homes, they turn to renting for the short term.
    Playing games is not only for youngsters, it’s also for the youthful generation.
    On top of this shock, I find out we now have a baby coming soon.

  31. Eine Selbstbau-H-Brücke ist immer ein schwieriges Unterfangen.

    Ein P-Mosfet sperrt, wenn am Gate ca die gleiche Spannung anliegt, wie am Source. Im Fall dieses Schaltbildes mit Versorgungsspanung für Motore größer als 5V schalten die oberen P_MOSFETS nie aus. Es kommt zu einem Kurzschluß. Wegen der Maximalen GARE-Sourcerspannung von +/- 20 V darf die Schaltung falls sie funktionieren würde auch nicht mit 24V betrieben werden.

    Abhilfe: Ansteuerung des P_Mosfets durch einen Transistor wobei ich eine Ansteuerung durch 4 Arduino Ausgänge bevozuge, weil so der Motor ungebremst auslaufen kann (alle 4 MOSFET gesperrt). Ansonsten AnsteuerungsICs wie zB IR2104 und alles N-MOSFETs verwenden oder besser eine fertiges IC oder Modul nehmen.

    Die genannten Mosfets sind für die Ansteuerung direkt durch Arduino nicht geeignet, da sie bei 5V Gatespannung nicht ganz durchschalten. Es sind Logic Level MOSFETs zu verwenden.

    Stefan bitte ergänze und korrigiere die Beschreibung der Schaltung dahingehend, daß für diese Schaltung die Versorgungsspannung des Motors nicht größer als 5V sein darf.

    Danke Uwe

  32. @Uwefed: Vielen Dank für die Nachricht. Man lernt doch nie aus. Den Artikel ändere ich schnellstmöglich. Liebe Grüße, Stefan“

  33. Hallo,,
    ich habe Interesse diese Schaltung zu verstehen und nachzubauen. Beim Verstehen gibt es aber das erste Prolem. Das Gate vom P-Mosfet wird über 220Ohm gegen Betriebsspannung gelegt und über 10KOhm durch den Transistor BC547 gegen Masse gezogen. Nach Ohmschen Gesetz verändert das die Spannung am Gate doch nur unwesentlich. Wie kann die Schaltung da funktionieren??? Und wie muß das Programm aussehen wenn ich z.B. über 2 Tasten den Motor in beiden Drehrichtungen mit unterschiedlichen Geschwindigkeiten und Richtungen steuern will?
    Für Antworten vielen Dank und frohe Ostern
    Peter

  34. Hallo,
    der IRF9z30 verträgt eine Gate-Source-Spannung von -5V. Das bedeutet, man sollte die 10k mit der gezeigten Konfiguration weg lassen. Allerdings ist der Rds bei -5V noch realtiv hoch, wodurch die Verlustleistung ebenfalls relativ hoch ist. Grob überschlagen würde ich bei Raumtemperatur, ohne Kühlkörper den 9z30 maximal mit 800mA belasten.

  35. Hallo Stefan,

    besteht die möglichkeit mit einer anderen Software den Arduino beim laufenden Programm die Geschwindigkeit mit einem Schieber zu varieren, vorwärts rückwärts langsam schnell ohne bestimmte abläufe vorher zu Programmieren

  36. Hallo,

    zum Thema P-Mosfet:
    Die Widerstände 10kOhm und 220 Ohm müssen vertauscht werden, da das Gate des P-Mosfet sonst bei geschaltetem npn Transistor ungefähr 10k/(10k+220) * Uv bekommt. Wobei Uv die Versorgungsspannung ist.
    Bei gesperrtem npn Transistor liegt am Gate ungefähr die Versorgungsspannung Uv an.
    Der Mosfet schaltet dadurch nicht.
    Abhilfe schafft das Vertauschen der beiden Widerstände.
    Wer noch etwas schnellere Schaltzeiten benötigt, kann beide Werte einfach noch halbieren, dritteln, oder sogar vierteln. (!!Spezifikationen des npn Transistors und Versorgungsspannung beachten!!)

    Gruß, Stefan

  37. Hallo!
    Meine Frage ist eig recht simpel.
    Wenn ich den Motor nach rechts/links drehen will und die Drehzahl mit einer PWM steuere wie muss ich das dann Anschließen

  38. Hallo,
    in der aktuellen Version des Schaltbildes ist leider keine Batterie mehr enthalten obwohl in den KOmmentaren hin und wieder darauf Bezug genommen wird.

    Gab es einen Grund, auf eine separate Stromversorgung für den Motor zu verzichten?
    Könnte mir jemand das Schaltbild mit Batterie zusenden?

  39. Pingback: free nike
  40. Pingback: scarpe nike
  41. Pingback: tenis adidas rojos
  42. Pingback: Google
  43. Pingback: adias superstar
  44. Pingback: slim converse
  45. Pingback: free app for pc
  46. Pingback: Google
  47. Pingback: converse canvas
  48. Pingback: vans animal print
  49. Pingback: full apps download
  50. Pingback: air max red
  51. Pingback: MILF
  52. Pingback: asics u hrvatskoj
  53. Pingback: yoni masseur paris
  54. Pingback: boston bitcoin
  55. Pingback: nintendope
  56. Pingback: Tablet repair
  57. Pingback: سئو سایت
  58. Pingback: my first anal sex
  59. Pingback: Security Firm
  60. Pingback: vibrators
  61. Pingback: tongue vibe
  62. Pingback: auto taxi
  63. Pingback: silicone vibrator
  64. Pingback: datumoufukuiken
  65. Pingback: Steuerrecht
  66. Pingback: pure kona coffees
  67. Pingback: interracial porn
  68. Pingback: Play Yard
  69. Pingback: Freemason Ring
  70. Pingback: vaccinera hund
  71. Pingback: Staining Jar
  72. Pingback: Love
  73. Pingback: leadership
  74. Pingback: thrusting vibrator
  75. Pingback: the accommodator
  76. Pingback: Penis Pump Review
  77. Pingback: Anal Toy Review
  78. Pingback: Best Anal Beads
  79. Pingback: seks forum
  80. Pingback: apple wholesale
  81. Pingback: Greg Monroe Jersey
  82. Pingback: Bondage Toys
  83. Pingback: Huge Dildos
  84. Pingback: aflamneeksex
  85. Pingback: mp3 download
  86. Pingback: Using Ben Wa Balls
  87. Pingback: dildo
  88. Pingback: sex xlxx
  89. Pingback: best vibrators
  90. Pingback: superstar k6
  91. Pingback: 123
  92. Pingback: $1 hosting
  93. Pingback: givenchy homme
  94. Pingback: nikes air force 1
  95. Pingback: t shirt moncler
  96. Pingback: mansion88 thailand
  97. Pingback: Kona coffee brands
  98. Pingback: new balance violet
  99. Pingback: سكس
  100. Pingback: bail bond
  101. Pingback: junk cars
  102. Pingback: lion coffee beans
  103. Pingback: apps for pc
  104. Pingback: Abraaj
  105. Pingback: Australia
  106. Pingback: hosting
  107. Pingback: cheap hoverboard
  108. Pingback: Cbd for pain
  109. Pingback: lesbian pleasuring
  110. Pingback: love swing
  111. Pingback: phenq ingredients
  112. Pingback: overhanging beam
  113. Pingback: seo service
  114. Pingback: Cyberharassment
  115. Pingback: Managed Services
  116. Pingback: free phone cases
  117. Pingback: electric bike
  118. Pingback: Gary
  119. Pingback: office 365 kaina
  120. Pingback: high performance
  121. Pingback: financial
  122. Pingback: what is an etf
  123. Pingback: Speelgoed
  124. Pingback: Roof rack
  125. Pingback: hunting gifts
  126. Pingback: Amazon Coach
  127. Pingback: Save the ocean
  128. Pingback: FS 19 mods
  129. Pingback: sheetrock
  130. Pingback: yoyomedia login
  131. Pingback: Balance game
  132. Pingback: lolicock revew
  133. Pingback: digital music news
  134. Pingback: cheap hotel
  135. Pingback: Managed Backup
  136. Pingback: mp3
  137. Pingback: save my marriage
  138. Pingback: christian site
  139. Pingback: M88 Thai
  140. Pingback: Safety Services
  141. Pingback: rottweiler puppy
  142. Pingback: make into mp3
  143. Pingback: best coffees
  144. Pingback: Bachata Dance
  145. Pingback: virtual worlds
  146. Pingback: celine
  147. Pingback: happy games
  148. Pingback: DRUG STORE
  149. Pingback: vr game reviews
  150. Pingback: electronics
  151. Pingback: Acer remonts
  152. Pingback: سكس
  153. Pingback: sexy dating tips
  154. Pingback: Rockstarlyrics
  155. Pingback: Trill
  156. Pingback: poloshirts
  157. Pingback: Valentino Garavani
  158. Pingback: Prada
  159. Pingback: Yves Saint Laurent
  160. Pingback: Stella Mccartney

Die Kommentare sind geschlossen.