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 

Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand



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!

02.01.2017, 13:27
Beitrag #1

schneiderlu52048 Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Dec 2016

2015
2016
DE



Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Guten Tag,

ich schreibe zurzeit meine BA und baue einen Ventilatorenprüfstand zur Verifikation der Affinitätsgesetze und weiteren Gesetzmäßigkeiten. Die Datenerfassung und -verarbeitung soll über LabVIEW geschehen. Die Signale werden über eine Datenerfassung Agilent 34970 eingelesen. Vorgesehen habe ich eine Messrate von einer Sekunde und die Aufnahme von 10 Messwerten pro Versuchsreihe. Anschließend werden die Signale auf die tatsächlichen Messgrößen umgerechnet und ein Mittelwert gebildet, mit dem die Berechnungen und die Diagramme (fehlen noch) gebildet werden.
Für den ersten Versuch "Affinitätsgesetze" werden der Volumenstrom, die spezifische Stutzenarbeit und die elektrische Leistung aus den Mittelwerten berechnet.
Dies soll für unterschiedliche Spannungen und unterschiedliche Differenzdruckmessungen möglich sein. Aus diesen Werten sollen verschiedene Diagramme erstellt werden, weswegen die Werte gespeichert/ festgehalten werden sollten. Ich habe versucht diese Problematik über mehrere Casestrukturen zu lösen. Allerdings wird die Programmierung recht komplex und unübersichtlich. Fällt jemandem eine elegantere Lösung ein?

Ich bin leider (noch) kein LV-Profi und bin für jeden Tipp dankbar. Wenn Bedarf nach einer ausführlicheren Versuchsbeschreibung besteht, einfach schreiben. Bin mir nicht sicher inwieweit die Problemstellung verständlich ist.
Vielen Dank und ein frohes neues Jahr!


Angehängte Datei(en)
15.0 .vi  02_01_17_Versuchsstand.vi (Größe: 51,65 KB / Downloads: 264)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
02.01.2017, 13:57 (Dieser Beitrag wurde zuletzt bearbeitet: 02.01.2017 13:57 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Hallo lu,

herzlich willkommen im Forum!

Zitat:Die Signale werden über eine Datenerfassung Agilent 34970 eingelesen. Vorgesehen habe ich eine Messrate von einer Sekunde und die Aufnahme von 10 Messwerten pro Versuchsreihe. Anschließend werden die Signale auf die tatsächlichen Messgrößen umgerechnet und ein Mittelwert gebildet, mit dem die Berechnungen und die Diagramme (fehlen noch) gebildet werden.
Das hört sich doch schon mal nach einer durchdachten Sache an…

Zitat:Fällt jemandem eine elegantere Lösung ein?
Ich kann momentan dein VI nicht anschauen, aber hast du schon mal über ein Producer-Consumer-Schema nachgedacht?
Evtl. auch gestaffelt: DAQ -> Umrechnen -> Speichern -> Darstellung…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.01.2017, 14:36
Beitrag #3

schneiderlu52048 Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Dec 2016

2015
2016
DE



RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Hallo Gerd,

danke für die schnelle Antwort.
Zitat:Ich kann momentan dein VI nicht anschauen, aber hast du schon mal über ein Producer-Consumer-Schema nachgedacht?
Evtl. auch gestaffelt: DAQ -> Umrechnen -> Speichern -> Darstellung…
Kenne leider den Begriff nicht. Ich lese mich mal in die Thematik ein und melde mich dann nochmal Blush
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.01.2017, 14:45
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Hallo lu,

Datei -> Neu… -> VI -> aus Vorlage -> Entwurfsmuster -> Erzeuger/Verbraucher…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.01.2017, 15:53
Beitrag #5

schneiderlu52048 Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Dec 2016

2015
2016
DE



RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Ich habe mich etwas in die Thematik eingelesen. Eine Struktur nach dem Erzeuger/Verbraucher-Prinzip würde das Programm strukturierter und effizienter machen.
Allerdings bin ich mir über die Einbeziehung der Struktur in mein Programm etwas unschlüssig.
Ich habe mal noch einen Screenshot von einem Teil meines Blockdiagramm angehängt.
Zu sehen sind darin die Initialisierung, das Einlesen der Messwerte, die Umformung, die Mittelwertbildung und das Verarbeiten der Daten mittels Formelknoten in verschiedenen Cases.

Meine konkreten Probleme sind:

1. Das Weiterverarbeiten der Daten für die Diagramme. Für den Versuch "Affinitätsgesetze" werden die Messdaten bei unterschiedlichen Spannungen und verschiedenen Differenzdruckmessungen ermittelt. Diese Daten sollen gespeichert werden und in verschiedenen Diagrammen dargestellt werden. Im Allgemeinen soll der Anwender den Versuch, die benutzte Differenzdruckmessung und die Spannungsstufe auswählen können. Das habe ich versucht über die drei Case-Strukturen und Auswahl-Enums zu lösen. Diese sind allerdings recht unübersichtlich, wie ich finde.
Dazu würde sich das Erzeuger/Verbraucher-Prinzip anbieten oder?

2. Das Speichern der Daten und den Aufruf für die Diagramme. Wenn man eine erste Messung bei 12 Volt und danach eine Messung bei 11 Volt durchführt und diese jeweils über das Enum anwählt, werden die Daten der 12 Volt Messung dann überschrieben?

3. die allgemeine Funktionalität und Struktur des Programms. Eventuell auch die Einbindung der Erzeuger-Verbraucher-Struktur.

Vielen Dank schon mal!


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.01.2017, 16:13
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Hallo lu,

Zitat:Eine Struktur nach dem Erzeuger/Verbraucher-Prinzip würde das Programm strukturierter und effizienter machen.
Oh ja! Big Grin

Zitat:Ich habe mal noch einen Screenshot von einem Teil meines Blockdiagramm angehängt.
Was mir auffällt:
Du hast links eine Schleife, die Messwerte aufnimmt.
Ist es korrekt, dass du eine Referenz für das Gerät auf mehrere parallele Abfragen verteilst?
Ist es sinnvoll, diese Referenz in der Schleife zu schließen?
Ist es sinnvoll, mehrere Iterationen dieser Schleife durchzuführen, wenn die Referenzen geschlossen werden?

Ganz allgemein:
- Aufräumen und für gerade und nicht verdeckte Drähte sorgen! Wie soll man sich in so einem BD zurechtfinden?
- SubVIs für gleiche Operationen einführen: bei dir z.B. die Skalierung der Messwerte und die Mittelwertberechnung…

Zitat:2. Das Speichern der Daten und den Aufruf für die Diagramme. Wenn man eine erste Messung bei 12 Volt und danach eine Messung bei 11 Volt durchführt und diese jeweils über das Enum anwählt, werden die Daten der 12 Volt Messung dann überschrieben?
KA
Hängt davon ab, wie du es programmierst…

Zitat:3. die allgemeine Funktionalität und Struktur des Programms. Eventuell auch die Einbindung der Erzeuger-Verbraucher-Struktur.
Man kann die einzelnen Bearbeitungsschritte trennen únd in jeweils eine Schleife packen:
- DAQ mitsamt Messwertskalierung
- Berechnungen/Auswertungen
- Datenspeicherung und Anzeige

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.01.2017, 16:49
Beitrag #7

schneiderlu52048 Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Dec 2016

2015
2016
DE



RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Hast du natürlich recht. Ich versuche bis morgen mal etwas Ordnung reinzubekommen.

Zu deinen Anmerkungen:
Zitat:Ist es korrekt, dass du eine Referenz für das Gerät auf mehrere parallele Abfragen verteilst?
Ist es sinnvoll, diese Referenz in der Schleife zu schließen?
Ist es sinnvoll, mehrere Iterationen dieser Schleife durchzuführen, wenn die Referenzen geschlossen werden?

1. Ja das ist korrekt
2/3. Stimmt, das ist nicht sinnvoll. Ich werde diesen Teil rausziehen.

Ich versuche mal weiterzumachen und melde mich dann wieder.

Schönen Abend noch.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.01.2017, 17:24
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Hallo lu,

Zitat:1. Ja das ist korrekt
Das ist zwar die Antwort auf meine Frage, aber nicht deren Intention!
Ich halte es für problematisch, einer SharedResource wie deinem Messgerät parallel mehrere sich widersprechende Befehle zu senden! Auch das sollte per DATAFLOW serialisiert abgearbeitet werden…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.01.2017, 11:09 (Dieser Beitrag wurde zuletzt bearbeitet: 03.01.2017 11:10 von schneiderlu52048.)
Beitrag #9

schneiderlu52048 Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Dec 2016

2015
2016
DE



RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Guten Morgen,

Zitat:Das ist zwar die Antwort auf meine Frage, aber nicht deren Intention!
Ich halte es für problematisch, einer SharedResource wie deinem Messgerät parallel mehrere sich widersprechende Befehle zu senden! Auch das sollte per DATAFLOW serialisiert abgearbeitet werden…

Ich verstehe leider nicht genau was du damit meinst. Die SubVI Initialisierung sendet doch keine sich widersprechenden Befehle, oder? Zur Serialisierung der Daten habe ich die Funktion "Daten serialisieren" benutzt. Ich glaube aber nicht, dass das die Variante ist die du gemeint hast. Entschuldigung, falls ich mich dumm anstelle.

Ich habe mein BD etwas strukturiert, Teile in SubVIs verpackt und die Case-Strukturen gelöscht. Die Berechnungen habe ich wegen der Übersichtlichkeit auch in einen Formelknoten gepackt. Verstehe ich es richtig, dass ich den bis jetzt im angehängten VI vorhandenen Bereich in die Erzeugerschleife packe? Und je nach Auswahl des Versuchs, der Differenzdruckmessung und der Spannungsebene, dann eine bestimmte Verbraucherschleife aufgerufen wird, die genau dafür programmiert ist?

Ich hänge das neue VI, sowie ein Bild davon, nochmals an und wäre für Feedback sehr dankbar.


Angehängte Datei(en) Thumbnail(s)
   

15.0 .vi  03_01_17_Versuchsstand.vi (Größe: 35,26 KB / Downloads: 169)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.01.2017, 11:20
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Datenerfassung und - verarbeitung an einem Ventilatorenprüfstand
Hallo lu,

Zitat:Zur Serialisierung der Daten habe ich die Funktion "Daten serialisieren" benutzt. Ich glaube aber nicht, dass das die Variante ist die du gemeint hast.
Nein, das meinte ich nicht.
Ich meinte, dass du die Agilent-Abfragen in der FOR-Loop nacheinander (seriell) und nicht parallel ausführen sollst!

Zitat:Ich habe mein BD etwas strukturiert
Und leider immer noch versteckte Drähte! Wo kommt der String her, der in diese ganzen Agilent-Abfragen reingeht?

Zitat:Ich hänge das neue VI
Kannst du das heute als LV2014 (Datei -> Speicher für vorige Versionen) bereitstellen?

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
  Datenversand,Empfang und Verarbeitung in einer parallen Programm BunterLoewe 2 5.097 06.02.2014 13:45
Letzter Beitrag: Morpheus
  verarbeitung von gemessenen spannungen xymaddin 6 4.308 22.10.2012 08:03
Letzter Beitrag: GerdW
  Extrahieren von einzelnen Daten aus einem Cluster in einem 2d-Array cblaise 1 3.847 16.07.2009 08:51
Letzter Beitrag: Y-P
  Verarbeitung CT-Bild Student100 1 3.333 17.04.2009 23:44
Letzter Beitrag: A.Berndsen
  Verarbeitung Befehlssatz dr_inge 1 3.385 18.04.2008 15:48
Letzter Beitrag: dc6xs

Gehe zu: