Beiträge von Wolkenmeer im Thema „Schrittmotoren auf Selbstbau Montierung anpassen.“

    Hallo Gerrit,


    das habe ich mir auch schon überlegt, ob es nicht sinnvoll ist, für OnStep eine Art FAQ zu schreiben... Alle, die sich mit diesem Objekt
    beschäftigen, haben meist die gleichen Fragen.


    Nochmal zu der OnStep Bluetooth App: auch bei Anwendung der App benötigt der Arduino 5V am USB Anschluss, diesen habe ich bisher über die USB Schnittstelle des Notebook versorgt. Nun habe ich das mit einem iphone Netzstecker probiert, der hat einen USB Ausgang mit 5V und max 1A. Das funktioniert sehr gut.


    Viele Grüße
    Carsten

    Hallo Igor,


    vielen Dank für den Tipp, das war das Problem...nach dem Ausschalten von Bluetooth ging das Hochladen wieder...:-) Aber warum stört Bluetooth die Kommunikationen über die COM Ports ?


    Hallo Grogi,
    die richtigen COM Ports habe ich in IDE eingegeben, als ich die anderen verfügbaren Ports ausprobierte, es ging aber bei keinem. Jetzt wissen wir aber auch warum ;)


    Viele Grüße
    Carsten

    Hallo Igor,


    vielen Dank für den Tipp, das war das Problem...nach dem Ausschalten von Bluetooth ging das Hochladen wieder...:-) Aber warum stört Bluetooth die Kommunikationen über die COM Ports ?


    Hallo Grogi,
    die richtigen COM Ports habe ich in IDE eingegeben, als ich die anderen verfügbaren Ports ausprobierte, es ging aber bei keinem. Jetzt wissen wir aber auch warum.


    Viele Grüße
    Carsten

    Hallo Gerrit,


    gestern nacht war es bei uns so schön klar, kein Nebel, kein Mond...ich hätte so schön fotografieren können...:-(


    Das USB Kabel habe ich auch schon getauscht, das ist aber o.k. und ist nur 70 cm lang.
    Das Netzteil habe ich beim Laden eingeschaltet, geht auch nicht.
    Ich gehe mal davon aus, der Arduino das Problem macht.


    VG
    Carsten

    Hallo Gerrit,
    das ist die Version 1.6.7, die hat auch schon funktioniert.
    Ich habe auch andere USB Anschlüsse/Ports am Notebook geprüft, aber es geht bei keiner. Den Arduino Treiber habe ich auch überprüft, aktutalisiert und neu installiert. Über den seriellen Monitor kann über jeden Port auch eine Verbindung zum Arduino aufbauen. Bei Sketchen beginnt IDE mit dem Hochladen, aber gibt nicht die Meldung "Hochladen abgeschlossen", sondern bleibt im Modus "Hochladen". Nach ein paar Minuten kommen dann Fehlermeldungen wg. TimeOut...


    VG
    Carsten

    Hallo Gerrit,


    das wäre super, wenn die Quarzis schnell kommen würden, mein Arduino clone will jetzt keine Sketches mehr hochladen. "Probleme bei Hochladen auf das Board", wie IDE so schön sagt. Oder sagt "Hochladen" und nichts passiert. Gestern gingen noch kleine Sketches, aber OnStep schon nicht mehr und heute gar nichts...Ich frage mich langsam, wieviele Arduinos man eigentlich im Laufe eines Jahres benötigt, wenn die Halbwertszeit so klein ist...


    Viele Grüße
    Carsten

    Hallo Gerrit,


    das Problem mit der zu hohen Tracking Geschwindigkeit konnte ich lösen. Du hattest mit Deiner Vermutung recht, das beim Tracken nur 8 MS statt 32 MS gefahren wurden, dadurch war bei der berechneten Übersetzung die reale Geschwindigkeit zu hoch. Das Problem ist nicht ein falscher Wert in der config.h oder ein Verdrahtungsfehler, sondern ein Fehler beim Arduino. Die Pins 23,24 und 28 (für DEC) funktionieren nicht, sie sind dauerhaft ausgeschaltet, auch wenn ich diese Pins auf HIGH setze.
    Erkennen konnte ich das an der Spannung am Ausgang der Pins, die jeweils O V war, trotz Einstellung HIGH. Alle anderen Pinausgänge haben bei HIGH 5V und bei LOW 0V, wie es auch sein soll.


    In der OnStep.ino habe ich andere Pins für M0,M1,M2 ausgewählt und jetzt machen beide Stepper 32 MS. Das ist schon mal sehr gut.


    Ein anderes Problem ist bei dem neuen ASCOM Treiber 1.31 aufgetreten, den habe ich heute installiert. Bei den Properties von OnStep akzeptiert ASCOM nicht die Eingabe für Breite und Länge. Für geografische Breite habe ich +53*26 eingegeben, bei Länge -010*22, also die gleichen Werte wie bei der alten Version.


    Es soll das Formart sDD*MM (Breite) und sDDD*MM (Länge) verwendet werden, und genau das habe ich so eingegeben.


    Es kommt aber eine Fehlermeldung: "Unbehandelte Ausnahme einer Komponente der Anwendung. Wenn Sie auf "Weiter" klicken, ignoriert die Anwendung den Fehler und setzt den Vorgang fort. Die Länge darf nicht kleiner als 0 (null) sein.
    Parametername: length


    Speichern kann ich die Konfiguration so nicht. Warum akzeptiert ASCOM diese Zeichen nicht ?


    Viele Grüße
    Carsten

    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

    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 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

    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 Hans Peter,


    um Onstep komplett zu laden, muss du zuerst einen Ordner anlegen, der Namen OnStep hat. In diesen Ordner kopierst du alle geladenen OnStep files rein (z.B. aus dem Zip File "entpacken nach" oder über Copy/Paste, falls du sie schon entpackt hast)
    Mit dem Arduino Programm gehst du auf "Dateien öffnen", suchst den Ordner OnStep, und im Ordner klickst auf die Datei onestep. Arduino lädt dann alle Sketches, die im Ordner enthalten sind, das siehst du an den einzelnen Registern, die Arduino in der Oberfläche anzeigt.


    Jetzt kannst du mit "Hochladen" alle OnStep sketches auf den Arduiono übertragen. Wenn du "Hochladen" wählst, dann kompiliert Arduino zuerst und beginnt mit dem Hochladen (dauert ungefähr 10 sec).


    Wichtig: Du musst vor dem Hochladen in Arduino Werkzeuge/Board deinen Arduino auswählen und den USB Port (COM x) angeben, an dem du den arduino angeschlossen hast, das kannst du in windows unter "Geräte und Drucker" ablesen, welchen Port dein Arduino belegt.


    Dann sollte das Hochladen funktionieren, auch ohne Fehlermeldungen.


    Viele Grüße
    Carsten

    Hallo Gerrit,


    die Verkabelung stimmt, und mit Deinem Testprogram habe ich die 32MS nochmal getestet. Mit dieser Einstellung funktioniert der 32 MS Betrieb in beiden Richtungen, der Stepper läuft ruhig und rund.
    M1 pin LOW
    M2 pin HIGH
    M3 pin HIGH


    In OnStep kann ich für 32MS 5,6,7 wählen, bei 6 läüft der Stepper am "rundesten", da vermute ich mal, das OnStep mit 6 L-H-H schaltet. Trotzdem sind die errechneten StepsPerSecond (84.5) fürs Tracking viel zu hoch. Um 15°C in einer Stunde nicht zu überschreiten, muss eine Schneckenumdrehung ca. 3,5 bis 4 Minuten betragen, OnStep zieht das in 1,5 minuten durch.


    Wie geschrieben, wenn ich weniger StepsPerSecond einstelle, dann komme ich auf diesen Wert, aber wie verhält sich das beim Goto ?


    Viele Grüße


    Carsten

    Hallo Lothar,


    Howard hat mir eine Mail geschickt:


    "Carsten,
    I just did an update to Sky Planetarium that can be downloaded from my site. It now shows the alignment areas during 2-star and 3-star aligns.
    Howard"


    Ich habe diese Version (3.66) geladen, und erstmals ohne die Meldung "adress violation" starten können. Das ist schon mal sehr gut. Und ein sehr gutes neues Feature ist die Bereichsmarkierung in der Sternkarte, in der man für ein 2 oder 3 stern Algin einen geeigneten Stern auswählen kann, jeweils aktuell für deinen Ort und Uhrzeit, finde ich sehr praktisch.


    Howard ist zur Zeit sehr aktiv mit den neuen Versionen für SP, vor zwei Wochen war er noch bei Version 3.58...aber es ja gut, wenn er es weiter entwickelt.


    Viele Grüße
    Carsten

    Hallo Gerrit,
    bei HA habe ich 6/4/2 eingestellt. 5/4/2 geht auch. 5, 6 oder 7 sollten (sagt Howard auch) für 32 Microsteps machbar sein, nur jeweils in einer anderen Kombination von HIGH/LOW (hier haben wir schon mal diskutiert und Du hast die drei Möglichkeiten für 32 MS genannt). Aber sowohl im 6er Modus, wie auch beim 5er ist der berechnete Wert für StepsPerSecond zu hoch, also der Stepper zu schnell. Ich werde morgen die Verkabelung prüfen, vielleicht ist hier ein Fehler...Aber erstmal danke für den Tipp !


    Viele Grüße
    Carsten

    Hallo Lothar,


    ich glaube nicht, das diese Meldung der Kaufoptionen zusammenhängt, ich gehe da eher von einem Programmfehler aus. Den Begriff "acces violation" habe ich mal gegoogelt, das heißt "Zugriffsverletzung".


    Ich habe letzte Woche skyPlanetarium 3.61 geladen und dann kam der he Fehler, genauso wie bei den früheren Versionen. Aber wie geschrieben, wenn ich das Programm mehrfach öffne und mit dem Taskmanager schließe, dann funktioniert es irgendwann und die Fehlermeldung ist weg. Es kommt nach dem Öffnen 15 sec lang Howards Kaufangebot, danach kann ich auf "close" drücken und skyPlanetarium funktioniert.


    Viele Grüße
    Carsten

    Hallo Gerrit,


    das korrekte einnorden ist sicherlich sehr wichtig, wenn nächste Woche mein neuer Apo kommt und es über ein paar Stunden mal klar ist, werde ich das auch machen, ein Fadenkreuzokular habe ich. Die Scheiner Methode kenne ich noch von früher.


    Aber nochmal zu dem Tracking. Ich habe mein RA Schneckenrad nochmal genauer angesehen und mir die Mühe gemacht, die Zähne zu zählen. Es hat nicht nur 144, sondern 220 Zähne (Durchmesser 167 mm). Bei den #define StepsPerDegreeHA muss ich nach der Formel 20267 eintragen. Unter #define StepsPerSecond ergibt sich daraus (20267/3600 * 15) = 84,5 Steps per second als Sollwert für Tracking.


    Beim Tracking (Zimmertemperatur) ist dieser Wert viel zu hoch, OnStep fährt in ca. 15 min einen Weg über 30°C. In 15 min sollten aber nicht mehr als 3,75° nachgeführt werden (das sind 15° pro h). Diesen Wert erreiche ich ungefähr mit einer Einstellung nicht höher als 20 steps per second. Die Schnecke macht damit eine Umdrehung in 3'45''. Bis auf ein leises Tickern ist der Stepper kaum zu hören.


    Was ich nicht verstehe, warum ich mit den steps per second so weit runter muss, obwohl OnStep die 85,5 Steps vorgibt. Im Prinzip ist mir das egal, Hauptsache ich bekomme eine richtige Trackingrate, und mit dieser Stellschraube kann ich die sehr genau einstellen.
    Trotzdem interessiert mich natürlich, warum der OnStep Vorgabewert für mein RA Getriebe zu hoch ist. Die Übersetzung des Getriebes ist nach den vorliegenden Daten richtig berechnet.


    Viele Grüße
    Carsten

    Hallo Gerrit,


    zum Einnorden war es gestern zu hell, der Polarstern war noch nicht zu sehen, die Montierung war Richtung Norden ausgerichtet, nach dem Kompass. Gerade Postition über Wasserwaage lag auch vor, aber gescheinert habe ich noch nicht, es zogen wieder Wolken auf. Die Temperatur war bei ca. 1°C also nicht besonders kalt.


    Gestern habe ich mit #define StepsPerDegreeHA gebastelt, wenn ich hier einen geringeren Wert einsetze als den theoretischen, läuft die Schnecke deutlich langsamer. Bei 13265 (theoretischer Wert) dauerte eine Schneckenumdrehung 67 sec, bei 9000 waren es über 2 min...also kann man über diesen Weg auch was einstellen.


    Deinen Hinweis mit dem GPS Modul werde ich mir überlegen, ist vielleicht die einfachste Lösung.


    Viele Grüße
    Carsten

    Hallo Lothar,


    genau diese Meldung (Adress violation ....) bekomme ich jedesmal, wenn ich SkyPlanetarium neu geladen haben. SkyPlanetarium läßt sich auch nicht mehr schließen, das geht nur noch über den Task Manager von Windows. Die Meldung verschwindet irgendwann, wenn Du mehrmals öffnest und wieder über Taskmanager schließt, das 5 bis 10 x wiederholen, dann kommt die Meldung nicht mehr. Manchmal hilft nur Geduld und Beharrlichkeit...;-)


    Deine Schilderung von der Briefmarkengröße kann ich sehr gut nachvollziehen, ich war auch total überrascht, als ich den DRV8825 endlich in dem Paket endeckt habe...richtig fisselig wird es, wenn Du dieses Bauteil verlötest...das geht nur mit einer "dritten Hand", das ist eine Löthilfe mit Lupe, die bei Conrad 7,99 € kostet.


    Viele Grüße
    Carsten

    Guten Abend Gerrit,


    heute hatte ich endlich mal die Gelegenheit, OnStep am Himmel zu testen, zwischen 17:30 und 18.30 war es tatsächlich mal klar.


    Beim Tracken (Mond) habe ich festgestellt, das sich der Mond im Kamerafeld nach Osten bewegt. Ich habe das mit der Kamera im LiveView verfolgt, also seitenrichtig. Demzufolge trackt OnStep zu schnell.


    Nun kann man in der config.h mit #define StepsPerDegreeHA die Stepper/Getriebe Übersetzung eintragen. Bei mir ist das:
    200 * 32 * 5.181818 * 144/360 = 13265
    Steps pro 360° x Microsteps x Planetenradgetriebe/Stepper x Zähne Schneckenrad.
    Dazu wird bei #define StepsPerSecond (13265/3600)*15 = 55,3 eingetragen. Beides habe ich so gemacht und es müsste theoretisch eigentlich stimmen.


    Aber praktisch bedeutet zu schnelles Tracking, die angegebene Übersetzung ist zu klein, d.h. ich müßte #define StepsPerDegreeHA + #define StepsPerSecond erhöhen, um die richtige Geschwindigkeit zu bekommen... oder sehe ich das falsch ?


    Die App bietet die Möglichkeit, schneller oder langsamer zu tracken, aber das hat kaum eine Auswirkung.


    Viele Grüße
    Carsten