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.


Antwort schreiben 

Paralleles Abarbeiten mehrerer Zusammenhänge



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!

07.05.2010, 10:36
Beitrag #1

Honeygirl24 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 169
Registriert seit: Jan 2008

8.5 , 8,6 , 2009, 2010
2007
de

90461
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
Liebes LV Team,

wie realisiere ich folgendes Problem in LabVIEW:

Es müssen folgende Aspekte parallel laufen und das am beten zeitgleich:


- Parameter und Daten aus DAQ lesen
- Daten in txt-file speichern
- Daten asu txt-file lesen für die graphische Darstellung im XY-Graphen
- Steuerun der der Zyklen im Graph in Abhängigkeit von der Zeit in Sekunden


Bitte um Hilfe und vielleicht in Stichpunkten bzw. in einer Skizze den Lösungsansatz...
Ich habe dies zwar aber queues probiert, aber bisher ohne Erfolg, da die oben genannten Punkte auf einer Seite des Tabs laufen und gleichzeitig auf der anderen Seite Tabs Einstellungen bzw. DAQ Kanäle visualisiert werden.
Die Tabs steuere ich bisher über Events.


Vielen Dank

lg
honey
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
07.05.2010, 11:14
Beitrag #2

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
' schrieb:Liebes LV Team,

wie realisiere ich folgendes Problem in LabVIEW:
Du willst ein Problem realisieren?:hmm:Davon hat man doch auch so schon genug...

Zitat:- Parameter und Daten aus DAQ lesen ... ok.
- Daten in txt-file speichern ... ok.
- Daten asu txt-file lesen für die graphische Darstellung im XY-Graphen ... Moment.
Sind das die Daten aus DAQ? Wenn ja, wozu der Umweg über die Festplatte?

Zitat:- Steuerun der der Zyklen im Graph in Abhängigkeit von der Zeit in Sekunden
Erklär das bitte genauer.

Zitat:Bitte um Hilfe und vielleicht in Stichpunkten bzw. in einer Skizze den Lösungsansatz...
Wie wär's, wenn du den Anfang machst? VI?



Gruß dimitri

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 11:20
Beitrag #3

Honeygirl24 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 169
Registriert seit: Jan 2008

8.5 , 8,6 , 2009, 2010
2007
de

90461
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
[quote name='dimitri84' date='07.05.2010 , 12:14:46' post='97294']
Du willst ein Problem realisieren?:hmm:Davon hat man doch auch so schon genug...

yep das stimmt allerdingsSmile)


Sind das die Daten aus DAQ? Wenn ja, wozu der Umweg über die Festplatte?

Yep das sind daten aus DAQ, aber teilweise auch berechnete Werte...


Erklär das bitte genauer.

Es sind rechteckförmige Kurven. Diese haben im Minimum bzw. Maximum eine vorgegebene Zyklusdauer einhalten...Deshalb auch die ZyklussteuerungSmile

Wie wär's, wenn du den Anfang machst? VI?
Das VI ist noch nicht ganz fertig...Ich möchte ja nur den bestmöglichen Ansatz stichpunktartig beschrieben bekommenSmile) Wenn das VI soweit fertig ist, können wir ja die einzelnen Probleme durchgehen...Wink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 11:37 (Dieser Beitrag wurde zuletzt bearbeitet: 07.05.2010 11:41 von dimitri84.)
Beitrag #4

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
' schrieb:Yep das sind daten aus DAQ, aber teilweise auch berechnete Werte...
Dann kannst du dir das Lesen schon mal sparen! Du hast die Daten doch schon im Speicher...

Zitat:- Steuerun der der Zyklen im Graph in Abhängigkeit von der Zeit in Sekunden
...
Es sind rechteckförmige Kurven. Diese haben im Minimum bzw. Maximum eine vorgegebene Zyklusdauer einhalten...Deshalb auch die ZyklussteuerungSmile
Du willst etwas im Graph steuern, das du eben erst aus DAQ gelsen hast? Bahn

Zitat:Das VI ist noch nicht ganz fertig...Ich möchte ja nur den bestmöglichen Ansatz stichpunktartig beschrieben bekommenSmile) Wenn das VI soweit fertig ist, können wir ja die einzelnen Probleme durchgehen...Wink
Das macht nix, wenn's nicht fertig ist. Man kann trotzdem viel besser helfen, wenn es vorliegt.


Also du hast zwei Möglichkeiten:
1) Producer-Consumer Struktur. Producer-Schleife macht die Datenerfassung. Eine Consumer-Schleife verarbeitet und stellt dar ... eine schreibt.
2) Alles in einer einzigen Schleife abarbeiten. Dann muss man aber eine geeignete Samplesanzahl pro Iteration abholen damit es keinen Stau im Puffer gibt. Da ich nicht weiß wie schnell und wie viel du misst respektive wie viel du zu berechnen hast, kann ich dir keine Empfehlung geben.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 11:46
Beitrag #5

Honeygirl24 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 169
Registriert seit: Jan 2008

8.5 , 8,6 , 2009, 2010
2007
de

90461
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
' schrieb:Dann kannst du dir das Lesen schon mal sparen! Du hast die Daten doch schon im Speicher...
Du willst etwas im Graph steuern, das du eben erst aus DAQ gelsen hast? Bahn
Das macht nix, wenn's nicht fertig ist. Man kann trotzdem viel besser helfen, wenn es vorliegt.
Also du hast zwei Möglichkeiten:
1) Producer-Consumer Struktur. Producer-Schleife macht die Datenerfassung. Eine Consumer-Schleife verarbeitet und stellt dar ... eine schreibt.
2) Alle mit einer einzigen Schleife. Dann muss man aber eine geeignete Samplesanzahl pro Iteration abholen damit es keine Stau im Puffer gibt. Da ich nicht weiß wie schnell und wie viel du misst respektive wie viel du zu berechnen hast, kann ich dir keine Empfehlung geben.



Also folgendes:
Ich erhalte Druckwerte...Diese Druckwerte müssen als Rechtecksignal dargestellt werden...D.h. Ich steuere eine Maschine, die Druck und Zug ausübt...Diese Ausübgung muss allerdings über DAQ gesteuert werden....D.h. Druckhaltedauer und Zughaltedauer muss mit de Zeit in Sekunden dargestellt werden, je nachdem wie die Haltedauer parametriert worden ist...

"1) Producer-Consumer Struktur. Producer-Schleife macht die Datenerfassung. Eine Consumer-Schleife verarbeitet und stellt dar ... eine schreibt."


Ok ProducerSchleife ist für die Datenerfassung und Consumeschleife für die Verarbeitung (Txt-file lesen, Berechnungen von benötigten Werten, Graphische Darstellung, etc.)

Verstehe ich das richtig?

"...eine schreibt" <- Das habe ich nicht verstanden...


Eine einzige Schleife würde nicht ausreichen, denke ich...Die Auslastung der CPU muss möglichst gering gehalten werden...Da der Test über mehrere Tage laufen muss...

lg
honey
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 12:20 (Dieser Beitrag wurde zuletzt bearbeitet: 07.05.2010 12:31 von dimitri84.)
Beitrag #6

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
' schrieb:Also folgendes:
Ich erhalte Druckwerte...Diese Druckwerte müssen als Rechtecksignal dargestellt werden...D.h. Ich steuere eine Maschine, die Druck und Zug ausübt...Diese Ausübgung muss allerdings über DAQ gesteuert werden....D.h. Druckhaltedauer und Zughaltedauer muss mit de Zeit in Sekunden dargestellt werden, je nachdem wie die Haltedauer parametriert worden ist...
Also soll neben dem xy-Graph noch eine Anzeige die Druck-/Zugdauer in Sekunden darstellen?

Zitat:Ok ProducerSchleife ist für die Datenerfassung und Consumeschleife für die Verarbeitung (Txt-file lesen, Berechnungen von benötigten Werten, Graphische Darstellung, etc.)
Verstehe ich das richtig?
Richtig. Nur musst du die txt-File wirklich nicht lesen. Du hast die Daten doch schon im Speicher.

Zitat:"...eine schreibt" <- Das habe ich nicht verstanden...
Eine extra Consumer-Loop zum speichern. Im Übrigen, wenn du schon von mehreren Tagen sprichst, würde ich zu TDMS raten. TDMS hat gegeüber von txt-Files viele viele Vorteile.

Zitat:Eine einzige Schleife würde nicht ausreichen, denke ich...Die Auslastung der CPU muss möglichst gering gehalten werden...Da der Test über mehrere Tage laufen muss...
Eine einzige Schleife ist nicht zwangsläufig ressourcenfressender. Jedenfalls wüsste ich nicht warum. Allerdings ist die Producer-Consumer-Architektur robuster, da, wie IchSelbst immer betont, die Queue als zusätzlicher Puffer fungiert.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 12:38
Beitrag #7

Honeygirl24 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 169
Registriert seit: Jan 2008

8.5 , 8,6 , 2009, 2010
2007
de

90461
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
' schrieb:Also soll neben dem xy-Graph noch eine Anzeige die Druck-/Zugdauer in Sekunden darstellen?
Richtig. Nur musst du die txt-File wirklich nicht lesen. Du hast die Daten doch schon im Speicher.
Eine extra Consumer-Loop zum speichern. Im Übrigen, wenn du schon von mehreren Tagen sprichst, würde ich zu TDMS raten. TDMS hat gegeüber von txt-Files viele viele Vorteile.
Eine einzige Schleife ist nicht zwangsläufig ressourcenfressender. Jedenfalls wüsste ich nicht warum. Allerdings ist die Producer-Consumer-Architektur robuster, da, wie IchSelbst immer betont, die Queue als zusätzlicher Puffer fungiert.


Es gibt nur eine Anzeige...
txt-File habe ich deshalb genommen, weil die Software bereits fertig programmiert war und ich die hohe CPU Auslastung verringern musste...Vorher wurde die ganze Datenmenge als 2D Array über Schieberegister geführt...Nachdem ich es jetzt über eine externe txt-file die Daten lese und schreibe, hat sich die Auslastung deutlich ausgebessert.

Die extra Consumer Loop? D.h. 3 While-Schleifen, die miteinander kommunizieren? Verstehe ich das richtig?

Mit TDMS habe ich noch nie bis jetzt was zu tun gehabt..Wo finde ich Beispiele...Bzw. Tutorials zu diesem? Damit ich mich näher damit befassen kann...


lg
honey
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 12:45 (Dieser Beitrag wurde zuletzt bearbeitet: 07.05.2010 13:18 von dimitri84.)
Beitrag #8

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
' schrieb:Es gibt nur eine Anzeige...
Ließe sich ändern.

' schrieb:Es gibt nur eine Anzeige...
txt-File habe ich deshalb genommen, weil die Software bereits fertig programmiert war und ich die hohe CPU Auslastung verringern musste...Vorher wurde die ganze Datenmenge als 2D Array über Schieberegister geführt...Nachdem ich es jetzt über eine externe txt-file die Daten lese und schreibe, hat sich die Auslastung deutlich ausgebessert.
Es wird Zeit für das VI. Was du hier beschreibst hört sich sehr dubios an. Du behauptest Schieberegister wären langsamer als das Schreiben und Lesen einer Textdatei? Nie und nimmer. Deine Verbesserung muss eine andere Ursache haben.

Zitat:Die extra Consumer Loop? D.h. 3 While-Schleifen, die miteinander kommunizieren? Verstehe ich das richtig?
..., die über Queues kommunizieren. Richtig.

Zitat:Mit TDMS habe ich noch nie bis jetzt was zu tun gehabt..Wo finde ich Beispiele...Bzw. Tutorials zu diesem? Damit ich mich näher damit befassen kann...
Ein Beispiel.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 13:42
Beitrag #9

Honeygirl24 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 169
Registriert seit: Jan 2008

8.5 , 8,6 , 2009, 2010
2007
de

90461
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
Ich kann mein VI aus Datenschutzgründen nicht hochladen...Deshalb auch die abstrakte Ausdrucksweise...
Die Informationen bisher helfen mir auf jeden Fall erstmal weiterSmile

Aber was ich noch gern wissen würde...
Diese Producer-Consumer-Struktur wird auf einer der Tabpageslaufen...Der Tabcontrol wird allerdings über die Event-Strutkur gesteuert...Würde das so laufen?

Vielen Dank

lg
honey
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2010, 13:52
Beitrag #10

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Paralleles Abarbeiten mehrerer Zusammenhänge
' schrieb:Aber was ich noch gern wissen würde...
Diese Producer-Consumer-Struktur wird auf einer der Tabpageslaufen...Der Tabcontrol wird allerdings über die Event-Strutkur gesteuert...Würde das so laufen?
Keine Ahnung. Leider stößt hier meine Vorstellungskraft respektive hellseherische Fähigkeit an ihre Grenzen. Wenn ich raten müsste, hört sich das nach einer weiteren Schleife an die nur Ereignisse registriert ... aber was weiß ich schon.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Dynamische Darstellung mehrerer Graphen in einem Diagramm Herm 2 6.020 30.08.2011 16:51
Letzter Beitrag: Herm

Gehe zu: