domenica 26 luglio 2015

Secondo passo: si muove !!!

Seconda versione provvisoria del software. Ora i motori si muovono ed effettuano correttamente il puntamento.
Ho sviluppato il software in modo da generare tramite un interrupt temporizzato a 100 us gli step di movimentazione dei motori, questi non devono essere disturbati in nessun modo da altre operazioni per cui la scrittura del display avviene sempre a motori fermi e le operazioni di lettura e scrittura dei port non utilizza le funzioni standard fornite dall'ambiente di sviluppo (digitalRead  e digitalWrite). Queste funzioni infatti per costruire l'interfaccia che utilizza la numerazione dei pin generano un notevole overhead e per alcuni istanti bloccano gli interrupt. Ho utilizzando quindi l'accesso diretto ai registi ( tipo PIOB->PIO_CODR, PIOB->PIO_SODR, PIOC->PIO_ODSR).

Il display l'ho gestito in modo da visualizzare le seguenti informazioni

La prima linea riporta la ascensione retta e un testo che può essere: Pos (posizione corrente), Goto (posizione in corso di puntamento) o Alig (posizione su cui effettuato allineamento).
La seconda linea riporta la declinazione ed una serie di segnalatori:
T se tracking è attivo, spazio se non attivo
F se luce flat accesa, spazio se spenta
C se alimentazione CCD accesa, spazio se spenta
H se telescopio in posizione di homing, spazio se in altra posizione
C se casetta è chiusa, c se in fase di chiusura, O se aperta, o se in fase di apertura.
t se timeout è attivo, spazio se non attivo.

Il software non è definitivo, infatti:

  • La movimentazione è eseguita sempre alla stessa velocità (100hz), senza rampe di accelerazione.
  • Non è utilizzato il cambio di velocità sull'ascensione retta.
  • Il tracking non è ancora implementato.
  • Non è gestita la correzione dell'errore periodico.
  • Non è gestita l'apertura e chiusura della casetta (solo simulata)
  • Non è gestita la posizione di home

Però, connettendo il software Polypus è possibile eseguire un allineamento su di un oggetto


e puntare un'altro oggetto.


I motori si muovono nella gusta direzione fino alla posizione stabilita e sul display appare il relativo messaggio


La parte di generazione del clock di movimentazione, il settaggio della posizione ed i calcoli di trasformazione tra impulsi e ore, minuti, secondi ( o gradi, minuti, secondi) sono correttamente implementati e funzionanti.

Questa versione di software si può scaricare all'indirizzo http://www.osservatoriobassano.org/TCS2015/SoftV02.zip

Nessun commento:

Posta un commento