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 

Werte mit Schieberegister übergeben



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!

17.03.2010, 13:05
Beitrag #1

Schwand Offline
LVF-Stammgast
***


Beiträge: 276
Registriert seit: Nov 2007

2014
2006
DE

31789
Deutschland
Werte mit Schieberegister übergeben
Hallihallo,

hab mal ne Frage zu der Werteübergabe in einer StateMachine:


Wenn ich beispielsweise im ersten Case einen Wert erzeuge/messe und den im 23. Case weiterverwenden möchte, muss ich dann das Schieberegister in den 21 anderen Cases immer verbinden? Oder gibt es da auch ne andere Möglichkeit? Lokale Variable ginge ja auch noch, aber das ist ja auch nicht unbedingt das Gelbe vom Ei, oder? Andererseits ist das Verbinden auch ein gewisser Aufwand und fördert nicht unbedingt die Übersichtlichkeit.....

Grüßle
S.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
17.03.2010, 13:21
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Werte mit Schieberegister übergeben
' schrieb:hab mal ne Frage zu der Werteübergabe in einer StateMachine:
Wenn ich beispielsweise im ersten Case einen Wert erzeuge/messe und den im 23. Case weiterverwenden möchte, muss ich dann das Schieberegister in den 21 anderen Cases immer verbinden?
Ja, musst du. Wobei man das in den neueren Versionen (ich meine seit 8.6) automatisieren kann. (Rechtsklick auf eine Tunnel -> etc etc).
' schrieb:Oder gibt es da auch ne andere Möglichkeit? Lokale Variable ginge ja auch noch, aber das ist ja auch nicht unbedingt das Gelbe vom Ei, oder?
Kommt darauf an. Lokale Variablen haben die Gefahr von Race-Conditions. Und bei Arrays wird dann unnötig Speicher belegt.
' schrieb:Andererseits ist das Verbinden auch ein gewisser Aufwand und fördert nicht unbedingt die Übersichtlichkeit.....
Lösung: Alles zu einem Cluster zusammenbauen, und dann nur diesen Cluster als Shift-Register weitergeben!

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
19.03.2010, 09:43
Beitrag #3

Schwand Offline
LVF-Stammgast
***


Beiträge: 276
Registriert seit: Nov 2007

2014
2006
DE

31789
Deutschland
Werte mit Schieberegister übergeben
Die Idee mit dem Cluster ist mir in dem Fall noch nicht gekommen. Die waren mir auch lange Zeit eher suspekt, aber so langsam komm ich dahinter...und für einige wenige Werte kann ich ja mal ne globale Variable einsetzen. Danke.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2010, 09:48
Beitrag #4

abrissbirne Offline
LVF-Stammgast
***


Beiträge: 480
Registriert seit: Aug 2007

LV2009, LV2010
2007
EN

66123
Deutschland
Werte mit Schieberegister übergeben
' schrieb:...und für einige wenige Werte kann ich ja mal ne globale Variable einsetzen. Danke.
Ich frag mich nur immer warum? Der Aufwand für eine Global Variable ist doch viel größer als ein neues Schieberegister anzulegen und hat gleichzeitig Raceconditions vermieden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
19.03.2010, 10:21
Beitrag #5

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Werte mit Schieberegister übergeben
' schrieb:Ich frag mich nur immer warum? Der Aufwand für eine Global Variable ist doch viel größer als ein neues Schieberegister anzulegen und hat gleichzeitig Raceconditions vermieden.
100% ACK. Und wenn man den Cluster noch typdefiniert, dann kann man das problemlos erweitern, wenn man weitere Variablen im Shiftregister braucht. Dann kann man so einen Cluster auch durch SubVIs schleifen. Und per (Un)Bundle by Name ist das auch hochgradig lesbar!

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
22.03.2010, 08:35
Beitrag #6

Schwand Offline
LVF-Stammgast
***


Beiträge: 276
Registriert seit: Nov 2007

2014
2006
DE

31789
Deutschland
Werte mit Schieberegister übergeben
' schrieb:Ich frag mich nur immer warum? Der Aufwand für eine Global Variable ist doch viel größer als ein neues Schieberegister anzulegen und hat gleichzeitig Raceconditions vermieden.

Wenn ich wie in oben genanntem Beispiel dann erst 21 Cases durchverbinden muss, dauert das Schieberegister ja schon länger. Außerdem wird mein Blockdiagramm langsam so schon voll, da ich auf die Möglichkeit des Clustern erst jetzt gekommen bin (wurde).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.03.2010, 08:48
Beitrag #7

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Werte mit Schieberegister übergeben
' schrieb:Wenn ich wie in oben genanntem Beispiel dann erst 21 Cases durchverbinden muss, dauert das Schieberegister ja schon länger.
Das Schieberegister mag während der Entwicklungszeit länger dauern. Das ist aber irrelevant. Schieberegister sind auf jeden Fall einer GV vorzuziehen.

Zitat:Außerdem wird mein Blockdiagramm langsam so schon voll, da ich auf die Möglichkeit des Clustern erst jetzt gekommen bin (wurde).
Schon mal an das Auslagern von Code in SubVIs gedacht?

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
22.03.2010, 11:32 (Dieser Beitrag wurde zuletzt bearbeitet: 22.03.2010 11:36 von Schwand.)
Beitrag #8

Schwand Offline
LVF-Stammgast
***


Beiträge: 276
Registriert seit: Nov 2007

2014
2006
DE

31789
Deutschland
Werte mit Schieberegister übergeben
' schrieb:Schon mal an das Auslagern von Code in SubVIs gedacht?

Klar, das mach ich auch. Nur dadurch, dass ich für die Weitergabe der einzelnen Werte keine Cluster benutzt habe, sind die Diagramme eben mehr oder weniger voll mit Schieberegistern. Es ist jetzt nicht der schlimmste Spaghettisalat, da die Register ja meist geradlinig verlaufen, aber es könnte etwas besser aussehen. Wenn ich mir Diagramme von Kollegen anschaue, bin ich aber immer noch höchst zufrieden mit meinen BDs.
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
  Verwendung Schieberegister de_la_questa 2 3.279 04.01.2021 17:26
Letzter Beitrag: GerdW
  Werte nacheinander in Array schreiben über ein Schieberegister BlackEagle 5 8.492 13.12.2019 13:40
Letzter Beitrag: GerdW
  Schieberegister Initialisierung mit Array => Not a Number Roland 7 8.189 03.07.2017 15:58
Letzter Beitrag: Roland
  Schieberegister anhalten Axel_Cologne 1 3.317 03.05.2016 10:39
Letzter Beitrag: jg
  Schieberegister zurücksetzen KorsarDerWeide 5 6.406 13.05.2015 09:50
Letzter Beitrag: Lucki
  Array mit Schieberegister PeterF 14 12.028 29.04.2015 15:38
Letzter Beitrag: PeterF

Gehe zu: