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 

Datenübergabe aus stacked sequence



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!

31.08.2010, 16:18
Beitrag #1

derdaniel Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Aug 2010

2009
-
de


Deutschland
Datenübergabe aus stacked sequence
Hallo Leute,

bei meiner Messwerterfassung habe ich folgendes Problem:

Ein FIFO-Speicher wird in einer stacked sequence alle 100ms ausgelesen. Der Inhalt des FIFOs ist bereits ein fertiges Histogramm welches permanent weiter mit Daten von einem ADC gefüllt wird. Auf dieses Verhalten habe ich keinen Einfluss, muss also die Daten so nehmen, wie sie kommen.
Mich interessiert jetzt die Ereignissrate. Das heisst, ich will wissen, wieviele Ereignisse sind von einem Auslesen zum nächsten Auslesen in Summe hinzukommen.

Meine Idee war, ein shift register zu nutzen und das aktuell ausgelesene Histogramm vom vorangegangenen zu subtrahieren und durch eine Zeitkonstante zu dividieren. Das Problem ist aber, dass ich das aktuelle Histogramm zwar an das shift register uebergebe, aber der shift und die Rechenoperation nicht ausgefuehrt werden. (siehe Anhang - sorry, dass das so durcheinander aussieht, aber ich muss es erstmal zum Laufen kriegen, bevor ich es schoen machen kann).

Meine Frage lautet daher, wie kriege ich den shift und die Rechenoperation zum Laufen? Wenn ich in der While-Schleife den Operator auf False setze, geht garnichts mehr Confused

Danke fuer eure Tipps,
Gruss,
DanielSmile

PS: Ich arbeite mit LV2009


Angehängte Datei(en) Thumbnail(s)
   

Sonstige .vi  ADC_auslesen_versuch.vi (Größe: 76,35 KB / Downloads: 180)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
31.08.2010, 16:35
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.427
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Datenübergabe aus stacked sequence
Hallo Daniel,

wie wäre es, wenn du erstmal soviele lokale Variablen wie möglich durch direkte Drahtverbindungen ersetzt? Dies reduziert die hier gegebene Gefahr von RaceConditions erheblich...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.08.2010, 19:33
Beitrag #3

derdaniel Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Aug 2010

2009
-
de


Deutschland
Datenübergabe aus stacked sequence
Hallo Gerd,

danke für den TippSmile. Ich hab mal alles was so geht direkt verdrahtet. Leider stellt sich dadurch aber keine Verbesserung der Lage ein.

Die Frage, die sich mir stellt, lässt sich eigentlich darauf reduzieren, ob sich die While-Schleife nach der Abarbeitung der Stacked Sequence gesteuert starten lässt. Will heissen: FIFO-Wert an While-Schleife übergeben, FIFO minus Shift-Array (beim ersten mal mit '0' initialisiert) und das Ergebnis dann für die nächste Runde im Register ablegen. Das Ergebnis wird dann ausserhalb der Schleife durch die Zeit dividiert und ergibt mir die Zählrate. Danach soll die Stacked Sequenz wieder ausgeführt werden.

Eigentlich ganz einfach, ich kriegs nur nicht hin :wacko:Ich bin mir z.B. nicht klar darüber, wie ich die Abbruchbedingung der While-Schleife setzen muss, dass sie nur einmal ausgeführt wird - oder ist es vllt. besser, hier eine For-Loop einzusetzen?

Mit freundlichem Gruß,
Daniel
(ist übrigens die erste größere Sache, die ich mit LV mache)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.08.2010, 19:57
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.427
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Datenübergabe aus stacked sequence
Hallo Daniel,

ohne lokale Variablen geht doch die Datenfluß-Steuerung (und damit das "danach") einfach per Draht - also den FIFO per Draht an das SR weiterreichen! (Und mal die neueste Version anhängen...)

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

derdaniel Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Aug 2010

2009
-
de


Deutschland
Datenübergabe aus stacked sequence
Hallo Gerd,

ich hab jetzt alles probiert, komme aber mit meinem Problem nicht weiter. Das direkte Verdrahten hat auch keine Verbesserung gebracht. Das Shift-Register wird irgendwie nicht richtig ausgefuehrt - bzw. ich mach was falsch, erkenne es nur nicht.

Der FIFO-Happen kommt ordentlich an und in der ersten Runde werden die Null-Werte aus dem frisch initialisierten Shift-Array abgezogen (was okay so ist). Dann sollte das Ergebnis im Register abgelegt werden und dort auf den naechsten FIFO-Wert warten um vom neuen FIFO-Wert abgezogen zu werden und so weiter und so fort.
Fuehre ich nun das SR einmal aus (N=1), wird im SR nichts abgelegt (es stehen weiterhin die Nullen aus der Initialisierung drin), fuehre ich die Runde zweimal aus (N=2), landet der unveraenderte FIFO-Wert (weil FIFO minus 0=FIFO) im SR.

(...2h probieren und debugging...)

Das Problem ist jetzt, dass bei jedem Neuaufruf der Schleife (und das passiert jedes mal, wenn die Stacked Sequence abgelaufen ist), das Shift-Array neu initialisiert wird. Ich glaube, dass das das Hauptproblem ist. Ich dachte, dass diese Initialisierung nur einmalig, ausgefuehrt wird. Aber so wird mir jedesmal der SR-Inhalt ueberschrieben.

Bin fuer Tipps dankbar.

Gruss,
Daniel


Angehängte Datei(en) Thumbnail(s)
       

Sonstige .vi  ADC_auslesen_versuch.vi (Größe: 77,34 KB / Downloads: 163)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.09.2010, 16:39
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.427
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Datenübergabe aus stacked sequence
Hallo daniel,

und nun?Lv09_img2


Angehängte Datei(en)
Sonstige .vi  ADC_auslesen_versuch.vi (Größe: 64,94 KB / Downloads: 178)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
02.09.2010, 12:36
Beitrag #7

derdaniel Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Aug 2010

2009
-
de


Deutschland
Datenübergabe aus stacked sequence
Hallo Gerd,

es funktioniert!!! Dais

Ich musste noch ne kleine Anpassung in der Verdrahtung vornehmen, aber nun funktionierts so, wie ich es brauche! Mit dem loop-back habe ich es nicht probiert, da ich bisher damit nicht gearbeitet habe. Bin mir nur nicht ganz schluessig, warum das mit dem Shift-Register nicht auch ging - die beiden sollten ja prinzipiell das Gleiche machen. Aber das werde ich spaeter mal ergruendenSmile

Vielen Dank nochmal und Gruss,
Daniel


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  kontinuierliche Datenübergabe von mehreren SubVis in ein Array simbi 17 9.703 27.02.2013 14:20
Letzter Beitrag: Kiesch
  In Flat Sequence springen narrentanz 6 6.021 08.03.2012 14:46
Letzter Beitrag: chrissyPu
  Datenübergabe am Bedienelement chap 4 4.041 31.05.2011 16:00
Letzter Beitrag: jg
  Escape Sequence bei Strings Oleg 4 5.597 07.05.2010 09:44
Letzter Beitrag: Oleg
  Sequence vorzeitg verlassen pgl_bear 3 4.688 13.10.2009 11:54
Letzter Beitrag: schrotti
  Wie füge ich 2 flat sequence Strukturen zusammen? horatius 13 8.528 20.04.2009 22:06
Letzter Beitrag: EMV-Hero

Gehe zu: