Allegati: 5
Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Ecco come costruirsi una motorizzazione AR che ha pochi rivali in quanto a qualità dei componenti, per meno di 50euro (*). Questo è lo step iniziale per un progetto più ambizioso ma vista la semplicità ve lo espongo sperando possa essere utile a qualcuno.
Il progetto permette di muovere l'asse AR alla velocità corretta per inseguire le stelle (vedete sotto la spiegazione), premendo il pulsante avanza a 8x, ri-premendo indietreggia a -6x per poi tornare alla velocità siderale con una ulteriore pressione. Potevo metter due pulsanti ma di notte al buio una sola cosa da premere rende le cose più semplici... e poi avevo un solo pulsante in casa!
Ogni suggerimento o miglioramento è ben accetto!
____
(*) non inclusa una batteria 12v, alcuni componenti non si trovano singoli a buon prezzo, per cui se non li riciclate i costi sono leggermente maggiori, ad esempio il driver lo trovate in confezioni da 5 per una decina di euro, Arduino Nano per una quindicina ne avrete tre.
Lista della spesa
La mia montatura è una EQ5 Exos2 Bresser, ma penso non vi siano differenze per qualsiasi EQ5 Skywatcher, per altre montature controllate le distanze e spazio disponibile.
Allegato 39587
- Allo zenit sopra il Cigno il motore stepper Nema 17, ma non uno qualsiasi, per 2-3 euro in più ne prendete uno da 0.9°/step (400 step per giro), ha una precisione doppia rispetto a quelli standard (qui)
- Poco a sud circonda Volpetta e Sagitta la cinghia GT2 da 138mm denti, larga 6mm (qui). Quanto lunga serve dipende da che pulegge scegliete e dalla distanza tra le stesse , per un calcolo preciso vedete questo belt calculator.
- Copre l'Aquila la puleggia GT2 da 40 denti con foro passante (bore) da 6mm da inserire nel perno del movimento micrometrico (qui). 40 denti è per me la massima grandezza per evitare di dover montare la puleggia a sbalzo e non poter richiudere il coperchio nero della montatura. Nota: Trovarla con foro da 6mm non è semplice... lo standard sembra essere 6.3 o 5mm, al più comprate con foro da 5mm e allargatelo a 6mm con un trapano a colonna.
- Abbassandosi sull'orizzonte, vicino a M2 c’è la puleggia GT2 da 16 denti con foro da 5mm, standard per i motori Nema (qui).
- Abbraccia M15 un condensatore da almeno 50µF che servirà per proteggere l'elettronica, mentre al centro del quadrato di Pegaso si trova un interruttore (instabile, i.e. rilasciandolo si disattiva). Non è strettamente necessario ma renderà l'inseguimento più comodo. Procuratevene uno migliore di quello che avevo in casa...
- Tra Cassiopea e M31 il driver DRV8825 permetterà di pilotare il motore con microstep di ben 1/32 passi: tale rapporto risulta importante per aumentare la precisione ed evitare vibrazioni (qui)
- Al centro del campo il cuore del sistema, un microcontrollore Arduino Nano (5eur), quasi sprecato per pilotare un motorino ma servirà per sviluppi futuri...
- Già tramontato (non presente in foto) un vecchio tagliere ikea, sacrificato per costruire la base su cui fissare il supporto per il motore (a nord di Cefeo) alla montatura. Occhio all'altezza del supporto se volete usare il coperchio nero (5cm per la mia montatura). Mi manca una stampante 3D, accidenti: vi sono schemi online per rendere le cose ancora più compatte e professionali.
- Bassi sull'orizzonte cavetteria e connettori vari con cui ingegnarsi per compattare l'elettronica.
Ecco il risultato finale:
Allegato 39588Allegato 39589Allegato 39586
Schema Elettrico
Allegato 39590
Notate come nel Driver i pin MS* sono tutti e tre collegati all'uscita 5v per abilitare il microstepping 1/32, insieme ai pin RST e SLP. Il driver va limitato in corrente (ca. 1A per il motore in questione) agendo sul mini-potenziometro sulla scheda, si trovano facilmente guide in rete (es. qui)
Facciamo i conti
Più riusciamo ad aumentare il rapporto tra velocità di rotazione del motore e di rotazione del telescopio più saliamo in precisione, diminuiamo eventuali errori e vibrazioni (già di per sé ridotte dalla distribuzione a cinghia) e permetteremo correzioni di fino (negli sviluppi futuri...).
La terra completa una rotazione in 23h 56m e 4 secondi, quindi 23*60*60+56*60+4 = 86164 secondi per fare 360°, vuol dire che impiega 86164/360=239.34 secondi per ruotare di un grado.
La vite senza fine della montatura EQ5 ha un rapporto di 1 su 144, i.e. occorrono 144 rotazioni della manopola micrometrica per fare 24h (360 gradi) - il numero lo potete verificare empiricamente e trovate vari riscontri online (EQ 3.2 è 130, HEQ5 135). Il rapporto scelto tra le pulegge è di 40/16=2.5.
Quindi? Comandiamo un motore a cui servono 32 microstep per fare uno dei 400 step (0.9°) necessari a compiere un giro completo che farà girare 1/2.5 volte la vite senza fine a cui servono 144 giri per far fare un giro completo in AR... insomma (400x32x2.5x144) / 360° = 12800 sono i microstep necessari al motore per far muovere di un grado il tubo.
Ma in quanto tempo? In esattamente i 239.34 secondi calcolati prima! Quindi 239.34/12800 = 0.018699 secondi per ogni microstep. Questa è la velocità con cui comandare l'impulso ai motori.
Arduino Nano va a 16MHz, 16 milioni di operazioni al secondo e quindi comandare un impulso ogni 18699 microsecondi (o milionesimi di secondo) gli lascia molto tempo (ad occhio, tre ordini di grandezza) per fare altro. E prima o poi glielo faremo fare.
Il codice
Comandare semplicemente gli impulsi del motore risulta facile, con un caveat: un impulso completo ha due fasi (HIGH seguita da LOW) per cui ogni fase avrà una durata di metà dei 18699 microsecondi sopra calcolati
Citazione:
const unsigned long STEP_DELAY = 18699;
// Define pin connections
const int dirPin = 4;
const int stepPin = 3;
void setup() {
// Declare pins as Outputs
pinMode(stepPin, OUTPUT);
pinMode(dirPin, OUTPUT);
// Set motor direction clockwise (HIGH)
// you may have to invert this depending
// on how you mount the motor
digitalWrite(dirPin, HIGH);
}
void loop() {
digitalWrite(stepPin, HIGH);
// STEP_DELAY/2 is the duration of each pulse
// must be > 16383 otherwise
// delayMicroseconds will not work properly
delayMicroseconds(STEP_DELAY/2);
digitalWrite(stepPin, LOW);
delayMicroseconds(STEP_DELAY/2);
}
La funzione delayMicroseconds ha il limite di 16383 microsecondi: occhio se usate rapporti diversi o driver diversi (tipo l’A4988), se allungate la durata dell’impulso il codice sopra potrebbe non funzionare.
Noi però vogliamo usare il pulsante, per poter avanzare o indietreggiare più velocemente e centrare l'oggetto da inseguire. Il codice si complica perché dobbiamo far fare ad Arduino dell'altro anziché bloccarsi sulla funzione delayMicroseconds mentre il tempo passa, ma comunque si dovranno comandare gli impulsi al motore perfettamente. La spiegazione del codice “non bloccante” è più complessa, anche se è tra gli aspetti più interessanti di quanto fatto fin'ora, se avete domande chiedete pure!
Ecco qui il codice finale (RAto.ino).
Allegati: 6
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Alcune foto aggiuntive
Prototipo
Allegato 39591
Tagliere ikea immolato alla giusta causa
Allegato 39592
Allegato 39593
Qui le misure
Allegato 39597
Per rendere l'attacco più resistente ho avvitato una molla (helicoil) dove si avviterà il vitone passante per la montatura (che non ho menzionato sopra, mi sembra un 4cm x 6mm).
Se però avete per le mani una stampante 3D, potete evitare di acquistare il supporto a L e sventrare un tagliere: vi costruire il vs. supporto (es. modello per eq5 qui)
Dettagli montaggio
Allegato 39594
Allegato 39595
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Bravissimo!! un lavorone! credo di riuscirci, ma mi devo studiare bene la cosa, la guida è ottimamente descritta, grazie!!
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Ma stracomplimenti!!! :shock:
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Grazie mille! È stato proprio divertente costruirsi questo aggeggino e la cosa più importante è che sembra pure funzionare ;)
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Complimenti davvero per l'inventiva.
Ormai con arduino, si riesce a fare di tutto.
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Complimenti davvero per la guida ben fatta ed il progetto.
Io stavo pensando di fare un sistema GOTO con Arduino per la mia EXOS2,quindi motori in AR e DEC, con il progetto ONSTEP.
Credi che possa usare gli stessi componenti (motore nema-17 0,9° e driver DRV8825) anche per il mio progetto, ovviamente raddoppiando per due? Arduino consigliano invece il mega per quel progetto.
Cosa ne pensi dei Nema-11 (che vengono montati nel GOTO"ufficiale")? Sarebbero un pò più piccoli e si risparmia un pò di spazio,ma non mi convincono...
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
@Pastore1980 grazie! Il numero nema indica la diagonale del motore visto di fronte (1.1 pollici, 1.7 pollici) e non la coppia che offre. A parità di lunghezza un 17 ha più coppia, ma un Nema11 "lungo" potrebbe aver e più coppia di un Nema17 "corto". Ho visto che per OnStep i Nema17 sembrano essere lo standard ed ho scelto quelli visto che come dimensioni (lunghezza inclusa) ci stanno giusti, quindi non rischierei di sottodimensionarli - poi se tutto è ben bilanciato direi che non ci saranno problemi anche con un motore più piccolo.
Arduino Mega è ben più potente del Nano, ma consuma e costa di più ed è molto più grande (dovrai quindi usare una scatoletta esterna). Secondo me per implementare un Goto è sufficiente il Nano, bisogna però ottimizzare il codice - quindi non penso che tu possa usare il progetto OnStep con Arduino Uno.
Sto lavorando all'evoluzione (quasi-)goto, ho già il secondo motore e il codice pronto da testare, appena trovo un po' di tempo monto tutto, testo per bene e farò un post. Anche aggiungere una porta ST4 sembra fattibile, ho studiato come funziona, ma non facendo foto al momento non avrei modo di testarla.
Comunque in quasi due mesi di osservazioni l'inseguimento in AR si comporta benissimo, negli alti ingrandimenti è proprio comodo non dover star lì ad inseguire a mano e ritrovarsi l'oggetto centrato perfettamente anche dopo qualche minuto in cui ti distrai a guardar mappe, cambi oculare o aspetti che la nuvoletta passi :cool:
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Citazione:
Originariamente Scritto da
gspeed
Davvero complimenti per tutto il progetto!
E specialmente per la pulizia estetica finale :shock:
Davvero bravo!
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Citazione:
Originariamente Scritto da
gspeed
@
Pastore1980 Ho visto che per OnStep i Nema17 sembrano essere lo standard ed ho scelto quelli visto che come dimensioni (lunghezza inclusa) ci stanno giusti, quindi non rischierei di sottodimensionarli - poi se tutto è ben bilanciato direi che non ci saranno problemi anche con un motore più piccolo.
E' la conclusione a cui ero arrivato anche io alla fine... :weeabooface:
Citazione:
Originariamente Scritto da
gspeed
Arduino Mega è ben più potente del Nano, ma consuma e costa di più ed è molto più grande (dovrai quindi usare una scatoletta esterna). Secondo me per implementare un Goto è sufficiente il Nano, bisogna però ottimizzare il codice - quindi non penso che tu possa usare il progetto OnStep con Arduino Uno.
Sulla scatola esterna nessun problema,avevo pensato di implementarla alla fine...
Volevo fargli anche una tastierina con le frecce per spostarlo manualmente
Citazione:
Originariamente Scritto da
gspeed
Sto lavorando all'evoluzione (quasi-)goto, ho già il secondo motore e il codice pronto da testare, appena trovo un po' di tempo monto tutto, testo per bene e farò un post. Anche aggiungere una porta ST4 sembra fattibile, ho studiato come funziona, ma non facendo foto al momento non avrei modo di testarla.
Perchè quasi goto? :rolleyes:
Per il secondo motore sempre lo stesso modello di motore, di driver e le stesse puleggie?
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Citazione:
Originariamente Scritto da
Pastore1980
...
Perchè quasi goto? :rolleyes:
Penso mi basti che da un oggetto noto e ben visibile che ho puntato mi porti ad un oggetto poco noto e poco visibile nelle vicinanze, quindi almeno la prima "estensione" si aspetta le coordinate dei due oggetti (o il delta AR e Dec) abbastanza vicini (<30°?), ciò dovrebbe anche minimizzare errori dovuti ad allineamenti polari non perfetti. Poi fare un goto che si interfaccia con stellarium o skysafari dovrebbe venir da se in una terza fase (ho visto il protocollo Meade LX200 sembra abbastanza semplice, la complessità è più capire come i vari software lo implementano).
Citazione:
Originariamente Scritto da
Pastore1980
...
Per il secondo motore sempre lo stesso modello di motore, di driver e le stesse puleggie?
Si, stesso motore pulegge sembrano starci perfettamente. A rigore si potrebbero cambiare, comunque almeno per le eq5 i rapporti di trasmission in Dec sono gli stessi di AR
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
... segnalo per chi in futuro leggesse questa discussione il proseguo del progetto: aGotino - un goto con Arduino
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Ciao, c'è una cosa che non mi torna (o che sicuramente sfugge a me).
Tu consigli un motore passo passo da 0.9A 5.4 volt, ma il driver ha un voltaggio di lavoro da 8.2 v a 45 v.
Io quindi sul Vmot do per esempio 12v, si regola da solo per il motore? Non è troppo? Se gli do 5v sul driver non dovrebbe funzionare...
Sto sbagliando qualcosa? Grazie mille!
Re: Motorizzazione AR per Eq5/Exos2/Eq3 etc etc
Corretto, il driver va alimentato tra gli 8.2v e 45v, quindi i 12v vanno benissimo, così che alimentano anche Arduino Nano (io uso una batteria da moto). Avevo anch'io il tuo dubbio ma poi ho visto la prima FAQ qui: il voltaggio del motore è relativo, quel che importa è non superare l'amperaggio, difatti sono semplici bobine alla fine. Sui driver c'è infatti un resistore da ruotare per regolare la massima corrente erogata (c'è il link nel primo post, in Schema Elettrico).