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

cumtrapz pour calculer la vitesse a partir de l'accel?



  1. #1
    Minialoe67

    cumtrapz pour calculer la vitesse a partir de l'accel?


    ------

    Bonjour

    j'ai un signal qui correspond à l'accélération longitudinale d'un cheval. cf photo, ordonnée en m/s2 et abscisse: n° de l'échantillon; freq d'échantillage 128Hz.
    J'aimerais connaître la vitesse instantanée. Nom : accel_galop.jpg
Affichages : 169
Taille : 43,5 Ko
    Sous matlab, j'utilise cumtrapz (pour intégrer) mais le résultat obtenu n'est pas valable [plus précisément, je fais cumtrapz(signal)].... la vitesse ne fait qu'augmenter !
    Où est le problème?

    ici dans cet article, on calcule la vitesse instantanée d'un nageur. mais j'ai du mal à comprendre ce qu'ils font. tout d'abord ils segmentent l'acceleration longitudinale sur des zones "stables" puis ensuite ils enlèvent le drift (ça c'est moins clair). Est-ce que c'est cette étape qui manque chez moi?

    Merci pour votre aide

    -----
    Minialoe67

  2. #2
    antek

    Re : cumtrapz pour calculer la vitesse a partir de l'accel?

    En intégrant l'accélération entre deux échantillons tu obtiens la vitesse ?!
    En intégrant sur la durée suivante tu obtiens une vitesse (positive ou négative) qui doit être ajoutée au résultat précédent.

  3. #3
    Antoane
    Responsable technique

    Re : cumtrapz pour calculer la vitesse a partir de l'accel?

    Bonjour,

    Je n'ai pas lu en détail la publication sur le nageur ; cependant :

    Sous matlab, j'utilise cumtrapz (pour intégrer) mais le résultat obtenu n'est pas valable [plus précisément, je fais cumtrapz(signal)].... la vitesse ne fait qu'augmenter !
    C'est probablement du au fait que tu as un offset dans le signal de sortie du capteur. Autrement dit : si l'accélération du cheval vaut a(t), la tension de sortie du capteur vaut ã(t)=a(t)+a0, où a0 est une valeur constante, un défaut du capteur. Ce a0 est a priori très faible, mais le fait que tu l'intègres fait diverger la vitesse obtenue.
    Pour estimer a0, on peut, par exemple, voir comment varie lorsque l'accélération a(t) est nulle, ou filtrer (passe haut) ã(t) avant intégration, ou estimer a0 comme étant la valeur moyenne de ã(t) si tu sais que cette valeur moyenne doit être nulle, etc.

    Tu devrais trouver pas mal de littérature quant aux problèmes d'offset généraux dans les accéléromètres, sans même focus particulier sur matlab.

    PS : pense à normaliser après avoir appliqué cumtrapz(), la fréquence d’échantillonnage ne doit pas (trop) influencer le résultat final.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

Discussions similaires

  1. Calculer une vitesse à partir de coordonnées dans x,y,z
    Par aurel94100 dans le forum Physique
    Réponses: 7
    Dernier message: 16/02/2012, 21h10
  2. Réponses: 11
    Dernier message: 08/01/2012, 14h48
  3. Réponses: 4
    Dernier message: 16/03/2010, 20h03
  4. Calculer la vitesse du motor à partir de 1746 HSCE
    Par zaranet dans le forum Électronique
    Réponses: 0
    Dernier message: 27/06/2009, 11h55
  5. Calculer la vitesse a partir de l'accélération
    Par ajneye dans le forum Mathématiques du collège et du lycée
    Réponses: 4
    Dernier message: 02/03/2009, 19h50
Découvrez nos comparatifs produits sur l'informatique et les technologies.