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 

Pausieren des Elapsed Timers? Array löschen?



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!

16.10.2007, 10:33
Beitrag #11

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Pausieren des Elapsed Timers? Array löschen?
' schrieb:BTW: Ich habe noch nie Feedback-Nodes verwendet (weil ich sie noch nicht gebraucht habe). Wozu sind die da? Was ich damit meine ist: Was können die, was ein Schieberegister nicht kann? Sind die wirklich nur da drin, um den Programmiergeschmack verschiedener Leute nachzukommen? Feedback-Nodes sparen mehr Platz, sind aber (zumindest für mich) undurchsichtiger. Ist das alles?

Hi,
ja das ist (fast) alles. Die wurden meines Wissens erfunden, um sich lange Leitungen zu sparen...die können ein Programm unübersichtlich machen, wenn sie quer durchs BD geführt werden müssen!

Der Unterschied zu Schieberegistern ist außerdem der, das nur der Wert aus der Iteration n-1 in der Iteration n verwendet werden kann, wohin gegen mit Schieberegistern "beliebig" viele in der Vergangenheit liegende Werte genutzt werden können - je nachdem wie weit man das Register am linken Schleifenrand aufzieht!

Ich hab die Feedback-Nodes auch noch nie gebraucht! Ich finde auch, die Funktion wird durch ein Schieberegister klarer und übersichtlicher dargestellt!

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
16.10.2007, 10:56
Beitrag #12

monoceros84 Offline
LVF-Stammgast
***


Beiträge: 445
Registriert seit: Oct 2006

2011
2006
EN


Deutschland
Pausieren des Elapsed Timers? Array löschen?
Hey toll, das mit dem Aufziehen des Schieberegisters habe ich noch gar nicht gewusst...

Ok, also wurde ich in meiner bisherigen Meinung bestätigt (fühlt sich immer gut an *lol*). Werde also auch weiterhin Schieberegister verwenden. Klar, wenn man mal was ganz nebensächliches hat, wie in Luckis Beispiel, dann biete sich Feedback Nodes an. Man kreuzt dann nicht seine ganzen wichtigen Leitungen...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.10.2007, 11:26 (Dieser Beitrag wurde zuletzt bearbeitet: 16.10.2007 11:28 von rolfk.)
Beitrag #13

rolfk Offline
LVF-Guru
*****


Beiträge: 2.306
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Pausieren des Elapsed Timers? Array löschen?
' schrieb:Hi,
ja das ist (fast) alles. Die wurden meines Wissens erfunden, um sich lange Leitungen zu sparen...die können ein Programm unübersichtlich machen, wenn sie quer durchs BD geführt werden müssen!

Der Unterschied zu Schieberegistern ist außerdem der, das nur der Wert aus der Iteration n-1 in der Iteration n verwendet werden kann, wohin gegen mit Schieberegistern "beliebig" viele in der Vergangenheit liegende Werte genutzt werden können - je nachdem wie weit man das Register am linken Schleifenrand aufzieht!

Ich hab die Feedback-Nodes auch noch nie gebraucht! Ich finde auch, die Funktion wird durch ein Schieberegister klarer und übersichtlicher dargestellt!

Stimmt alles soweit! Noch eine Zusatzinformation:

Seit LabVIEW 8.5 ist die Feedbacknode wirklich dasselbe wie ein Schieberegister und LabVIEW erzeugt auch den gleichen Code dafür. Von 8.0 bis 8.2.x war das anders. Da war die Feedbacknode ganz anders implementiert und hatte im Vergleich zu einem Schieberegister oftmals eine katastrophale Performance, da scheinbar keinerlei Datenkopieoptimalisierung durchgeführt wurde. Scheint ein Internship Projekt gewesen zu sein, und der Student hat leider übersehen dass die Feedbacknode im Prinzip dasselbe ist wie ein Schieberegister und hat alles nochmal implementiert, nur viel schlechter.

Für 8.5 hat sich ein LabVIEW-Programmierer dieses Gadgets angenommen und dieselben Routinen wiederverwendet die auch fürs Schieberegister verwendet werden mit allen Performancevorteilen davon.

Ich bin ebenfalls der Meinung dass die Feedback Node zwar Drahtmeter sparen kann, aber das Programm im Sinne der Datenflussprogrammierung nicht gerade verständlicher macht. Aber das ist vielleicht auch etwas Geschmacksache. Ich denke mal, dass das Schieberegisters, obwohl für effiziente Datenverarbeitung vielleicht das wichtigste Element in LabVIEW, das am Schwierigsten zu begreifende Element für LabVIEW Neulinge ist.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.10.2007, 11:42
Beitrag #14

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Pausieren des Elapsed Timers? Array löschen?
Hallo, Rolf,

danke für die tollen Hintergrundinfos.

Ansonsten kann ich dir nur zustimmen. Ich mag die Feedback-Node auch nicht. Hatte sie anfangs mal zu Testzwecken eingesetzt, aber logischer wird der Code dadurch nicht. Wenn man mal das mit Datenfluß und Shift-Register gerafft hat, ist das auch aus meiner Sicht wesentlich übersichtlicher und verständlicher als die Feedback-Node. Ich kann mich erinneren, irgendwo in den CLAD-Beispiel-Tests war auch mal ne Frage mit Feedback-Node, fand ich total unübersichtlich.

MfG, 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
16.10.2007, 12:55 (Dieser Beitrag wurde zuletzt bearbeitet: 16.10.2007 12:57 von Lucki.)
Beitrag #15

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Pausieren des Elapsed Timers? Array löschen?
' schrieb:Der Unterschied zu Schieberegistern ist außerdem der, das nur der Wert aus der Iteration n-1 in der Iteration n verwendet werden kann, wohin gegen mit Schieberegistern "beliebig" viele in der Vergangenheit liegende Werte genutzt werden können - je nachdem wie weit man das Register am linken Schleifenrand aufzieht!

Das stimmt - und auch wieder nicht. Ein aufgezogenes Schieberegister (Bild 1) ist ja nur eine platzsparende Schreibweise für mehrere verkettete Schieberegister (Bild 2), und die kann ich wiederum einzeln durch Feedbacks ersetzen Bild 3). Ob das im Einzelfall Sinn macht, ist etwas anderes, es geht hier nur um die Realisierbarkeit.
   

Zitat:Ich hab die Feedback-Nodes auch noch nie gebraucht!
Kein Wunder, denn "brauchen" tut sie niemand, genau so wenig wie man das Wort xxx braucht, wenn es dafür schon das Synonym yyy gibt. Es bereichert nur die Sprache - hier die deutsche, dort die von LabVIEW.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.10.2007, 14:48
Beitrag #16

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Pausieren des Elapsed Timers? Array löschen?
' schrieb:Das stimmt - und auch wieder nicht. Ein aufgezogenes Schieberegister (Bild 1) ist ja nur eine platzsparende Schreibweise für mehrere verkettete Schieberegister (Bild 2)
[attachment=36075:Rueckkop...gsknoten.png]

Ich weiß nicht...ich interpretiere das etwas anders:

Für mich ist das sowas wie ein "1D-Array von Werten", die hintereinander im Speicher liegen. Dieses Array allokiert immer genau so viele "Speicherplätze", wie ich am Schleifenrand "Abgriffe" des Schieberegisters aufziehe. Durch Schreiben in das Register am Schleifenausgang schiebt man die Werte innerhalb des allokierten Speichers nach "hinten", der letzte Wert fällt raus.

Bei deiner Variante hätte ich mehrere Schieberegister mit je einer Speicherstelle, die ich tatsächlich miteinander verkette. Ist das so? Ich glaube nicht, lasse mich aber gerne eines besseren belehren!

Ob das Speichertechnisch einen Unterschied macht, vermag ich nicht zu sagen. Was nach der Kompilierung besser "da stehen" würde, weiß ich auch nicht...

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.10.2007, 07:35
Beitrag #17

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Pausieren des Elapsed Timers? Array löschen?
' schrieb:Bei deiner Variante hätte ich mehrere Schieberegister mit je einer Speicherstelle, die ich tatsächlich miteinander verkette. Ist das so? Ich glaube nicht, lasse mich aber gerne eines besseren belehren!

Weiß auch nicht mehr als Du, und ehrlich gesagt bin ich da auch nicht sonderlich wissbegierig, denn es gibt gar keinen vernünftigen Grund - und darin stimme ich sicher mit Dir überein -, etwas anderes als die Aufzieh-Variante zu verwenden. Die anderen beiden Varianten sind doch nur eine rein schöngeistige Spielerei, man könnte fast sagen sie sind hier "off topic". Bekenne mich schuldig, diesen Müll gepostet zu haben
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.10.2007, 07:41
Beitrag #18

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
Pausieren des Elapsed Timers? Array löschen?
' schrieb:Weiß auch nicht mehr als Du, und ehrlich gesagt bin ich da auch nicht sonderlich wissbegierig, denn es gibt gar keinen vernünftigen Grund

Aber gut das wir drüber geredet haben Tongue

Nee, mal ehrlich...ich finde solche "Off-Topic-Diskussionen" ziemlich interessant...im eigentlichen Sinne sind sie nämlich doch nicht am Thema vorbei!

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
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
Rainbow Programm pausieren Kaya 14 8.815 11.09.2023 12:15
Letzter Beitrag: GerdW
  Steuerung der Messdatenaufzeichnung mit Elapsed-Time-SubVI lempy 6 4.158 08.07.2021 10:18
Letzter Beitrag: lempy
  Bestimmte Zeilen im Array löschen wenn Bedingung nicht erfüllt ist bachatero18 4 5.372 31.03.2020 14:49
Letzter Beitrag: bachatero18
  Elapsed Time verbunden mit ansteigender Flanke Gesetzt 11 9.004 02.12.2015 14:19
Letzter Beitrag: GerdW
  Formelknoten - Wert aus Array löschen sumsi 3 5.869 10.09.2015 09:54
Letzter Beitrag: GerdW
  Leere Zeilen in Array löschen hansi9990 2 5.171 09.05.2015 09:48
Letzter Beitrag: hansi9990

Gehe zu: