LabVIEWForum.de
Werte schreiben und gleichzeitig lesen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Werte schreiben und gleichzeitig lesen (/Thread-Werte-schreiben-und-gleichzeitig-lesen)



Werte schreiben und gleichzeitig lesen - Leo1 - 25.03.2011 13:01

Hallo!

Ich habe folgende Aufgabenstellung:

Der Benutzer soll einen VON-Druck, BIS-Druck und eine Zeit eingeben. Wenn der Button "OK" gedrück wird, dann soll innerhalb der gewählten Zeit der Druck von "VON" auf "BIS" erhöht werden (oder auch in die andere Richtung, von "BIS" auf "VON" verringert werden).

z.B. VON=0 bar
BIS=10 bar
Dauer= 5 Sekunden
also soll jede Sekunde +2 bar geschrieben werden ( 0,2,4,6,8,10)

Währenddessen soll gleichzeitig, wenn der Druck geschrieben wird, an der Pumpe der gerade herrschende Druck abgelesen und in einem Diagramm angezeigt werden (P-T-Diagramm, falls nicht geschrieben wird, soll auch nicht gelesen werden).

Das ganze läuft über ein NI cRio 9022.

Hab auch schon mal ein bisschen rumprobiert, dass mit dem Schreiben funktioniert eigentlich auch schon, weiß aber nicht, ob meine Lösung ideal ist (bin LabView-Beginner). Weiters weiß ich nicht, wie ich es realisieren soll, dass auch gleichzeitig gelesen wird, und zwar nur dann, wenn auch gerade Werte geschrieben werden (falls geschrieben wird, soll auch regelmäßig gelesen werden, z.B. alle 100ms).

Kann sich jemand von euch meine Lösung durchsehen, und mir sagen, was man ändern sollte, bzw. wie ich die Sache mit dem Diagramm bzw. mit dem Lesen realisieren kann.

Danke schon mal im voraus

[attachment=32949]


RE: Werte schreiben und gleichzeitig lesen - Y-P - 26.03.2011 09:11

Du solltest in der gleichen Schleife lesen, wo Du auch schreibst. Dabei würde ich die Timed Loop durch eine normale Schleife mit einer stinknormalen Zeitverzögerung ersetzen. Wenn Du die Timed Loop behalten möchtest, würde ich die dt-Zeit kleiner machen, z.B. auf 100 ms, so dass Du alle 100 ms liest. Dann musst Du aber den Wert für den Druck öfters schreiben, bevor Du ihn erhöhst.

Gruß Markus


RE: Werte schreiben und gleichzeitig lesen - Leo1 - 26.03.2011 19:52

danke für deine Antwort, ich werd es mal so machen!

Hast du sonst noch irgendwelche Verbesserungsvorschläge an meinem Diagramm?


RE: Werte schreiben und gleichzeitig lesen - Y-P - 27.03.2011 07:31

Ja, auf die Schnelle fällt mir z.B. folgendes ein, was Du sonst noch verbessern könntest:
- Die lokalen Variablen ersetzen (bzw. Deine Elemente laut Datenfluss verdrahten)
- Statt "Pollen" eine Eventstruktur verwenden.
- Indicator oder Controls im Blockdiagramm nicht als "Icon" anzeigen lassen.

Gruß Markus


RE: Werte schreiben und gleichzeitig lesen - Leo1 - 27.03.2011 14:54

hmm, danke für deine Antwort, aber was genau meinst du mit Pollen bzw. Eventstruktur?


RE: Werte schreiben und gleichzeitig lesen - jg - 27.03.2011 15:35

Pollen -> http://de.wikipedia.org/wiki/Polling_%28Informatik%29
Event-Struktur -> http://zone.ni.com/reference/en-XX/help/371361G-01/glang/event_structure/

Wobei #2 keine Alternative ist, wenn dein VI auf einem cRIO läuft, dann musst du beim Polling bleiben.

Gruß, Jens