Hallo, erstmal zu meinem Aufbau: Arduino Nano A4988 Treiber Nema 17 12V 0.4A 30Ohm 12V 2A Netzteil Eingestellt ist nach: V = A*0.7*8*Rs ohm (0.4*0.7)*8*0.1 = 0,224 V Mein Test-Sketch: int ste = 5; int dir = 6; void setup() { pinMode(ste, OUTPUT); pinMode(dir, OUTPUT); } void loop() { for(int i = 0; i < 400; i++ ) { digitalWrite(dir, HIGH); digitalWrite(ste, HIGH); delay(250); digitalWrite(ste, LOW); delay(250); } for(int i = 0; i < 400; i++ ) { digitalWrite(dir, LOW); digitalWrite(ste, HIGH); delay(250); digitalWrite(ste, LOW); delay(250); } } Jedoch bewegt sich der Motor nicht so wie er sollte, manchmal macht er einen kleinen Satz nach vorne und dann direkt wieder zurück und manchmal passiert auch einfach garnichts. Kann es an dem Netzteil liegen oder doch eher am Treiber? Beste Grüße
oder doch an der Verkabelung an der Schaltung und an allem anderen?! Warum schaltest du in deinem Programm den Dir um? Dann macht der Motor doch eigentlich das was er sollte?
Dir schaltet die Richtung des Motors. Verkabelt ist es wie es viele andere auch gemacht haben, also sollte das stimmen. Jedoch gibt der Treiber keine Spannung an den Motor aus also doch Treiber defekt?
slider101 schrieb: > Verkabelt ist es wie es viele andere auch gemacht haben, Aha. Sagen die Leute immer. > Jedoch gibt der Treiber keine Spannung an den Motor aus Dann ist er wohl kaputt. Laut Beschreibung aber Enable vergessen.
:
Bearbeitet durch User
Wie hast Du die Mikrosteps Auflösung eingestellt? Den Decay-Mode? i ist aber nicht etwa 8Bit? Vielleicht macht er nur 144 Schritte und Decay macht den Rest!? Wie lange wartet diese blöde delay-Funktion? ms? us? Gruss Chregu
slider101 schrieb: > Verkabelt ist es wie es viele andere auch gemacht haben, also sollte das > stimmen. Dann wird es auch so funktionieren, wie bei den anderen. Nochmal, was soll die dauernde Fummelei an der Dir-Leitung. Einmal High und einmal Low setzen sollte doch reichen. Bei jedem Schritt den Wert noch einmal zu setzen, bringt die Welt nicht weiter. Was macht der Treiber, wenn du ihn von Hand ansteuerst, also einfach direkt an den Step-Eingang Pulse von einem einfachen Rechteckgenerator oder einem Taster, der über ein RS-FF sauber entprellt ist?
Enable ist auf high. Nach einem Neustart kommen jetzt 6V raus ist das zu wenig für den 12V motor?
slider101 schrieb: > Neustart kommen jetzt 6V raus Aus dem Netzteil? Man, viel zu schwach! slider101 schrieb: > ist das zu wenig für den 12V motor? Irrelevant. Gruss Chregu
Aus dem Netzteil kommen 12V. Die 6V liegen maximal an den Leitungen zum Motor an
slider101 schrieb: > A4988 Treiber > Nema 17 12V 0.4A 30Ohm > 12V 2A Netzteil Passt nicht zusanmmen!! Besser: A4988 Treiber Nema 17 2,2V 1,7A 12V 2A Netzteil
Der Motor ist im Full Step Modus also M1-M3 alle low
Danke :) Warum ist es nicht so gut mit einem 12V Motor?
slider101 schrieb: > Kann es an dem Netzteil liegen oder DAS könnte man messen. Allgemein sollte der Schrittmotor möglichst wenig mit der Ansterlogik an einem Netzteil hängen um Störungen zu vermeiden. Abblock-Cs=? vorhanden j/n=?
Der Arduino hängt an einem anderen Netzteil mit 5V, also keine Verbindung hier.
Der Aufbau Arduino über USB an 5V und GND vom Arduino der A4988 und getrennt die Motorspannung
slider101 schrieb: > Würde auch ein Nema 17 2A 2,8V gehen? Sicher! Der Treiber begrenzt den Strom. 2A kann er nicht. Mit 1,5A (je nach dem, wie hoch du ihn einstellst) hast du halt etwas weniger Drehmoment, als bei 2A.
slider101 schrieb: > Aus dem Netzteil kommen 12V. Die 6V liegen maximal an den Leitungen zum > Motor an Wer mißt, mißt Mist.
slider101 schrieb: > Aus dem Netzteil kommen 12V. Die 6V liegen maximal an den Leitungen zum > Motor an Während das Programm läuft, oder auch wenn DIR und STEP auf konstantem Pegel liegen? Wie ist der Sollstrom am Treiber eingestellt?
Wärend das Program läuft. Eingestellt sind 0,2 Also nach A = Vref * 2
Werde jetzt mein Setup verändern in NEMA 17 2,2V 2A DRV8825 12V 2A Netzteil Ist das Netzteil noch stark genug wenn ich die Vref auf 1 Stelle für die maximalen 2A?
slider101 schrieb: > Aus dem Netzteil kommen 12V. Die 6V liegen maximal an den Leitungen zum > Motor an slider101 schrieb: > Eingestellt sind 0,2 Wohl Ampere ... 0,2A bei 30Ω wären 6V. Könnte passen. Vielleicht reicht der Strom nicht, um das Rastmoment des Motors zu überwinden, obwohl das so hoch schon ungewöhnlich wäre. Was spricht dagegen, den Strom mal auf den Nennstrom des Motors hochzudrehen? slider101 schrieb: > Über einen Taster passiert ebenfalls nichts Du könntest den Motor auch mal direkt mit 2 Kippschaltern an den 12V betreiben und gucken, ob er dann vernünftig weiter steppt.
Bei 0,4 kommen hinten 12V raus aber auch dann bewegt sich der Motor nicht er macht nur einen Satz nach vorne und dann wieder zurück. Wie soll der Aufbau mit den zwei Schaltern geschehen?
slider101 schrieb: > Wie soll der Aufbau mit den zwei Schaltern geschehen? Ersetze die beiden H-Brücken durch DPDT-Schalter (Full Step, Bipolar, 4 Lead) https://en.nanotec.com/support/knowledge-base-pages/stepper-motors-animation/?tx_nanotec_animation[initial]=motor_4lead
slider101 schrieb: > Bei 0,4 kommen hinten 12V raus aber auch dann bewegt sich der Motor > nicht er macht nur einen Satz nach vorne und dann wieder zurück. [ ] Der A4988 wird nicht heiß [ ] Es sind nicht doch zwei Strippen vom Motor vertauscht?
Der A4988 wird nicht warm. Die Kabel sollten stimmen
slider101 schrieb: > Werde jetzt mein Setup verändern in > > NEMA 17 2,2V 2A > DRV8825 > 12V 2A Netzteil > > Ist das Netzteil noch stark genug wenn ich die Vref auf 1 Stelle für die > maximalen 2A? Oh Mann, versuche doch mal zu verstehen, was da abgeht. Also, der Motor-IC treibt einen Strom durch den Motor. Das macht er - mal ganz grob gesagt - ähnlich wie ein normaler Schaltregler. Also lerne daraus, daß die Spannungen relativ EGAL sind - sowohl die am Motot zu messende als auch die Versorgung des Ganzen. Damit so ein Motor überhaupt sinnvoll drehen kann, muß also in seinen diversen Erregerspulen der Strom an- und abschwellen, umgepolt werden und so. Je schneller das geht, desto schneller kann der Motor drehen. Aber so ne Spule hat ja eine Induktivität und da du hoffentlich in Physik aufgepaßt hast, weißt du daß das Ändern des Stromes in ner Induktivität nicht schlagartig möglich ist. Beim Kondensator gilt dU/dt = I/C und bei der Spule dI/dt = U/L - folglich solltest du dem Motor-IC so viel Versorgungsspannung geben, wie er mit Anstand vertragen kann. Je höher desto besser. Den Strom regelt der IC - und der tut das unabhängig vom Motor. Merke dir das. So, jetzt kennst du vom Datenblatt deines Motors die Induktivität, die da umgeladen werden soll, du kannst am Motor-IC den Sollstrom einstellen und du kennst die Anzahl der Vollschritte, die dein Motor für 1 volle Umdrehung hat. Also kannst du dir aus derner Versorgungsspannung ausrechnen, wie schnell du damit den Motor drehen lassen kannst, also in welchen zeitlichen Abständen du einen Schrittimpuls geben kannst, ohne daß der Motor sich verschluckt und bloß auf der Stelle tritt. W.S.
slider101 schrieb: > Der A4988 wird nicht warm. Die Kabel sollten stimmen Ein hinreichend belasteter A4988 wird deutlich warm. Das hat übrigens nichts mit einem belastetem Motor zu tun. Der nimmt den gleichen Strom, ob mechanisch belastet, oder auch nicht. Welchen Motor verwendest du jetzt? Schaltplan? Stützkondensator verbaut? Einstellung des Treibers? (und bitte nicht so zusammenhanglose, dimensionsfreie, 0,2 oder so) Welchen Shunt hat der Treiber drauf? Welche Formel nutzt du?
W.S. schrieb: > Beim Kondensator gilt dU/dt = I/C und bei der Spule dI/dt = U/L - > folglich solltest du dem Motor-IC so viel Versorgungsspannung geben, wie > er mit Anstand vertragen kann. Je höher desto besser. Den Strom regelt > der IC - und der tut das unabhängig vom Motor. Merke dir das. An die Aussage mach mal ein paar dicke Fragezeichen dran! Bei 250ms Schritttakt ist das erstmal völlig egal. Die Induktivitäten der Motorwicklungen sind nicht so hoch, dass sich der Strom nicht aufbauen kann, bevor der Sequencer weiter schaltet. Das wird erst relevant, wenn die Zeitkonstante auf Grund der Induktivität in die Größenordnung der Taktzeit kommt und Drehmoment ein Kriterium ist. Für sinnvolle Anwendung, bei denen mehr Drehzahl gefordert wird, ist die Spannungsreserve natürlich wichtig, aber hier geht es erstmal einzig um die Grundfunktion und die muss auch bei Nennspannung des Motors funktionieren. Du tust so, als ob es vor Einführung der Stromregelung in den Treibern keine drehenden Schrittmotoren gegeben hätte. Beispiele mit ULN2003 und einfachen unipolaren Schrittmotoren, die für Kleinkram durchaus ihren Zweck erfüllen können, gibt es genug.
Arduino F. schrieb: > Ein hinreichend belasteter A4988 wird deutlich warm. Bei einem Strom von 200..400mA hält sich das noch seehr in Grenzen halten. Da ist die Temperatur eher ein Kriterium, um zu beurteilen, ob nicht irgendeiner der Ausgangsfets durchgeschossen ist.
Arduino F. schrieb: > slider101 schrieb: >> Der A4988 wird nicht warm. Die Kabel sollten stimmen > > Ein hinreichend belasteter A4988 wird deutlich warm. > Das hat übrigens nichts mit einem belastetem Motor zu tun. Der nimmt den > gleichen Strom, ob mechanisch belastet, oder auch nicht. > > Welchen Motor verwendest du jetzt? > Schaltplan? > Stützkondensator verbaut? > > Einstellung des Treibers? > (und bitte nicht so zusammenhanglose, dimensionsfreie, 0,2 oder so) > Welchen Shunt hat der Treiber drauf? > Welche Formel nutzt du? Ich benutze noch den 12V 0.4A Nema 17 Step --> Arduino D5 Dir --> Arduino D6 Motorspannung über 12V 2A Motor: Rot-Blau --> 1A-1B Schwarz-Grün --> 2A-2B Kein Schutzkondensator Der Treiber hat 0,1Ohm und ich habe vref = 0,32V (Zwischen dem Poti und Logik GND) nach vref= A*(8*0,1)
Wolfgang schrieb: > slider101 schrieb: >> Motor: >> Rot-Blau --> 1A-1B >> Schwarz-Grün --> 2A-2B > > Hast du das nachgemessen? Ich habe dies aus dem Datenblatt übernommen dort ist Schwarz A Grün A/ Rot B Blau B/ Ist die Verbindung nicht richtig?
slider101 schrieb: >> Hast du das nachgemessen? > > Ich habe dies aus dem Datenblatt übernommen dort ist Also nein Dann nimm ein Ohmmeter und miss jetzt nach. Wenn du kein Oszi hast, änderst du im Programm die Verzögerungszeit zwischen den Schritten auf einige Sekunden, hängst parallel zu den Wicklungsausgängen jeweils ein antiparallelgeschaltetes LED-Pärchen (rot/grün) nebst Vorwiderstand und vergleichst den Zeitverlauf der Spannung z.B. mit der Simulation bei Nanotec.
slider101 schrieb: > Kein Schutzkondensator Ein solcher ist zwingend erforderlich. Auch ist bei manchen Treiberplatinen eine Verbindung der beiden GND nötig. slider101 schrieb: > Der Treiber hat 0,1Ohm > > und ich habe vref = 0,32V (Zwischen dem Poti und Logik GND) > > nach > > vref= A*(8*0,1) Gut! Deine Rechnung scheint prinzipiell richtig zu sein. Allerdings ist das weiterhin der falsche Motor und er wird nie mehr als 0,4A bei 12V aufnehmen können. Mache doch mal ein 20V bis 30V Netzzteil dran, dann hat der Treiber auch die Chance den Strom zu regeln. Wolfgang schrieb: > Bei einem Strom von 200..400mA hält sich das noch seehr in Grenzen > halten. > Da ist die Temperatur eher ein Kriterium, um zu beurteilen, ob nicht > irgendeiner der Ausgangsfets durchgeschossen ist. Ja. Ich ging mittlerweile davon aus, dass ein entsprechender Motor existiert. Dem ist aber offensichtlich noch nicht so.
Wolfgang schrieb: > slider101 schrieb: >>> Hast du das nachgemessen? >> >> Ich habe dies aus dem Datenblatt übernommen dort ist > > Also nein > > Dann nimm ein Ohmmeter und miss jetzt nach. > > Wenn du kein Oszi hast, änderst du im Programm die Verzögerungszeit > zwischen den Schritten auf einige Sekunden, hängst parallel zu den > Wicklungsausgängen jeweils ein antiparallelgeschaltetes LED-Pärchen > (rot/grün) nebst Vorwiderstand und vergleichst den Zeitverlauf der > Spannung z.B. mit der Simulation bei Nanotec. Bei beiden Paaren messe ich jeweils 52 Ohm
>> Kein Schutzkondensator > Ein solcher ist zwingend erforderlich. Was für einen soll ich hier verwenden? was kann passieren wenn ich keinen benutze? > Mache doch mal ein 20V bis 30V Netzzteil dran, dann hat der Treiber auch > die Chance den Strom zu regeln. Also ist einfach meine Kombination aus 12V Motor, 12V Netzteil und dem Treiber Schuld dass es nicht läuft, da der Treiber keinen Spielraum zum regeln hat?
slider101 schrieb: > Also ist einfach meine Kombination aus 12V Motor, 12V Netzteil und dem > Treiber Schuld dass es nicht läuft, da der Treiber keinen Spielraum zum > regeln hat? Nein. Du wirst nicht die maximale Drehzahl, das maximale Drehmoment erreichen, aber drehen, insbesondere ohne Last, sollte er immer. MfG Klaus
Hier ist der Kondensator samt Begründung beschrieben. https://www.pololu.com/product/1182 Bild "Using the driver" Beachte die darunter stehenden "Warning" Kästen. Es fehlt auf dem Bild allerdings die Verbindung von GND zu GND. Bei manchen Modulen ist diese nötig. Nicht bei allen. slider101 schrieb: > Also ist einfach meine Kombination aus 12V Motor, 12V Netzteil und dem > Treiber Schuld dass es nicht läuft, da der Treiber keinen Spielraum zum > regeln hat? Weiß nicht.... Auf jeden Fall, kannst du dem Motor so nicht viel Mumm entlocken.
Klaus schrieb: > slider101 schrieb: >> Also ist einfach meine Kombination aus 12V Motor, 12V Netzteil und dem >> Treiber Schuld dass es nicht läuft, da der Treiber keinen Spielraum zum >> regeln hat? > > Nein. Du wirst nicht die maximale Drehzahl, das maximale Drehmoment > erreichen, aber drehen, insbesondere ohne Last, sollte er immer. > > MfG Klaus Bei mir dreht er jedoch garnicht auch nicht ohne Last, er summt zwar und macht mal einen Satz in die eine Richtung aber drehen tut er nicht. Der Motor sollte in Ordnung sein sonst würde er ja kein Summen von sich geben oder? Problem ist wahrscheinlich der Treiber?
Arduino F. schrieb: > Es fehlt auf dem Bild allerdings die Verbindung von GND zu GND. Bei > manchen Modulen ist diese nötig. Nicht bei allen. Woher weiss ich ob die die beiden GND's verbinden muss?
slider101 schrieb: > Bei beiden Paaren messe ich jeweils 52 Ohm Das ist gut. Stimmen die Phasensignale (bei angeschlossenem Motor) mit der erforderlichen Sequenz überein? Tritt dein Problem auch mit einem anderen Treiberexemplar auf?
Arduino F. schrieb: > Auf jeden Fall, kannst du dem Motor so nicht viel Mumm entlocken. er soll etwa einen Kilo waagerecht auf einer linear Führung bewegen. Sollte das gehen?
Wolfgang schrieb: > Tritt dein Problem auch mit einem anderen Treiberexemplar auf? Das konnte ich leider nicht testen, da ich nur einen Treiber habe. Jedoch hat es am Anfang funktioniert und der Motor hat sich wie gewollt gedreht aber nach erneutem zusammenstecken wollte er nicht mehr
slider101 schrieb: > Woher weiss ich ob die die beiden GND's verbinden muss? Aus dem Datenblatt des A4988 geht hervor, dass sie verbunden werden müssen. Und wie dein konkretes Board aufgebaut ist, kannst nur du wissen.
slider101 schrieb: > Jedoch hat es am Anfang funktioniert und der Motor hat sich wie gewollt > gedreht aber nach erneutem zusammenstecken wollte er nicht mehr Ach. Und das sagt du JETZT ? Habt ihr eigentlich alle euer Gehirn im Kindergarten abgegeben ?
Michael B. schrieb: > alle euer Gehirn Und warum mußt du jetzt alle beleidigen, weil der TO nicht früher mit der Sprache rausgerückt ist?
Christian M. schrieb: > slider101 schrieb: > hat es am Anfang funktioniert > > Danke dass Du uns das auch noch sagst... Danke nochmal an alle. Und Entschuldigung für meine nicht wissenheit. Da es ja funktioniert hatte dachte ich es wäre ein Bedinfehler meiner Seits (Der Treiber lief ja) Jetzt bin ich schlauer und den Kondensator baue ich auch noch ein ;)
slider101 schrieb: > Das konnte ich leider nicht testen, da ich nur einen Treiber habe. Merke: Statt stundenlanger Fehlersuche, rechnet sich die Bestellung eine Zweitexemplares sehr schnell, insbesondere wenn es sich um Investitionen in der Größenordnung von 1€ handelt. https://www.ebay.de/itm/401191508989
Wolfgang schrieb: > slider101 schrieb: >> Das konnte ich leider nicht testen, da ich nur einen Treiber habe. > > Merke: Statt stundenlanger Fehlersuche, rechnet sich die Bestellung eine > Zweitexemplares sehr schnell, insbesondere wenn es sich um Investitionen > in der Größenordnung von 1€ handelt. > Ebay-Artikel Nr. 401191508989 Gehe ich voll und ganz mit :)
npn schrieb: > Und warum mußt du jetzt alle beleidigen Alle, die aus Scham und Angst nicht sagen wie die Vorgeschichte ist, bevor bei ihnen etwas nicht mehr funktinierte.
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.