Simulazione di un motore con encoder

Ciao gente,

Ho un piccolo progetto che dovrebbe controllare un motore con encoder, per un amico. Non ho intenzione di spendere per un motore con encoder, che poi magari non rientra nelle specifiche del progetto. Avrei pensato di fare delle prove con l' Arduino che simula il motore con encoder..
Ho visto questo ma non mi piace. La simulazione dovrebbe considerare anche una lieve accelerazione e decelerazione dall' avvio allo spegnimento del pseudomotore.

Inoltre sembra che non si possa scendere a frequenze più basse. O quanto meno non riesco a capire come impostare i due PWM per frequenze di pochi Hertz. Infatti il massimo che assumerei dovrebbe essere di 5000 impulsi al secondo. Quindi un range da pochi a massimo 5000 Hz.

Quindi in base alla mia conoscenza mi sono orientato sulla libreria TimerOne, però ho un problema nelle impostazioni per gestire una frequenza di interrupt variabile. Esiste forse anche delle limitazioni, che per dare 5000 impulsi dovrebbe attuare un interrupt ogni 100 microsecondi, magari al resto del sistema viene a mancare qualcosa.

Sono ancora in fase di simulazione, ma non riesco a definire la cadenza della chiamata alla routine. Vedere l' allegato.
Non so se esiste qualche altro metodo per poter ciclare ad una determinata periodicità.

Gradite ulteriori informazioni

EDIT

Lo sviluppo procede, con alcuni risultati, ma non riesco ad arrivare ai 5 KHz e mi manca il modo di aggiungere le rampe di de/accelerazione.
Ho messo una regolazione con il potenziometro, ma appare alquanto scattosa.

Spero di trovare una soluzione di usare due PWM a duty-cycle al 50% ma da poterli avviare con lo sfasamento voluto.
Faccio delle prove..... :wink:

ArdSimEnc-01.ino (2.84 KB)