le 06-19-2012 03:03 AM
Bonjour,
voila j'ai une application ou je fais l'acquisition de données avec un daqmx en suite j'enregistre les données dans un fichier la je veux faire la stat sur les données calcule de la moyenne ,valeur max,valeur min.
Je tiens a vous dire que chaque tour de boucle j'obtiens une valeur du daqmx c voulu ,la je cherche a faire la moyenne sur toute les valeur obtenue tout au long de l'exécution du programme .
Merci
Résolu ! Accéder à la solution.
le 06-19-2012 05:32 AM
Faire l'acquisition de une seule valeur à chaque tour de boucle n'est peut être pas la meilleure solution... Bien ça dépend des besoins de l'application...
Cela dit pour en venir à la question posée, pour conserver le min et le max c'est facile, il faut utiliser deux registre à décalage (un pour le min et un pour le max), le min sera initialisé à + l'inifni et le max à - l'infini et ensuite il faut comparer chaque nouveau point acquis avec le min courant et avec le max courant.
Pour le calcul de la moyenne, il faut définir sur combien de point successif on veut la moyenne et utiliser la fonction "pt by pt mean" qui se trouve dans la palette "Signal Processing >> point by point >> stats".
Un block diagram vallant mieux qu'un long discours :
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
le 06-19-2012 06:51 AM
Merci pour ta réponse .
Je te laisse ci-joint mon diagramme tu pourra mieux voir c quoi le problème je veux faire la moyenne ,le max,min du signal qui sors du daqmx tout en sachant que le daqmx reçois un échantillon chaque tour de la boucle j'ai fais cela pour qu'il sois a la même vitesse que mon millimétré enfin qu'il donne le même nombre d'échantillon Voila merci de ton aide .
le 06-19-2012 07:07 AM
Heu... c'est gentil mais... je pense que le mieux c'est que tu essaies de l'intégrer toi-même dans ton VI.
Une petite remarque, je comprends pas trop pourquoi tu crées une tâche DAQmx et que tu as aussi un VI express "DAQ Assistant" dans ta boucle, je pense qu'il serait bcp mieux de ne pas utiliser de DAQ Assistant et même chose pour l'enregistrement des données dans un fichier, c'est pas bcp de boulot de créer un fichier avant d'entrer dans la boucle while, d'écrire une ligne à chaque itération et de fermer le fichier en sortant de la boucle while.
Tu fais ton calcul de moyenne une fois que tu sorts de la boucle, ça c'est ok, maintenant si tu veux voir ta moyenne évoluer au cours de l'acquisition, tu dois utiliser la technique que je t'ai indiqué.
Pour le min et le max, c'est pareil, il te suffit d'ajouter le code que j'ai montré à ta boucle while.
Essaie de le faire toi-même et n'hésite pas si tu as plus de question.
Bon courage
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
le 06-19-2012 07:41 AM
Le problème c'est que je suis pas pro en labview du coup je sais pas comment faire j'ai tout essaye pour faire la moyenne su signal donner par daqmx mais j'y arrive pas .
le 06-19-2012 08:06 AM
svp aidez moi ,je fais comment pour fair ma moyenne .
le 06-19-2012 08:31 AM
Comment faire la moyenne de quoi?
Dans ton VI il y a deux partie, l'acquisition faite par le VI Express DAQ Assitant en haut (que je ne peux pas ouvrir car je suis sur un mac aujourd'hui) et la partie RS? sur le COM2 en bas (je ne sais pas exactement ce que c'est car je n'ai pas les VIs).
Tu veux faire la moyenne du signal acquis par le DAQ Assistant, ou les signaux qui viennent de l'autre périphérique (V, A et W), ou les deux?
Pour la partie du bas (V, A et W) c'est hyper facile, tu prends le VI que je t'ai indiqué (Pt by Pt mean.vi) tu lui donnes V ou A ou W en entrée et lui il te donne à chaque fois la moyenne des N dernières valeurs que tu lui as donné (valeur acquises par l'appareil sur le COM2)
Pour la parti du haut c'est un poil plus compliqué, mais commence par ça, après on verra
Je veux bien répondre à des questions et te guider si tu as besoin d'aide mais je ne veux pas faire ton boulot à ta place.
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
le 06-19-2012 08:45 AM
Merci c gentil de répondre.
Pour la partie du bas j'ai pu faire la moyenne c'est pas un problème ,c plus la partie du haut qui me pose problème .
Le daq me donne un signal d'échantillon que moi j'ai choisie de fixe a un échantillon du coup je sais pas comment faire pour avoir la moyenne des échantillons de toute l'exécution .
Je te demande pas de faire mon boulot parceque je tiens a le faire moi même je veux juste un peux d'aide vu que je suis débutante en labview .
merci
06-19-2012 09:40 AM - modifié 06-19-2012 09:40 AM
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
le 06-20-2012 07:01 AM
Bonjour,
merci bcp pour ta réponse ca marche la moyenne,mais pour le max et le min rien ne marche pour le moment je cherche un solution mais j'en trouve pas .
Encore merci pour ton aide c'est gentil.
Cordialement