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?
:
Verschoben durch Moderator
Mit diesem speziellen Treiber habe ich keine Erfahrungen. Ich konnte jedoch mit dem bei China-Modulen weit verbreiteten einfacheren Controller JY01 etwas Erfahrung sammeln, siehe ggf. https://www.insightcentral.net/attachments/jy01_v3-5_2018-english-pdf.83073 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. Die Alternative ohne Getriebe wäre dann wohl eine Vektorsteuerung. Das scheint mir allerdings ein unverhältnismäßig hoher Aufwand: https://www.st.com/en/applications/industrial-motor-control/3-phase-field-oriented-control-foc.html
Chris V. schrieb: > 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/
Wulf D. schrieb: > Kritischer ist > die Minimaldrehzahl die bis 10 U/min heruntergehen soll, um punktgenau > anzufahren. 'Punktgenau' geht es mit einem Schrittmotor und 1000 UPM sollten auch zu schaffen sein.
Es gibt im RC-Modellbau für geländegängige Automodelle brushless-Motoren mit Hallsensoren und die dazu passenden Controller, die sollten das können. Oliver
:
Bearbeitet durch User
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.
Wulf D. schrieb: > Es kommt auf eine Umdrehung an. Gut, das ist nicht so schwer zu erreichen. Wenn Du Dich schon bei Reichelt umsiehst, dort gibts es auch fertige Treiber-Motor Angebote: https://www.reichelt.de/all-in-one-schrittmotor-nema-17-1-8-2-55-v-act-17hs44172802-p260763.html?&trstct=pol_0&nbc=1 Die Ansteuerung mit einem AVR sollte einfach sein, ich will Dich von BLDC aber nicht unbedingt abbringen.
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.
Wulf D. schrieb: > @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. :-)
Chris V. schrieb: > Treibermodul mit TMC2208 Der sinusfoermige Verlauf wird durch 256-Schritte nachgebildet. Nur so laeuft der Motor rund bei niedrigen Drehzahlen.
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.
Falls Du Interesse hast, ich habe noch Platinen zu dieser Schaltung: Beitrag "Schrittmotoransteuerung mit A4982 und ATmega328" und auch den A4982. Programme dafür gibt es auch, sodaß ein Test schnell erledigt wäre.
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. Wulf
Na ja, die übliche Empfehlung für hohe Schrittfrequenz ist eine niedrige Induktion der Spulen, was niedrige Spannungs- und hohe Stromwerte bedingt. Ein NEMA17 Motor müßte reichen und wenn das Datenblatt vorhanden ist, kann man daraus Drehzahl und Drehmoment entnehmen. Eine günstige Variante wäre diese: https://www.reichelt.de/hybridschrittmotor-nema-17-1-8-1-7-a-2-6-v-act-17hs4417l2x2-p237909.html?&trstct=pos_4&nbc=1 Wegen maximaler Schrittauflösung habe ich selber immer 0,9° Motore verwendet, die etwas ruhiger laufen aber höhere Schrittfrequenzen brauchen. Als Beispiel: https://www.reichelt.de/hybridschrittmotor-nema-17-0-9-2-4-a-2-4-v-act-17hm5424-p237911.html?&trstct=pos_8&nbc=1 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.
:
Bearbeitet durch User
Danke für deine zahlreichen Hinweise und Empfehlungen, werde mich daran orientieren. Mi N. schrieb: > 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.
Hallo, Mi N. schrieb: > 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. Mit freundlichen Grüßen Thorsten Ostermann
Wulf D. schrieb: > Den TMC würde ich doch gern einbauen, 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. Thorsten O. schrieb: > Die 0,9° Motoren > eignen sich eher für besonders ruhigen Lauf und hohe > Positioniergenauigkeit bei niedrigen Drehzahlen. Dafür habe ich sie auch eingesetzt und so langsam sind sie nicht.
Bei 10U/min, also 1U/6s waere das mit 256 Steps/U ein Ruckeln mit rund 40Hz um 1,4 Grad. Bei 100 Hz pfeift es mit 400Hz.
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. Mit freundlichen Grüßen Thorsten Ostermann
Thorsten O. schrieb: > 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ß. Gruß Wulf
Endlich mal jemand, der meinen Rat befolgt ;-) Eine kleine Taktgeberschaltung mit ATtiny hätte ich noch für einen einfachen Test: http://mino-elektronik.de/Generator/takte_impulse.htm#bsp5 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.
Wulf D. schrieb: > 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.
Harry L. schrieb: > 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.
Harry L. schrieb: > Wulf D. schrieb: . >> 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.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.