Un po' di contesto prima di esporre il problema:
sto lavorando con un manipolatore a 5 gradi di libertà, dotato di 5 motori passo-passo di diversa grandezza.
Dopo aver sviluppato un sistema di controllo, sia lato hardware che lato software, sono passato alle misurazioni di corrente e tensione sui motori, al fine di effettuare delle stime indirette.
Per semplicità mi limiterò a elencare quello che succede su un singolo motore, che ripetuto per 5 offre una vista completa su quello che è il mio sistema.
Il motore in questione è un NEMA 17, che faccio muovere utilizzando un driver DM556. Il motore ha una corrente nominale di 1.8 A, lo alimento a 24 V e ho impostato il microstepping a 1/3200 step/rev.
Ho installato due sensori di corrente ACS712 per effettuare le misure sulla fase A e sulla fase B, e un sensore di tensione ADS1115 da quattro canali per misurare la tensione sui pin A+, A-, B+ e B-. Poiché la tensione massima supportata dall'ultimo sensore è di circa 6 V, ho utilizzato delle resistenze per creare un partitore di tensione in modo da scalare la tensione in uscita dal driver.
Le misure che ottengo sono coerenti con la teoria e, a parte del rumore sul segnale di corrente, ottengo quello che mi aspetto: un andamento sinusoidale sia sulla tensione che sulla corrente, con valore medio nullo e con frequenza corrispondente a 1/64 della frequenza degli impulsi che invio per far muovere il motore.
1/64 poiché la frequenza della sinusoide di corrente e tensione è data da 1/(microstepping*n_fasi), quindi 1/(16*4) = 1/64.
Fin qui tutto bene. Acquisisco i dati sulla stessa traiettoria, nelle stesse identiche condizioni (senza carico sul motore) e ricavo la potenza istantanea nel seguente modo:
V_A = V_a+ - V_a-;
V_B = V_b+ - V_b-;
P_A = V_A*I_A;
P_B = V_B*I_B;
P_tot = P_A+P_B;
Integrando poi i valori di potenza istantanea mi ricavo l'energia dissipata durante il movimento.
Qual è il problema? Che per ogni test, nonostante le condizioni siano identiche, mi ritrovo dei risultati che differiscono abbastanza da non poter affermare con certezza, senza saperlo a priori, che il test è stato effettuato sulla stessa traiettoria e nelle stesse condizioni.
Come posso modificare l'approccio? Dove sto sbagliando?
Grazie mille in anticipo a chiunque mi darà una risposta.