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 

Reentrant / functional Vi's



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.11.2008, 17:51 (Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2008 17:52 von Kvasir.)
Beitrag #1

Kvasir Offline
LVF-Freak
****


Beiträge: 642
Registriert seit: May 2006

10
2004
DE_EN

0000
Oesterreich
Reentrant / functional Vi's
Hallo,

es ist wieder einmal soweit, dass mich ein Problem(chen) quält, das eurer Hilfe bedarf.

Folgende skizzenhafte Problemstellung:
Ich habe ein Programm geschrieben, das im Wesentlichen ein Eingangssignal über eine Filterbank mehrerer Bandpassfilter in verschiedene Frequenzbereiche aufspaltet. Mit diesen typischerweise 10-12 Signalen arbeite ich dann weiter.
Das ganze läuft online - ich bekomme also ständig (soll heißen kontinuierlich) Signale, die ich filtere und verarbeite.

Dabei ergibt sich:

a) Filterfunktionen und einige andere Operationen in meiner Signalverarbeitung erfordern für den korrekten Betrieb einige Werte aus dem vorherigen Durchlauf.
b) die Filterbank muss auf jeden Fall variabel sein. Dies führt dazu, dass ich die Filter Vis in eine For Loop packe (muss?!). Das ist prinzipiell ja kein Problem, aber ich kann dadurch meine Signalverarbeitung nicht mehr einfach auf Reentrant stellen, da innerhalb einer ForSchleife nicht für jeden Durchlauf eine Instanz erstellt wird.

Ich löse das zur Zeit mit Hilfe von funktionalen Vi's. Das klappt auch. Allerdings bin ich damit nicht ganz glücklich, da meine Anzahl von nichtinitialisierten Schieberegistern (zur Datenübergabe) irgendwie ins (gefühlte) unendliche steigt.
Wenn ich pro Kanal 2 1d Arrays speichern muss, dann sind das schon 2 2dim Arrays zur Speicherung. (1d array x Anzahl Kanal = 2d array)

Meine Frage also: Gibt es irgendeine elegante Lösung, die ich hier anwenden könnte? Kann man reentrant innerhalb einer Forschleife aktivieren? Wie würdet ihr sowas angehen?

Anbei ein Screenshot von einem typischen functional Vi bei mir. In diesem Fall ein 2d Array, der die Daten mitschleift.

Besten Dank mal im VorausSmile


Angehängte Datei(en) Thumbnail(s)
   

A few weeks of developement and testing can save a WHOLE afternoon in the library!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Nachrichten in diesem Thema
Reentrant / functional Vi's - Kvasir - 17.11.2008 17:51
Reentrant / functional Vi's - eg - 17.11.2008, 18:17
Reentrant / functional Vi's - Kvasir - 17.11.2008, 18:40
Reentrant / functional Vi's - eg - 17.11.2008, 18:55
Reentrant / functional Vi's - IchSelbst - 17.11.2008, 19:53
Reentrant / functional Vi's - Kvasir - 18.11.2008, 10:01
Reentrant / functional Vi's - IchSelbst - 18.11.2008, 10:29
Reentrant / functional Vi's - Lucki - 18.11.2008, 12:03
Reentrant / functional Vi's - Kvasir - 18.11.2008, 15:11

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Reentrant VI´s debuggen NoWay 2 6.410 07.07.2015 13:59
Letzter Beitrag: Kiesch
  non-reentrant Sub-VIs in unabhängigen Applikationen Nordvestlys 2 2.532 02.03.2015 11:44
Letzter Beitrag: Nordvestlys
  Verständnisfrage zu reentrant VI´s NoWay 1 4.006 27.05.2014 09:50
Letzter Beitrag: gottfried
  reentrant und subpanel raeuberfisch 4 3.780 01.03.2013 06:56
Letzter Beitrag: raeuberfisch
  reentrant Frage gottfried 3 5.191 07.09.2010 08:37
Letzter Beitrag: gottfried
  functional global mit Bild gottfried 3 3.735 13.07.2010 21:48
Letzter Beitrag: gottfried

Gehe zu: