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 

In Array nacheinander kontinuierlich schreiben



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!

22.12.2009, 12:55
Beitrag #1

Viewer2000 Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Dec 2009

8.5
-
de

73563
Deutschland
In Array nacheinander kontinuierlich schreiben
Hallo,

Ich arbeite an einem Problem an dem ich nicht weiterkomme: Ich möchte gern nacheinander eintreffende Werte in ein Array schreiben, um damit eine Art fortlaufende Zwischenauswertung zu ermöglichen, die insbesondere das Kriterium für ein Messende dann erkennt.

Die Daten werden vom DAQ-Assistenten bereitgestellt (ich weiss, nicht professionell...). Ich scheitere nun am Versuch z.B. die letzten 10 Werte dynamisch, quasi wie ein Schieberegister, in einem Array zur Auswertung vorzuhalten. Hat hier jemand ne Idee.

Vielen Dank im Voraus!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
22.12.2009, 13:21 (Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2010 13:06 von dimitri84.)
Beitrag #2

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
In Array nacheinander kontinuierlich schreiben
Das was du suchst nennt sich Ringpuffer. Dazu gibt es einige threads. Hier was zum nachmalen und reindenken:
   
Erzähl' mal wie dein Kriterium für ein Messabbruch aussieht.


!!Edit: Das Schieberegister der For-Schleife muss durch normale Tunnel ersetzt werden !!

„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
22.12.2009, 13:25
Beitrag #3

Viewer2000 Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Dec 2009

8.5
-
de

73563
Deutschland
In Array nacheinander kontinuierlich schreiben
hey Danke für die schnelle Antowrt.

Ich werte Temperaturen an einem Messstand aus. Wenn sich der Temperaturverlauf nur noch unwesentlich ändert, also zum Beispiel 10 aufeinanderfolgende Werte sich um weniger als 0,5 Grad unterscheiden, soll die Messung beendet werden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.12.2009, 13:33
Beitrag #4

Viewer2000 Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Dec 2009

8.5
-
de

73563
Deutschland
In Array nacheinander kontinuierlich schreiben
...also ich hab mich bisher auf die Konvertierung dynamischer Daten nach DBL konzentriert, um in dem dann erscheinenden Menü "1D-Array mit Skalaren - automaisch" nützen zu können. Aber leider bisher ohne Erfolg...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.12.2009, 13:36 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2009 13:45 von dimitri84.)
Beitrag #5

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
In Array nacheinander kontinuierlich schreiben
' schrieb:Ich werte Temperaturen an einem Messstand aus. Wenn sich der Temperaturverlauf nur noch unwesentlich ändert, also zum Beispiel 10 aufeinanderfolgende Werte sich um weniger als 0,5 Grad unterscheiden, soll die Messung beendet werden.

Vielleicht kommst du dann auch mit 2 gewöhnlichen Schieberegistern zurecht:
Schick einfach jede Schleifeniteration den aktuellen Messwert in ein SR und überprüfe jedes Mal das deltaT (aktueller Wert zum letzten Wert). Wenn das deltaT kleiner 0.5 ist dann inkrementierst du ein zweites Schieberegister (Counter). Ist der Counter bei 10 angekommen, so ist deine Abbruchbedingung erfüllt. Wenn delta mal größer 0.5 musst du den Counter wieder auf Null setzten. Es macht allerdings einen Unterschied, ob alle 10 Werte in einem gewissen Bereich liegen müssen (Ringpuffer nötig) oder ob 10 Mal hintereinander das detltaT kleiner Grenzwert ist. Musst du abwegen.

Aber da du ja noch mehr auswerten willst, kommst du wohl an so einem Puffer nicht vorbei.


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
22.12.2009, 13:44
Beitrag #6

Viewer2000 Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Dec 2009

8.5
-
de

73563
Deutschland
In Array nacheinander kontinuierlich schreiben
Super, genau das war meine Idee der Umsetzung. Deiner Beschreibung zufolge wär für mein Problem die SR-Lösung ausreichend. Nun habe ich in der Suche bereits nach möglichen fertigen Modulen zu Schieberegistern / shifting register erfolglos gesucht, auch meine intensiven Bemühungen selbst eines zu generieren blieben erfolglos. LabVIEW akzeptiert wohl nicht ohne Weiteres Rückkopplungen wie mir scheint... Hast du mir hierzu einen Tipp?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
22.12.2009, 13:56 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2009 13:57 von dimitri84.)
Beitrag #7

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
In Array nacheinander kontinuierlich schreiben
' schrieb:Nun habe ich in der Suche bereits nach möglichen fertigen Modulen zu Schieberegistern / shifting register erfolglos gesucht, auch meine intensiven Bemühungen selbst eines zu generieren blieben erfolglos.

rechte Maustaste auf einen Schleifenrand (for oder while, egal) -> Shiftregister hinzufügen.

Es gibt auch einen Rückkopplungsknoten der genau dasselbe macht, den finde ich aber nicht so anschaulich.

„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
22.12.2009, 14:32
Beitrag #8

Viewer2000 Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Dec 2009

8.5
-
de

73563
Deutschland
In Array nacheinander kontinuierlich schreiben
ah ok, Danke. Aber was ist der "schiebende" Impuls dieses Registers. Die Zählvariable in Kombi mit einer Verzögerung, oder bereits automatischerweise ein neuankommender Wert? Und wie kann ich bei einem zweiten Register den Inkrementschritt der Zählvariable auslösen??

Wär für ne Antwort sehr dankbar.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.12.2009, 14:42
Beitrag #9

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
In Array nacheinander kontinuierlich schreiben
Wie ein Schieberegister funktioniert kannste in der Hilfe nachschauen.
Inkrementieren kannst du mit dem Inkrementieren.VI (Numerisch Palette).
Das Überprüfen und das Rücksetzten auf Null machst du mit normalen Case-Strukturen.

Ein bisschen was selber überlegen musst man auch; so lernt man am schnellsten.

„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
22.12.2009, 16:53
Beitrag #10

Viewer2000 Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Dec 2009

8.5
-
de

73563
Deutschland
In Array nacheinander kontinuierlich schreiben
Stimmt, da hast wohl recht Rolleyes

Aber eines ist mir nach wie vor unbegreiflich. Ich kann jetzt einen Messwert seinem Vorgänger gegenüberstellen (Leitung durch eine bis 1 zählende For-Schleife als Schieberegister, die gerade um Dauer der Messwertabstände verzögert ist) ABER, ich kann diese Werte nicht voneinander subtrahieren.

Die Multiplikation geht, Addition auch (wenn ich einen Summand mit -1 multipliziere, dann wieder nicht...) sehr komisch.

offensichtlich muss das was mit dem Datenformat zu haben, weis hier jemand wichtige Restriktionen???
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
  Fehler bei AO - kontinuierlich - ohne Neugenerierung t.hipp 10 9.159 12.02.2018 22:08
Letzter Beitrag: t.hipp
  kontinuierlich anpassbare Ausgabe VS_03 1 4.230 09.06.2016 12:58
Letzter Beitrag: VS_03
  Analogausgang kontinuierlich schreiben, während der Moes 7 9.009 18.12.2015 09:09
Letzter Beitrag: Moes
  Messdaten einlesen und in Array schreiben Lukas_Bergmann 5 9.492 05.12.2013 11:10
Letzter Beitrag: GerdW
  Analog output kontinuierlich ändern aalemann 16 18.859 06.10.2010 09:47
Letzter Beitrag: Lucki
  kontinuierlich erzeugte & geregelte Signale ausgeben SchissOr 11 14.841 21.09.2010 12:28
Letzter Beitrag: SchissOr

Gehe zu: