Question

gyroscopes qui mesure le taux de rotation des angles lorsque les produits intégrés angle droit? ma question est de savoir comment puis-je faire? ce qui im ??faire jusqu'à présent est juste d'ajouter tous les angles ive détectés et qui semble être très mal

AngleIntegrated = GyroDegPersec * (1/GyroBandWidth);

suggestions sont bienvenus. merci

Était-ce utile?

La solution

Sachant que bien sûr vous ne pouvez pas compter sur avoir une valeur correcte à long terme (par l'intégration de votre fenêtre d'erreur sera toujours augmenter au fil du temps) ce que je ferais est la lecture du gyroscope, interpoler la lecture en cours et précédentes quelques unes pour obtenir une courbe lisse (par exemple en utilisant une parabole de lecture et deux précédentes courant), puis le calcul de l'intégrale de cette parabole à partir du dernier temps de lecture et le temps actuel.

Autres conseils

Vous devez intégrer par rapport au temps . Donc, idéalement, vous devriez goûter à la gyroscopique à intervalles réguliers (fixes) des intervalles de temps, T, puis incorporer cet intervalle d'échantillonnage, T, dans votre calcul intégral.

Notez que T doit être suffisamment petit pour satisfaire au critère de Nyquist.

Vous pouvez intégrer dans le domaine discret. Supposons que la vitesse angulaire est da, intégrale dans le temps de c'est. k est le nombre d'étapes discrètes.

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

Par exemple, da (k) est en cours de lecture de vitesse angulaire. da (k-1) est une lecture de vitesse angulaire previoud. un (k-1) est la valeur d'intégration de l'étape précédente (angle de rotation). T est la fréquence d'échantillonnage. Si les sorties de capteurs dans chaque 1 milliseconde, T devient 0,001.

Vous pouvez utiliser cette formule lorsque k> 0. La valeur initiale, a (0), doit être donné.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top