Un esempio di tornio autocostruito controllato con Arduino
- Postato 13 gennaio 2026
- Elettronica
- By Daniele Baglivo
- 312 Views
Esempio pratico di tornio autocostruito controllato con Arduino Mega. Gestione di motori passo-passo, modalità manuale e semiautomatica, interfaccia PC e controllo RPM del mandrino.
In questo articolo voglio mostrare un esempio reale e funzionante di come sia possibile utilizzare Arduino Mega per gestire un piccolo tornio autocostruito, sia in modalità manuale che semiautomatica.
Non si tratta di un sistema industriale né di una soluzione definitiva, ma di un progetto didattico e sperimentale, nato per capire fino a che punto Arduino possa essere sfruttato nel controllo di una macchina utensile semplice.
Il tornio utilizzato in questo progetto è interamente autocostruito, così come l’elettronica di potenza e il cablaggio dei motori passo-passo.
Il funzionamento completo del sistema è visibile in un video pubblicato sul nostro canale YouTube adbproject , dove si vede il tornio lavorare realmente.
Architettura generale del sistema
Il sistema è composto da due parti principali:
-
Interfaccia PC (scritta in Visual Basic .NET)
-
Firmware Arduino Mega, che gestisce motori, sensori e logica di movimento
La comunicazione tra PC e Arduino avviene tramite porta seriale, usando comandi testuali semplici e facilmente leggibili.


Gestione degli assi e dei motori
Il tornio utilizza due assi controllati da motori passo-passo:
-
Asse X → avanzamento utensile
-
Asse Y → movimento longitudinale
Ogni asse è gestito in modo indipendente, con:
-
pin STEP / DIR / ENABLE
-
controllo della velocità
-
blocco dell’asse non utilizzato per ridurre vibrazioni
Durante il funzionamento:
-
quando un asse è in movimento, l’altro viene mantenuto bloccato
-
questo migliora la stabilità meccanica su una struttura autocostruita
Modalità manuale
Il tornio può essere controllato manualmente in due modi:
-
Pulsanti fisici montati sulla macchina
-
Interfaccia PC, con pulsanti di movimento continuo
In modalità manuale:
-
la velocità è fissa e ottimizzata per la coppia
-
il motore si muove finché il pulsante resta premuto
-
al rilascio, il movimento si ferma immediatamente
Questa logica rende il controllo semplice e prevedibile, ideale per prove, azzeramenti e piccoli spostamenti.
Modalità semiautomatica (ciclo di lavorazione)
Il firmware supporta anche un ciclo di lavorazione semiautomatico, avviato dal PC.
L’utente può impostare:
-
lunghezza di lavorazione
-
tempo di avanzamento
-
profondità per passata
-
profondità totale
-
asse di lavoro (X o Y)
-
direzione di avanzamento
Arduino gestisce:
-
avanzamento dell’asse principale
-
ritorno alla posizione iniziale
-
incremento progressivo della profondità
-
conteggio delle passate
-
fine ciclo automatica
Durante il ciclo, Arduino invia al PC:
-
posizione attuale degli assi
-
stato della lavorazione
-
numero di passate eseguite
-
giri del mandrino (RPM)
Controllo RPM del mandrino
Il sistema utilizza un sensore Hall per leggere i giri del mandrino.
Il firmware calcola gli RPM filtrando i dati per ottenere una lettura stabile e li invia periodicamente all’interfaccia.
Questo permette di:
-
monitorare la velocità reale
-
verificare eventuali cali di coppia
-
avere un riscontro visivo durante la lavorazione
Comunicazione PC ↔ Arduino
La comunicazione seriale è volutamente semplice e leggibile, con messaggi come:
-
POS:X,Y→ posizione attuale -
RPM:xxxx→ giri mandrino -
PASS:x/y→ stato passate -
STATUS:IN LAVORAZIONE/COMPLETATO
Questo approccio rende il progetto:
-
facile da modificare
-
semplice da debuggare
-
adatto a chi vuole imparare
Un progetto sperimentale, non industriale
È importante sottolinearlo:
👉 questo progetto non nasce come sistema professionale, ma come esperimento pratico per dimostrare cosa si può fare con Arduino, un po’ di elettronica e tanta voglia di sperimentare.
Il sistema è stato realmente utilizzato su un tornio autocostruito funzionante, e il risultato si può vedere nei video pubblicati sul nostro canale YouTube AdbProject
Codice sorgente e download
Alla fine di questo articolo troverai un file ZIP contenente:
-
firmware Arduino
-
interfaccia PC
-
file di configurazione
Disclaimer – Responsabilità
Il progetto e il relativo codice sono forniti esclusivamente a scopo didattico e sperimentale; gli autori non si assumono alcuna responsabilità per eventuali danni a persone, cose o attrezzature derivanti dall’uso, modifica o realizzazione del progetto.
Prossimi sviluppi
Nel prossimo articolo faremo un grande passo avanti.
Abbandoneremo questo approccio sperimentale per passare a un controllo basato su Mach3, utilizzando hardware dedicato molto più:
-
stabile
-
affidabile
-
adatto a lavorazioni reali e continuative
Arduino resta uno strumento straordinario per imparare e sperimentare, ma quando si parla di macchine utensili, l’hardware dedicato fa davvero la differenza.
Come sempre vi sarei molto grato se mettete un bel like e vi inscrivete al nostro canale youtube, dove ci impegneremo a renderlo sempre piu interessante con nuovi contenuti😜
Vi metto a disposizione il codice,software e schema,li potete scaricarlo qui Gestione_tornio.zip