From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Discussions au sujet de NI LabVIEW

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

Mise à l'échelle automatique en fonction des points prédéfénies

Bonjour,

Je viens vers vous car j'ai réalisé un programme dont voici son fonctionnement : 

J'ai crée un cluster de 2 éléments ou l'on renseigne les points par lesquels le graph passera ( fréquence et amplitude ) . Par exemple, si je rentre les points suivants : 

fréquence : 25      fréquence : 150      fréquence : 1500     fréquence :  2500
amplitude : 0.1     amplitude : 1           amplitude : 1            amplitude : 0.1

J'obtiens ceci : 

Sans titre1000.png

 

 

Mon problème, c'est que pour réaliser ce graphe je passe dans un premier temps par une structure evenement, avec un bouton ajouter et supprimer pour ajouter des points de cassures et un bouton "fin" qui me permet de sortir de la boucle while pour par la suite rentrer dans une autre boucle while ou est réalisé la mise à l'échelle de mon graphe. 

Boucle while et boucle evenements ( ajout de points de cassures ) :
Sans titre.png

Voici la partie ou est réalisée la mise à l'échelle : 


Sans titre.png

--> Mon but, c'est de pouvoir modifier mon graphe en ajoutant ou supprimant des points de cassures et que le graph se mette à l'échelle au fur et à mesure de l'ajout et la suppression de mes points.
Car actuellement je devais rentrer mes points, valider pour avoir l'apparence de mon graphe et si j'avais validé et que le graphe ne correspond pas à mes attentes alors je devais arreter le programme complétement pour ensuite le relancer... pas pratique..

J'ai essayé jusqu'a présent d'integrer la partie encadrée en rouge à la première boucle while mais cela ne fonctionne guère..  

Comment faire ?

Cordialement

0 Compliments
Message 1 sur 13
4 913 Visites

Salut,

 

Il suffit de mettre ta mise à l'échelle derrière ta structure event: à chaque event, ton cluster "control point out" et mis à jour, et tu l'utilise pour faire la mise à l'échelle....

 

geoff.png

Francis M
Message 2 sur 13
4 910 Visites

non, j'ai essayé cette méthode avant et je viens de le faire à l'instant pour confirmer. Lorsque je mets les 2 premiers points de cassures cela fonctionne correctement comme on peut le voir ci dessous : 

Sans titre.png

 

 

cependant une fois 3 points voir plus, le graphe ne s'adapte plus, l'échelle à l'air de correspondre mais le tracé ne s'effectue pas. pourquoi ? : 

 

Sans titre.png

0 Compliments
Message 3 sur 13
4 910 Visites

????

0 Compliments
Message 4 sur 13
4 908 Visites

Il faudrait que je récupere "sweep sine profile" à droite du bloc sweep ! mais si je supprime les 2 boucles while pour en faire une, cela ne fonctionne pas ..

0 Compliments
Message 5 sur 13
4 904 Visites

Le problème est probablement que tu ne remets pas à jour ton graphe directement après avoir ajouté/supprimé un point. Donc du coup l'échelle change mais pas les valeurs. Il faut je pense au même endroit envoyer de nouvelles valeurs à ton graphe.

Francis M
Message 6 sur 13
4 902 Visites

la génération du profile ce fait via le sous vi sweep. ou dois je le placer ? 

0 Compliments
Message 7 sur 13
4 897 Visites

Je ne voix pas ou le placer... j'ai réaliser divers changements mais rien ne va ! 

cordialement

0 Compliments
Message 8 sur 13
4 872 Visites

Utilise un noeud de propriété "Valeur" de ton graphe pour y envoyer les données là où tu fais ta mise à l'échelle.

Francis M
Message 9 sur 13
4 856 Visites

Je ne comprends pas. Mon graphe est " SWEEP SINE PROFILE" sur mon vi . La première boucle while avec structure evenements permets l'ajouts de poitns de cassures et la seconde boucle while pour le moment réalise une mise à l'échelle du graphe en fonction des points enregistrés et le sous Vi " SWEEP"  à l'aide des points de cassures enregistrés génère le spectre " SWEEP SINE PROFILE" donc je ne voix pas ou je dois mettre ton noeud de propriété valeur .

0 Compliments
Message 10 sur 13
4 854 Visites