Ich baue einen Stromkreis atm, der einen Gleichstrommotor (24 V, 5 Ampere) in beide Richtungen antreibt. (Wegen des Hochleistungsmotors verwende ich keine H-Brücke, ich kann zumindest nichts im örtlichen Geschäft finden). Im Moment sieht die Schaltung so aus:
Als der Arduino Pin 7 und 8 auf HI-LOW setzte, bekam der Motor 1 Richtung. Und wenn LOW-HI das Gegenteil ist. (Relais schaltet die negativen und positiven Anschlüsse)
Mit dieser Methode kann ich jedoch die Drehzahl des Motors nicht steuern. Ich würde gerne den Motor langsam beschleunigen.
Ich denke darüber nach, einen MOSFET zu verwenden und ihn an den PWM-Pin des Arduino anzuschließen. Diese Methode funktioniert nur für eine Richtung, aber nicht für die Rückwärtsrichtung.
Ich habe mich verlaufen, kann mir jemand eine Richtung zeigen oder mir einen Link geben, zu dem ich gehen kann. Vielen Dank erstmal im Voraus.
Machen Sie zuerst einen unidirektionalen PWM-Drehzahlregler wie folgt: -
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
M1 ist ein FET mit „Logikpegel“, der dafür ausgelegt ist, sich mit 5 V am Gate vollständig einzuschalten und die angelegte Spannung und den angelegten Strom problemlos zu handhaben. R1 hält M1 ausgeschaltet, wenn der PWM-Ausgang des Arduino schwebend oder getrennt ist. Lm und Rm repräsentieren die innere Induktivität und den Widerstand des Motors.
D1 ist eine schnell schaltende Schottky-Diode, die Hochspannungsspitzen (verursacht durch magnetische Energie, die in der Induktivität des Motors gespeichert ist) verhindert, die andernfalls den FET zerstören würden. Es verbessert auch die Effizienz, indem der Strom durch den Motor rezirkuliert wird, während das Magnetfeld zusammenbricht.
Um die Richtung zu ändern, müssen Sie nur die Motorkabel umkehren, wie Sie es zuvor getan haben. Die Relaiskontakte müssen wie folgt zwischen Drehzahlregler und Motor verdrahtet werden:
Simulieren Sie diese Schaltung
Der Motor fährt vorwärts, wenn ein Relais betätigt wird, und rückwärts, wenn das andere Relais betätigt wird. Wenn beide Relais freigegeben werden, hat der Motor einen Kurzschluss, sodass er schnell stoppt und einer mechanischen Drehung widersteht.
Bevor Sie die Richtung wechseln, sollten Sie den Motor stoppen, indem Sie die PWM langsam auf Null herunterfahren und dann beide Relais loslassen. Andernfalls zieht es beim Umkehren einen sehr hohen Strom, da es, während es sich noch in der ursprünglichen Richtung dreht, eine Spannung erzeugt, die sich zur angelegten Spannung hinzuaddiert.
Sie können die Geschwindigkeit nicht direkt mit den Relais steuern, da sie mechanisch sind und Sie sie nicht in hoher Geschwindigkeit schalten können. Sie haben so ziemlich zwei Lösungen: Verwenden Sie eine H-Brücke oder verwenden Sie die Relais, um die Richtung zu wechseln, und einen einzelnen Transistor, um die Geschwindigkeit zu steuern.
Es gibt H-Brücken, die einen 24-V-5-A-Motor steuern. Sie können sie normalerweise nicht in einem lokalen Geschäft finden. Wenn Komponenten aus dem lokalen Geschäft erforderlich sind, haben Sie die Möglichkeit, Ihre eigene H-Brücke mit diskreten Komponenten zu bauen. Der schwierigere Teil wird normalerweise die High-Side sein, da Ihr Arduino höchstens 0-5 V und Ihr Motor 24 V hat und P-MOSFETs in größeren Verstärkern schwerer zu finden sind, aber Sie können es normalerweise mit Optokopplern lösen. Mit Optokopplern will man übrigens sowieso meist isolieren. Denken Sie auch daran, die Treiberanforderungen richtig zu berechnen, da der Arduino möglicherweise nicht mit den Gate-Stromkapazitäten umgehen kann. Die unterste Schaltung in diesem Thread sieht nach einem guten Ausgangspunkt aus.
Da die Relaisschalter bereits funktionieren, ist es möglicherweise einfacher, sich für die zweite Option zu entscheiden. Am einfachsten ist es, einen N-Kanal-MOSFET zwischen der "Masse" des Relais und der eigentlichen Masse zu verwenden. Vergessen Sie nicht, auch die Fahranforderungen richtig zu berechnen. Da Sie keine tatsächlichen Schaltpläne bereitgestellt haben, ist es schwierig, bessere Ratschläge zu geben, aber der Schaltplan von dieser Seite sieht gut aus (der Vollständigkeit halber wiedergegeben):
Sie können das DPDT-Relais gegen das austauschen, was Sie bereits haben, und das TIP120 gegen einen leistungsstärkeren MOSFET.
Der Mosfet-PWM-Antrieb und die Relais sollten kein Problem darstellen, wenn
Ergänzung zur Funkenunterdrückung:
Wenn man bei laufendem Motor ein Gleichstromkabel abzieht, sieht man einen Funken. Dies ist üblich bei stark induktiven Teilen wie Relais, Motoren, Elektromagneten usw. Der Funke wird durch Induktion verursacht. Bei Spulen, die an eine Gleichspannung angeschlossen sind, bedeutet dies, dass der Spulenstrom niemals in Nullzeit beginnt oder stoppt, sondern nur allmählich. Wenn ein Gleichstromversorgungskabel entfernt wird, läuft der Strom weiter und nimmt allmählich ab, bis die gesamte magnetische Energie abgebaut ist . Der Strom wählt den Weg, der am leichtesten bricht. Oft ist es die Luft und das sehen wir als Funken.
Unterdrücken Sie den Funken, indem Sie dieser induktiven Spitze einen einfacheren Weg geben. Nehmen Sie zwei Zenerdioden mit mehr als 12 V, sagen wir jeweils 15 V. Verbinden Sie sie in Reihe, aber in entgegengesetzte Richtungen. Schließen Sie diesen Dual-Zener-Entstörer parallel zu Ihrem Motor an. Es schließt die 12-V-Versorgung nicht kurz, da für jeden Strom 15 V benötigt werden. Aber Ihr Relais wird beim Öffnen des Kontakts nicht geschweißt, da der induktive Spitzenstrom in einer Zenerdiode verschwendet wird.
Akzeptierte ergänzende Anmerkung:
Es kann auch ein induktiver Strombegrenzer verwendet werden. Wenn ein laufender Motor plötzlich mit Sperrspannung versorgt wird, steigt der Versorgungsstrom an. Ein Induktor an der Stromquelle begrenzt die kurzzeitige Stromspitze und dies ist weniger schädlich für die Stromquelle.
HandyHowie