Ich habe es noch nicht verstanden. Erstmal soll man an die Arduino-Pins keine Spannung einspeisen. Die 5V oder 3.3V an der Stiftbuchsenleiste kommen doch von einem Spannungsregler oder nicht? Warum sollen dort am 5V-Pin 4V eingespeist werden? Was soll das ändern?
Hier mal eine Übersetzung aus dem Datenblatt eines mega2560:
Ich denke jetzt mal, dass Du "die Stiftleisten Gnd und Vin" vom Power-Anschluss meinst. Aber wieso mit 4V da dran? Vielleicht mag ein mega2560 auch mit 3.3V betrieben werden können - keine Ahnung jetzt.Der Arduino Mega kann über den USB-Anschluss oder mit einem externen Netzteil betrieben werden.Die Stromquelle wird automatisch ausgewählt.
Externe (Nicht-USB-) Stromversorgung kann entweder von einem AC-zu-DC-Adapter (Wall-Wart) oder von einem anderen Gerät erfolgen.
Batterie. Der Adapter kann durch Einstecken eines 2,1 mm Mittelpositivsteckers in das Gerät angeschlossen werden.
an der Strombuchse des Boards. Leitungen von einer Batterie können in die Stiftleisten Gnd und Vin von
den POWER-Anschluss.
Das Board kann mit einer externen Versorgung von 6 bis 20 Volt betrieben werden. Bei Lieferung mit weniger als
7V, jedoch kann der 5V-Pin weniger als fünf Volt liefern und die Platine kann instabil sein.
Bei Verwendung von mehr als 12V kann der Spannungsregler überhitzen und die Platine beschädigen. Die
empfohlener Bereich ist 7 bis 12 Volt.
Übersetzt mit www.DeepL.com/Translator
Mag vielleicht funktionieren, aber für die Arduino-Ausgänge gibts eine Definition, die müsste im Datenblatt stehen. Genannt hatte ich die auch schon, man muss sie nur kennen: bevor die Pins im Programm definiert sind, sind die im "Z3-State", also weder Eingang, noch Ausgang. Mit dem Wissen kann man seine Beschaltung logisch sicher gestalten. Und genau aus diesem Grund, falls das zu unsicher sein sollte, kann man mit einem Arduino-Pin Transistoren in Open-Collector-Schaltung als Treiber steuern. Dann hast Du genau den Effekt, dass erst der Arduino gestartet und vom Programm her initialisiert sein muss, bevor die A4988-Module überhaupt bestromt werden und die Motoren eine Chance hätten, zu drehen. Da sparst Du den ganzen merkwürdigen Klamauk mit "Vorglühtaste"....für 5 sekunden dazuzuschalten?
So, wie Du das aber beschreibst, dass das Motorchassis nur funktioniert, wenn der Arduino mit unabhängiger Spannungsquelle versorgt ist, dann müsste das doch auch immer so sein (getrennte Stromkreise oder wenigstens eine Entkopplung).
Und wenn das eher unerwünscht ist, dann muss dafür gesorgt werden, dass möglichst keine entgegengerichteten Ströme (falls so etwas überhaupt da ist) zurück zur Spannungsquelle fließen, weil die dann auch an dem Arduino-Spannungseingang ankommen. Eine Freilaufdiode, direkt am Abzweig zu den Motorversorgungen, könnte das verhindern. Wenn das nicht reicht, kann man eine Freilaufdiode auch am Arduino-Spannungseingang schalten, wenn das besser wäre. Zu hohe Spannungen sollten auch nicht zurückfließen können - meine Meinung, denn das käme auch am Arduino-Spannungseingang an. Man könnte eine Stromkreis-Entkopplung vornehmen (idee zwei getrennter Stromkreise); Diode in Plus zur Versorgung der Motoren, wäre eine Möglichkeit. Spannungseinbrüche haben wir auch schon besprochen. Deshalb noch mal, ich weiß dass das evtl. nervt: Die Spannungsquelle muss belastbar sein und Reserve nach oben haben, nicht zu knapp ausgelegt. Wenn dann die Spannungsquelle belastbar genug ist und massive Störungen auf der Versorgungsleitung am Arduino-Eingang ausgeschlossen sind und man vermutet, dass die Arduino-Ausgänge im hochohmigen Zustand zu Problemen führen, könnte man die Spannungsversorgung, der A4988, vom Arduino aus steuern oder Pull-Up-/Pull-Down-Widerstände einsetzen.
Wichtig:
Egal, ob der Arduino bereits im Betrieb ist oder nicht. Sobald der A4988, in der Beschaltung RESET+SLEEP verbunden und mit 5k-Ohm Pull-Up versehen - weil so ist die Schaltung hier und so habe ich sie nachgebaut, mit Spannung versorgt wird / an die Versorgung angeschlossen wird, dreht sich der angeschlossene Stepper, d.h. dort fließt kurzzeitig Strom durch die Spulen (schätzungsweise eine viertel Sekunde). Liegt vielleicht auch daran, was das Datenblatt beschreibt:
At power-on or reset, the translator sets the DACs and the phasecurrent polarity to the initial Home state (shown in Figures 9
through 13), and the current regulator to Mixed decay mode for
both phases.
Sollten Störungen durch die Motorspulen entstehen, die störend wirken, sind die also in jedem Fall da, wenn sie nicht wirkungsvoll unterdrückt wurden. Sollten die Störungen durch Einschaltstromspitzen der Stepper entstehen, sind die, aus demselben Grund, auch da und nicht verschwunden (siehe 100µF-Elko, habe auch schon 220µF gesehen).
Gut, in Ordnung. Ich hatte das mit dem "vorglühen" noch nicht kapiert. Und jetzt doch wieder alle Gedanken dazu aufgeschrieben und verm. viel zu viel.
MfG
Lesezeichen