quello morto sarò io tra poco se non risolverò un problema che ho con la routine di avanzamento
Ho finito quasi tutto, incluse le flange per il fissaggio sia del motore stepper sia dell'encoder al tornio.
Il firmware è parecchio complesso e mi sta portando via tempo. Ho voluto aggiungere più funzioni possibili in modo da sfruttare appieno le potenzialità di arduino uno anche se alcune cose sono veramente al limite della capacità di calcolo.
Al momento come funzioni ho sviluppato:
FILETTATURA - Completa e funzionante
Qui ho previsto due opzioni:
1 - "vincolo meccanico" che permette di vincolare il mandrino alla vite esattamente come se in mezzo ci fosse un treno di ingranaggi. La vite segue il movimento del mandrino in entrambi i sensi di rotazione esattamente come avviene con un vincolo meccanico e sempre rispettando il passo impostato.
2 - "filettatura a misura" che permette di impostare la lunghezza del filetto da realizzare in millimetri e ferma automaticamente l'avanzamento del carro alla misura impostata. Il carro viene poi fatto tornare indietro per riprendere il filetto dall'inizio, ovviamente senza perdere il sincronismo angolare e SENZA fermare il mandrino
In entrambi i casi si può scegliere tra filetto destro e sinistro. Il passo massimo realizzabile è il doppio di quello della vite madre utilizzando stepper configurato a 400 passi/giro ed in presa diretta sulla vite.
MOVIMENTO LIBERO - completa e funzionante
permette di muovere il carro usando il joypad del controller. Il sistema tiene la misura di spostamento (in millimetri, con 2 decimali) del carro calcolandola in base all'impostazione della scatola norton se presente. Nel mio caso il tornio è dotato di barra scanalata e la semi-norton prevede un cambio a 4 rapporti. Impostando il rapporto nel software il sistema visualizza lo spostamento del carro come fosse un DRO... certo è presunto visto che in mezzo ci sono una marea di rotismi e lo stepper può anche perdere qualche passo.
POSIZIONE ANGOLARE - completa e funzionante
permette di visualizzare la posizione angolare in gradi del mandrino. Da usare muovendo il mandrino a mano. La risoluzione massima è quella dell'encoder che nel mio caso è 1000 passi (quindi 360/1000 = 0,36°).
VELOCITA' MANDRINO - completa e funzionante
visualizza semplicemente la reale velocità di rotazione del mandrino in giri al minuto.
AVANZAMENTO - ancora incompleto
questa funzione permette di regolare la velocità di avanzamento a piacimento utilizzando la barra scanalata. Oltre a ciò voglio prevedere la possibilità di impostare una "corsa" di avanzamento in modo da fermare l'utensile nella posizione voluta. La difficoltà di questa funzione sta nella grande quantità di variabili in gioco...
Tutto il firmware è sviluppato in modo che possa essere utilizzato su qualsiasi tornio, indipendentemente dal passo della vite madre, da quanti passi si deciderà di far fare al motore stepper e dalla risoluzione dell'encoder. I parametri di impostazione, insieme a tanti altri, vengono salvati nella EEPROM interna di Arduino in modo da non doverli cambiare ad ogni accensione.
Alcune foto del sistema come si presenta oggi: è completo, manca solo di montarlo sul tornio!
Allegato:
IMG_4747.jpg
Allegato:
IMG_4748.jpg
Allegato:
IMG_4753.jpg
Allegato:
IMG_4750.jpg
Allegato:
IMG_4751.jpg