Bonjour à tous,
Je développe en ce moment même une application Android permettant d'améliorer les systèmes GPS mobile. Je me sert de techniques tels que :
-la mécanisation des systèmes de navigation inertiels (SNI) grâce au gyroscope et l'accéléromètre : grâce à une position k , une vitesse initiale et les mesures des capteurs, on peut prédire la vitesse et la postion à l'instant k+1.
-le Filtre de Kalman : corrige la vitesse, la matrice de rotation et la position aux instants GPS grâce à une matrice d'erreur calculée pendant la mécanisation inertiel (SNI)
Mon problème est que mon calcul de la vitesse durant la mécanisation inertiels (SNI) est assez imprécise. Sachant que
-l'intervalle des mesures des capteurs = 0.2sec
-mon calcul prends tout juste moins de 0.2sec
Je ne peut donc pas diminuer l'intervalle de temps des mesures de mes capteurs inertiels pour une meilleur précision des calculs de ma mécanisation, car sinon mon application bug.
La matrice d'erreur du Filtre de Kalman permettant de corriger la vitesse est beaucoup trop grande, je ne peut donc pas la corriger aux instants GPS. Si je corrige cette vitesse avec le filtre de Kalman, elle augment de façon incohérente.
Je cherche donc une solution qui me permettrait d'avoir une vitesse plus précise. Sachant qu'un système GPS a une imprécision de 30 mètres pour une cordonnées. Je préfère donc éviter la piste d'un calcul de vitesse avec les coordonnées GPS. Certaines applications arrivent à avoir une vitesse a peu près potable. Je me demandais comment arrivent-elles à l'avoir.
D'où ma question: Quel est le meilleur moyen de calculer une vitesse sous Android ?
Merci d'avance,
Partager