le 08-23-2019 04:50 AM
Bonjour à tous,
Je souhaite pouvoir réduire la taille d'un graphique FFT à données dynamiques,
et ce, afin d'obtenir uniquement les données affichés sur ce graphique une fois mis à l’échelle.
J'ai déjà tenté de modifier avec un nœud de propriété qui
délimite une intervalle du graphique :
Donc l'échelle change bien en effet, mais les prises de mesures
ne se limitent pas aux intervalles réglées avec ce noeud, mais continuent
à capturer les données du graphique dans son intégralité.
J'imagine qu'il faut agir sur les données qui proviennent de mon oscilloscope directement,
mais ça devient compliqué, et j'ai besoin de votre aide, en
fichier joint voici mon VI.
Bonne journée !
Résolu ! Accéder à la solution.
le 08-23-2019 06:35 AM
Le noeud de propriété ne fait que limiter l'affichage du graphique à ces valeurs.
Pour limiter ce qui est affiché dans le graph comme tu semble le souhaiter, il faut intervenir directement sur les données et ce n'est pas en modiifant les données qui viennent de l'oscilloscope car dans ce cas tu perdras des informations de signals.
Que souhaites tu faire exactement?
Réduire le nombre de points affichés dans le graph?
Réduire l'étendue de fréquence affichée?
le 08-23-2019 06:55 AM
Pour être exact, j'inscris la fréquence de la fondamentale (via la FFT) dans
un fichier Excel, et ce, en sélectionnant graçe à mon code la raie la plus élevée (en excluant la continue). Malheureusement en prenant les mesures, je me suis rendu compte qu'un bruit dépassait parfois ma raie fondamentale, et qu'à la place d’écrire celle ci dans Excel, c’était le bruit qui était sélectionné.
Le bruit est situé à 1MHz, et mon signal à 3MHz, je voulais alors "zoomer" entre 2MHz et 4MHz,
pour éviter de prendre en mesure ce bruit dans mon Excel.
le 08-23-2019 08:06 AM
Dans ce cas tu peux exclure du traitement, les fréquences qui ne sont pas dans ton range, le plus simple est de le faire avec une sortie de tunnel conditionnelle.
J'ai aussi enlever les build array qui ne servent à rien
08-23-2019 08:38 AM - modifié 08-23-2019 08:44 AM
Je ne suis pas familier avec Virtual Bench mais si l'oscilloscope à un mode "averaging" ce serait préférable à faire un "moving average". Quel est la nature du signal? As-tu une idée de la provenance su signal à 1MHz?
Pour le calcul de la FFT tu n'utilises pas de fenêtre, as-tu essayé quelques une pour voir si l'amplitude du signal à 1MHz diminuait (j'utilise généralement Blackman-Harris).
Tu peux extraire la section de fréquence voulue en utilisant la fonction In Range & Coerce, en voici un exemple:
Ben64
EDIT: Bon, j'aurais du rafraichir la page avant d'envoyer mon message
le 08-23-2019 09:52 AM
Ca marche nickel avec votre solution messieurs ! Merci
Je veux faire la moyenne de mon signal, et j'ai l'impression que je n'ai pas écrit ce qu'il
faut pour obtenir un résultat correct :
le 08-23-2019 10:32 AM
le 08-26-2019 04:04 AM
Bonjour Ben,
Je comprends comment faire une moyenne, mais la moyenne d'un graph
avec l'outil labview, ça m’échappe .
le 08-26-2019 06:36 AM
Le graph ne fait fait qu'afficher les données qu'on lui envoi.
Il ne fait pas de moyenne. Il faut donc calculer la moyenne de certains points et l'afficher.
Pour regrouper trois points il faut aussi modifier l'échelle des X pour qu'elle montre le changement d'échelle.
08-26-2019 08:42 AM - modifié 08-26-2019 08:51 AM
Bon j'ai une première ébauche avec vos conseils, mais je bloque.
Le programme admet une moyenne une moyenne entre 1 et 90 échantillons, mais aux alentours de 100 ou plus, il déraille et ne moyenne plus rien. What the.... ?