Hallo,
ich bin auf der Suche nach einer Möglichkeit einen kleinen Elektromotor
gezielt mit einem digital verstellbaren Drehmoment anzusteuern.
Wozu das?
Ich habe einen Seilzug, an dem ein Motor mit einer Spindel zieht. Der
Motor soll den Seilzug mit einem kleinen Drehmoment gespannt halten und
wenn es nötig ist, eine Kraft von maxmimal 20N auf den Seilzug ausüben.
Wenn man die andere Seite des Seilzugs anfasst, soll man ein kleines
haptisches Feedback aus einer digitale Testumgebung fühlen können. Man
soll z.B. den möglichst hochauflösenden Unterschied zwischen wenig und
viel Wind spüren können, der an einem Drachen zieht.
Technisches Umfeld: Durch die anderen Teile des Systems bin ich auf
einen ATmega 168 µC und dessen I2C/TWI-Bus festgelegt. Den Motor habe
ich noch nicht ausgesucht, aber er sollte im 5-12V Bereich liegen und
keine oder nur eine sehr kleine Übersetzung haben. Die Drehrichtung bzw.
das Halten des Motors wird über eine H-Brücke (L298) realisiert.
Spannungen kann ich mit einem I2C/TWI fähigen Digital-Analog-Wandler
erzeugen.
Ich habe mir überlegt, dass ich mit einem DAC (über I2C am µC) eine
Spannung erzeuge, die über einen MOSFET (N-Kanal, BUZ11) den Strom (=
Drehmoment) für den Motor steuert. Am Gate ist der DAC (für die
steuernde Spannung), an der Source der GND und am Drain die Last
(Motor). Das habe ich auch schon getestet und es klappt gut. Jetzt ist
mir nicht ganz klar, wie ich die H-Brücke genau unterbringe. Nach der
Schaltung im Datasheet soll ich sie an einigen Stellen erden. Mein Vs
kommt aus dem Labornetzteil und der GND ist dann der Drain-Pin am
MOSFET? Ist es ein großes Problem, dass die H-Brücke parallel zum Motor
geschaltet ist? Bekomme ich da Probleme wie z.B. Wärme?
Hat jemand vielleicht eine bessere Idee? Ich habe einen Motortreiber
gefunden (DRV8830), bei dem ich den Motorstrom mit einem Widerstand
begrenzen kann. Der Widerstand muss kleiner als 1Ohm sein. Das kann ich
über ein digitales Poti nicht machen. Kann man das Problem vlt. mit
einen Operationsverstärker eleganter lösen?
Vielen Dank schon einmal fürs Durchlesen und die Antworten :-)
Hallo szv,
Das was du da realisieren möchtest ist nicht unbedingt eine
Momentenregelung...
Als Motortreiber, der den Richtungswechsel beherrscht und per µC mit bis
zu 10kHz kann, wäre der hier interessant: VNH3SP30 -> Reichelt.
Den maximalen Strom hast du dann per PWM selbst in der Hand, ebenso die
Drehrichtung.
Du solltest es am einfachsten mal mit einem DC-Motor mit
Inkrementalgeber probieren. Entweder im Komplettpaket oder selbst
dranbasteln. Bei Pollin fliegen die abenteuerlichsten Motor-Reste rum,
damit kannst du vielleicht einen ersten Versuchsaufbau machen.
Entweder baust du den Inkrementalgeber irgendwo ans Getriebe oder halt
direkt an den Motor. Es geht auch eine Flankenerkennung über
Hall-Sensoren und du kannst vielleicht irgendwo ein paar Magnete günstig
platzieren.
Zur Abschaltung/Begrenzung:
Strommessung über Shunt an eine OP-Schaltung (Differenzmessung mit
Verstärkung) und dahinter einen Komparator/Schmitt-Trigger, dessen
Schwelle per Poti eingestellt wird. Elegant wäre natürlich auch eine
Skalierung auf den ADC des µC, wenn dir die Reaktionszeit reicht.
L. H. schrieb:> Den Motor habe ich noch nicht ausgesucht,
Such dir da mal einen aus, der mit bestromtem Stillstand klarkommt...
> aber er sollte im 5-12V Bereich liegen und> keine oder nur eine sehr kleine Übersetzung haben.
Ein Motor an sich hat keine Übersetzung.
Um was für einen kleinen Motor geht es denn hier? Vermutlich um einen
DC-Motor? Dann kann man (in erster Näherung) tatsächlich über den Strom
das Drehmoment einstellen. Ein Drehgeber wäre nur erforderlich, wenn auf
Position oder Drehzahl geregelt werden soll, oder wenn es um einen
EC-Motor ginge.
Mit freundlichen Grüßen
Thorsten Ostermann
@ L. H. (szv)
>ich bin auf der Suche nach einer Möglichkeit einen kleinen Elektromotor>gezielt mit einem digital verstellbaren Drehmoment anzusteuern.
Drehmoment ist proportionel zum Strom.
>soll z.B. den möglichst hochauflösenden Unterschied zwischen wenig und>viel Wind spüren können, der an einem Drachen zieht.
Geht zu ihr, und lass deinen Drachen steigen!
>Ich habe mir überlegt, dass ich mit einem DAC (über I2C am µC) eine>Spannung erzeuge, die über einen MOSFET (N-Kanal, BUZ11) den Strom (=>Drehmoment) für den Motor steuert.
Kann man machen, siehe Konstantstromquelle.
>(Motor). Das habe ich auch schon getestet und es klappt gut. Jetzt ist>mir nicht ganz klar, wie ich die H-Brücke genau unterbringe.
Tja lieber L. H., wer soll denn nun dein Herzblatt sein.
Ist es die lineare Konstantstromquelle, mit ihrer direkten,
anschmiegsamen Art. Oder doch lieber der Schaltregler, effizient und
kompromisslos?
>MOSFET? Ist es ein großes Problem, dass die H-Brücke parallel zum Motor>geschaltet ist?
Wohl wahr!
> Bekomme ich da Probleme wie z.B. Wärme?
Dein Energieversorger wird ne Sektrunde schmeißen!
>Hat jemand vielleicht eine bessere Idee?
Brain 2.0
>Ich habe einen Motortreiber>gefunden (DRV8830), bei dem ich den Motorstrom mit einem Widerstand>begrenzen kann.
Klingt OK!
> Der Widerstand muss kleiner als 1Ohm sein. Das kann ich>über ein digitales Poti nicht machen. Kann man das Problem vlt. mit>einen Operationsverstärker eleganter lösen?
Mö. Versuch's mal mit PWM.
MfG
Falk
Strom = Moment, Spannung = Drehzahl passt schon mal in erster Näherung.
Beides kannst du mit einer PWM einstellen und solltest dies aus Gründen
der Wärmeentwicklung auch so tun. Je nach Zug auf der Winde stellt sich
dann eben eine dazu passende Drehzahl ein. Oder: Je nach Zug auf der
Winde stellt sich eine zum konstanten Motorstrom passende Motorspannung
ein. Das gilt sowohl für Motor als auch für den Generatorbetrieb.
Nachdem die Auskünfte von Falk diesmal nicht so ergiebig wie beim Royer
Oszillator waren beiliegend ausnahmsweise meine Windenschaltung.
Der Spannungsregler rechts unten gehört nicht zum Motorteil. Ich habe
einen 24 Volt Scheibenwischermotor aus einem LKW aber mit 12 Volt geht
das genauso. Der Motorstorm wird mit einem P-Kanal Mosfet V13
geschaltet. L17 und C75 glättet die Spannung. Damit braucht man trotz
PWM keine abgeschirmten Kabel mehr und die Wärme von einem Linearregler
hat man trotzdem nicht. Ausserdem erlaubt L17 im Kurzschlußfall einen
langsameren Stromanstieg so daß die Software noch abschalten kann
(kurzschlußfestes Design). An C88 ist ein Analogeingang vom uC. Der
misst die Motorspannung so daß man die Geschwindigkeit der Winde
anzeigen kann. Die H-Brücke ist etwas altmodisch mit Relais gemacht,
weil die Richtung ja nur sehr selten umgeschaltet wird. Wichtig ist die
Position des Shunts R123. Beim L298 ist der ja auch eingezeichnet und
funktioniert unabhänig von der Drehrichtung. N3 verstärkt das
Stromsignal und R101 geht wieder an einen Analogeingang von deinem
Controller. V2 ist das PWM Ausgangssignal vom Controller auf einem
Timer-Pin.
Viel Spass auch mit der Software für deinen AT-Mega- Vielleicht googelst
du da mal was auf dem Roboternetz - die haben gute Reglerbeschreibungen.