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 : 

Vitesse de communication avec appli RT

Résolu !
Accéder à la solution

Bonjour à tous,

 

J'ai réaliser un application séparé en deux applis (PC et RT). Lorsque je fais mes tests en lançant les VI depuis LabVIEW, la communication entre les deux coté se fais parfaitement bien, le tous est synchronisé.

Mais lorsque je passe en startup.rtexe pour la partie RT et en .exe pour le PC, la communication ne se fais plus aussi rapidement...

 

Est-ce normal ou c'est mon PC qui se fais un peu trop vieux ?

 

Cordialement

Nathan 

0 Compliments
Message 1 sur 10
4 770 Visites

J'ai oublié de préciser que les transferts de données se font par variables partagée sur le réseaux.

0 Compliments
Message 2 sur 10
4 769 Visites

Il n'y a pas raison pour que le transfert de données de se fasse moins vite en EXE qu'en code source.

 

De manière générale le code compilé (EXE) s'exécute plutôt plus rapidement que le code source, mais la vitesse d'exécution du code et le débit de données entre tes 2 applis ce sont 2 choses différentes ; cela dit si la configuration de tes variables partagées n'est pas adaptée à ton architecture le fait que le code s'exécute plus rapidement peut devenir un problème.

 

Je pense que tu dois faire attention à la configuration des tes variables partagées, par exemple, estc que le buffering est activé? et si oui, est ce que c'est judicieux?

 

Hope this helps


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 3 sur 10
4 743 Visites

Merci pour ta réponse, mais au vu de se que tu écrit, on peut dire que théoriquement le débit de données doit etre le meme que l'on execute le programme en code source ou en exe...

 

La configuration de mes variables sont relativement basique:

- Type de variable : Network-Published

- Pas d'aliasing

- Pas de buffer

- Pas de RT FIFO

- Pas de scaling

 

Une autre configuration serait-elle plus optimal ?

 

Cordialement

Nathan

0 Compliments
Message 4 sur 10
4 737 Visites

NathV74 a écrit :

Merci pour ta réponse, mais au vu de se que tu écrit, on peut dire que théoriquement le débit de données doit etre le meme que l'on execute le programme en code source ou en exe...

 

La configuration de mes variables sont relativement basique:

- Type de variable : Network-Published

- Pas d'aliasing

- Pas de buffer

- Pas de RT FIFO

- Pas de scaling

 

Une autre configuration serait-elle plus optimal ?

 

Cordialement

Nathan


Etant donnée la config des VP c'est assez surprenant d'avoir une différence en passant en EXE.

Tu arrives à poster des screenshots de la partie ecriture et lecture de tes VP côté Rt et côté host?

 


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 5 sur 10
4 731 Visites

Pour l'écriture coté host, ça se fait dans une structure évenement, en fonction du test que l'on faire réalisé par la partie RT, on vient écrire différentes valeur dans la VP "Test":

 

Sans titre .JPG

 

Pour la lecture, elle se fait dans une boucle temporisé à 200ms, et on vient lacer le test que l'on a demandé:

 

Sans titre 2.JPG

 

Voilà, est-ce que le retard pourrait etre causé par une de ces deux structure ?

 

Cordialement

Nathan

0 Compliments
Message 6 sur 10
4 715 Visites

Côté host je pense pas que ça puisse posé de problème.

 

Côté RT, quelle est la taille du tableau 2D? est elle fixe?

Et surtout, tu demandes 200ms de cadence à la boucle while, mais quelle est la cadence effective en code source et en EXE? est-ce que sa cadence est fixe?


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 7 sur 10
4 713 Visites

Pour la taille des tableau, elle n'est pas fixe, elle varie entre 3690 et 3710...

 

Parcontre pour le cadensement je dois dire que je n'en ai aucune idée... Je vais regarder ça et je te redis

0 Compliments
Message 8 sur 10
4 709 Visites

Alors du coup, quand je ne lance aucun test le cadensement est de 0ms et quand je lance un test on arrive à presque 2s...

 

Je suppose que c'est pas vraiment normal... Ca irai mieux avec une boucle while normal ?

0 Compliments
Message 9 sur 10
4 708 Visites
Solution
Accepté par l'auteur du sujet NathV74

Je veins de régler le probleme...

Apparemment, ça marche beaucoup mieux avec un boucle while non cadencée, il n'y a plus de décallage entre la demande et l'éxécution du test.

 

Cependant un autre probleme est apparu, les tests se répettait 2 ou 3 fois à chaque fois...

J'ai donc rajoutez un tempo bloquante de 3s afin de laisser le temps au PC décrire la nouvelle valeur dans la variable.

 

Cordialement

Nathan

0 Compliments
Message 10 sur 10
4 513 Visites