Verwenden eines pulsweitenmodulierten Signals, um möglicherweise die Polarität umzukehren

Ich versuche, einem Künstler zu helfen, einen einfachen Gleichstrommotor mit einem einzigen Signal zu steuern. Das Signal ist ein digitaler Ausgang, 0/5 V, und der Motor läuft mit max. 36 V. Der Motor muss vorwärts und rückwärts laufen. Pro Motor steht nur 1 Digitalausgang zur Verfügung.

Ich weiß, wie man ein PWM-Signal erzeugt und es mit einem Transistor (mit Widerstand an der Basis) verdrahtet, damit sich der Motor langsam oder schnell dreht, so viel funktioniert. Wir haben eine einfache Schaltung für die Motordrehzahl in einer Richtung.

Auch dank dieser Seite habe ich gerade etwas über H-Brücken gelernt und ein paar gute Seiten über die Verwendung von 4 Transistoren zum Umschalten der Polarität eines Motors gefunden.

Mein Gedanke war, das Ausgangssignal pulsweitenmoduliert zu haben: 0% = volle Rückwärtsfahrt, 35% = langsame Rückwärtsfahrt und 65% = langsame Vorwärtsfahrt, bis 100% = volle Vorwärtsfahrt.

Um den Motor zu steuern, denke ich darüber nach, das Signal in zwei isolierte Teile aufzuteilen. Ich "glätte" einen Teil und verwende ihn als "Richtungssteuer"-Signal, niedrig = rückwärts, hoch = vorwärts. Das andere Original-PWM-Signal moduliert nur die Leistung zur Geschwindigkeitsregelung.

Ich kann es in meinem Schaltungssimulator nicht zum Laufen bringen. Das erste Problem ist, dass mein "Glatter" ein gefilterter Gleichrichter ist und unabhängig vom Tastverhältnis immer dieselbe Ausgangsspannung erzeugt, was sinnvoll ist, da die Diodenbrücke einfach alles in dieselbe Spannung umwandelt. Das zweite Problem, das ich habe, ist, wie man die "niedrigen" Teile des Arbeitszyklus dazu bringt, den Motor "schnell" laufen zu lassen, wenn er rückwärts ist - ziemlich sicher, dass ich das mit einem NICHT-Gatter und einem anderen Transistor beheben kann, aber es fühlt sich so an muss eleganter sein. Je weniger Teile in diesem Design, desto besser.

(Das Hauptproblem ist, dass ich überfordert bin. Ich habe seit über 20 Jahren keine Schaltungen mehr gebaut.)

Die Frage ist, wie Sie dies mit einem 36-V-Netzteil und einigen Komponenten zum Umwandeln eines 0-100% 5-V-PWM-Signals in eine -36-V- bis +36-V-PWM-Stromquelle bewerkstelligen würden.

FYI, wir haben die Möglichkeit, einfach einen zweiten Mikrocontroller zu kaufen, der uns mehr Ausgangspins geben würde, wodurch wir einen Pin für ein "Vorwärts" -Signal und einen anderen für "Rückwärts" verwenden könnten. Es frustriert mich nur, dass ich die Ein-Signal-Idee nicht zum Laufen bringen kann.

Antworten (2)

Wenn Sie einen H-Brücken-Controller haben, der sauber mit einer PWM-Frequenz schalten kann, die im Verhältnis zur Induktivität des Motors ausreichend schnell ist (je niedriger die Induktivität, desto schneller muss die PWM sein), fahren Sie ihn mit einer Wellenform von 60% vorwärts und 40 % rückwärts ist eine gute Möglichkeit, um mit 20 % Geschwindigkeit vorwärts zu fahren; 40 % vorwärts 60 % rückwärts sind eine gute Methode, um mit 20 % Geschwindigkeit rückwärts zu fahren. Wenn beide oben genannten Bedingungen erfüllt sind, führt der Antrieb eines Motors auf diese Weise zu einer Drehzahlreaktion, die viel linearer ist als die PWM-Schaltung zwischen angetrieben und "Leerlauf" und auch energieeffizienter ist. Außerdem wird der Versuch, den Motor mit einer Geschwindigkeit anzutreiben, die etwas langsamer ist, als er sich gerade dreht, ein regeneratives Bremsen liefern [dh ermöglichen, dass die Motorenergie einigermaßen gut in die Versorgung eingespeist wird].

Es ist wichtig zu beachten, dass ein zu schneller Betrieb der PWM für den H-Brücken-Controller Energie im H-Brücken-Controller verschwenden kann; Ein zu langsamer Betrieb für die Motorinduktivität erhöht die Energieverschwendung im Motor. Wenn die PWM viel zu langsam ist, kann das Fahren des Motors mit halber Geschwindigkeit ein Vielfaches an Energie verbrauchen, als zu versuchen, ihn mit voller Geschwindigkeit laufen zu lassen. Wenn der Motor jedoch mit einer schnellen PWM betrieben wird und die H-Brücke damit umgehen kann, kann der Wirkungsgrad sehr gut sein; Ein blockierter Motor, der zu 75 % vorwärts und zu 25 % rückwärts gefahren wird, hat etwa die Hälfte des Drehmoments wie ein Motor, der zu 100 % vorwärts gefahren wird, nimmt aber nur etwa ein Viertel der Leistung auf [in etwa 75 % der Zeit verbraucht er etwa die Hälfte viel Strom aus der Versorgung wie bei 100 %, und in den anderen 25 % der Zeit gibt es dieselbe Strommenge zurück].

Kombinieren Sie vielleicht die Antworten von @supercat und Colin mit einem Fensterkomparator für die analoge Spannung (z. B. 2,4 bis 2,6 V), um den Motor abzuschalten, wenn er bei einem PWM-Verhältnis von fast 50% vollständig stillstehen muss.
@SpehroPefhany: In der Tat wäre eine Art Abschaltlogik eine gute Idee. Als Alternative zum Filtern der PWM ist es möglicherweise möglich, die Dinge so zu verdrahten, dass Pin High = Run CW; Pin niedrig = gegen den Uhrzeigersinn laufen lassen; Pin Floating = nichts tun.
Ich hätte der Frage hinzufügen sollen, dass der Motor niemals "angehalten" wird, außer sofort, er wird oszillieren. Die Geschwindigkeit wird "ungefähr sinusförmig" sein mit einigen dynamisch erzeugten und zufälligen Variationen. Wir sollten also keine Abschaltung für den "fast 50%"-Fall benötigen. Ich werde die Induktivität des Motors messen und die Komponenten herausfinden, die ich brauche, damit das funktioniert. Danke für die schnellen Antworten.

Sie können das PWM-Signal nehmen, es durch einen Tiefpassfilter (z. B. RC-Filter) führen und es dann mit einem Komparator mit 2,5 V vergleichen. Der Ausgang des Komparators sei das Richtungsbit für die H-Brücke. Wenn der PWM-Wert höher als 50 % ist, dann ist die Ausgabe des Tiefpassfilters höher als 2,5 V.

Jetzt müssen Sie noch herausfinden, wie Sie das PWM-Signal richtig an den Motor bekommen ... Ich habe das nicht genug durchdacht.