Ich möchte mit einem Motor eine kleine Material–Förderschnecke antreiben. Als Maximaldrehzahl genügen etwa 1000 U/min. Kritischer ist die Minimaldrehzahl die bis 10 U/min heruntergehen soll, um punktgenau anzufahren. Drehmoment ca 10 Ncm, also genügt ein kleiner, wenige Watt starker Motor. Steuerung mittels uC, bevorzugt AVR.
Dachte erst an einen DC Getriebemotor mit 5:1 Untersetzung, bin aber unsicher ob man den so weit runtersteuern kann, ohne dass das Drehmoment komplett einbricht.
Sinnvoller scheint mir ein BLDC mit Hallsensoren. Reichelt hat da einige im Angebot.
Kenne mich mit den BLDC nicht gut aus, wollte deshalb einen Treiber wählen, der viel selbst erledigt, z.B. den TI DRV8308.
Der unterstützt Hall-Sensoren, Überstromschutz und mehrere Varianten zur Drehzahlvorgabe. Günstig ist der auch noch, nur etwas schwer beschaffbar.
Hat jemand Erfahrung mit dem Treiber?
Insbesondere interessiert mich ob man den auf geringste Drehzahlen, also unter 1 Umdrehung pro Sekunde, runtersteuern kann und wie der mit den im Fast–Stillstand stark ansteigenden Motorströmen umgeht?
Kann man sich einfach auf die parametrierbare Strombegrenzung verlassen, die dann in jedem PWM-Zyklus die Treiber bei erreichen des Max-Stroms einfach abschaltet oder ist das Murks und man muss da ganz anders rangehen?
Geschwindigkeiten unter etwa 100 U/min werden mit einem der typischen 3-poligen Motoren und Block-Kommutierung mittels Hallsensoren schwierig. Ich bezweifele, dass das für Deine Anwendung gut funktionieren wird, und würde auch hier zu einem Getriebe raten.
Das
scheint mir allerdings ein unverhältnismäßig hoher Aufwand:
So hoch ist der Aufwand gar nicht, wie die alte Application Note AVR447 (heute AN8010(?) zeigt:
https://ww1.microchip.com/downloads/en/Appnotes/doc8010.pdf
Wer allerdings ncht selber baut, hats schwer, denn FOC Controller in klein sind selten. Mit AVR447 sind sehr geringe Drehtahlen kein Problem. Ich habe damit DD Plattenspielermotoren mit 10 U/min antreiben können.
Bei Github gibts mittlerweile ein Projekt zu AVR447:
https://github.com/TrystanLea/BLDC_Controller/
Ein DC Servomotor mit zusätzlichem Encoder im Vierquadrantenbetrieb kann auch bei der Drehzahl Null das max Drehmment zur Verfügung stellen, und dadurch seine exakte Position halten. Fremdkühlung vorrausgesetzt.
@Chris: danke für den Hinweis zum JY01. Sieht von der Funktion ähnlich dem TI DRV8308 aus, nur fehlen dem die Gate-Treiber und die Konfiguration wird einfach über die Pins statt SPI-Interface vorgenommen. Hat auch ein paar Funktionen weniger, können aber beide nicht nur Blockkommutierung, sondern auch Sinussynthese. Ob man damit aber bis fast 0 U/min runterkommt, kann ich dem sparsamen Blatt leider nicht entnehmen.
@Matthias: schaue mir die App.-Note an, da gibt es viel zu lesen. Glaube noch immer, dass ein Synchronmotor die richtige Wahl wäre. Die Ansteuerung ist halt um Welten aufwändiger und wenn man zum Debuggen der SW den uC anhält, muss man etwas gegen zu hohe Motorströme unternehmen.
"Punktgenau" war evtl die falsche Wortwahl, eine Positioniergenauigkeit brauche ich nicht. Deshalb sollte es ohne Schrittmotor gehen. Wobei ein Synchronmotor auch nicht so weit davon entfernt ist.
Es geht darum, mit der Förderschnecke Behälter sehr präzise zu füllen. Die stehen auf einer Waage, die 2x pro Sekunde einen Messwert liefert. Der Füllvorgang sollte in 30s abgeschlossen sein. Damit das klappt, muss Anfangs eine hohe Drehzahl her und zum Schluss immer langsamer gefördert werden. Es kommt auf eine Umdrehung an.
An den Modellbau hatte ich auch schon gedacht, bis ich bei Reichelt passende Motoren sah. Liegen so um die 25€:
https://cdn-reichelt.de/bilder/web/xxl_ws/C300/ACT_57BL03.png
Warum die bürstenlose Gleichstrommotoren statt Synchronmotor heißen, verstehe ich allerdings nicht.
Bei Modelleisenbahnen wurde früher gerne der Ruckelbetrieb verwendet. Über Phasenschieber wurde festgelegt, wann die positive und wann die negative Halbwelle zum Motor gelassen wurde. In Mittelstellung bekam der Motor 50Hz Wechselstrom und brummte nur vor sich hin. Wurde eine Halbwelle etwas gesperrt, bewegte er sich langsam, je nach Zeitverhältnis der beiden Halbwellen. Er ruckelte schnell hin und her und überwand so die Haftreibung.
Dosierventile werden auch oft gepulst. Jeder Puls entspricht dabei einer kleinen Fördermenge. Ventile lassen sich nur schwer linear ansteuern, da die Ventilklappen eine hohe Haftwirkung haben.
Beim Ruckelbetrieb hat man sicher auch Maßnahmen gegen zu große Motorströme getroffen. Die Gegen-EMK ist ja drehzahlabhängig.
Ich vermute bei Nutzung einer der im Thread genannten BLDC-Controller kommen bei geringer Drehzahl automatisch Pulse zu Stande, da die Strombegrenzung eingreift. Wäre erwünscht, dann sollte auch das Drehmoment fast bis zum Stillstand erhalten bleiben.
Muss mir noch die Atmel App-Note ansehen. Auf den ersten Blick fiel mir keine Strombegrenzung auf, die müsste man ergänzen.
@Chris: danke für den Hinweis zum JY01. (...)
Ob man damit
aber bis fast 0 U/min runterkommt, kann ich dem sparsamen Blatt leider
nicht entnehmen.
Ich war vom JY01 mittelmäßig enttäuscht, und würde ihn nur dann nochmal einsetzen, wenn die Entwicklung schnell gehen muss und ich das in der Zeit nicht selber machen kann.
Für eine meiner Anwendungen brauchte ich eine hochaufgelöst einstellbare Drehzahl zwischen 0,5 und 1,5 Umdrehungen pro Sekunde bei kaum Drehmoment, aber einer hohen Wiederholgenauigkeit nach Powercycle. Das war mit dem JY01 + PI-Regelung im vorgeschalteten Mikrocontroller nicht zu erreichen.
"Punktgenau" war evtl die falsche Wortwahl, eine Positioniergenauigkeit
brauche ich nicht. Deshalb sollte es ohne Schrittmotor gehen. Wobei ein
Synchronmotor auch nicht so weit davon entfernt ist.
Für die oben angesprochene Anwendung nutze ich jetzt einen flachen NEMA17 Schrittmotor und ein Treibermodul mit TMC2208. Das funktioniert hervorragend! Ich brauche die Möglichkeit der Absolut-Positionierung dabei ja auch nicht. Der TMC2208 hat die Endstufen schon on-Chip, arbeitet mit einer Stromregelung für die Wicklungen und schaltet bei Übertemperatur selbstständig ab.
Dank dem 3D-Drucker-Hype ist das sogar noch eine ziemlich günstige Lösung. :-)
Ok, danke euch für die zahlreichen konstruktiven Rückmeldungen!
Die Tendenz darin geht eher zum Schrittmotor. Werde es erstmal damit versuchen.
Hoffe das uns nicht der Versuchsaufbau vom Labortisch vibriert und dass die 1000U/min erreichbar sind.
Der TMC2208 wird überwiegend auf einem DIL Adapter angeboten, finde ich persönlich etwas hässlich. Bei Mouser gibt’s den im QFN Gehäuse, da übersteigen die 20€ Versandkosten den Warenwert um ein Vielfaches. Mal schauen.
Danke für das Angebot. Werde aber selbst eine PCB mit dem benötigten Display-Kontakten und Tastern für ein UI entwerfen. Da kann ich einiges auch von der SW von anderen Projekten wiederverwenden.
Habe gerade gesehen, dass es bei Reichelt ein Upgrade des TMC2208, den TMC2209 für nur 3,30€ gibt.
Das Angebot an Schrittmotoren erschlägt mich aber total. Allein im Preisbereich bis von 10€ - 50€ sind es 66 Stück. Die Größen variieren.
Aber worauf sollte man sonst noch achten?
Auf ein paar 10 Euro kommt es mir nicht an.
Wenn Du selber eine Leiterplatte mit nacktem Treiber aufbaust, achte auf Schutzdioden an den Ausgängen und unbedingt auf Schutz vor Überspannung, wenn der Motor bremst. Andernfalls bekommt man die Treiber ICs auch gut kaputt.
Diese TMCxyz klingen sehr verlockend, sind für Dein Vorhaben aber eher Last anstatt Lust. Einfache Treiber von Allegro A89... oder STM L64..., die sich einfach handhaben und bestücken lassen, würde ich bevorzugen.
Wichtig ist noch eine Betriebspannung von >= 24 VDC.
Ergänzung: Der Phasenstrom muß nicht auf den Maximalwert eingestellt werden. Das wäre nur wichtig, wenn bei niedriger Drehzahl das maximale Drehmoment benötigt wird. Bei hohen Drehzahlen sinkt der Phasenstrom auf Grund der Induktion der Spulen. Hier hilft allein eine hohe Versorgungsspannung, noch hinreichend Strom für hohes Drehmoment fließen zu lassen.
Wenn Du selber eine Leiterplatte mit nacktem Treiber aufbaust, achte auf
Schutzdioden an den Ausgängen und unbedingt auf Schutz vor Überspannung,
wenn der Motor bremst. Andernfalls bekommt man die Treiber ICs auch gut
kaputt.
Letzteres hätte ich sicher vergessen. Die Schutzdioden und Filter fielen mir schon in deinem Schaltplan auf.
Den TMC würde ich doch gern einbauen, mag die QFN Bauform seit ich meine PCBs nicht mehr selbst herstelle (bestelle bei Aisler).
Die Komplexität könnte ein Eigentor werden, aber man muss ja nicht alle Optionen nutzen und es gibt anscheinend auch freie Treiber-SW.
Der TMC kann 28V / 2A Dauerstrom.
Wegen maximaler Schrittauflösung habe ich selber immer 0,9° Motore
verwendet, die etwas ruhiger laufen aber höhere Schrittfrequenzen
brauchen.
Wenn es um hohe Drehzahlen geht, sind Motoren mit 0,9° Vollschritt eher kontraproduktiv, weil man für die gleiche Drehzahl die Wicklung doppelt so oft umpolen muss wie bei einem normalen 1,8° Motor. Die 0,9° Motoren eignen sich eher für besonders ruhigen Lauf und hohe Positioniergenauigkeit bei niedrigen Drehzahlen.
Da nehme ich an, daß es nicht nur um ein Einzelstück geht.
Auf ein paar Euro kommt es Dir nicht an, sodaß ich Dir sehr empfehlen würde, bei der Bestellung eines Schrittmotors (von Reichelt?) auch testweise einen fertigen Controller/Treiber mit zu bestellen. Es reicht ein ACT DM430. Damit kannst Du recht schnell testen, welche Spannung, welcher Strom und welche Feinschritte gut passen würden. Damit hast Du dann eine Basis für eine eigene Schaltung.
1000U/min waren als max. Drehzahl gefordert, dass sind 16,66U/s. Das ist für einen "normalen" 1,8° Schrittmotor schon sportlich und erfordert eine entsprechend hohe Versorgungsspannung. Viel Drehmoment liefert der Motor da nicht mehr.
10U/min als untere Drehzahl sind bei 1,8° 33,33 Vollschritte/s bzw. 533,3 Mikroschritte/s, wenn man 1/16 Schritt wählt. Da sehe ich kein Problem. Bei 1/256 Mikroschritt sind es sogar 8,5kHz. Da dürften dann eher jitter-freie 850kHz bei der geforderten Maximaldrehzahl zum Problem werden.
Bei 1/256 Mikroschritt sind es sogar 8,5kHz. Da dürften dann
eher jitter-freie 850kHz bei der geforderten Maximaldrehzahl zum Problem
werden.
Diese Rechnung ist abstrus. Niemand wird auf die Idee kommen, hohe Drehzahlen mit derart feinen Mikroschritten umzusetzen. Zum einen schaffen viele Controller/Treiber diese 850 kHz Eingangsfrequenz garnicht und zum anderen würde ein Jitter der Schrittfrequenz bei 50 - 100 kHz Chopperfrequenz der Stromregelung garnicht beim Motor ankommen.
Bei statischer Mikroschritteinstellung sind 1/8 oder 1/16 auch bei niedrigen Drehzahlen ein guter Kompromiss. Ein ATmega328 mit 20 MHz schafft inkl. Rampenberechnung etwa 50 kHz Schrittfrequenz, womit bei 1/8 Schritt die gewünschte Drehzahl von ca. 17 U/s gut umsetzbar ist.
Geschickter wäre es, bei niedriger Schrittfrequenz mit möglicht feinen Mikroschritten zu steuern und ab ein paar kHz auf 1/8 oder 1/4 Schritt umzuschalten.
Zum sportlichen Teil:
Zum oben verlinkten Motor gibt es eine Drehmomentkurve in Verbindung mit einem DM420 Controller:
https://www.reichelt.de/index.html?ACTION=7&LA=3&OPEN=0&INDEX=0&FILENAME=X200%2F17HS4417L20P1-X2DATASHEET.pdf
Da sind bei 1000 Upm rund 0,15 Nm dargestellt. Insofern sollte diese Kombination passen und der Motor auch mit anderen Controllern/Treibern diese Drehzahl erreichen. Die Verwendung von Beschleunigungsrampen und ein vibrationsfreier Aufbau sind wie immer Pflicht.
Habe zwei Motoren und auch einen DM420 Controller zum Warmwerden mit der Materie mitbestellt. Sowie was man sonst noch so an Bauteilen braucht und nicht im Bestand ist.
Vielen Dank noch mal an alle, so macht das Forum Spaß.
Einen dieser DM/MD Treiber hatte ich hier mal zu liegen und ein wenig getestet: Beitrag "Re: Schrittmotor macht keine Drehzahl"
Das Teil hat mir trotz der statischen Einstellungen für Strom und Feinschritt gefallen.
Wir haben heute die Steuerung für den Schrittmotor mit der Fördermechanik „integriert“: ist alles prima gelaufen, das Projekt ist abgeschlossen.
Die Entscheidung für einen Schrittmotor war richtig!
Der DM420 war in der Anfangsphase durchaus nützlich: für mich, um ein Gefühl für das Verhalten von Schrittmotoren zu bekommen. Und für den Kollegen der die Mechanik entwickelt hat, mehrere hundert Kilometer entfernt am anderen Ort. Ihm habe ich den Controller mit einem zweiten Stepper (kostet ja fast nichts) und einem kleinen Taktgeber geschickt.
Waren aber durchaus einige Hinternisse auf dem Weg. Habe einen TMS2209 Steppertreiber, einen Attiny1627 sowie ein 1,3“ OLED mit Joystick als wesentliche Bauteile verwendet. Material kaum 20€, mehrere Prototypen aufgebaut.
TMC SW-Treiber von Analog Devices im Github
Rampen, Regler und Stall-Korrekturen selbst programmiert
Anfangsschwierigkeiten gabs durch einen Layout-Fehler am TMC und allgemein in den Eigenheiten der verschiedenen Betriebsmodi des TMC-Treibers.
Wollte bis zu 1000 U/min erreichen, die Eigenschaften der Mechanik waren zunächst nicht genau fassbar, war nicht fertig.
Die für einen Stepper relativ hohe Drehzahl war nur in einem bestimmten Betriebsmode (Spread) erreichbar. Dabei traten aber unregelmäßig Synchronisationsverluste (Stall) auf.
Wie man die genau detektiert, wird im Datenblatt aber nur für den Stealth-Mode erklärt.
Wie auch immer, habe einen Weg zur Erkennung gefunden.
Außerdem liesen sich die Stall bei genügend hoher mechanischer Dämpfung vermeiden. Hab das hohe Drehmoment der Stepper total unterschätzt, der läuft quasi ohne nennenswerte Last.
Am Ende genügte der flüsterleise, Stall-freie Stealth-Mode mit seinem geringeren Drehzahlvermögen eh aus, da die Förderleistung der Mechanik besser war als vorher erwartet.
Ja, man hätte einen closed-loop Stepper nehmen können, aber gerade bei Aliexpress kauft man die Katze im Sack.
Was man da bekommt ist im Voraus kaum abschätzbar.
Ja, man hätte einen closed-loop Stepper nehmen können, aber gerade bei
Aliexpress kauft man die Katze im Sack.
Was man da bekommt ist im Voraus kaum abschätzbar.
In dem Fall absoluter Blödsinn!
Makerbase ist keine Klitsche und recht renommiert.
Ich hab da selbst mehrfach bestellt, und die Lieferungen waren immer sehr schnell und entsprachen exakt der Beschreibung.
Ich hab da selbst mehrfach bestellt, und die Lieferungen waren immer
sehr schnell und entsprachen exakt der Beschreibung.
Dann freu Dich doch, aber mecker hier nicht rum, wenn andere Leute zurückhaltender agieren. Bedenken sind kein Blödsinn!
Im industriellen Bereich ist langfristige Verfügbarkeit angesagt, wobei der Firmenname "makerbase" eher nach 'hype-orientiert' klingt.
Gut, wenn es nicht so ist bzw. war.
Was man da bekommt ist im Voraus kaum abschätzbar.
In dem Fall absoluter Blödsinn!
Ich sage ja nicht dass das Material nichts taugt, aber es gibt vorab wenig Infos. Ich hätte z.B. gern das Drehmoment über die Drehzahl erfahren. Die Stromaufnahme ist auch nicht ganz unwichtig. Nichts davon sehe ich in den angegebenen Links.
Das ist beiden Aliexpress-Angeboten oft so . Man kann damit leben, kostet ja (fast) nichts. Muss man aber nicht.