IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

LabVIEW Discussion :

[Labview 8.5] Dérivée d'un signal analog


Sujet :

LabVIEW

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 8
    Points : 4
    Points
    4
    Par défaut [Labview 8.5] Dérivée d'un signal analog
    Bonjour,

    Avant tout: je suis débutant avec Labview.

    J'ai pour le moment un programme labview qui lis le voltage d'un thermocouple. Ce que je souhaterais mettre au point, c'est d'obtenir la dérivée de ce signal sur un pas de temps de, disons, 0.5seconde.

    J'ai déja chipoté un peu mais je n'arrive à rien. Mon idée de base était de faire:

    [y(t) - y(t-0.5)] / 0.5

    y(t) étant ma mesure a l'instant t. Cependant, je ne sais pas comment m'y prendre, vu que je n'ai plus accès à la valeur y(t-0.5)!

    Deux questions:
    - n'y aurait il pas (par le plus grand des miracles) un module tout fait en labview qui vous donne la dérivée/pente du signal pour un certain pas de temps?
    - quelqu'un aurait une idée d'implémentation de la formule que j'ai donné plus haut?


    D'avance un grand merci! C'est un petit truc que j'aimerais implémenter pour la fin de ma thèse, je promet de mettre la personne m'ayant aidé dans les remerciements ;p


    Thomas

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Janvier 2011
    Messages
    444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études

    Informations forums :
    Inscription : Janvier 2011
    Messages : 444
    Points : 643
    Points
    643
    Par défaut
    Bon alors je répond que pour les remerciements alors^^

    Premièrement, il y a des fonctions pour calculer les dérivées (dans la palette mathématique)

    Deuxièmement, Pour conserver des valeurs précédentes, il faudra utiliser un registre à décalage. (peut être construire un petit tableau pour stocker assez de points pour faire la dérivée (note que la dérivation numérique doit se faire sur un nombre de points "pas trop petit" car tu as le problème du calcul de la pente aux extrémités!). Si tu souhaites conserver ta formule avec le registre à décalage sa sera HYPER FACILE


    Quelques infos: http://labviewbancdetest.wordpress.com/ il y a un exemple qui utilise des dérivées.

    http://moralles.free.fr/spip.php?article329

    Cordialement,

  3. #3
    Membre régulier Avatar de kalisha stark
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 90
    Points : 122
    Points
    122
    Par défaut
    Bonjour,

    Pour calculer directement la dérivée, il y a parmis tes fonctions dans l'onglet "Mathématiques" >> "Intégrations et différentiation" >> fonction "Dérivée de X(t)"

    Pour voir un peu le fonctionnement de cet outil tu peux faire un clic droit dessus et cliquer sur "aide"

    Sinon si cette fonction ne réalise pas tout à fait ce que tu veux, et si tu cherches à calculer une pente simplement, tu peux utiliser une boîte de calcul dans une boucle avec les outils "Indexer un tableau". Enfin si tu veux bien calculer une pente à partir d'un signal relevé

    Il te suffirait alors de faire quelque chose du style :

    tableau 1D de valeur (le signal) => Indexation (indice t) => y(t)
    _____________________________ Indexation (indice t-pas) => y(t-p)

    Avec pour ce que tu disais pour l'instant un pas de 0.5
    Ensuite tu renvois ces valeurs à une boîte de calcul :
    __________boîte de calcul
    __y(t) => [ __________________]
    y(t-p) => [ d = (y(t)-y(t-p))/pas ] => d (la valeur de la pente)
    __pas => [ __________________ ]


    Voilà, j'espère avoir pu t'aider, et bonne continuation avec labVIEW ^^

    Cordialement,

    Kali

    EDIT : Arrrg Rodéric est trop rapide pour moi =D Je te conseilles d'appliquer d'abord ses judicieux conseils, il est plus calé que moi dans le domaine tout de même
    -Winter Is Coming -

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Janvier 2011
    Messages
    444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études

    Informations forums :
    Inscription : Janvier 2011
    Messages : 444
    Points : 643
    Points
    643
    Par défaut
    Si tu as juste besoin de la mesure à t et t-1 un registre à décalage suffit.

    SI jamais tu as du mal ou d'autres questions n'hésites pas, tu peux aussi poster ton VI si tu as besoin qu'on regarde le code pour mieux te débloquer en cas de problème.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Désolé, j'étais en déplacement, un grand merci pour vos réponses je vais regarder ça puis j'irai à mon labo tester cela demain. Je vous tient au courant


    rodéric: dans tes deux liens pas moye nd'agrandir l'image ! je n'arrive pas à visualiser son VI

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Juste pour vous remercier, les deux techniques ont marchés (avec une préférence pour l'outil de dérivation)

    rodéric, ton nom figure dans mes remerciements

  7. #7
    Membre confirmé
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Janvier 2011
    Messages
    444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études

    Informations forums :
    Inscription : Janvier 2011
    Messages : 444
    Points : 643
    Points
    643
    Par défaut
    merci

  8. #8
    Membre éprouvé Avatar de reg64
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    959
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 959
    Points : 1 255
    Points
    1 255
    Par défaut
    Citation Envoyé par killarg Voir le message
    Juste pour vous remercier, les deux techniques ont marchés (avec une préférence pour l'outil de dérivation)
    Merci de passer le sujet
    Reg
    CLAD

Discussions similaires

  1. Condition sur la dérivée d'un signal
    Par TheKing1992 dans le forum Signal
    Réponses: 8
    Dernier message: 01/10/2013, 16h12
  2. Réponses: 2
    Dernier message: 21/03/2009, 14h56
  3. Réponses: 1
    Dernier message: 09/06/2008, 18h34
  4. Réponses: 0
    Dernier message: 22/01/2008, 21h45
  5. dérivée d'un signal échantillonné non uniforme
    Par Kcyril dans le forum MATLAB
    Réponses: 1
    Dernier message: 21/03/2007, 14h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo