RE: VISA Abfrage an virtuellem COM Port liefert nur bei erster Abfrage Wert (MarCator)
Hallo Gerd,
zum "misst nicht" VI:
Das war einfach ein Beispiel das ich schnell zusammengekoppelt habe (kurz vor Feierabend) wo ich Komponenten aus dem eingelochten Programm zusammengeflickt habe, wo ich zeigen wollte das mit der selben Set an Daten, nur der isolierten Datenerfassungsschleife, das ganze wie erwartet funktioniert.
Das ist im Grunde die Antwort auf alle fragen bezüglich dem.
Nun zum eigentlichen Messuhren VI:
Der reihe nach.
- Das werden sogar mal ein leere plus 11 gültige. ich habe momentan nur ein Uhr deswegen momentan nur ein gültige Referenz. Das dass Array mit einer Leeren beginnt liegt daran dass dies mein erster Einfall war wie ich umgehe, das LabVIEW sich weigert beim Befehl ersetzen/einfügen an einer bestimmten Position in einem leeren Array einfach diesen anzulegen und den Rest davor mit leeren zu befüllen.
Angelehnt an die Registerkarte (wo die Auflistung der Uhren erst mit dem zweiten Reiter beginnt), will ich überall gleich mit dem Index 1 für die Messdatenverwaltung arbeiten. Alles was im Zweiten Reiter zutuen hat (Index 1) soll überall am Index 1 stehen.
- Da weiß ich leider nicht was du meinst. Wie kann man denn vor dem indizieren wissen ob ein Element an einem beliebigen Index existiert? Das einzige ab vom indizieren was mir einfällt wäre jetzt die Größe des Arrays zu prüfen, davon weiß man zwar ob etwas drin ist, aber immer noch nicht wo.
- Ja das stimmt, den Timeout wollte ich später auch noch auf einen wert zwischen 20ms und 500ms setzen. Ich wollte nur in der Aufbau- und Testphase vermeiden Konfigurationen vorzunehmen, von denen ich noch nicht absehen kann welchen Einfluss sie auf den gesamten Ablauf haben. Ich mag halt nicht unnötig warten um zu sehen ob es so läuft wie geplant. ^^
Bis jetzt lief das Programm auch nur so 3 bis 10 komplette Durchläufe am stück. Sowas konfiguriere ich erst wenn jede Funktion einmal richtig (technisch) funktioniert hat und bevor es in die Langzeittestphase geht.
- Dem Umschalten des Reiter ein eigenes Event zu geben habe ich auch schon überlegt. Aber da dies dass erste war was ich vom Programm erstellt habe, ist es halt bis jetzt immer mit gewandert. Werde ich aber jetzt noch tuen!
- Den Botton kann ich Zwar direkt ins Blockdiagramm werfen, aber da kommen ja noch 10 (oder späte noch mehr) dazu. Deswegen finde ich es aufgeräumter die alle davor zu haben als damit das Blockdiagramm voll zu spammen.
Ich habe vor meinem letzten Projekt seitenweise Foren Threads gewälzt weil ich mich mit Event Driven State Machines (im Vorfeld erstmal einfach über die Even Struktur allgemein) auseinander setzen musste. Dabei stelle sich an vielen Stellen die Frage ob man nun die Events vor registriert oder nicht. Zusammengefasst war das dann oft ein design Entscheidung. So habe ich mich hier entschieden lieber alle Botton aufgereiht vor dem Eventcase zu haben als damit das Diagramm aufzublähen.
- Wenn ich das richtig verstand habe, geht es darum warum ich den Grundpfad erst in eine String wandle und nachdem ich ihn ergänzt habe (ConcatString: komme ich gleich auch noch zu) wieder in einen Pfad Wandler? Blanke Unwissenheit! Ich wollte etwas an einen Pfad anhängen und das war die Erste Möglichkeit auf die ich gekommen bin.
- Beim ConcatString ist das ähnlich, ich bin mir zwar bewusst das das auch mit "fancy" Formatstrings (mit einem FormatIntoString, danke, jetzt weiß ich zumindest wo ich mich bei Gelegenheit einlesen kann) geht, aber ich habe einfach in der Regel nicht die Zeit mir das anzueignen. Ich werde eigentlich fürs Planen und durchführen von Prüfabläufen und Prüfungen bezahlt und bin kein Programmierer (wie wohl nicht wenige hier).
Umso dankbarer bin ich das hier im Forum vor allem von dir Gerd und jg (zumindest zu meinen Fragen, ob aktiv oder passiv) kurz auf den punkt erklärt wird was Sache ist oder zumindest hinweise entne̱hmbar sind wo man sich informieren kann. Dass hat mich praktisch durch mein gesamte letztes LabVIEW Projekt gebracht.
Viel Grüße
Ksanto
Bearbeitet: 27.07.2017 - 14:30 Typo
|