Kalman
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

Kalman



  1. #1
    invite5f0e335f

    Kalman


    ------

    Bonjour tout le monde.
    Voilà j'aurais besoin d'aide pour le filtre de Kalman.
    Je n'y connais absolument rien... j'ai beau lire les doc je comprend toujours rien. Et le gros problème que j'ai, c'est que je dois le coder... et vu que je ne comprend pas comment ca marche, bah je peux pas le coder.

    Donc si quelqu'un pouvait me donner un coup de main, j'en serais plus qu'heureux.
    Exemples plus qu'apperciés, algo généraliste sur Kalman aussi.

    Merci d'avance. (en espérant ne pas m'être planté de section)

    -----

  2. #2
    invite6dffde4c

    Re : Kalman

    Bonjour.
    Je crois qu'une recherche de "filtre de Kalman" dans Google vous donne accès à un bon nombre de documents.
    Au revoir.

  3. #3
    invite5f0e335f

    Re : Kalman

    J'ai déjà éplucher un grand nombre de documents à ce sujet. Mais je ne les ai pas compris. C'est pour ca que je demander de l'aide ici...

  4. #4
    invite5c27c063

    Re : Kalman

    J'ai deja fait plusieurs laius detailles sur le sujet. Le dernier est dans la section astronautique. Peut-etre que sur un exemple cela s'eclairera (apres c'est vrai que ce n'est pas trivial...)

  5. A voir en vidéo sur Futura
  6. #5
    invite5f0e335f

    Re : Kalman

    J'ai regardé ton exemple, ...c'est plutot clair, moi dans mon problème, tout ce que j'ai, ceux sont des coordonnées de points. (un nuage de points en fait). Les coordoonées sont des coordonnées GPS en degrès, minute, secondes... Et je ne vois pas trop comment adapter ton exemple à mon sujet (c'est le premier Kalman que je fais et à ce qu'il parait, le premier reste marqué dans l'esprit à vie )

  7. #6
    invite5c27c063

    Re : Kalman

    C'est une centrale de navigation hybridee GPS ? Si oui (je vais supposer ainsi), c'est l'exemple archi classique d'application du FdK.

    Si on se limite a un axe (pour eviter les problemes d'orientation), pour faire une centrale de nav inertielle, on prend un accelerometre et le bon sens indique qu'il faut integrer deux fois a partir de la position initiale pour obtenir la position courante.

    Le hic, c'est qu'en pratique les accelero sont biaises et que le biais varie lentement dans le temps (eventuellement en fonction de la temperature par ex). Si on integre brute de fonderie la sortie de l'accelero qui a une erreur constante, on obtient donc une erreur lineaire sur la vitesse et une erreur parabolique sur la position.
    Selon le cas, il se peut egalement que la vitesse et/ou la position initiales soient imparfaitement connues.

    Le FdK remedie a ces problemes.

    Vision automaticienne de la chose : on a un modele dans lequelle on integre deux fois l'acceleration reelle qui est celle mesuree moins le biais. Le biais est un etat inconnu du systeme. Il varie lentement donc un modele non stupide est de dire qu'il ne varie pas du tout : , tout en sachant que ce modele n'est pas parfait. La mesure de l'accelero est aussi bruitee (mais peu si l'accelero est de qualite), ce bruit ainsi que l'imperfection du modele de biais constituent le bruit d'etat (a quantifier dans la matrice generalement appelee Q).
    Le biais etant inconnu, on commence avec une initialisation arbitraire (0, la moyenne des biais sur les N derniers vols...). Pour la position, vitesse ca depent (initialisation a l'arret a un endroit precis ou en deplacement ?) On evalue l'erreur initiale d'estimation dans la matrice (la matrice P etant la solution de l'eq de Riccatti)
    Par ailleurs on a des mesures de position venant du GPS qui sont bruitees (bruit de mesure R).

    Avec Q, R, , on calcule la covariance de l'erreur d'estimaiton P (qui nous renseignera sur la fiabilite de l'estimation) et le K gain qui fera le dosage entre la prediction du modele et la mesure. Ainsi, si avec un biais nul l'estimation de la position part dans les choux, en recalant on trouvera un biais compatible avec cette difference. Comme on lui a dit que le modele de biais constant n'est pas parfait et la valeur initiale est fantaisiste, la valeur de l'estimation du biais va changer et normalement converger vers une valeur correcte, d'ou une bonne acceleration et une bonne estimation des position/vitesse par la suite.

    Vision filtrage : l'accelero a un defaut basse frequence (biais quasiment constant - peu de bruit de moyenne nulle) - le GPS a un defaut haute frequence (bruit de moyenne nulle). Bien regle on filtre est passe-haut pour le modele inertiel et passe-bas pour les mesures. Je maitrise moins cet aspect et developperai moins.

    Dans tous les cas, en combinant judicieusement les deux sources d'info, on devient plus precis qu'avec chacune toute seule.

    Pour une centrale reelle, le probleme de l'estimation de la position est precede d'une etape d'estimation d'attitude car il faut savoir comment sont orientes les accelerometres avant d'integrer. Pour cela on integre les vitesses de rotation et on recale avec des mesures d'attitude qui viennent typiquement sur Terre de magnetometres (mesure de l'attitude par le champ magnetique terrestre). Dans l'espace, ca peut se faire a partir de mesures stellaires. L'alternative a l'estimation d'attitude pour une centrale dont les axes sont lies au mobile (centrale stapdown) est une centrale a plateforme stabilisee (on asservit la plateforme pour que les accelero soient dans une position invariante). La complexite theorique est du meme ordre mais c'est de la mecanique de grande precision donc technologiquement plus complique (et cher)

  8. #7
    invited92ae201

    Talking Re : Kalman

    Bonjour tout le monde !

    pat7111, je suis tombé sur ton post par recherche de Kalman sur google. C'est très interessant, tu parles de "Vision filtrage" partie que je maitrise contrairement à Kalman. Ce que tu dit est exacte j'utilise le passe bas temporel sur mon robot (http://www.serveurperso.com/?page=robot) pour la lecture de certains capteurs.

    J'ai en projet d'implémenter un microcontroleur sur mon drone hélicoptère (http://www.serveurperso.com/?page=helico) afin de faire déjà un simple asservissement altimetrique via un capteur de pression atmosphérique, et par la suite une tenue de position GPS (l'hélicoptère comporte deja une stabilisation gyroscopique qui le rend donc auto-stable, il ne reste que des corrections mineures a faire au cyclique pour le déplacer rapport au GPS)

    Un asservissement PID sur les données filtrées temporellement du capteur altimétrique suffisent a faire une tenue d'altitude, c'est sur, mais ma question est : qu'apporterait un filtrage KALMAN dans ce simple cas ?

    Sinon par combinaison du capteur altimétrique au bruis faible mais a dérive assez forte (variation de pression méteo) et l'altitude GPS ayant comme tu dit un defaut haute frequence fort mais un bruit de moyenne presque nulle... KALMAN vs. process par FILTRAGE.... je vois pas ce qu'apporte KALMAN en performances.

    Je doit aussi réaliser un horizon artificiel a l'aide de gyros + acceleros, appliquer un passe haut (logiciel) sur le gyro et un passe bas (logiciel) sur l'accelerometre, les gyro prennent les variations rapides mais ont un forcément un biais important, qui est donc corrigé par les accelerometres + passe bas pour ne garder que l'influence gravitationnelle et non les déplacements rapides parasite...

    Si ta d'autres explications interessantes sur KALMAN je suis interessé

    Merci,
    Pascal

  9. #8
    invite5c27c063

    Re : Kalman

    Citation Envoyé par serveurperso Voir le message
    J'ai en projet d'implémenter un microcontroleur sur mon drone hélicoptère (http://www.serveurperso.com/?page=helico) afin de faire déjà un simple asservissement altimetrique via un capteur de pression atmosphérique
    Je suis tres sceptique sur un asservissement altimetrique avec un simple capteur de pression. Tout depend evidemment de la precision recherchee mais je m'interroge sur la sensibilite du capteur. Il faudrait aussi evaluer la variation de pression pour des variations de temperatures (genre le soleil se cache derriere un nuage ou se decouvre) ou des courants d'air. A l'intuit, cela ne me semble pas petit compare a des variations de pression pour un changement d'altitude de l'ordre du metre. Je me souviens en tout cas qu'en depouillant les enregistreurs de vol, il etait impossible de dire quand l'avion s'est pose en regardant l'altimetre qui est base sur un capteur de pression.

    Citation Envoyé par serveurperso Voir le message
    Un asservissement PID sur les données filtrées temporellement du capteur altimétrique suffisent a faire une tenue d'altitude, c'est sur
    J'en suis moins sur que toi, cf le paragraphe precedent. Au passage, la technique d'asservissement (PID, commande modale, LQ, , ...) n'a rien a voir. Simplement, pour asservir, il faut mesurer ou estimer d'une maniere ou d'une autre la grandeur a asservir.

    Citation Envoyé par serveurperso Voir le message
    qu'apporterait un filtrage KALMAN dans ce simple cas ?
    Plus de precision dans l'estimation de l'altitude. Le filtrage de la mesure seule va lisser la courber mais on n'a toujours qu'une source d'info qui a tous les defauts precites. Dans certaines centrales de nav inertielle (non hybridee GPS), on se sert de la mesure de pression pour eviter la derive de l'altitude. En effet, l'accelero vertical doit avoir une plage beaucoup plus grande que les autres car il mesure en permanence la gravite. Fatalement il est moins precis et il y a un recalage (que je pense, sans garantie, etre un filtre de Kalman) entre l'estimation par double integration de l'accelero vertical et l'altitude mesuree par l'altimetre.

    Citation Envoyé par serveurperso Voir le message
    KALMAN vs. process par FILTRAGE.... je vois pas ce qu'apporte KALMAN en performances.
    Je ne suis pas sur de comprendre. Pour ma part, je n'oppose pas Kalman vs Filtrage.
    Dans ce que j'appelle la vision automaticienne, le FdK est un observateur avec la meme structure que tous les autres observateurs : on cherche a trouve un etat qui colle au modele et on predit l'etat du systeme avec un modele, on predit les sorties qu'on devrait avoir que l'on compare aux sorties reellement observees (les mesures) et on pondere avec le gain de l'observateur l'estimation avec la difference entre la prediction et l'observation . Dans le FdK, la theorie montre que l'erreur d'estimation est nulle et la dispersion minimale avec la qualites des infos que l'on a.

    La vision filtrage, c'est qu'on filtre a la fois les mesures et la commande avec une frequence de coupure qui depend des parametres de reglage Q et R et je pense, vu le nom qu'il lui a donne, que M. Kalman avait plutot cette perspective en tete mais ce n'est encore une fois a mon sens que deux points de vue de la meme chose.

  10. #9
    invited92ae201

    Talking Re : Kalman

    Pour bloquer un modèle à 10 mètres du sol le capteur de pression seul fonctionne très bien je l'ai vu de mes yeux la précision est < 1 mètre. Vu l'autonomie de la batterie la dérive condition méteo n'est pas sinificative, bon, puis c'est pas pour faire de l'atterrissage automatique c'est sur...

    Maintenant je me pose la question de l'algo a utiliser pour la lecture de ce capteur, filtrage par moyenne de X anciennes valeurs comme j'ai l'habitude de faire faute de connaitre mieux... Un asservissement proportionnel et dérivée suffit en pratique (et je n'ai jamais rien fait d'autre que du PID), l'ajout de la dérivée m'a permis de pousser le gain proportionnel sans entrée en oscillation (test d'asservissment avec une CMUcam http://www.youtube.com/watch?v=84qWLfoib3U).

    C'est sur qu'avec une centrale intertielle + GPS + capteur de pression il doit etre possible de faire des choses de folie en auto pilotage d'hélico mais dans ce cas je redeveloppe pas j'achette un Helicommand PROFi par exemple.

    Avec le capteur de pression je souhaite déjà realiser pour le fun, et pourquoi pas aider 2 ou 3 amis au vidéo-pilotage (FPV/immersion) d'hélicoptères, un module économique (plus économique qu'un vario avec affichage OSD) qui donnerais du pas positif si l'hélico tombe avec trop de vitesse, voir qui serais capable de bloquer l'altitude de machine a la demande du pilote...

Discussions similaires

  1. Filtre de kalman pour la navigation inertielle et GPS
    Par invite264f8356 dans le forum Technologies
    Réponses: 1
    Dernier message: 18/07/2009, 15h29
  2. Filtrage de Kalman
    Par invite14ddcbf2 dans le forum Astronautique
    Réponses: 10
    Dernier message: 16/07/2009, 11h49
  3. Filtre de Kalman
    Par invite9ba573f3 dans le forum Mathématiques du supérieur
    Réponses: 5
    Dernier message: 16/07/2009, 10h38
  4. Filtre de Kalman (suite)
    Par invite9ba573f3 dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 04/11/2008, 20h15