An der Ansteuerung des Treibers, der bekommt Step-Signale etc.
Du hast es doch im lopp() so geschrieben!?
Verstehe jetzt nicht, was Du meinst! Was stört Dich jetzt daran, dass er links und rechts herum dreht, wenn das im Programm so steht? Ich stehe wohl etwas auf'm Schlauch, hilf mir mal!
MfG
Jetzt weiß ich was Du meinst. Aber ich kenne das nicht. Ich habe das zu keiner Zeit. Allerdings steuere ich meine Treiber auch über den Sleep-Pin und kann da mit dem Enable-Pin nicht so mitreden, der ist bei mir dauerhaft auf GND geschaltet.
MfG
Geändert von Moppi (01.11.2019 um 16:29 Uhr)
habe mir Dein codebeispiel noch einmal angeschaut:
- definiert (und verdrahtet?) hat du SLEEP und STEP
- den Stepper schaltest du an- und aus- per SLEEP
- ENABLE hast Du nicht verdrahtet
- bewegt wird er per STEP
bedeutet also, dass du den jumper zwischen SLEEP und RESET, wie er in vielen anleitungen beschriben wird, nicht hast?
gruß inka
Ich habe meine Zeichnung zum Aufbauen meiner Schaltungen verwendet, habe die Zeichnungen hinterher noch entsprechend geändert. Daher betreibe ich es so, wie es dort abgebildet ist.
Ursprünglich schaltete ich nur den Sleep, weil ich die Akkus schonen will. Dann, weil das nicht ausreichte, habe ich die Logikspannung gleich mitgeschaltet, so dass die Elektronik komplett abgeschaltet ist - mehr Sleep geht wohl nicht. Hat aber denselben Effekt auf den Motor, wie wenn ich nur den Sleep geschaltet habe. ENABLE liegt auf GND. D.h wenn der Treiber unter Logik-Spannung steht, wird der wach und ich steuer direkt den Motor per Step etc., ist die Position errreicht, dann geht es bei mir wieder in den Sleep - Modus (heißt bei mir auch, Logikspannung abschalten).
Steht bei mir im Blog unter: Schaltung neu
Das ist allerdings nicht ganz aktuell. Da müsste noch die endgültige Schaltung rein. Die habe ich aber weggelassen, weil ich nicht mehr Verwirrung stiften wollte. So, wie es dort abgebildet ist, funktionierte es ja auch und so war auch der Quellcode dafür geschrieben. Und auch damit hatte ich keine Probleme, nur dass der Stromverbrauch im Sleep-Mode evtl. höher war.
Deshalb hier gerne nochmal meine endgültiger Plan:
bedeutet also, dass du den jumper zwischen SLEEP und RESET, wie er in vielen anleitungen beschriben wird, nicht hast?
Wenn ich den RESET nicht benötige (extra steuern möchte), verbinde ich den mit VDD. Natürlich nicht mit SLEEP, wenn ich SLEEP alleine schalten möchte.
In andern Schaltungen wird SLEEP nicht gesteuert und daher mit RESET verbunden.
MfG
Geändert von Moppi (01.11.2019 um 18:34 Uhr)
Das ist ziemlich schlecht, wenn das schon bei unbelastetem Motor auftritt. Mach mal ein Rad ran, und sieh wie es sich entwickelt.
Die Logik-Signale an den Anschlüssen sind doch nun wirklich nicht kompliziert:
ENABLE (erlauben/einschalten) hat einen Überstrich, ist also active Low. Ein Low schaltet den Chip also an. SLEEP hat auch einen Überstrich, bei Low legt sich der Chip schlafen und schaltet sich auch intern das meisste ab. RESET ist ebenfalls active Low, muß also auf High damit der Chip nicht im Reset hängt.
Also muß also ENABLE auf Low und SLEEP und RESET auf High, dann arbeitet der Chip. Und im ersten Schritt legt man die Abschlüsse mit Pull-Ups oder Pull-Downs fest auf den richtigen Pegel. Ein Pulse an Step lässt dann den Motor einen Schritt machen. Wenn erstmal alles funktioniert, kann man sich ums Stromsparen oder andere Sachen kümmern.
Zum Testen würde ich einen Taster an den Prozessor schalten und ein kleines kleines Programm schreiben: Taster entprellen und für jeden Druck einen Puls ausgeben. Je nach dem Pegel von DIR muß der Motor einen Schritt nach links oder rechts machen.
MfG Klebwax
Strom fließt auch durch krumme Drähte !
nochmal zum Überbrücken SLEEP und RESET:
Der SLEEP - Eingang am Treiber kann von außerhalb unbeschaltet bleiben, weil der mit einem 5k-Widerstand gegen VDD verbunden sein soll. Wenn man Sleep also nicht braucht, muss der nicht zusätzlich beschaltet werden. Wird RESET auch nicht benötigt, wird der gerne einfach mit dem SLEEP verbunden, somit liegt der RESET dann auch über 5kOhm an VDD.
MfG
es rattert weniger, weil eine grössere masse bewegt werden muss...
stimmt. Ich habe auch inzwischen keine probleme mit dem eigentlichen code. Das problem liegt im einschalten. Seltsamer weise ratterts nur wenn vier Stepper gleichzeitig eingeschaltet werden, beim einzelnen passiert es nicht...
gruß inka
Das letztere war ein Gedanke, den ich auch schon hatte.
Prüfe mal, ob beim Einschalten, aller 4 Motoren gleichzeitig, die Spannung einbricht! Bei Batterien geht nur runter, sinkt evtl. auf 5V ab oder was ähnliches. Beim Netzteil könnte es sein, dass die Spannung bei Überlast kurzzeitig ganz abgeschaltet wird und dann zu diesen Aussetzern führt. Wenn ich es richtig gelesen habe, brauchen die Stepper-Treiber am Eingang wenigstens 8V.
Da ist es: Load Supply Voltage Range VBB Operating 8 – 35 V
Kannst ja mal an allen Treibern das Trimpoti (frühere Strombegrenzung = weniger Strom für die Motorspulen) verstellen, dass die Stepper noch anlaufen und nicht stehen bleiben. Bei jedem einzeln einstellen (nicht alle zusammen an der Spannungsquelle hängen lassen). Dann noch mal alle zusammen ausprobieren. Funktioniert es dann, liefert Deine Spannungsquelle nicht ausreichend Strom, bei wenigstens 8V.
MfG
Geändert von Moppi (02.11.2019 um 10:35 Uhr)
habe ich jetzt gemessen, allerdings ist beim ausgeschalteten steckernetzteil ja alles stromlos. Beim einschalten habe ich erstmal (ganz kurz nur) so um 3.5V gemessen, bevor es auf 12V ging...
Ich muss jetzt wirklich auf den akku warten, die chinesen zieren sich aber irgendwie. Zwei verkäufer haben schon einen rückzieher gemacht, die kapazität von 10.000 mAh beim preis von ca. 15€ scheint nicht so ganz easy zu liefern zu sein...
Habe jetzt ein akku über Amazon bestellt, natürlich mehr als doppelt so teuer. Mal sehen ob und wann er kommt. Und ob er dann auch in die knie geht...
vielleicht die motoren mit einer kleinen verzögerung schalten?
gruß inka
Lesezeichen