Discussions au sujet des autres produits NI

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

relancer la tâche

Bonjour,

J'aimerais savoir s'il est possible lorsqu'il y a une erreur(du type -200141 error overwritten par exemple) si l'on peut prendre note de cette erreur mais faire que cela n'influe pas sur l'acquisition et que celle-ci se relance. Lorsque l'on "stop" la tache en cas d'erreur et qu'on la "start" juste après cela fonctionne mais on doit toujours appuyer sur "Continue" (il y a aussi la possibilité d'appuyer sur "break" mais cela arrete alors toute l'application) lorsqu'on a le message d'erreur qui apparaît. Peut-on éviter d'appuyer sur ce "Continue"?

Cordialement.


 
0 Compliments
Message 1 sur 7
3 661 Visites
Il existe une possibilité simple d'annuler une erreur en utilisant General Error Handler.vi. Il suffit alors de définir l'entrée exception action à cancel error on match et l'entrée exception code au numéro d'erreur à annuler.

Une alternative un peu plus pratique est d'utiliser le VI que je me fais le plaisir de vous offrir en pièce jointe.

Message Edité par JB le 06-12-2007 03:05 PM

Message 2 sur 7
3 660 Visites

Bonjour à tous,

Je n'ai rien à ajouter...

JB, vous êtes en forme !

Cordialement,

BRAUD Jean-Philippe
Field Sales Engineer - Nord et Centre France
LabVIEW Certified Developper
Message 3 sur 7
3 646 Visites
JB, vous êtes en forme !

Oui, fin prêt pour la 94ème édition du Tour de France !

Tout laisse à croire que j'ai déjà été confronté à cette situation et que j'étais alors dans un jour de créativité débordante pour réaliser l'icône ! Le genre de "petits" VIs qui s'avèrent utiles de temps à autres et qui viennent enrichir la librairie complétée au fil des ans...
Message 4 sur 7
3 641 Visites
Bonjour,
J'ai aujourd'hui, moi aussi cette erreur! Malheureusement, le fait d'annuler l'erreur ne corige pas le prôblème de fond, qui est que l'acquisition est stoppée dans le process et une nouvelle erreur apparait dans le traitement puisque le waveform n'est pas traitable.
La Vi utilisé qui génére cette erreur est "Lire un compteur dbl" associé à une tâche max qui fait l'acquisition continue buffeurisée d'un codeur incrémental 3600 Pts. En // je fait une autre tâche de lecture analogique elle aussi continue, buffeurisée et synchronisée sur la voie A du codeur.
L'erreur apparaît de façon intermittente, comme les "gens du spectacle"?
Je ne comprends pas d'ou cela vient, est-ce ma tâche, est-ce mon vi?
Avez vous une explication?
Merci                        Alain

0 Compliments
Message 5 sur 7
3 473 Visites

Bonjour alain,

Je vais essayer de vous répondre même si je ne travaille pas sous labview mais plus sur LabWindows/CVI. Mais les principes se rejoignent.
Si j'ai bien compris le problème, cette erreur intervient et provoque d'autres erreurs.
Effectivement, lorsque l'on masque le retour de cette erreur, cela ne la corrige pas, il faut alors la prendre en compte lorsqu'elle arrive et ne pas réaliser de traitement.
Puis il faut supprimer et nettoyer la tache avant de la relancer proprement jusqu'à l'intervention d'une autre erreur de ce type. Une gestion d'erreur est donc nécessaire.
Ceci doit être dû au dimensionnement de votre buffer d'acquisition.  Celui-ci se remplit plus vite qu'il ne se vide ce qui provoque ce type d'erreur dite d'overflow.

En résumé, le mieux serait donc selon moi, d'éviter l'apparition de cette erreur en vérifiant le dimensionnement du buffer d'acquisition, et  gérer tout de meme le cas de l'erreur, tout en masquant son apparition, en stoppant proprement le processus d'acquisition et tout ce qui va avec avant de le relancer.

Voila,j'espère vous avoir mis sur la voie.

 
0 Compliments
Message 6 sur 7
3 449 Visites
Bonsoir Julien,
Merci pour votre prompt réponse. Il est vrai que la taille des données est le principal prôblème et je pense diminuer la fréquence d'échantillonnage qui est aujourd'hui à 100Khz, 20 K seraient suffisant. L'autre voie que je ne métrise pas du tout serait peut-être de reconfigurer le DMA pour améliorer les transferts, mais là je ne sais absolument pas de quoi il en retourne?
Donc je vais commencer par la première solution et après on verra!
Alain

0 Compliments
Message 7 sur 7
3 437 Visites