Schrittmotoren auf Selbstbau Montierung anpassen.

  • Hallo Gerrit, und natürlich auch alle Anderen,


    das Überprüfen und anschliessendes Kompilieren, funktioniert hier bei keiner der Arduino Versionen. Ich habe getsetet
    Version 1.66/1.65 R5/1.64/1.63/1.60


    Einzig Version 1.64 steht seit 30 Minuten im Kompiliermodus, zeigt sie zwar an, aber am Fortschrittsbalken tut sich nichts mehr.


    Alle Versionen < 1.66 geben Massen an Fehlern aus, die würden geschätzt mehrere A4 Seiten füllen.


    PC ist Win 7 Pro. SP1, i5, 64bit, 16GbRam.


    Ich breche jetzt hier ab, und gehe Morgen nach dem Frühstück nochmas dran.


    Einzig die Zuweisung des Sketchverzeichnis finde ich irgendwie verwirrend. Ich habe dort das Verzeichnis angegeben, indem die Dateien stehen, aus Howards ZIP. Ist das vielleicht der Fehler ?


    Scharmates Nächtle
    Hans Peter

  • Hallo zusammen und ....
    einen "GUTEN Morgen ""


    ja wie soll ich es erklären, es lag halt doch zwischen meinen gewohnten Ohren......


    Ich habe das Ganze "ohne" den angeschlossenen 2560 versucht,,, warum....--->


    ich habe schon einige Projekte mit Atmega´s auf der Bascom Schiene gebaut. Da hat es sich so eingeschlichen, das man den Syntaxcheck
    startet, um zu sehen, wo es noch klemmt. Das habe ich hier beim "überprüfen und Kompilieren auch so verstanden. Das er dafür den 2560 angeschlossen haben will, kam mir nicht in den Sinn, da es ja auch den Reiten Hochladen gibt.


    Diese Meldung, und keinen Fehler erhielt ich nach geglücktem Vorgang.
    Der Sketch verwendet 56.966 Bytes (22%) des Programmspeicherplatzes. Das Maximum sind 253.952 Bytes.
    Globale Variablen verwenden 4.085 Bytes (49%) des dynamischen Speichers, 4.107 Bytes für lokale Variablen verbleiben. Das Maximum sind 8.192 Bytes.


    Dann konnte ich mit Hochladen auch das Programm in den 2560 schieben, wilde Lichtorgelspiele auf dem Board, und danach war er fertig.
    Nun leuchtet nur noch die ON LED, und nun kann ich wohl an daran gehen, die Hardware anzuknoten.


    Hans Peter

  • Hallo Hans Peter,


    kompilieren geht auch ohne den USB Anschluss, zum Hochladen muss der Arduino natürlich angeschlossen werden.


    Wenn du jetzt an die Hardware rangehst, würde ich dir zum testen den Sketch empfehlen, den Gerrit geschrieben hat. Hier kannst für jeden MS Modus prüfen, ob deine Stepper vernünftig laufen. OnStep ist zum Testen einfach zu komplex und mit Gerrit Sketch kannst du alle Parameter prüfen, die für die Steppersteuerung benötigt werden.


    Viele Grüße
    Carsten



    int enablePin = 2;
    int dirPin = 11;
    int stepPin = 13;
    int m3Pin = 24;
    int m2Pin = 23;
    int m1Pin = 22;


    void setup() {
    // put your setup code here, to run once:
    pinMode(enablePin, OUTPUT);
    digitalWrite(enablePin, HIGH);
    pinMode(dirPin, OUTPUT);
    digitalWrite(dirPin, HIGH);
    pinMode(stepPin, OUTPUT);

    pinMode(m3Pin, OUTPUT);
    pinMode(m2Pin, OUTPUT);
    pinMode(m1Pin, OUTPUT);

    }


    void turn ()
    {
    int i = 0;


    digitalWrite(dirPin, HIGH);
    for (i=0;i<3000;i++) {
    delay(10);
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(1);
    digitalWrite(stepPin, LOW);
    }
    digitalWrite(dirPin, LOW);
    for (i=0;i<3000;i++) {
    delay(10);
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(1);
    digitalWrite(stepPin, LOW);
    }
    }

    void loop() {
    // 128 uStep
    digitalWrite(m3Pin, LOW);
    digitalWrite(m2Pin, LOW);
    digitalWrite(m1Pin, LOW);
    turn();
    /* // 64 uStep
    digitalWrite(m3Pin, HIGH);
    digitalWrite(m2Pin, HIGH);
    digitalWrite(m1Pin, LOW);
    turn();
    // 32 uStep
    digitalWrite(m3Pin, HIGH);
    digitalWrite(m2Pin, LOW);
    digitalWrite(m1Pin, HIGH);
    turn();
    // 16 uStep
    digitalWrite(m3Pin, HIGH);
    digitalWrite(m2Pin, LOW);
    digitalWrite(m1Pin, LOW);
    turn();
    // 8 uStep
    digitalWrite(m3Pin, LOW);
    digitalWrite(m2Pin, HIGH);
    digitalWrite(m1Pin, HIGH);
    turn();
    // 4 uStep
    digitalWrite(m3Pin, LOW);
    digitalWrite(m2Pin, HIGH);
    digitalWrite(m1Pin, LOW);
    turn();
    // 2 uStep
    digitalWrite(m3Pin, LOW);
    digitalWrite(m2Pin, LOW);
    digitalWrite(m1Pin, HIGH);
    turn();
    // 1 uStep
    digitalWrite(m3Pin, LOW);
    digitalWrite(m2Pin, LOW);
    digitalWrite(m1Pin, LOW);
    turn();*/
    }

  • Hallo Carsten,
    ja diesen Sketch habe ich auch schon ins Auge gefasst, nur stellt sich mir die Frage... läuft der ohne externes ansteuern?
    Die Outputs sind ja klar,


    int enablePin = 2;
    int dirPin = 11;
    int stepPin = 13;
    int m3Pin = 24;
    int m2Pin = 23;
    int m1Pin = 22;
    aber wie steuere ich denn ?


    H.P.

  • Hallo Hans Peter,


    wenn du arduino, Stepperdriver und Stepper richtig verkabelt hast, und dann Spannung auf die Stepper gibts, schaltet sich der Stepper automatisch nach dem hochladen ein und fährt den Testablauf durch. Wenn du den Testablauf stoppen willst, musst du einfach den USB Stecker abziehen.


    Viele Grüße
    Carsten

  • Grüß Gott in die Runde


    Vorauschicken möchte ich , daß sich der folgende Text auf meine OnStep-Schreibtischversion bezieht.
    Erst dachte ich, meinen neu erworbenen Teensy 3.2 lege ich vorerst auf Eis, aber das lies meine Neugier nicht zu. Nachdem ich die Platine mit Stiftleisten auf der Unterseite versehen hab, läßt er sich wunderbar ins Breadboard stecken und damit experminetieren. Natürlich ist es wieder eine Wissenschaft für sich für einen wie mich, aber wieder sehr spannend!
    Jetzt bin ich soweit, daß er sich trotz einer Latte von Fehlermeldungen beim Kompeilieren, wunderbar mit CdC steuern läßt, ich staune selbst. Und trotz der Fehler kann ich OnStep sogar mit der Android App ansprechen. Lediglich die Verbindungen zu den Microsteps muß ich noch erstellen. Die Fehlermeldungen stören mich noch, aber da reichen meine Kenntnisse nicht aus, um diesen zu begegnen.


    Viele Grüße
    Lothar

  • Hallo Lothar,


    die SP Version 3.66 ist innerhalb von 3 Tagen schon wieder Geschichte, wenn es jetzt eine 3.681 gibt...Vielleicht habe ich Glück gehabt, die 3.66 zu erwischen, die geht bei mir ohne Fehlermeldung.
    Viele Grüße
    Carsten

  • Hallo Gerrit,


    wegen der zu hohen Tracking Geschwindigkeit von OnStep habe ich bei Howard nachgefragt, hier seine Antwort:


    "I would stick with the -Beta. It's known to work, the -Alpha is much better but also much has changed. Once you get the beta working then mess around with the -Alpha if you like. I downloaded the latest OnStep -Beta from GitHub, switched to your Config.h (with one change, 84.5 StepsPerSecond.)


    I uploaded to my Mega2560, connected in Sky Planetarium. Started a 1-star align.


    The monitoring hardware I attached to the RA step pin shows a step frequency of 84.71Hz. So this looks just about perfect (the real speed would be 84.5*1.0027=84.73Hz) give or take some ceramic resonator drift.


    Note that the correct value StepsPerSecond, for your setup, is really 84.444444 and having it set to anything else will cause OnStep to not work correctly. 84.5 is close enough I don't think you would notice anything wrong though.


    Micro-stepping mode?
    Gear ratios?


    Howard"


    Ich verwende zur Zeit die Beta Version, die hat gegenüber der neuen Alpha den Vorteil, das ich die StepsPerSecond einstellen kann, dieser Wert ist in der Alpha nicht mehr enthalten.


    Die mechanische Getriebübersetzung ist eindeutig: Planetenradgetriebe mit 5(2/11)= 5,18181818 * Schneckengetriebe mit 360/220 (220 Zähne)
    Wenn es also Abweichungen vom berechneten Wert gibt, kann es eigentlich nur an den Steps bzw. MS liegen.


    Aber hier habe ich eine grundsätzliche Frage: meine in der config.h eingetragenen Parameter für die 32 Microsteps sind lt. Howard o.k., ich habe ihm meine aktuelle config.h geschickt, die er geprüft hat.
    Wenn die 32 MS tatsächlich nicht gefahren werden (z.B. Funktionsstörung Treiber), wie kann ich das erkennen oder messen ? Von den Geräuschen ist der 32 MS Modus (mit Deinem Testprogramm) deutlich leiser, als bei 16 MS, also scheint das auch o.k. zu sein.


    Viele Grüße
    Carsten

  • Hallo Carsten,


    Du müßtest eine Mail von mir haben.
    Ja, wenn Du die Frequenz im Excel-Sheet berechnet hast, solltest Du die schon verwenden.
    Alphas setzt man eigentlich nicht ein. Das sind reine Stände auf dem der Entwickler arbeitet und
    die er für seine Zwecke erstmal ins Repository sichert.
    Man darf sich nicht wundern, wenn etwas noch nicht so geht, wie es sich der Entwickler vorstellt.


    Du kannst es indirekt feststellen, wenn Du die Standard-Konfiguration verwendest, die fürs Goto und für den Normalmodus
    32 Mikroschritte nimmst. Dann läuft Goto langsamer, aber sehr ruhig.


    LG
    Gerrit

  • Hallo zusammen,
    ich habe heute die Steuerung ans laufen gebracht. Mit CdC scheint das eine schöne Sache zu werden. Ich habe zwar noch einiges, was ich im CdC nicht finde, bzw verstehe, aber da kann man sich jetzt mal entspannt vorsetzen und probieren.
    Auch mit den Anpassungen in der Config.h kann ich mich jetzt einmal auseinader setzen. Es soll ja mal wieder keinen CS hier am linken Niederrhein am Wochenende geben...


    Allen eine stressfreie Restwoche.
    Hans Peter

  • Hallo Alle,


    die Fehlermeldungen beim Hochladen von OnStep auf mein Teensy 3.2 sind inzwischen auch Geschichte. Es lag wieder einmal an mir. Ich machte auch den Fehler und lud eine Alphaversion von OnStep hoch und dann hagelte es Fehlermeldungen beim Kompilieren. Nach dem Hochladen der Betaversion ist alles in Ordnung.
    Danke Gerrit!


    Viele Grüße
    Lothar

  • Hallo zusammen,
    anbei mal meine kalkulierten Einstellungen. Können die so funktionieren?
    Ich habe damit im CDC schonmal getestet, hat jemand auch Erfahrungswerte ?


    StepsPerDegreeHA/Dec** Stepper-Steps** Micro-Steps** GR1 (Gearbox)** GR2 (Zahnriemen)
    HA 16640** 400** 2** 144** 52**
    DEC 7200** 400** 2** 288** 11**


    StepsPerWormRotation
    HA 115200
    DEC 230400


    StepsPerSecond
    69,33333333


    Hans Peter

  • Hallo Hans-Peter,


    die Werte stimmen, wenn ich bei HA 400x2x144x52/360 rechne, ergibt sich 16640, bei DEC stimmt das auch, ebenso passen die StepsPerSecond. Bei den StepsPerWormRotation bin ich mir nicht so sicher, mit welcher Formel hast du diese Werte berechnet ?


    Viele Grüße
    Carsten

  • Hallo Carsten,
    ich habe die Werte mit dem Excelsheet von Howard generiert.
    Die Werte für die Umdrehungen des Schneckenantriebes kommen wohl daher, das ich dort meine Riemenuntersetzung eingetragen habe. Ich verwende einen Zahnriemenantrieb für beiden Achsen.
    Die 69 Schritte pro Sekunde kommen mir sehr hoch vor, werde damit nochmals experimentieren.
    Was hat denn so ein Schneckengetriebe für eine Untersetzung ?


    Hans Peter

  • Hallo Hans- Peter,


    beim Schneckengetriebe kommt es auf die Anzahl der Zähne an, die das Schneckenrad hat. Wenn ein Schneckenrad z.B. 200 Zähne hat, ist die Übersetzung 1/200, also 200 Umdrehungen der Schnecke sind eine Umdrehung des Schneckenrades. Ein Schneckenradgetriebe ist ideal, wenn die zu bewegende Achse möglichst kleine Drehungen machen soll, wie z.B. beim Tracking. Durch die heute hohen Microschritte der modernen Schrittmotoren (z.B. 128 MS) verliert diese hohe Übersetzung an Bedeutung. Für die Kraftübertragung ist die Schnecke aber sinnvoll, weil du mit kleinen Kräften hohe Gewichte bewegen kannst.


    Viele Grüße
    Carsten

  • Hi Hans-Peter,
    hast Du irgendwo ein Bild von Deinem Zahnriemenantrieb? Interessiert mich. Ich möchte meine erste Onstep gerne zu Motorisierung eines Dobsons fürs Schnellspachteln verwenden.


    Hi Carsten,
    ein Schneckengetriebe ist ideal, weil es selbsthemmend ist und eine bessere Laufruhe hat. Das wäre bei einem Stirnradgetriebe gleicher Übersetzung nicht gegeben (rattern).


    Die feinen Mikroschritte der aktuellen Treiberlösungen machen Getriebestufen überflüssig und helfen, mechanische Fehlerquellen aus dem Antrieb zu nehmen.
    Dafür braucht man aber höhere Ströme, damit ein Schrittverlust abgefangen werden kann.


    LG
    Gerrit

  • <blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">Zitat:<hr height="1" noshade id="quote"><i>Original erstellt von: Riegel 7</i>
    <br />Hallo Gerrit, was schreib ich den zwischen die eckigen Klammern damit es hier sichtbar wird?
    Hans Peter


    <hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">
    Hi HP,
    die URL zum Bild :)
    LG
    Gerrit

  • Hi HP,


    das hast Du sauber gelöst. Sieht gut aus! Gibts auch Bilder von der AZ-Achse?
    DEC und RA - Achse hast Du hier nicht ;)


    Ach, da bist noch drann. Da hätte ich einen Einfall, der in etwa zu dem passt,
    was Du in der Alt-Achse gemacht hast. Evtl. mach ich morgen mal eine Zeichnung.



    LG
    Gerrit

  • Anbei mal ein altes Bild, do war der AZ Antrieb in Version 1, macht aber sehr viel Lärm, duch das Kunststoffgetriebe

    und hier die "analoge" Ansteuerung

    Version 2.0 bekommt ein einstufiges Planetengetriebe mit 144:1
    H.P

  • Hi HP,
    danke sehr! Sehr schöne Inspiration! Mit der Onestep kannst Du über entsprechende Treiberstufen (128 Mikroschritte) an Übersetzung gewinnen und jede Menge Leistungselektronik vom
    Platz her einsparen.
    LG
    Gerrit

  • Hallo,


    wollte auch mal nachfragen, welche Untersetzung hast Du nur durch den Riemenantrieb und welches Modul hast Du da gewählt?


    Ich habe gerade den Antrieb im Azimut fertiggestellt und gehe da einen anderen Weg.
    Muss heute mal wieder Fotos zur Doku machen. Stelle dann man das eine oder andere hier rein.


    Gruß
    Ralf

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!