Domanda

giroscopi che misurano velocità di rotazione di angoli prodotti una volta integrati angoli retti? la mia domanda è come faccio a fare questo? quello che sto facendo finora è solo l'aggiunta di tutti gli angoli ive rilevati e che sembra essere molto sbagliato

AngleIntegrated = GyroDegPersec * (1/GyroBandWidth);

I suggerimenti sono i benvenuti. grazie

È stato utile?

Soluzione

Sapendo che, naturalmente, non si può contare su un valore corretto nel lungo periodo (per integrazione vostra finestra di errore sarà sempre aumentare nel corso del tempo) quello che vorrei fare è leggere il giroscopio, l'interpolazione di lettura in corso e quelli pochi precedenti per ottenere una curva (ad esempio una parabola utilizzando corrente letta e due precedenti) e quindi calcolare l'integrale di tale parabola dall'ultima volta lettura e l'ora corrente.

Altri suggerimenti

È necessario integrare il rispetto al tempo . Quindi idealmente si dovrebbe provare il giroscopio a regolari intervalli di tempo (fissi), T, e poi incorporare tale intervallo di campionamento, T, nel vostro calcolo integrale.

Si noti che T ha bisogno di essere abbastanza piccolo per soddisfare il criterio di Nyquist.

È possibile integrare nel dominio discreto. Supponiamo che il tasso angolare è da, è il momento integrale è a. k è il numero di passo discreto.

a(k) = a(k-1) + T*0.5*(da(k) + da(k-1))

Ad esempio, da (k) è la lettura di velocità angolare corrente. da (k-1) è una lettura di velocità angolare previoud. un (k-1) è il valore di integrazione del passaggio precedente (angolo di rotazione). T è frequenza di campionamento. Se le uscite del sensore in ogni 1 millisecondo, T diventa 0.001.

È possibile utilizzare questa formula quando k> 0. Il valore iniziale, una (0), deve essere dato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top