INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Thema geschlossen 

Prüfen ob ein Task existiert?



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

27.11.2009, 09:37
Beitrag #1

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
Prüfen ob ein Task existiert?
Hallo zusammen.

Ich habe bei einem Testsystem, welches ich gerade erstelle im Testablauf ein Problem:

Unter gewissen Fehlerkonditionen kann es passieren, dass ich in einem State lande, in dem ich die funktion "clear task" aufrufe, obwohl es diesen gar nicht gibt. Da ich nicht gewillt bin den gesammten Testverlauf anzupassen, habe ich nach einer Möglichkeit gesucht um zu prüfen, ob ein Task noch gültig ist oder nicht, bevor ich dann sage: "clear task". Leider bin ich bisher noch nicht fündig geworden und meine Kreativität lässt so kurz vor Wochenende auch allmählich nach... Lol

   

Ich möchte auch keinesfalls die Fehlermeldung ignorieren, da sie bei Systemfehlern benötigt werden könnte.

Wenn jemand eine Idee hat, wie ich die Existenz eines Tasks prüfen kann - immer her damit! ^_^

Grüsse aus dem schönen Schweden!
Tobias

Tobias Brüggemann
Dipl.-Ing.(FH) Nachrichtentechnik/Elektronik
Alle Beiträge dieses Benutzers finden
to top
27.11.2009, 09:48
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Prüfen ob ein Task existiert?
Ich kenne jetzt zwar Deinen Programmaufbau nicht und weiß auch nicht, wie Du es hinbekommst, dass da Tasks "gecleart" werden sollen, die es gar nicht gibt, aber ich würde speziell die Fehlernummer "20048" abfragen und wenn diese in Deinem "Clear"-Case in Deinem Errorcluster auftritt, dann kannst Du den Fehler löschen.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
to top
27.11.2009, 10:31
Beitrag #3

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
Prüfen ob ein Task existiert?
Hallo Y-P.

Das Vi dienst als Sub-Vi. Im Normalfall erzeuge ich sobald ich mit einer bestimmten Testsequenz im Haupt-Vi starte die Tasks, welche dann in den Shift-registern erhalten bleiben, bis zum nächsten Aufruf, wo ich mit der "Methode" "Write" Daten ausgebe, bzw. Daten einlese (Methode "Read").
Wenn diese Tests alle erfolgreich sind, wird der Task wieder mit "clear" gelöscht, bevor das Haupt-Vi seine Schleife beendet und ein neuer Test gestartet werden kann. (ich kann vom Haupt-Vi leider nichts zeigen, aber dies ist für das Problem auch unwichtig.)

Jedenfalls kann es vorkommen, dass ich einen Fehler am testobject feststelle und der Test abgebrochen werden muss. Dieser Testabbruch beinhaltet einige Routinen, wie Datalogging, Druckeransteuerungen, HMI und einiges mehr. Nun ist es so, dass ich dort eben auch eine Routine zum löschen der Tasks (fall diese vorhanden sind) aufrufen. Ich kann vom Haupt-Vi nicht direkt auf die Tasks im Sub-Vi zugreifen und will daher das Subvi mit einer entsprechenden Task-Kontrolle in der "Clear-Methode" ausstatten, ohne generell den besagten Fehler auszufiltern.

Ideen?

Edith sagt, dass ich noch die Screens mit den anderen Methoden hinzufügen sollte....
   
   

Tobias Brüggemann
Dipl.-Ing.(FH) Nachrichtentechnik/Elektronik
Alle Beiträge dieses Benutzers finden
to top
27.11.2009, 10:35
Beitrag #4

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Prüfen ob ein Task existiert?
Wenn es einen Task nicht gibt, dann gibt's automatisch einen Fehler. Wieso willst Du den denn aufheben?
Was Du machen könntest, ist, solche Fehler auch in einem Array zu sammeln, dann ist wenigstens Dein Error-Cluster sauber.

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
to top
27.11.2009, 11:04
Beitrag #5

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
Prüfen ob ein Task existiert?
Ich habe Dank Deines Gedanken auf den genauen Fehlercode zu prüfen nun folgende Lösung gefunden, die nach ersten Tests auch wunderbar funktioniert! 2hands

   

Ich habe eine Kontrolle "ignore clear task error" hinzugefügt, mit der ich in der "clear-Methode" wählen kann, was passieren soll. Jetzt kann ich vom Haupt-Vi beim Testabbruch ein Flag setzen kann um genau diesen Fehler zu unterdrücken.

Im Normalfall wird erwartet, dass bei den zu Testenden Geräten nicht mehr als als 10ppm einen Fehler haben. und davon wiederum würde nur ein Bruchteil der Fehler in meine beschriebene Situation führen - also statistisch eher nicht relevant! Deshalb hätte ich nur ungern Grossteile der Fehlerroutine geändert - aber mit einem neuen True/False-Selector kann ich leben!Cool

Vielen Dank für die Hilfe!

Tobias Brüggemann
Dipl.-Ing.(FH) Nachrichtentechnik/Elektronik
Alle Beiträge dieses Benutzers finden
to top
27.11.2009, 11:10
Beitrag #6

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Prüfen ob ein Task existiert?
Noch eine andere Idee:
Mit dem VI "Not A Number/Path/Refnum?" abfragen, ob die Task-Refnum noch gültig ist:
   
Wenn nicht gültig, dann wird nicht versucht, den Task zu schließen.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
to top
Anzeige
27.11.2009, 11:32
Beitrag #7

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
Prüfen ob ein Task existiert?
Hej Jens.

Na das gefällt mir noch besser, da es genau die Funktion ist, die ich suchte, jedoch nicht fand.

Jetzt vermeide ich den Fehler individuell für die beiden Tasks und unabhängig von wo im Haupt-Vi ich die "clear"-Anforderung rufe.

So sieht das ganze jetzt aus:
   

Thanx an alle!

Tobias Brüggemann
Dipl.-Ing.(FH) Nachrichtentechnik/Elektronik
Alle Beiträge dieses Benutzers finden
to top
Thema geschlossen 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Create 2 Task, Fehler nach Start Task Martin Heller 1 4.912 09.09.2011 14:26
Letzter Beitrag: illuminus
  Wie prüfen, ob Eingabefelder ausgefüllt sind? angori 9 8.049 07.08.2008 14:49
Letzter Beitrag: RoLe
  Wiederholung prüfen Only08 0 3.117 23.06.2008 13:59
Letzter Beitrag: Only08

Gehe zu: