Posizioni motore stepper

Ciao a tutti, vorrei realizzare una logica che mi permetta di riportare sempre il motore passo passo nella posizione di partenza che gli ho pre impostato; vi faccio un esempio: supponiamo che il motore parta da un determinato punto, immaginiamo che il motore debba compiere 2 giri emmezzo in senso orario per dover poi ritornare nella posizione di partenza. Fino a qui nessun problema, basta impostare bene il numero di passi, ma, se il motore quando è fermo viene "mosso" da qualcuno o qualcosa come fa a sapere in che posizione si trova rispetto alla posizione di partenza? Io vorrei creare qualcosa che capisca in che posizione è il motore, e che, una volta datogli l'avvio capisca dove si trova e vada nella posizione di partenza che gli ho detto. Si può fare senza sfruttare un encoder? Grazie di tutto Alla prossima, ciao.

Serve per forza un encoder, se hai il budget per il progetto limitato mi ricordo di aver visto qualcuno che ha usato lo stesso motore stepper come encoder , ma comunque questo sistema non è preciso