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 

Datenaufzeichnung in vorgeschriebenem Zeitintervall



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.01.2013, 15:32
Beitrag #1

bigfudge Offline
LVF-Einsteiger
*


Beiträge: 31
Registriert seit: Oct 2012

2011 SP1
2012
EN


Deutschland
Datenaufzeichnung in vorgeschriebenem Zeitintervall
Hallo Leute,

Ich habe ein Programm erstellt, mit dem Messwerte erfasst, angezeigt und schließlich in ein Excel-file geschrieben und dort gespeichert werden. So weit so wunderbar, klappt an sich alles ganz flüssig. Jetzt soll noch folgendes Feature eingebaut werden: Auf Knopfdruck sollen die Messdaten für 10 Sekunden mit einer vorgegeben Frequenz (z.b. 10 Hz) in ein File geschrieben werden. Währenddessen soll natürlich die Anzeige der Messdaten weiterlaufen. Realisiert habe ich das Ganze mit einem Timed Loop und einem zweiten Loop, welcher abgebrochen wird, sobald eine bestimmte Zeit abgelaufen ist ( siehe Anhang).

Mein Problem ist nun, dass während dieser 10 Sekunden die Messdaten nicht angezeigt werden, dh die Anzeigeinstrumente sind wie "eingefroren". Auch ins File werden während dieser Zeit 10 mal pro Sekunde die gleichen Daten geschrieben, weil sich die Daten offensichtlich nur einmal bei der ersten Iteration erneuern und dann 10 Sekunden lang gleich bleiben. Ich glaube das kommt daher, dass das SubVI für die 10-Sekunden-Messung erst nach Ablauf der 10 Sekunden beendet wird und das übergeordnete VI darauf wartet, dh die Daten aus dem Datenarray werden während dieser Zeit weder erfasst, noch angezeigt noch an das SubVI weitergegeben.

Ich hab im Moment keine Ahnung wie ich das machen soll, dass einerseits das SubVI genau 10Sekunden lang ausgeführt und andererseits das übergeordnete VI derweil weiterarbeitet.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2013, 15:36 (Dieser Beitrag wurde zuletzt bearbeitet: 07.01.2013 15:47 von Trinitatis.)
Beitrag #2

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Datenaufzeichnung in vorgeschriebenem Zeitintervall
Hallo bigfudge,

is das so gewollt, dass deine innere Schleife beim Erreichen des Index=0 stoppt?


Gruß, marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2013, 16:00
Beitrag #3

bigfudge Offline
LVF-Einsteiger
*


Beiträge: 31
Registriert seit: Oct 2012

2011 SP1
2012
EN


Deutschland
RE: Datenaufzeichnung in vorgeschriebenem Zeitintervall
Ja, das wird notwendig, weil die äußere Schleife nur beendet werden kann, wenn die Innere schon beendet ist. Die innere Schleife wird jeweils nur einmal ausgeführt, also kann das die äußere Schleife auch nach jeder Iteration der Inneren durch die Elapsed-Time-Funktion beendet werden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2013, 16:03
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Datenaufzeichnung in vorgeschriebenem Zeitintervall
THINK DATAFLOW!

Wenn deine innere Timed-Loop zwecks Überprüfung Index=0 nur 1x durchgeführt wird, dann kannst du sie dir komplett sparen.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2013, 16:05
Beitrag #5

bigfudge Offline
LVF-Einsteiger
*


Beiträge: 31
Registriert seit: Oct 2012

2011 SP1
2012
EN


Deutschland
RE: Datenaufzeichnung in vorgeschriebenem Zeitintervall
OK is irgendwie richtig, aber wie kann ich dann sicherstellen, dass genau 10 Messwerte pro Sekunde aufgezeichnet werden?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2013, 16:08 (Dieser Beitrag wurde zuletzt bearbeitet: 07.01.2013 16:10 von GerdW.)
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Datenaufzeichnung in vorgeschriebenem Zeitintervall
Zitat:dass während dieser 10 Sekunden die Messdaten nicht angezeigt werden, dh die Anzeigeinstrumente sind wie "eingefroren".
THINK DATAFLOW!
Wenn Dinge parallel ablaufen sollen (hier: Anzeige und Speichern), dann sollte man sowas auch parallel programmieren!
THINK DATAFLOW!

Zitat:wie kann ich dann sicherstellen, dass genau 10 Messwerte pro Sekunde aufgezeichnet werden?
Indem du ganz schnell 10 Messwerte speicherst und dann bis zur nächsten vollen Sekunde wartest Big Grin
Man könnte natürlich auch im 100ms-Intervall speichern...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2013, 16:15 (Dieser Beitrag wurde zuletzt bearbeitet: 07.01.2013 16:16 von bigfudge.)
Beitrag #7

bigfudge Offline
LVF-Einsteiger
*


Beiträge: 31
Registriert seit: Oct 2012

2011 SP1
2012
EN


Deutschland
RE: Datenaufzeichnung in vorgeschriebenem Zeitintervall
Zitat:Man könnte natürlich auch im 100ms-Intervall speichern...

Genau das versuch ja mit meinem Timed-Loop...geht das noch irgendwie anders?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2013, 16:23 (Dieser Beitrag wurde zuletzt bearbeitet: 07.01.2013 16:23 von GerdW.)
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Datenaufzeichnung in vorgeschriebenem Zeitintervall
Hallo big,

THINK DATAFLOW!

Du brauchst nur eine Schleife:
Code:
WHILE EVERY 100ms
   Save Data to File
REPEAT UNTIL TimeElapsed

Es hat immer mal wieder Vorteile, sich erst auf einem Blatt Papier den gewünschten Programmablauf zu skizzieren. Grundkenntnisse in PAP lohnen sich!

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
  Zeitintervall zwischen Schleifen ändern cherry 3 3.653 19.06.2012 11:38
Letzter Beitrag: Clyde
  Kleines Programm zur Datenaufzeichnung DBaBadS 5 5.212 05.03.2012 16:41
Letzter Beitrag: phylin
  Zeit-gesteuerte Radio Buttons (Zeitintervall: 100ms) sissi 10 10.045 28.02.2012 16:50
Letzter Beitrag: sissi
  Probleme mit Datenaufzeichnung OPC msalcher 7 5.379 10.07.2008 16:39
Letzter Beitrag: IchSelbst
  kontinuierliche Datenaufzeichnung auf HD morphe 1 3.305 17.07.2006 15:22
Letzter Beitrag: A.Berndsen

Gehe zu: