Datenübergabe - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ) +---- Thema: Datenübergabe (/Thread-Datenuebergabe) |
Datenübergabe - Christian_C - 19.06.2008 12:55 Hallo LV-Gemeinde, stehe wieder mal vor einem Problem. Mein SubVI liest je nach Rate Messdaten ein (17 Messkanäle). Diese Daten brauch ich auch für ein anderes VI, um zu entscheiden, ob z.B. Ventilschalter ein/aus-Signal bekommt. Wie übergibt man die Daten mittels array? Danke im voraus! LV 8.5 Datenübergabe - Lucki - 19.06.2008 13:26 So geht es nicht. Das Sammeln/Vearbeiten der Daten muß entweder in der gleichen Schleife erfolgen wie die Messwerterfassung, oder aber in einer unabhängigen (d.h nicht durch Datenstränge verbundenen) anderen Schleife, wobei man die Daten mit Meldern oder Queues übergibt. Siehe Beispiel. (Amerkung: Die Synchronisation der neuen Schleife erfolgt automatisch, da der Meldeempfänger auf die Daten wartet. Also nicht durch Einfügen von Wartezeiten alles vers...) [attachment=13047] Datenübergabe - Christian_C - 19.06.2008 15:35 Danke Lucki, so ähnlich hab ich mir das vorgestellt. Versuch es jetzt mal nachzuvollziehen:huh:und mit einzubauen. Falls ich mich vorhin unklar ausgedrückt habe: Mein Problem war, dass innerhalb des Ablaufs des Prüfprogramms auf bestimmte Kanäle der NI-Karte bzw. deren Werte zugegriffen wird. Parallel soll es aber auch die gleichen Messdaten fortlaufend erfassen und speichern, damit man nachher ein Diagramm von den z.B. Druckverläufen hat. Aber dadurch wird zweimal auf die selbe Hardware zugegriffen, das funktioniert, soweit ich weiß, nicht. Deshalb brauch ich ein "SubVI Messwerte erfassen" (nur aktueller Wert des Schleifendurchgangs interessiert). Diese Werte sollen einmal dem "SubVI Messwerte speichern" übergeben werden (damit man später nach Ablauf des Prüfschrittes ein tdms-file vorhanden ist), aber auch dem jeweilig aktiven Prüfprogramm übermittelt werden. Wie gebe ich Daten von dem "SubVI Messwerte erfassen" an ein weiteres VI? Funktioniert das irgendwie mit 2 Kopien von aktuellem Wert machen und das eine VI greift auf die erste Kopie zu andere VI auf die zweite Kopie, zwecks Komplikation Datenzugriff? Die Messwerte sollen ja parallel der Steuerung des Prüfablaufs und der Datenspeicherung zur Verfügung stehen. Mal sehen, ob ich´s gebacken krieg PS: EM nicht verpassen! Datenübergabe - Lucki - 19.06.2008 16:12 Versteh das zwar nicht ganz, aber mir gefällt das Konzept so nicht. Ich würde es so machen: Es werden immer alle Kanäle einmal eingelesen. Wenn ich dann in einem Diagramm nicht alle Kanäle sehen will, kann man die betreffenden Werte durch NaN ersetzten, oder der Plot wird einfach disabled. Wenn Du die aber Anzahl der Plots dynamisch verringerst, nach der Methode "aus 17 mach 8", und dann während der Laufzeit "Aus 17 mach 6" hast Du z.B das Problem, daß im Diagramm der Kanal mit dem Plotnamen "Druck1" und der Farbe "rot" bei Weglassen oder Hinzufügen von anderen Plots einen ganz anderen Plotnamen und -farbe erhält, und das ist sehr unschön. |