Schieberegister FiFo mit Inplace Stuktur realisieren - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Signaldarstellung (/Forum-Signaldarstellung) +---- Thema: Schieberegister FiFo mit Inplace Stuktur realisieren (/Thread-Schieberegister-FiFo-mit-Inplace-Stuktur-realisieren) Seiten: 1 2 |
RE: Schieberegister FiFo mit Inplace Stuktur realisieren - eb - 09.03.2012 16:10 Hallo GT123, Im 1. VI sieht man sehr schön, dass das InPlace Array selbst keine NeuAllokierung von Speicher in irgendeiner Weise erfährt (auch nicht in der InPlace-Struktur). Jedoch werden die zu bearbeitenden Elemente des InPlace-Arrays sehr wohl kopiert. Das heißt das komplette Array bleibt wo es ist, das veränderte Element wird rauskopiert, verändert und dann an die gleiche Stelle zurückkopiert. Beim 2. VI. sieht das Buffer-Allokations-technisch schick aus denke ich, obwohl man über das VI als solches natürlich noch diskutieren könnte. (Variant-Operationen sind immer so eine Sache; ControlRef-Auswahl vom FP mittels eines Index "12" ist gefährlich denke ich; BD aufräumen Gut finde ich das saubere Schließen der Referenzen, die Queue (ist wohl der Consumer-Part). Gruß RE: Schieberegister FiFo mit Inplace Stuktur realisieren - GT123 - 12.03.2012 09:29 Hallo Erik, aha, welche Variante ist nun Ressourcen schonender? Bei 2. sieht man doch einige Buffer-Allokationen, ist es nun gut o. nicht? Zu 2.: Ja es ist ein Consumer Part. Daten werden in anderen VIs in die Queue geschrieben und dieses Vi ist zuständig die Daten in den entsprechenden Graph zu schreiben. Gibt es Bedenken wegen den Variant Operationen? "ControlRef-Auswahl vom FP mittels eines Index" wie macht man es besser/professioneller? "Gut finde ich das saubere Schließen der Referenzen" :-) danke. RE: Schieberegister FiFo mit Inplace Stuktur realisieren - eb - 12.03.2012 10:15 Hallo GT123, mir war nicht klar, dass die beiden VIs das gleiche machen sollen!? Naja, egal. Ich finde das 2. VI (Buffer Allocate Graph...) besser als das 3fach verschachtelte InPlace. Vielleicht noch die Ref auf das Control mit den Dbl-Werten mit "to more specific Class" dazu bringen, das bei Value-Auslesen sofort ein 2D-String-Array rauskommt. Rein von der Struktur, würde ich die Control-Ref direkt an das SubVI anschließen und die "Auskoppellung/Ermittelung" aus dem "irgendein vi.vi" bis runter zur ControlRef außerhalb. Gruß RE: Schieberegister FiFo mit Inplace Stuktur realisieren - GT123 - 12.03.2012 10:49 Hi, Zitat:Control mit den Dbl-Werten? Also du meinst Control mit String Werten o. wie? Konnte deine Idee nicht umsetzen siehe Bild?!? RE: Schieberegister FiFo mit Inplace Stuktur realisieren - eb - 12.03.2012 11:18 Ja, so ähnlich meinte ich das. Hab auch ein wenig rumprobiert. Hab es dann mit einer Ref von einem extra 2D-String-Array-Control im SubVI gemacht. Habs aber nicht ausprobiert. Funktioniert das so? [attachment=39042] Gruß RE: Schieberegister FiFo mit Inplace Stuktur realisieren - GT123 - 12.03.2012 15:17 Hi, mal noch ne Frage die ich mir noch nicht selbst beantworten konnte: Warum mit "to more specific" und nicht mit dem "variant to data". Welche Vorteile gibt es her. Die Verdrahtung wird ja eher umständlicher wegen dem Control dann die Referenz... aber es gibt bestimmt einen triftigen Grund dafür :-)? RE: Schieberegister FiFo mit Inplace Stuktur realisieren - eb - 12.03.2012 15:30 Nein, einen triftigen Grund kann ich dir so nicht nennen, vielleicht helfen da die erfahreneren Kollegen aus... Mir sind die variantToData-Geschichten suspekt, da Variant allgemeinhin als ein "langsamer Datentyp" verschrien ist. Möglicherweise ist das (mittlerweile) überholt. Was ich außerdem noch zeigen wollte: soviel wie möglich außerhalb der While-Schleife, alles was konstant bleibt halt außerhalb berechnen und dann per Tunnel in die Loop reichen. Wahrscheinlich ist das alles aber schon zu kleinkariert. Das VI passt an sich schon. Gruß |