LabVIEWForum.de
Ressource reserviert/ paralleles Datenauslesen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Ressource reserviert/ paralleles Datenauslesen (/Thread-Ressource-reserviert-paralleles-Datenauslesen)



Ressource reserviert/ paralleles Datenauslesen - gummibär - 21.03.2012 16:19

Hallo,

ich muss vornweg nehmen, dass ich nur wenig Ahnung von Labview habe und mir jetzt auch nciht so sicher bin ob ich die richtige Stelle für meine Frage rausgesucht habe Blush

meine Aufgabe:

ich habe 2 parallel von einander unabhängig laufende und gleichartige Messtände, bei denen die Spannung, Stromstärke und der Durchfluss gemessen werden soll

zeitgleich soll mit vorher eingegebenen Rhythmus regelmäßig umgepolt werden

es gibt die Option, nach defnierter Zeit/Zahl an Umpolungen oder nach dem Betätigen von "STOPP" die Messung und den Umpolvorgang zu stoppen

realisiert wird das Ganze mit einer NI USB-6008 - Karte
und der Ablauf des Programms erfolgt mit 2 unabhängigen While-Schleifen für jeden Umpolvorgang in dem auch die Endbedingung für die Messung enthalten ist


mein Problem:

Das Steuern und Auslesen eines Messtandes funktioniert, allerdings gibt es beim zeitgleichen Ausführen beider Programmteile (Teil A für Messtand A und Teil B für Messtand B) folgende Fehlermeldungen bei dem DAQ-Assistenten:

Fehler-50103 mit der möglichen Ursache : die angegebene Ressource ist reserviert. ...

die gleiche Fehlermeldung hatte ich bereits innerhalb eines Teils, habe dies jedoch durch das Einführen einer flachen Sequenzstruktur (für das nacheinander folgende Auslesen von U, I und Q) beheben können, da ich als Ursache dieses Fehlers gefunden hatte, dass die Datenausgänge einiger (vermutlich auch meiner) Karten nicht parallel ausgelesen werden können

Wie löse ich dieses Problem aber grundsätzlich für den parallelen Ablauf von Teil A und B, da ich ja eine fortlaufende Umpolung und Datenerfassung haben möchte und außerdem möchte ich die beiden Messungen mit unterschiedlichen Umpolzyklen und unterschiedlichen Start und Stop-Zeitpunkten laufen lassen

Also ich müsste ja so etwas haben wie:
Teil A läuft und Teil B läuft
ein Wert der NI Karte soll ausgelesen werden
Teil A liest Wert -jetzt springe zu Teil B und lese dort den Wert aus
hüpfe zu A zurück und lies dort weiter ...

gibt es diese Möglichkeit in Labview und wenn ja wie oder kennt jemand eine andere Lösung

liebe grüße und Danke im Vorraus für eure Antworten


RE: Ressource reserviert/ paralleles Datenauslesen - Schwand - 21.03.2012 16:55

Moin,

poste doch mal dein VI, dann kann man vielleicht besser helfen. Es hängt aber wohl mit der Karte und deiner Programmierung zusammen. Die Karte hat nur einen AD-Wandler und kann daher nur ein Signal "zur Zeit" aufnehmen. Mehrere Eingänge müssen nacheinander ausgelesen werden, geht karten-/anwendungsabhängig aber ausreichend schnell. Du könntest also alle Kanäle auslesen, ungenutzte Daten wegschmeißen, umschalten und von vorne.

Grüßle
S.


RE: Ressource reserviert/ paralleles Datenauslesen - GerdW - 21.03.2012 17:07

Hallo gummibär,

du kannst die gleiche Resource nicht in zwei verschiedenen Orten reservieren - und das Anlegen eines DAQ-Task ist nun mal die Reservierung einer DAQ-Resource...

Zitat:Also ich müsste ja so etwas haben wie:
Teil A läuft und Teil B läuft
ein Wert der NI Karte soll ausgelesen werden
Teil A liest Wert -jetzt springe zu Teil B und lese dort den Wert aus
hüpfe zu A zurück und lies dort weiter ...
Falsch.
Was du brauchst, sollte so arbeiten:
- eine Routine liest sowohl die Werte für Routine A als auch für Routine B und schreibt sie in einen Datenpuffer
- Routine A und Routine B holen sich die interessanten Werte aus dem Datenpuffer
- alle 3 Routinen können (bei ordentlicher Programmierung) parallel laufen


RE: Ressource reserviert/ paralleles Datenauslesen - gummibär - 21.03.2012 17:10

hallo schwand,


danke für deine Antwort

das gleichzeitige Auslesen hatte ich ja schon als vermutlichen Grund ins Auge gefasst, nur ich hatte keine Lösung dafür

das angehängte Programm besteht nur aus einem Teil - also nur Teil A und es sieht nciht hübsch aus Blush

lg


RE: Ressource reserviert/ paralleles Datenauslesen - GerdW - 21.03.2012 17:22

Hallo gummibär,

ein VI mit mehr als 1MB Dateigröße ist nicht "wünschenswert"...

Bitte folgendes machen:
- alle gleichen/wiederkehrenden Routinen in subVIs auslagern
- alle simplen Rechnungen in G programmieren und nicht als ExpressVI ausführen - und auch in subVIs auslagern, was mehr als einmal verwendet wird
- ErrorCluster verwenden und auswerten
- Datenfluß durch ErrorCluster erzwingen
- BD-Größe reduzieren, sodass es auf ein FullHD-Display passt (vorzugsweise noch kleiner)
- Programmstruktur anhand Beitrag#3 überdenken

Wenn dir einer dieser Punkte unklar ist, solltest du den Link meiner Signatur durcharbeiten.


RE: Ressource reserviert/ paralleles Datenauslesen - gummibär - 21.03.2012 17:30

Hallo GerdW,

denke du hast recht, so sollte es gehen - denke ich - werd das mal morgen dann probieren - hab zuhause leider kein Labview


vielen Dank