Die Vixen Super Polaris ist eine parallaktische Montierung für astronomische Fernrohre. Dieser Beitrag beschreibt die Aufrüstung dieser Montierung mit Nachführmotoren und GoTo-Fähigkeiten mit einem minimalen Budget von ca. 60 CHF.
Ich habe seit der hier beschriebenen Version noch einige Aenderungen gemacht. Diese finden sich am Ende des Artikels. Update 2019 Auf allgemeinen Wunsch und wegen der grossen Nachfrage (LOL…) steht nun das neue Elektronik-Gehäuse und der Handcontroller als STL/PDF zum Download bereit.
Etwas Geschichte
Das erste Fernrohr, ein 125mm Newton, das ich mir mit süssen 15 Jahren mit Hilfe der AVZ beschaffte, stand auf einer händisch zu schiebenden Montierung, die ein Amateur-Astronom irgendwann in den frühen Fünfzigern aus einem soliden Stück Ahorn und ein wenig Stahlrohr geschnitzt hatte. Für die damalige Zeit ein schönes Objekt, was mir sicher ein Jahr lang Freude gemacht hat. Irgendwann stand mir der Sinn dann doch nach etwas mehr Komfort und ich schaffte mir von meinem sauer Ersparten mit Hilfe der Eltern eine Vixen Super Polaris auf Alu-Stativ an. Das Ding kostetete natürlich schon in der Standard-Ausführung eine astronomische Summe (…), von Nachführmotoren musste man da mit Schülerbudget gar nicht anfangen. Aber wenigstens konnte man zum Nachführen drehen statt schieben, und die Montierung hatte Teilkreise. Ich habe damit tatsächlich mal die Venus am Taghimmel gefunden.
Zeitsprung vorwärts von 20 Jahren: Mit Studium und Beruf trat die Astronomie weit in den Hintergrund. Vergessen hab ich sie nie, aber nicht genügend Zeit dafür gehabt, dass sich eine Erweiterung der Ausrüstung aufgedrängt hätte. In der Zwischenzeit gibt’s Digitalkameras, billigen Chinakram, tolle GoTo-Systeme, und sogar die simplen Original-Motoren für (immer noch) 300 Franken könnte ich mir leisten. Und dann steht auch noch ein längerer Frankreich-Urlaub an – etwas muss getan werden. Eine neue Montierung zwischen HEQ5 und EQ6 wäre natürlich nett, das kann ich aber noch nicht rechtfertigen. Ein fixfertiges GoTo-System, was an die Super Polaris passt, schlägt mit 300 Franken zu Buche, das ist zu viel für das alte Schlachtschiff. Das muss anders gehen.
Eine Lösung
Und tatsächlich, das Internet ist des Makers Freund: Ein netter Mensch hat ein komplettes GoTo-System programmiert, welches auf einem Arduino Mikrokontroller läuft und gewöhnliche Schrittmotoren ansteuern kann. Die Software (oder eher Firmware, wenn man so will) heisst OnStep. Die Steuerung kann über eine Android-Software erfolgen, über Planetarium-Software auf dem PC oder über eine Handsteuerungs-Box. [1] – [4]
Gesehen, gebaut!
Planung
Elektronik
Die Elektronik der Steuerung besteht aus einem Arduino-kompatiblen Board mit ATMega2560 und einem Erweiterungs-Board, welches die Schrittmotor-Treiber trägt und für die Stromversorgung mit Logik- und Motorspannung sorgt. Für die Kommunikation nach aussen kann die USB-Schnittstelle des Arduino oder ein Bluetooth-Empfängermodul verwendt werden. Das nachstehende Schema zeigt meine spezielle Lösung, für die ich einen alten ArduPilotMega 1.5 verwendt habe – ohne das fliegerspezifische Sensorboard natürlich.
Mechanik
Die Konstruktion ist nicht von besonderer Raffinesse, sondern basiert in erster Linie darauf, welche Reststücke ich beim Metall-Händler und in meiner Restekiste gefunden habe. Der Motorhalter besteht aus einem Aluminium-Winkelprofil, welches den Motor trägt und mittels eines passenden Klotzes in den entsprechenden Ausschnitten an der Montierung befestigt wird. Das Gehäuse wird komplettiert mit einem Deckel aus Alu-Blech. Die Kraft wird über einen T2.5 Zahnriemen und zwei Riemenscheiben mit 12 und 48 Zähnen auf die Antriebswelle der Montierung übertragen. Die (durchaus kritische!) Auslegung der Antriebsübersetzung ist weiter unten beschrieben. Eine simple Box, gelasert aus MDF, nimmt die elektronischen Bauteile auf. Sinnvollerweise sollte diese wohl aus etwas feuchtigkeitsbeständigerem Material wie PMMA oder so hergestellt werden. Ein paar Kleinigkeiten wie Flansche für die Riemenscheiben und Kabeldurchführungen haben ich 3D gedruckt aus ABS, diese Teile sind aber in erster Linie kosmetisch.
Verwendete Hardware
Hier eine Auflistung der wichtigsten Komponenten und Bezugsquellen. Preise in Klammern: Komponente bereits vorhanden.
Komponente | Beschreibung | Anz/Dim | Quelle | Preis |
Motoren | Nema17 Stepper, 34mm lang | 2 | ebay | (CHF 11.00) |
Haltewinkel | Alu-Winkel, 60x60x4 | 120mm | www.metallladen.ch | CHF 5.00 |
Haltewinkel | Alu-Profil, 15×15 | 80mm | CHF 2.00 | |
Gehäuse-Deckel | Alu-Blech | 200mm x 400mm | Schrottkiste | |
Zahnriemen | T2.5, 6mm, 160Z | 2 | www.beltingonline.com | GBP 6.50 |
Riemenscheiben | T2.5, 12Z | 2 | www.beltingonline.com | GBP 6.50 |
Riemenscheibe | T2.5, 48Z | 2 | www.beltingonline.com | GBP 5.00 |
Microcontroller | Arduino Mega 2560 | 1 | ebay | (USD 8.00) |
Stepper-Treiber | DRV8825 auf Breakout-Board | 2 | ebay | (USD 4.00) |
Bluetooth-Modul | HC-05/HC-06 | 1 | ebay | (USD 2.00) |
Kabel, Stecker, Netzteil, … | Grabbelkiste | |||
Total | theoretisch | ~ CHF 63.00 | ||
Total | praktisch | CHF 35.00 |
Hardware Bemerkungen
Es braucht natürlich nicht ein Original-Arduino-Board zu sein. Jedes Board, welches einen AtMega2560 enthält (und sich über die Arduino IDE programmieren lässt) ist ausreichend. Aus Spass am Vergnügen habe ich einen alten ArduPilot Mega verwendet, welcher einst in einem Modellflieger als Autopilot-System gedient hat und bei einem Ereignis unabsichtlicher negativer Flughöhe (aka. Absturz) seines Sensorboards und damit seiner bestimmungsgemässen Verwendung verlustig ging. Sag nochmals einer was von Schrottsammler… :)
Die Schrittmotortreiber gibt es mit verschiedenen Microschritt-Auflösungen. Vor der Anschaffung unbedingt den Antrieb durchrechnen [8], damit die Auflösung ausreicht. Die teueren Originaltreiber steppen übrigens auch nicht besser als die China-Clones.
Aus der Wahl der Schrittmotoren kann man eine Wissenschaft machen. Man kann aber auch einfach die nehmen, die in der Grabbelkiste rumliegen…
Herstellung und Zusammenbau
Motorhalter
Die Teile für die Motorhalter wurden nach der Zeichnung gefräst. Die Riemenscheiben kommen vom Händler ohne Bohrung für Welle und Feststellschraube, und wurden dementsprechend aufgebohrt und gerieben. Die kleinen 12-Zahn-Riemenscheiben haben eigentlich zu wenig Fleisch für die 5mm Bohrung. Beim Aufbohren gehen beide Flansche und damit die Feststellschrauben verloren. Sie wurden daher ganz simpel mit Cyanoacrylat auf den Motorwellen festgeklebt.
Bei der Montage der Motorträger müssen die Wellen genau ausgerichtet werden. Weil die Riemenscheiben keine Flansche haben, entgleisen die Riemen, wenn die Achsen von Motor Antrieb der Montierung nicht genau parallel laufen. Die Auflagefläche habe ich einfach mal als parallel zur Antriebsachse angenommen und damit offenbar recht gehabt. Vixen hat freundlicherweise pro Motor 4 Feststellschrauben vorgesehen, welche die genaue Einstellung ermöglichen.
Stepper-Treiber Breakout Board
Für die Steppertreiber habe ich ein kleines Breakout-Board aus Lochraster-Platine gelötet, damit ich notfalls einzelne Treiber tauschen (oder upgraden) kann. Ausserdem vereinfacht dies die Verkabelung der ganzen Geschichte, weil einzelne Pins der Steppertreiber frei mit dem Arduino-Board verbunden werden können. Die Lötarbeit gewinnt keine Preise, daher verweise ich diskret auf den obenstehenden Schaltplan :)
Die „Schaltung“ habe ich natürlich schnell auf einem Steckbrett getestet und für gut befunden.
Elektronik-Box
An der Box ist weiter nichts Geheimnisvolles. Mit Zugang zu einem Lasercutter ist das eine Sache von 15 Minuten. Ausserdem hat wohl jeder Maker seine eigene Art, ein Kistchen zu bauen.
Zuletzt werden alle elektronischen Teile passend (und hoffentlich kurzschlussfrei) verdrahtet. Dann kann es an die Konfiguration der Software gehen.
Kleinteile
Der Vollständigkeit halber und aus Spass habe ich noch ein paar Kleinteile gedruckt. Die Zahnriemen laufen eigentlich problemlos zentrisch auf den Riemenscheiben, wenn die Achsen perfekt ausgerichtet sind. Sicherheitshalber habe ich trotzdem einen Ersatz geschaffen für die Flansche der kleinen Riemenscheiben. Und die Kabeldurchführung durch die Motorabdeckungen hat ebenfalls noch eine winzige Zugentlastung erhalten.
Konfiguration
Firmware konfigurieren
Zum Programmieren des Mikrokontrollers benötigt man die Arduino-„Entwicklungsumgebung“. Diese Basiskentnisse sollen hier aber nicht beschrieben werden, wir tauchen direkt in den Code. Die Firmware-Konfiguration ist dank dem gut kommentierten Code einfach vorzunehmen. Alle wichtigen Einstellungen findet man in config.h.
Die nötigen Berechnungen für Schritte/Winkelgrad und Schritte pro Sekunde können mit einem Excel-Sheet berechnet werden, welches der Entwickler zur Verfügung stellt. Die Übersetzungsverhältnisse vom Schrittmotor bis zum Schneckenrad sind etwas kritisch. Zum Einen sollte ein einzelner Schritt des Schrittmotors nur eine sehr kleine Winkelbewegung (Bruchteile von Winkel-Sekunden) auslösen, damit präzise und weich nachgeführt und korrigiert werden kann. Andererseits aber muss bei einer GOTO-Bewegung unter Umständen über viele Winkel-Grade geschwenkt werden.
Da der verhältnismässig langsam getaktete AtMega2560 nur eine begrenzte Anzahl Schritte-Befehle pro Sekunde erzeugen kann, muss man hier für jeden Antrieb gesondert einen guten Kompromiss finden. Bei der Vixen Super Polaris beträgt das Verhältnis von Schnecke zu Schneckenrad 1:144. Wenn der Schrittmotor 200 Schritte/Umdrehung macht, der Stepper-Treiber im 1/32 Microschritt-Betrieb ist und das Verhältnis von Stepper zu Schnecke nochmals 1:4 beträgt, ergibt dies 0.35 Winkel-Sekunden pro Microschritt, und bei einer minimalen Schrittlänge von 35us pro Schritt (entsprechend einer Schrittrate von ca. 30kHz) eine Schwenkrate von 2.8 Winkel-Grad pro Sekunde. Um höhere Raten zu erreichen kann alternativ ein schnellerer Mikrokontroller verwendet werden. Die Software ist bereits angepasst und getestet auf Teensy 3.1 Boards.
OnStep ermöglicht ausserdem seit neuerem, während des Betriebs fliegend die Microschritt-Auflösung der Treiber anzupassen. Die Umschaltung erfolgt dabei immer erst nach einem kompletten Vollschritt, so dass keine Schritte verloren gehen. Die dafür notwendige Verbindung der Microschritt-Eingänge der Treiber mit dem Arduino ist im oben stehenden Schema bereits verzeichnet.
Falls man (wie in meinem speziellen Fall) von der Standard-Pinbelegung (wie in config.h beschrieben) abweichen möchte oder muss, müssen noch einige Einstellungen der OnStep.ino vorgenommen werden. Hier ist etwas Sorgfalt gefragt, da die jeweiligen Pins nicht nur mit ihrer Arduino Pin-Nummer (1…57) angegeben werden müssen, sondern auch mit ihrer Hardware-Adresse in Form von Register und Bit (zb. PortA, Bit 7). Siehe dazu [5]–[7].
Stepper-Treiber einstellen
Für einen optimalen Lauf, also maximales Drehmoment bei minimalem Ruckeln, muss der Strom, mit welchem die Stepper.Motoren betrieben werden, korrekt eingestellt sein. Dazu gibt es bei den meisten Stepper-Treibern ein Trim-Potentiometer welches eine Referenzspannung zwischen Masse und Vcc einstellt. Abhängig von dieser Referenzspannung wird dann im Betrieb der maximale Strom für die Motoren geregelt. Die Referenz-Spannung kann als Funktion des Maximal-Stroms berechnet werden, dies ist unter [9] und [10] für ein paar gängige Treiber beschrieben.
Alternativ kann man auch einfach im Betrieb den Strom durch drehen des Poti dynamisch anpassen und so einen sauberen Lauf der Motoren zu erreichen. Als Anhaltspunkte dient folgendes:
- Imax zu klein: Motoren laufen zwar sehr leise, haben aber zu wenig Drehmoment. Bei hoher Drehzahl können sie mit einem Summen stehen bleiben.
- Imax zu gross: Motoren neigen in Mikroschritten dazu, auf den nächsten Vollschritt einzurasten, was zu einem ruckeligen Lauf führen kann. Bei hoher Drehzahl kann ebenfalls ein Blockieren auftreten.
Grundsätzlich besteht bei den billigen Treibern und durchschnittlichen NEMA17 Motoren nicht das Risiko, die Motoren mit zu hohem Strom zu zerstören, wenn man einen ungünstigen Zustand nicht zu lange beibehält. Garantien gibts bei dieser Aussage natürlich keine :)
Dioden?
Bluetooth-Modul konfigurieren
Im Prinzip ist die Verbindung zwischen Arduino und dem Bluetooth-Modul unkompliziert, vorausgesetzt die Baudrate ist auf beiden Seiten richtig eingestellt. Wenn die Baudrate des BT-Moduls bekannt ist, kann natürlich einfach die entsprechende Rate im Arduino-Sketch eingestellt werden. Falls aus irgend einem Grund Einstellungen am BT-Modul vorgenommen werden sollen, kann eine serielle Verbindung mit dem Modul aufgebaut werden (zb. über einen FTDI USB-Seriell-Konverter) und die Einstellungen über ein Terminal-Programm mittels AT Befehlen vorgenommen werden.
Bei dieser Aufgabe habe ich einige Zeit verloren: die AT-Befehle sind case sensitive! Das ersehnte OK kommt nur als Antwort auf AT, nicht auf at.
Weitere Infos zu den billigen China Bluetooth-Modulen HC-05 und HC-06 finden sich unter [13] – [15]. Man kann sogar über ein Firmware-Update aus einem HC-06 ein HC-05 und umgekehrt machen [16].
Das Resultat
Das System steuern
Das ganze System kann über ein Android-Smartphone oder eine Planetarium-Software auf dem PC gesteuert werden. Die Android-Software OnStep Controller 2 stammt ebenfalls aus der Feder des Entwicklers der Arduino-Software und ist im Play-Store zu finden. [17] Die Verbindung mit dem Smartphone wird einmal mit Pairing Code initialisiert, danach wird die Verbindung automatisch beim Start der Android-Software hergestellt. Die Software scheint beim Start zu hängen, wenn der Controller nicht erreichbar ist – nach einem gewissen Timeout kommt man aber doch in die GUI.
Mit OnStep Controller 2 kann die Montierung initialisiert und mit 1 bis 3 Sternen ausgerichtet werden. Danach können Objekte automatisch oder von Hand angefahren werden. Alternativ kann nach der Initialisierung die Steuerung an eine Planetarium-Software auf dem PC übergeben werden. Für diesen Zweck existiert ein ASCOM-Treiber für OnStep, welcher mit praktischen allen Planetarium-Programmen kompatibel ist. Siehe dazu [1].
Für eilige Zeitgenossen gibt es, zumindest was die Elektronik betrifft, mittlerweile ein kommerzielles Board zu erstehen für ca 85 USD. [19] Dieses Board ist allerdings ebenfalls Open Source und wird auf Hackaday.io dokumentiert. [18]
Update Feb. 2015
Das erwähnte kommerzielle Board ist ein Arduino Shield, es gibt ausserdem noch eine ST4-Port Erweiterung und eine passende Handkontrollerbox dazu. Alle Entwicklungen sind dokumentiert der Seite des Entwicklers Steven Sagerian. [20]
Update Juni 2017 – Diverse Anpassungen an der Elektronik
Für die Sommerferien 2017 habe ich einige Anpassungen gemacht:
- StepUp Spannungswandler, Versorgung der Schrittmotoren mit ca 30V – dies hat tatsächlich den nicht ganz ruhigen Lauf der 8825 Stepper-Treiber etwas verbessert. Trotzdem habe ich die Treiber gleich anschliessend ausgewechselt.
- Wechsel der Stepper-Treiber auf SilentStepStick mit TMC2100 – dies war die signifikanteste Verbesserung im Laufverhalten. Die SilentStepSticks können in einem „silent“ und einem „performance“ Modus betrieben werden. Bei vernünftig ausbalancierter Beladung der Montierung können die Treiber tatsächlich im Silent-Modus betrieben werden und sind damit absolut unhörbar. Natürlich sind damit keine gewaltigen Beschleunigungsrampen möglich und auch keine Geschwindigkeits-Rekorde möglich. Die Schwenkrate habe ich im Moment auf ca 2.5° pro Sekunde gestellt, was mir bisher in der Praxis nie als auffällig „lahm“ vorkam.
- normaler Arduino Mega 2560 statt dem „Recycling-Projekt“ – aus Platzgründen, um das StepUp Modul integrieren zu können.
- Handcontroller und neues Gehäuse, welches weniger feuchtigkeitsanfällig ist
Die SilentStepSticks gibt es übrigens mit zwei verschiedenen Chipsets, TMC2100 und TMC2130. Die Version TMC2130 ist „on the fly“ programmierbar über SPI. Wenn ich das richtig mitbekommen habe, kann OnStep in neueren Versionen damit während des Betriebs die Motorcharakteristik anpassen für ruhiges Tracking und schnelles, kraftvolles Schwenken, vergleichbar dem einstellbaren Microstepping bei 8825 Treibern.
Ich hatte noch die erste, nicht software-programmierbare Version der SilentStepSticks zur Hand. Meine laufen daher immer mit 16 Microsteps, und ich bin mit der Performance absolut zufrieden. Wenn ich frisch anfangen würde, würde ich dieses Feature aber sicher einbauen.
Update Juli 2019 – 3D-Daten Elektronik-Gehäuse
Die Daten für das Elektronik-Gehäuse und den Handcontroller finden sich hier zum Download.
Beide 3D gedruckten Teile (STL) lassen sich ohne Support drucken, sind aber relativ massiv gestaltet, ich würde unbedingt empfehlen, die Teile aus einem verzugfreien Material wie PLA oder PETG zu drucken. Der Deckel (PDF) ist jeweils aus 3mm MDF hergestellt. Ausdrucken, aufkleben und bohren/aussägen – oder einfach einen Lasercutter benützen ;)
Die Ausschnitte für die Stecker sind passend für GX Aviation Connectors mit 12mm Durchmesser. Alle üblichen Verdächtigen in Fernost haben diese Stecker in ganz passabler Qualität zu erstaunlich günstigen Preisen im Angebot. Das Löten dieser Stecker ist allerdings eine echte Nervenprobe… ;)
Viel Spass.
Links
Basics
[1] Homepage des Entwicklers
http://www.stellarjourney.com/index.php?r=site/equipment_onstep
[2] Github
https://github.com/hjd1964/OnStep
[3] Forums-Thread Cloudy Nights > DIY ET-8 GOTO Mount
(nicht erstellt vom Entwickler, hat aber viel Info, mittlerweile inaktiv)
http://www.cloudynights.com/topic/485116-diy-et-8-goto-mount/page-5
[4] Yahoo Group OnStep Telescope
(nicht öffentlich, Beitritt kein Problem)
https://groups.yahoo.com/neo/groups/onsteptelescope/info
OnStep Telescope Mount Goto Controller
https://groups.io/g/onstep
[17] Android-Software zum Initialisieren und Steuern von OnStep
https://play.google.com/store/apps/details?id=com.onstepcontroller2
Vergleichbarer Umbau von Carsten Moos
http://www.cmoos.de/astro/bludit/onstep
Cleveres Detail, mir bisher unbekannt: vorgefertigte, günstige NEMA 17 Haltewinkel
Hintergrund-Info
[5] Port Registers instead of just pin number (Stepper motors)
http://forum.arduino.cc/index.php?topic=193559.0
[6] AVR Ports <> Arduino Pins Mapping Tabelle
https://docs.google.com/spreadsheets/d/16MIFE4ITEisEDUBh3H4A7WZga1Sm1Pm-igS3r0A58L8/pub?gid=0
[7] Nema17 Steppermotor Datenblatt
https://www.sparkfun.com/datasheets/Robotics/SM-42BYG011-25.pdf
[8] Berechnungstabelle Schrittverhältnisse
http://www.stellarjourney.com/assets/downloads/OnStep.xls
Stepper Treiber
[9] Pololu stepper driver board
Allgemeine Info, Strom einstellen
Aus <http://reprap.org/wiki/Pololu_stepper_driver_board#Tuning_motor_current>
[10] A4988 vs DRV8825 Chinese Stepper Driver Boards
Aus <http://reprap.org/wiki/A4988_vs_DRV8825_Chinese_Stepper_Driver_Boards>
[11] Stepstuck revisited… DRV8825
The amazing DRV8825 driver carrier has a similar flaw, strange jumping of steps in 32th micro-stepping mode.
Aus <http://www.morgan3dp.com/stepstuck-revisited-drv8825/> February 28, 2013
[12] DRV8825 missing microsteps
sehr ausführliche erklärung, inkl. lösungsansatz
Aus <http://cabristor.blogspot.ch/2015/02/drv8825-missing-steps.html> Feb 12, 2015
HC-05/HC-06 Bluetooth Adapter
[13] Using the HC-06 Bluetooth Module
very rich resource!
Aus <http://mcuoneclipse.com/2013/06/19/using-the-hc-06-bluetooth-module/>
[14] One board… several firmwares
explanations about the various firmwares these bluetooth boards can be flashed with…
Aus <http://byron76.blogspot.ch/2011/09/one-board-several-firmwares.html>
[15] AT command mode of HC-05 and HC-06 Bluetooth module
Aus <http://www.instructables.com/id/AT-command-mode-of-HC-05-Bluetooth-module/>
[16] Flashing a new firmware
you can even make the one from the other
Aus <http://byron76.blogspot.ch/2011/09/i-hope-you-have-good-time-soldering.html>
Kommerzielles Board
[18] Hackaday.io – OnStep Controller
https://hackaday.io/project/5350-onstep-controller
[19] Kommerzielles Board, ca. 85 USD
http://www.cloudynights.com/classifieds/item/51918-onstep-controller-board-rev-c-pre-orders/
[20] Weitere Info zu den Boards von Steven Sagerian
https://sites.google.com/site/plainfieldastronomy/home/projects
Vielen Dank für den ausführlichen Bericht zu einem tollen Projekt! Das sieht alles sehr, sehr schick aus!
Da ich auch die gute alte Super Polaris habe (Ihre Geschichte in der Einleitung kommt mir irgendwie sehr bekannt vor) und ich auch die OnStep-Steuerung nachrüsten möchte, bin ich natürlich sehr angetan von Ihrem Projekt.
Besonders interessant finde ich die Lösung mit den Zahnriemen. Platzbedingt ist die nötige Übersetzung mit zwei ineinander greifenden Zahnrädern an der Super Polaris schwierig. Ihre Idee hat mir da neuen Auftrieb gegeben.
Eine (oder mehrere) Fragen hätte ich dazu noch: Liegen denn mittlerweile Erfahrungen zum Einsatz unterm Himmel vor? Ist die Zahnriemen-Lösung genau genug für die Nachführung (evtl. auch fotografisch für DSLR-Astrofotos)? Über ein Update bzw. ein paar Infos dazu würde ich mich sehr freuen!
Beste Grüße und wolkenfreien Himmel!
Florian
Hallo Florian,
danke für Dein Feedback! Es freut mich, wenn’s jemandem weiterhilft. Zu Deinen Punkten:
Die Zahnriemenlösung ist durchaus bewährt in verschiedenen Anwendungen. Als Beispiel für einen Teleskop-Antriebe wäre da zb Astromeccanica, ausführlich beschrieben von Carsten Arnholm: http://arnholm.org/astro/da1/. Es scheint mir bei nachträglicher Betrachtung, dass ich da wohl unbewusst abgekupfert habe :) Andererseits sind Zahnriemenantriebe auch bspw. auf CNC-Maschinen zur Kraftübertragung gängig, und da sind Positioniergenauigkeiten von 0.01mm nichts Ungewöhnliches.
Ich habe bisher nur optische Beobachtung betrieben und dabei keinerlei Probleme gehabt. Die Positioniergenauigkeit ist für optische Beobachtung absolut ausreichen. Bei mittlerer Vergrösserung habe ich Objekte auch nach mehrmaligem Anfahren immer auf Anhieb im Okular gehabt. Das setzt naürlich eine einigermassen genaue Kalibrierung mit 3 Sternen voraus, ist aber recht schnell gemacht und kann sogar eine halbwegs schlampig ausgerichtete Pol-Achse kompensieren.
Zur fotografische Anwendung habe ich bis jetzt leider keine Erfahrungen machen können. In diesem Zusammenhang ein kleines Caveat zu den omnipräsenten, stinkbilligen 8825 Stepper-Treibern: Diese Treiber haben ein recht bekanntes Problem beim 1/32 Microstepping. Für meine Zwecke konnte ich durch konservatives Einstellen des Motorstroms und sauberes Auswiegen der Montierung einen absolut seidenweichen Lauf erreichen. Es ist aber nicht auszuschliessen, dass sich das Problem beim Fotografieren mit langer Brennweite zeigt, darum: Kauf Dir besser geeignete Stepper-Treiber als die 8825, die Aufpreise sind mittlerweile verkraftbar. Für eine konkrete Empfehlung würde ich mal auf dem OnStep-Board nachfragen.
Grundsätzlich, in a nutshell, kann man zum Thema Stepper-Motoren sagen: Viel Kraft (weil schwer oder unbalanciert) braucht hohen Strom, viel Kraft auch bei hohen Drehzahlen braucht ausserdem viel Spannung. In beiden Fällen sind die 8825 Treiber nicht die optimale Lösung. Die richtige Auswahl von Stepper-Treiber und Stepper-Motor fällt aber in den Bereich der schwarzen Magie (also der Elektrik und Elektronik ;) , doch selbst ein eher ungünstig ausgelegtes Setup wie meines taugt für die gelegentliche Anwendung ausgezeichnet.
LG, Christoph
Hallo Christoph,
schöne Seite. SP mit GoTo. Würdest Du es wieder genauso bauen oder hast Du inzwischen an Änderungen gedacht?
Viele Grüße
Carsten
Hallo Carsten
Danke für Deinen Kommentar! Du erinnerst mich daran, dass ich den Artikel schon lange mal updaten wollte. Das ist nun geschehen, unten im Artikel gibts noch ein paar neue Fotos der Aenderungen, sowie die nachstehende Info.
Ich bin immer noch zufrieden mit der Lösung und würde das heute nochmals gleich bauen. Ich würde sicher bei einem hypothetischen nächsten Mal nicht mehr Aufwand treiben, sondern genau so schön low budget bleiben. Wenn ich mich recht erinnere, war – neben dem nicht unbeträchtlichen Aufwand für die Recherche – das Biegen der Blechabdeckungen der grösste Zeitfaktor. Und die könnte man auch durchaus weglassen ;)
Wenn man wirklich deutlich mehr Leistung will, gibt es heute ja diverse geeignetere Montierungen für halb so viel Geld wie die Super Polaris damals…
Ich habe seit dieser Beschreibung/Version noch folgende Aenderungen gemacht:
– StepUp Spannungswandler, Versorgung der Schrittmotoren mit ca 30V – dies hat tatsächlich den Lauf der 8825 Treiberchen schon mal deutlich verbessert
– normaler Arduino Mega 2560 statt dem „Recycling-Projekt“ – aus Platzgründen, um das StepUp Modul integrieren zu können.
– Handcontroller und neues Gehäuse, welches weniger feuchtigkeitsanfällig ist
– Wechsel der Treiber auf SilentStepStick TMC2100 – dies war die signifikanteste Verbesserung im Laufverhalten. Die SilentStepSticks können in einem „silent“ und einem „performance“ Modus betrieben werden (frag mich grad nicht, wie die richtig heissen…) Mit vernünftig ausbalancierter Beladung der Montierung können die Treiber tatsächlich im Silent-Modus betrieben werden und sind damit absolut unhörbar. Natürlich sind keine gewaltigen Beschleunigungsrampen möglich und auch keine Geschwindigkeits-Rekorde. Die Schwenkrate habe ich im Moment auf ca 2.5° pro Sekunde gestellt, was mir bisher in der Praxis nie als auffällig „lahm“ vorkam.
Die SilentStepSticks gibt es übrigens in zwei Ausführungen. Eine davon ist „on the fly“ programmierbar über SPI. Wenn ich das richtig mitbekommen habe, kann OnStep in neueren Versionen damit während des Betriebs die Motorcharakteristik anpassen für ruhiges Tracking und schnelles, kraftvolles Schwenken, vergleichbar dem einstellbaren Microstepping bei 8825 Treibern.
Ich hatte noch die erste, nicht software-programmierbare Version der SilenStepSticks zur Hand. Meine laufen daher immer mit 16 Microsteps, und ich bin mit der Performance absolut zufrieden. Wenn ich frisch anfangen würde, würde ich dieses Feature aber sicher einbauen.
Beste Grüsse und viel klaren Himmel diesen Winter (hier in Zürich haben wir seit 14 Tagen Hochnebel…)
Christoph
Hi,
ich versuche gerade anhand deiner schönen Anleitung das Ganze nachzubauen, da ich noch Stepper Treiber, Motoren und HC 05 Bluetooth module rumliegen habe ist der Kostenaufwand auch recht gering denke ich.
Was mich interessieren würde ist ob es das schicke Case als stl irgendwo zum download gibt. Ich würde die Druckvorlage gerne verwenden, wenn ich darf, weil es wirklich gut aussieht und ich im konstruieren von 3-D Druckvorlagen eher nicht so gut bin.
Viele Grüße, yo
Hi yo,
klar, das lässt sich machen! Schau mal ganz unten im Artikel, da sind die Dinger jetzt angehängt.
Falls du deinen Nachbau irgendwo online dokumentierst, würde ich mich übrigens freuen, falls du hier einen Link plazieren könntest…!
LG und viel gute Sicht,
Christoph
Hallo Chris,
erst einmal recht herzlichen Dank für die vielen Infos, die du hier zur Verfügung stellt. Dein Montierungs-Umbau finde ich absolut klasse. Da ich mehr der Bastler bin, soll heißen, dass ich mit der Hardware gut zurecht komme hapert es bei mir allerdings mit der Software für den Arduino. Ich habe mir die Entwicklungsumgebung heruntergeladen und müsste nun wissen, was ich auf der Seite“OnStep“ alles an Programmen runterladen muss, um es auf den Arduino aufzuspielen.
Ich gehe auf OnStep,
Branch:release-3.16,
addons,
– muss ich dann alles aufspielen oder nur das von dir erwähnte config.h?
Dann hätte ich noch eine Frage:
Ich habe noch einen Motortreiber (L293D, für 2 Servos oder 2 Steppermotoren, oder 4 DC-Motoren), kann ich diesen auch verwenden, oder wäre es besser, die zu nehmen, die du vorschlägst?
Ich würde mich freuen, wenn du mir da weiterhelfen könntest.
Viele Grüße
Rainer Rohrbach
Hallo Rainer
Dein Kommentar hat sich leider aufgrund diverser IT-Untiefen meiner Kenntnis entzogen bis gerade eben – sorry for that!
Vielleicht hilft es dir oder anderen trotzdem noch:
In der config.h trägst du alle relevanten Einstellungen für die Firmware ein. Um den Code erfolgreich zu kompilieren und auf den Microcontroller hochzuladen brauchst du aber alle Dateien welche im Verzeichnis der .ino-Datei sowie den Unterverzeichnissen liegen.
Die L293D Treiber sind mit der richtigen Software-Unterstützung m.W. tatsächlich geeignet, um Schrittmotoren zu betreiben. Mit den gängigeren Treibern wie 4988, 8825 sowie den verschiedenen Trinamic-Treibern bekommst du aber verhältnismässig extrem viel mehr Leistung fürs Geld geboten. Ich würde an deiner Stelle nicht weiter über die L293D nachdenken und zu einem der erwähnten Treiber greifen. Die Trinamic erfordern etwas mehr Gedanken bei der Konfiguration aber revanchieren sich mit enorm viel Komfort und sehr ruhigem Lauf.
LG und clear skies,
Chris
Vielen Dank für diese ausführliche Dokumentation. Es ist auch mit abstand die beste, die ich finden konnte…trotzdem eine Frage, vielleicht hab ich das auch einfach nur überlesen aber in dem Schaltplan oben sieht man kondensatoren, eine sicherung und einen LM7805. Nach meiner Recherche müssten das 100mikrofarad kondensatoren sein und ,wie gesagt, ein LM7805. Aber welche Sicherung baue ich dort ein? Bzw sind Sicherung und der LM7805 zwingend notwendig?
MfG Hubertus
Hallo Hubertus
Danke für die freundlichen Blumen!
Die Sicherung ist eine kosmetische Sache – sage ich als Architekt, nicht El. Ing. 😉 Korrektes Design erfordert eine Sicherung am Leistungsschaltkreis. In meiner konkreten Umsetzung existiert diese Sicherung aber nicht, und bis jetzt ist noch nichts abgebrannt… Falls mich ein unbändiger Wunsch überkommen sollte, die Sicherung zu implementieren, würde ich hier die maximale Stromaufnahme beider Motoren plus ein paar Prozent einsetzen.
Der LM7805 ist erforderlich, wenn deine Spannungsversorgung höher als 12V liegt. Wenn dein Netzteil für die Motoren höchstens 12V liefert, kannst du diese Spannung auch direkt auf den Spannungsregler des Arduino geben über den RAW Pin. In meinem Fall betreibe ich die Motoren mit ca 32V, da dies den 8825 Treibern am besten schmeckt und gerade noch in der Limite des LM7805 liegt. Die 5V des LM7805 gebe ich dementsprechend auf den (ungeregelten) 5V Pin des Arduino.
Die Kondensatoren am LM7805 würde ich gemäss der Beispiel-Implementation aus dem Datenblatt des LM7805 oder diversen Internetquellen einsetzen. Aber selbst ohne jegliche Filter-Kondensatoren liefert der LM7805 eine stabile Spannung, die der Arduino problemlos verdaut. Da ich wie gesagt kein El. Ing. bin, kann ich dir nicht sicher sagen, ob das nur für mein konkretes Netzteil oder den LM7805 im Allgemeinen zutrifft. Solange der Arduino unter allen Bedingungen stabil läuft, bist du dabei. Die Stabilität der 5V Quelle ist beim Arduino m.W. vor allem kritisch, wenn du den Analog-Digital-Converter des Arduino verwendest, was in unserer Situation nicht der Fall ist.
Ich wünsche Dir Erfolg mit deiner Umsetzung und viele klare Nächte,
Christoph
Dankeschön für diese tolle Dokumentation,
auch wenn ich die Stepper nur zum Tracken und Guiden nutze weil ich gerne selbst die Koordinaten anfahre.
Ich weiß nicht, ob andere vielleicht auch das Problem haben … aber meine Montierung wurde vermutlich mal gewartet und anschließend wurde wohl mindestens die RA-Schnecke andersherum eingesetzt.
Das führte dazu, das ich die gefundenen 3D-Modelle (komplette Gehäuse mit Halteblöcken) spiegeln musste damit die passten. Auf der Motor-Seite ist ja die große Mutter auf den Schneckenachsen. Die erzeugt einen Abstand und die Riemenscheibe kollidiert so nicht mit der Montierung. Bei mir ist in RA diese Mutter auf der anderen Seite als bei dir. In DEC ist es so wie bei dir. Da ich beide Modelle Spiegeln musste war es beim Ersteller der Modelle wohl genau andersherum als bei mir.
Möglicherweise lohnt sich in deiner Doku ein kleiner Hinweis darauf, das man schauen sollte wie genau die Achsen orientiert sind. Sonst baut/druckt man, wo die Seite relevant ist, für die Tonne …
Ich nutze einen RaspberryPi um alles inkl, Guiding, Auslösen und Dithern zu steuern. Der RA-Moter läuft auf Hardware PWN.
Viele Grüße & Clear Skyies
Aaron
Hi Aaron
Danke für das nette Feedback!
Eine interessante Entdeckung, die Du schilderst. Ich habe die Montierung bisher nicht zerlegt und es war mir nicht klar, dass man den Block mit der Schnecke auch anders herum montieren kann. Danke für den Hinweis.
Es würde mich interessieren, wie/worauf Deine Lösung mit dem Raspberry aufgebaut ist. Vielleicht hast Du einen Link dazu? Ich habe in den letzten 2 Jahren die wenige Zeit vor allem mit Beobachten verbracht und bin software-seitig nicht sehr up to date.
LG, Chris
Hallo Chris,
ich habe durch Zufall eine Montierung von 10MICRON GM3000 bekommen weil die Elektronik
wasserschaden hat und out ist.
Alles mechanische ist i.o. inkl. den Schrittmotoren.
Da bietet sich deine On Goto Steuerung direkt an !!
Kann man das Kommerzielles Board, ca. 85 USD
noch irgendwo bekommen?
Das ist ja mal ein Schnäppchen, hoffe ich ;)
Ja, der link aufs cloudy nights Forum ist tot, sorry. Vielleicht findest du den verlinkten Post, wenn du direkt auf cloudy nights danach suchst (Anmeldung nötig). Ich kann dir nicht sagen, ob Steve Sagerian das Board noch herstellt. Ich meine aber, es gibt inzwischen auch noch andere käufliche Nachbauten.
Der beste Ort für eine entsprechende Anfage ist wohl das OnStep Forum auf main@onstep.groups.io | Home auf https://onstep.groups.io/g/main.
Viel Erfolg und immer gute Sicht
Chris
Hallo, was ist die rote Karte, die mit dem Mega oben verbunden ist, wo kann ich sie bekommen?
Haben Sie eine E-Mail- oder Facebook-Adresse, an die ich Ihnen direkt schreiben kann?
Welchen Code werden wir installieren? Ich frage mich, ob es ein detailliertes Video zum Hochladen und Ausführen gibt.
Sorry Sami, leider ist die Benachrichtigung zu deinem Kommentar nicht angekommen, meine Antwort kommt daher wohl zu spät…
Dennoch:
Das rote Board ist ein Arduino Mega Board aus einem Autopilot-Projekt, welches ich recycled habe. Ich habe die Steuerung mittlerweile auf einen original Arduino MEGA umgebaut. Heute würde ich vermutlich einen aktuelleren 32bit Microcontroller verwenden, ich weiss aber nicht, was gerade „state of the art“ ist für OnStep…
Hoffe, das hilft dir oder anderen Lesern weiter.
Chris
Schau dich für mehr Details auf der Homepage des Projekts um.
Hallo Chris,
habe einen ähnlichen Umbau mit einer Vixen Saturn Montierung vor.
Die Motore bei Deiner Montierung werden mit einer Zahnriemenübersetzung betrieben.
Es gibt die Nema-Motoren auch mit einem Planetengetriebe. Hast Du so etwas mal in Erwägung gezogen?
Hi Thomas, nein, darüber habe ich ehrlich gesagt nicht nachgedacht. Mein wichtigster Aspekt war schnelle und günstige Machbarkeit. Der Zahnriemen hat dabei den Vorteil, sicher spielfrei zu sein, und wenn aus China, ausserdem stinkbillig.
Ich habe noch nie so ein Planetengetriebe für Stepper in der Hand gehabt, aber ich könnte mir vorstellen, dass da (kostenabhängig) durchaus Spiel drin ist. Zwischen Schnecke und Schneckenrad gibts ja schon etwas Spiel, das zu ein paar Steps Umkehrspiel führt. Ob und wie stark das Planetengetriebe dazu beitragen würde…? Keine Ahnung :)
Andersrum betrachtet kostet ein Set europäische Qualitäts-Zahnriemen und Riemenräder ja fast gleich viel wie ein chinesisches Planetengetriebe.
Viel Erfolg mit deinem Projekt! LG, Chris
Hallo Chris,
das ist ein tolles Projekt, das ich meiner leider verstaubten GP-Montierung auch antun will. Was mir aufgefallen ist, ist der Zahnriemen, der bei Dir mit
T2.5, 6mm, 160Z
aufgelistet ist. Ich vermute, das sollte „160mm“ statt „160Z“ heissen – mit 160 Zähnen wäre der Riemen an die 400 mm lang.
Danke für die wirklich gute Dokumentation Deiner Arbeit,
Michael