Wednesday 19 April 2017

Labview Moving Average Array


Berechnen des gleitenden Durchschnitts Dieses VI berechnet und zeigt den gleitenden Durchschnitt mit einer vorgewählten Zahl an. Zunächst initialisiert das VI zwei Schieberegister. Das obere Schieberegister wird mit einem Element initialisiert und fügt dann kontinuierlich den vorherigen Wert mit dem neuen Wert hinzu. Dieses Schieberegister hält die Summe der letzten x Messungen. Nach dem Teilen der Ergebnisse der Add-Funktion mit dem vorgewählten Wert berechnet das VI den gleitenden Mittelwert. Das untere Schieberegister enthält ein Array mit der Dimension Average. Dieses Schieberegister hält alle Werte der Messung. Die Ersatzfunktion ersetzt nach jeder Schleife den neuen Wert. Dieses VI ist sehr effizient und schnell, weil es die replace-Element-Funktion innerhalb der while-Schleife verwendet, und es initialisiert das Array, bevor es die Schleife eintritt. Dieses VI wurde in LabVIEW 6.1 erstellt. Bookmark amp ShareMGI Bibliothek MGI hat eine Bibliothek von VIs, die wir bei der Entwicklung von Kundenprojekten wiederverwenden. Die Bibliothek wird als VIPM-Paket gespeichert, so dass Sie den VI-Paket-Manager installieren müssen. Einige MGI-VIs hängen von anderen OpenG-Paketen ab. Der Inhalt der MGI-Bibliothek wird durch das Erweitern der Elemente unter Array-Funktions-VIs überprüft, die alle allgemeine Arrayoperationen auf numerischen Daten ausführen. MGI Durchschnitt Dies ist ein polymorphes VI. Dieses VI berechnet und gibt den Durchschnittswert des gegebenen Doubles wieder. MGI Centered Weighted Moving Average Führt einen mittig gewichteten gleitenden Durchschnitt auf einem Array entsprechend den Größen - und Gewichtungsparametern durch. MGI Running Average PolyVI: Halten Sie die laufenden Mittelwerte für jeden der Eingabewerte. Infinite Impulse Response erfordert weniger Verarbeitung, aber es braucht unbegrenzte Zeit, um einen stationären Wert zu erreichen. Finite Impulse Reponse unterhält ein Array der angegebenen Größe, ist aber in der Lage, Ausgabe-Mittel. Dieses VI ist ein reentrant funktionale global. MGI Running Maximum Maximales laufendes Maximum. MGI Läuft Minimum Halten Sie ein laufendes Minimum effizient. MGI Interpolation 1D Array Extended Erweiterte Version von Interpolate 1D Array, die außerhalb der Array-Grenzen extrapolieren kann. Eine lineare Erweiterung, die auf dem ersten oder letzten Array-Element basiert, wird für außerhalb des Bereichs liegende Werte verwendet. MGI Threshold 1D Array Extended Eine erweiterte Version der Schwelle, die Fraktionsindizes außerhalb der Arraygrenzen erzeugen kann. Eine lineare Erweiterung, die auf dem ersten oder letzten Array-Element basiert, wird für außerhalb des Bereichs liegende Werte verwendet. MGI Berechnen von Spitzenmomenten Berechnen Sie Spitzenmomente für ein gleichmäßig abgetastetes Signal. 0. Moment ist die Fläche unter der Spitze, d. h. die Summe der Signale 1. Moment ist die Position des Peakcentroidzentrums der Masse. Berechnet durch die Summe (iyi) Summe (yi), es8217s in Einheiten des Abstandes zwischen den Signalen, wobei 0 dem ersten Element des Arrays entspricht. 2. Moment ist die RMS-Peakbreite, auch in Indexeinheiten. MGI Linear Fit Findet die kleinsten Quadrate linearen Anpassungsparameter für die bereitgestellten Daten. Wenn der Bereich der x-Werte nicht größer als der Bereich der y-Werte ist, wird die Anpassung durchgeführt, wobei die x - und y-Werte umgekehrt sind, wobei die Ausgangssignale zurück in die ursprüngliche Orientierung umgewandelt werden. Wenn der optionale Gewichteingang leer oder unbenutzt ist, werden die in der Passung verwendeten Gewichte auf 1 (gleiche Gewichtung) gesetzt. MGI Statistisches Histogramm Erstellen Sie ein Histogramm basierend auf -3 Standardabweichungen und Ausreißern. MGI berechnen Array Differences Dies ist ein polymorphes VI. Berechnen Sie Differenzen zwischen aufeinanderfolgenden Arrayelementen. 0-Ausgangssignal gleich x (0) - x (-1) ist, wobei x (-1) ein optionaler skalarer Eingang ist, der auf Null zurückgeht. MGI berechnen Array Summen Dies ist eine polymorphe VI. Berechnen Sie die Summe der aufeinanderfolgenden Arrayelemente. 0-Element des Ausgangs gleich x (0) x (-1) ist, wobei x (-1) ein optionaler skalarer Eingang ist, der auf Null zurückgeht. MGI Shift Array Verschiebt ein 1-D-Array um eine bestimmte Menge nach oben oder unten, füllt mit NaN. MGI Decimate Array mit Offset Dies ist ein polymorphes VI. Dezimiert das angegebene Array um den angegebenen Wert. Ein Fehler wird ausgegeben, wenn die Array-Länge kein ganzzahliges Vielfaches der Dezimation ist. 8220Offset8221 legt fest, welche Dezimation ausgegeben wird. Wenn Offset größer oder gleich Dezimierung ist, wird ein Fehler ausgegeben. MGI Get Slope at Point Ruft die Einheitslängensteigung der Kurve ab, die durch die Eingabefelder am angegebenen Index definiert ist. 2D-Array-VIs arbeiten auf 2-dimensionalen Daten (wie das, was an ein Intensitätsdiagramm gesendet wird). MGI Edge Enhance 2D Array Führen Sie eine Edge Enhancement Operation auf einem 2D Array basierend auf dem absoluten Wert der Differenzen zwischen Nachbarn eines Punktes in entgegengesetzte Richtungen durch. Es doesn8217t schärfen Kanten, aber es dämpft konstante Regionen. MGI Gaussian Smooth Anwenden einer Gaußschen Glättungsfunktion in einer Richtung auf einem 2D-Array von Daten. Smooth Skala ist die e-fach Länge in Array-Index-Einheiten. Genauigkeitsfaktor ist das Verhältnis des kleinsten enthaltenen Begriffs zum größten Ausdruck. Die Daten werden effektiv von null8217s an der Grenze umgeben. MGI Smooth 2D Array Führen Sie einen Glättungsvorgang auf einem 2D-Array mit einem Kernel wie folgt aus: 0 1 0 1 1 1 0 1 0 Element-Summen werden durch die Anzahl der gültigen Quell-Elemente normalisiert, so dass ein konstantes Array unverändert bleibt. MGI XY-Größen Bestimmen Sie Array-Dimensionen und setzen Sie das Ergebnis in einen XY-Cluster. Anwendungssteuerungs-VIs verwenden LabVIEW VI Server oder führen Aufgaben aus, die mit ausführbaren Programmen oder einer Benutzeroberfläche zusammenhängen. MGI-VI-Referenz Dies ist die polymorphe Version für die Aufrufer-, aktuelle und Referenzniveaus. Das VI verfügt auch über eine ebene Version, die es erlaubt, die gewünschte Referenz genau zu bestimmen. MGI Change Detector Bericht, wenn die Eingabe seit dem letzten Aufruf geändert wurde. Dieses VI ist polymorph und der erste Aufruf dieses VIs wird basierend auf der ausgewählten Instanz auf True oder False zurückgesetzt. MGI Gray if Dieses polymorphe VI ist so konstruiert, dass es die 8220Disabled8221-Eigenschaft der Steuerelemente speist. Abhängig von der Bedingung gibt es entweder 8220Enabled8221 oder 8220Disabled und Grayed Out.8221 MGI Origin an den oberen linken Punkten aus, wobei die referenzierte VI8217s-Frontplatte8217s am oberen linken Rand des Bereichs liegen. MGI Save 038 Wiederherstellen von Einstellungen Speichert oder stellt die mit einem VI verknüpften Einstellungen wieder her, einschließlich Feldbegrenzungen, Spaltenbreiten für Listenfelder und Diagrammdiagramme. Die Einstellungen werden in einer Ini-Datei am angegebenen Pfad gespeichert. Bei Tabellenstil-Steuerelementen werden nur die Spalten mit Kopfzeilen gespeichert. MGI Exit if Runtime Dieses VI wurde entwickelt, um am Ende einer Anwendung, die als ausführbare Datei ausgeführt wird, verwendet zu werden. Es schließt die Vorderseite der ausführbaren Datei, bevor Sie LabVIEW verlassen, wodurch das lästige Flimmern beseitigt wird, wenn sich die Frontplatte in den nicht laufenden Zustand bewegt. Im Quellcode hat dieses VI keine Wirkung. MGI Get Executable Version Wenn dieses VI in eine ausführbare Datei integriert ist, gibt es die Dateiversion (anders als die Produktversion) der ausführbaren Datei zurück. Wenn es in der Entwicklungsumgebung ausgeführt wird, gibt es einfach 8220Development8221 zurück. Ausführbare Dateien, die mit LabVIEW-Versionen vor 8.0 erstellt wurden, enthalten nicht die notwendigen Informationen in der ausführbaren Datei dieses VIs, um die Version zurückzusenden. MGI For Loop Progress Bar Dieses VI ist ein Fortschrittsbalken für For Loops. Wenn die 8220Wait-Zeit8221 abgelaufen ist und die Schleife weniger als halb durch ihre Gesamt-Iterationen ist, öffnet sich dieses VI und zeigt eine Fortschrittsanzeige für die For-Schleife an. Wenn 8220Show Time8221 True ist, zeigt dieses VI eine Annäherung für die verbleibende Zeit an. Ein gleitender Durchschnitt wird verwendet, um die Approximation zu glätten, um Nichtlinearitäten bei der Codeausführung zu kompensieren. MGI ist Runtime Das VI gibt einen Booleschen Wert zurück, der angibt, ob er in einer ausführbaren Datei oder in der Entwicklungsumgebung ausgeführt wird. MGI Get Value Dies ist ein polymorphe VI. Es wird der Wert des Steuerelements durch Verweis angegeben. Es fungiert als ein kleiner Knoten 8220Value8221. MGI Button Dialog Erweiterte Version des eingebauten drei Schaltfläche Dialog für die ursprüngliche Hilfe, klicken Sie auf Link unten). Es wurde ein boolescher Ausgangswert für den Drop-in-Ersatz von Ein - oder Zwei-Tasten-Dialogen verwendet, die, wie im Original, durch Verkabelung leerer Strings für Schaltflächentext erhalten. Eine Option hinzugefügt, um dies zu einem nicht-modalen Dialog zu machen, aber das aufrufende VI zu verbergen, was nützlich ist, wenn Sie ein Fenster, aber nicht alle Fenster blockieren möchten. Dieses VI ist wiederbelebt, um diese Situation zu unterstützen. MGI Defer Panel-Updates Defers oder Restore Panel-Updates für das angegebene VI. Dieses VI verfolgt die Anzahl, wie oft ein Deferrestore für jedes VI erstellt wird, so dass mehrere Defers mit mehreren Wiederherstellungen übereinstimmen müssen. Ein Defer - oder Wiederherstellungsversuch wird versucht, auch wenn bei der Eingabe ein Fehler auftritt. MGI Dirty Dot Setzt, löscht oder liest einen schmutzigen Punkt auf dem Frontpanel Titel des referenzierten VIs. MGI Get VI Control Ref Gibt Refnums aller Bedienelemente auf einem Frontpanel zurück. Wenn die Registerkarte Eingabemasken-Steuerelemente wahr ist, sind alle Steuerelemente auf den Registerkarten rekursiv enthalten. Die Art der zurückgegebenen Refnum wird auch in Control Typei ausgegeben. Control Labeli enthält das Label jedes Controls. MGI Center Callee in Caller Dieses VI ist so konzipiert, dass es ein VI8217s Fenster in einem Anrufer VI8217s zentriert. MGI Fade In 038 Out Dieses VI stellt iterativ die Transparenz des referenzierten VIs von vollständig transparent bis vollständig opak und umgekehrt ein und stellt eine visuelle 8220Fade In8221 oder 8220Fade Out8221 zur Verfügung. Der Standardwert 8220Speed8221 ist auf eine beliebige 821638217 eingestellt. Eine höhere Anzahl führt zu einem schnelleren Fade. MGI Coerce-Panel-Bounds auf sichtbarem Bereich Stellen Sie die angegebenen Panel-Grenzen so ein, dass sie auf den Bildschirm passen. Wenn mindestens ein Pixel mit 50 Pixeln des oberen linken oder oberen rechten Rechtecks ​​auf einem der Monitore angezeigt wird, wird die ursprüngliche Bereichsgrenze ausgegeben. Andernfalls werden die Panel-Schranken so geändert, dass sie auf dem primären Monitor erscheinen. MGI Einstellen der Frontpanelfarbe Stellt die Frontpanelfarbe des referenzierten VIs ein. MGI Set Frontpanel-Titel Stellt den Frontpanel-Titel des referenzierten VIs ein. MGI Scrollbar einstellen Dieses Polymorphe VI zeigt oder blinkt die Scrollbar (en) für die angegebene Steuerreferenz. Weitere Informationen finden Sie in der Instanz VI-Hilfe. MGI Save Front Panel Data Speichert die Steuer - und Indikatordaten in einer MGI ReadWrite Anything-Datei unter dem angegebenen Abschnitt in der angegebenen Datei. Kontroll - und Indikatornamen müssen eindeutig sein. MGI Restore Front Panel Daten Stellt die Steuer - und Indikatordaten aus der angegebenen MGI ReadWrite Anything-Datei wieder her. Kontroll - und Indikatornamen müssen eindeutig sein. MGI Disable Enum Merge VI Dies ist ein Merge-VI für das Enum-Enable-Steuerelement. MGI VI Property Node Dieses VI enthält einen Property Node, der mit der Front Panel: Open-Eigenschaft der VI-Klasse verknüpft ist. Dieses VI dient zum Zusammenführen eines Objektknotens, der bereits als VI-Klassen-Typ verknüpft wurde. MGI Disable Enum Grayed Merge VI Das Disable Enum. vi ist kleiner als das Enum 8220Disabled und Greyed out8221 und kann auf Blockdiagrammen fallengelassen werden, um Platz zu sparen. MGI Disable Enum (Small) Dieses Polymorphic VI enthält eine Instanz für jeden deaktivierten Zustand eines Controls (Enabled, Disabled, Disabled 038 Grayed). Sie benötigt weniger Platz als eine Aufzählungskonstante im Blockdiagramm. Bezier VIs führen Berechnungen auf der Basis von Bezierkurven durch, die den kubischen Splines ähnlich sind, jedoch mit einigen wichtigen Unterschieden. MGI Bezier Find k Suchen Sie das Bézier Control Points-Array für den Block, der y enthält. Y wird gegen y (erstes k 3 4n) getestet, wobei n 0, 1, 8230. Der Rückgabewert ist (erster k 4n), der für die Eingabe in Bezier Inverse geeignet ist. MGI Bezier Suchen nach rückwärts Suchen Sie das Bündel-Kontrollpunkt-Array für den Block, der y enthält. Y wird gegen y (erster k 8211 4n) getestet, wobei n 0, 1, 8230 ist. Der Rückgabewert ist (erster k 8211 4n), der für die Eingabe in Bezier Inverse geeignet ist. MGI Bezier Inverse Multiple Solutions Berechnet die Bezier-Parameter 0..1 aus y, ein Ergebnis der Bezierfunktion. Alle Lösungen im Bereich 0..1 werden in aufsteigender Reihenfolge zurückgegeben. MGI Bezier Inverse Time Berechnet eine Zeit aus einem Blockindex und einem Parameter 0..1. Tatsächlich führt eine inverse Bezier-Funktion statt einer Vorwärts-Eins aus, so dass u zuerst linear auf den Zeitbereich abgebildet wird, dann wird eine inverse Bezier berechnet, und dann wird das Ergebnis in den Zeitbereich neu zugeordnet. MGI Bezier Inverse Berechnen Sie einen Bezier-Parameter 0..1 aus y, ein Ergebnis der Bezierfunktion. MGI Bezier Scalar Berechne einen Bezier-Punkt, der ein Array von Kontrollpunkten, den Index des Anfangs des Blocks von 4 zu verwendenden Punkten und den gewünschten 0-1-Wert enthält. MGI Bezier-Slope-Vektor Berechnen Sie einen N-dimensionalen Bezier-Vektor, der Sätze von 4 Kontrollpunkten in jeder der N Dimensionen und dem gewünschten 0-1-Wert gibt. MGI Bézier Slope Weights Berechnet ein Array aus vier Gewichten, (1-u) 3, u (1-u) 2, u2 (1-u) und u3 gegeben u. U sollte zwischen 0 und 1 liegen. MGI Bezier Time Berechne einen Bezier 0..1 Parameter aus t. Tatsächlich verwendet ein Vorwärts-Bezier anstelle eines Inversen, so dass die Endpunktzeiten zuerst verwendet werden, um t zu einem Parameter 0..1 zuzuordnen, dann wird der Bezier berechnet, dann werden die Endpunkte verwendet, um das Ergebnis wieder auf 0..1 abzubilden. MGI Bezier-Vektor Dies ist ein polymorphes VI, das einen N-dimensionalen Bezier-Vektor berechnet, der Sätze von 4 Kontrollpunkten in jeder der N Dimensionen und dem gewünschten 0-1 Wert angibt. MGI Bezier-Gewichte Dies ist ein polymorphes VI, das ein Array aus vier Gewichten berechnet, (1-u) 3, 3u (1-u) 2, 3u2 (1-u) und u3 gegeben u. U sollte zwischen 0 und 1 liegen. MGI Bezier Optimizer Modifikation des Downhill Simplex nD für die Modellberechnung und eine interaktive Anzeige. Boolesche VIs arbeiten auf booleschen Daten. MGI Boolean Debounce Output ist nur wahr, wenn Eingang für die vorherigen Filter Length-Aufrufe wahr ist. Wiedereintritt. MGI Rücksetzbarer Trigger (Wiedereintritt) Dieses VI setzt den Ausgang 8220Trigger8221 nur einmal an einer steigenden Flanke des Eingangssignals 8220State8221 hoch. Der Ausgang 8220Triggered8221 ist nach dem ersten Mal am Eingang 8220State8221 ansteigend. Der Trigger ist über den Eingang 8220Reset (F) 8221 rücksetzbar. Dieses VI ist ein reentrant funktionale global, so dass jede Instanz dieses VI bezieht sich auf einen anderen Trigger. Cluster-VIs führen Operationen auf Clustern durch, indem sie ein Element in einem Cluster ersetzen oder den Index eines Elements erhalten. MGI Get Cluster Elements Dieses VI wurde für die Verwendung mit den ReadWrite Anything-VIs erstellt. Es bricht ein Cluster in seine einzelnen Elemente und übergibt die Elemente in einer Reihe von Varianten. MGI Get Cluster Index Dieses VI gibt den Tabulatorreihenfolgeindex des Elements oder Unterelements in Cluster In mit Name zurück. Wenn das Element nicht gefunden wird, wird ein -1 zurückgegeben. Was Index bedeutet, hängt vom Modus ab: Alle Elemente und Unterelemente einschließen: Wiederholt alle Cluster und Subcluster und Inkremente für jeden Cluster oder jeden anderen Datentyp. Index gibt die Reihenfolge element8217s unter allen Elementen unabhängig von der Ebene zurück. Nur Erstniveau: Betrachtet nur die Elemente von Cluster In. Wird auf keinen Unterclustern von Cluster In wiederholt. In diesem Fall bezieht sich Index auf die Tabulatorreihenfolge von Cluster In. Index in der untersten Ebene: Sobald ein Element mit Namen gefunden wird, wird der Index der Indexreihenfolge in seinem Besitzcluster in Index zurückgegeben. MGI Get Cluster Value Dieses VI soll den Wert eines Elements in einem Cluster (als Variante) basierend auf dem bereitgestellten Namen zurückgeben. Wenn mehrere Felder mit demselben Namen vorhanden sind, wird nur der erste zurückgegeben. Die Einstellung "Flat to True" vermeidet die Suche in Unterclustern. MGI Cluster-Element ersetzen Dieses VI sucht nach einem Element oder Unterelement in Cluster In mit Name und ersetzt es mit Data. Wenn Data die falsche Größe ist oder wenn ein Element mit Name nicht gefunden werden kann, wird Cluster In für Cluster Out zurückgegeben. Diese VIs werden von National Instruments verteilt, aber nicht auf eine Palette gesetzt. Sie sind nützlich, um den Datentyp einer Variante zu prüfen. Sie geben nicht die Daten auf dem Draht, sondern nur die Art des Drahtes. GetArrayInfo Informationen über den in Variant gespeicherten Array-Datentyp abrufen. Wenn Variant8217s Datentyp nicht ein Array ist, wird ein Fehlercode von 1 zurückgegeben. NDims ist die Dimensionalität des Arrays. Für jede Dimension enthält Array Lengths ein Element, das beschreibt, wie der Arrayspeicher zugeordnet ist. ArrayElement gibt den Datentyp des Array-Elements (in einer Variante) zurück. GetClusterInfo Holen Sie sich Informationen über den in Variant gespeicherten Cluster-Datentyp. Wenn Variant8217s Datentyp nicht ein Cluster ist, wird ein Fehlercode von 1 zurückgegeben. Cluster-Elemente enthält einen Datentyp für jedes Cluster-Element. GetNumericInfo Gibt numerische Informationen über den in Variant gespeicherten numerischen Datentypen zurück. Wenn Variant8217s Datentyp nicht numerisch ist, wird ein Fehler ausgegeben. Wenn der Datentyp ein Enum ist, enthält EnumNames die Elemente. Einheiten beschreibt alle Geräteinformationen. GetPolyVIInfo Holen Sie sich Informationen über den in Variant gespeicherten PolyVI-Datentyp. Wenn Variant8217s Datentyp keinen PolyVI beschreibt, wird ein Fehlercode von 1 zurückgegeben. Zeitstempel ist ein numerischer Wert, der angibt, wann das PolyVI zuletzt bearbeitet wurde. GetRefnumInfo Holen Sie sich Informationen über den in Variant gespeicherten Refnum-Datentyp. Wenn Variant8217s Datentyp nicht ein refnum ist, wird ein Fehlercode von 1 zurückgegeben. ReferenceType beschreibt den Typ von Refnum StrictType beschreibt alle mit dem refnum verknüpften Daten. Für strikte VI-Referenzen handelt es sich um einen VI-Datentyp, der das VI beschreibt. Bei Datalogs ist es der Datentyp, der gespeichert wird. VI Server Generic Type gibt den spezifischen VI Server-Klassentyp an, wenn ReferenceType 8220LVObjUnknown8221 ist. GetStringInfo Holen Sie sich Informationen über den in Variant gespeicherten String-Datentyp. Wenn Variant8217s Datentyp nicht eine Zeichenfolge ist, wird ein Fehlercode von 1 zurückgegeben. MemoryType beschreibt den Speicher, der verwendet wird, um die Zeichenfolge zu speichern, nicht die Zeichenfolgenlänge. GetTagInfo Holen Sie sich Informationen über den Tag-Datentyp, der in Variant gespeichert ist. Wenn Variant8217s Datentyp nicht ein Tag ist, wird ein Fehlercode von 1 zurückgegeben. MemoryInfo beschreibt den Speicher, der verwendet wird, um das Tag zu speichern, nicht die Taglänge. GetTypeInfo Geben Sie Informationen über den in Variant gespeicherten Datentypen zurück. Typ Enum ist der Datentyp Name ist der Name der Daten Wenn die Daten durch eine Typdefinition definiert werden, ist HasTypedef true und Typedef enthält Informationen über die Typdefinition. GetVIInfo Holen Sie sich Informationen über den in Variant gespeicherten VI-Datentyp. Wenn Variant8217s Datentyp nicht ein VI ist, wird ein Fehlercode von 1 zurückgegeben. VI Info gibt die vermuteten Merkmale des VIs zurück. VI-Terminaltypen enthält einen Eintrag für jedes Terminal im VIs-Connectorbereich. Unverdrahtete Endgeräte haben einen Void-Datentyp. GetWaveformInfo Informationen über den in Variant gespeicherten Waveform-Datentyp abrufen. Wenn Variant8217s Datentyp nicht eine Wellenform ist, wird ein Fehler ausgegeben. YArrayType gibt den Datentyp des waveform8217s YArray-Elements als Variant zurück. SetArrayInfo Setzt die Attribute eines Array-Typ-Deskriptors. Variant In ist der Array-Typ-Deskriptor, dessen Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden sie gelöscht, bevor die neuen Attribute hinzugefügt werden. Array-Element ist der Elementtyp-Deskriptor, der auf dem Array-Typ-Deskriptor gesetzt wird. Array Lengths ist ein Array von Dimensionslängen. Für jede Dimension im Array wird ein Array-Längeneintrag vorhanden sein. Variant Out gibt den Array-Typ-Deskriptor zurück, nachdem Array-Element und Array-Längen zu Variant hinzugefügt wurden. SetClusterInfo Setzt die Attribute eines Clustertyp-Deskriptors. Variant In ist der Clustertyp-Deskriptor, dessen Elemente gesetzt werden. Wenn bereits vorhandene Elemente vorhanden sind, werden diese gelöscht, bevor die neuen Elemente hinzugefügt werden. Cluster-Elemente ist ein Array von Elementtyp-Deskriptoren, die auf dem Clustertyp-Deskriptor gesetzt werden. Variant Out gibt den Clustertyp-Deskriptor zurück, nachdem Cluster-Elemente zu Variant hinzugefügt wurden. SetNumericInfo Setzt die Attribute eines Deskriptors vom Typ des numerischen Typs. Variant In ist der numerische Typdeskriptor, dessen Elemente gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden diese gelöscht, bevor die neuen Attribute hinzugefügt werden. Enum Names ist ein Array von Namen, die verwendet werden, um eine Aufzählung für die numerische zu erstellen. Diese Eingabe ist optional und darf nur mit ganzzahligen numerischen Typen verwendet werden. Units ist ein Array von Basiseinheit, Exponentpaaren, die verwendet werden, um Einheiten für die numerische zu erstellen. Diese Eingabe ist optional und darf nur mit Fließkommazahlen verwendet werden. Variant Out liefert den numerischen Typdeskriptor, nachdem Enum-Namen und Units zu Variant hinzugefügt wurden. SetRefnumContainedType Legt die Attribute eines Array-Typ-Deskriptors fest. Variant In ist der Array-Typ-Deskriptor, dessen Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden sie gelöscht, bevor die neuen Attribute hinzugefügt werden. Array-Element ist der Elementtyp-Deskriptor, der auf dem Array-Typ-Deskriptor gesetzt wird. Array Lengths ist ein Array von Dimensionslängen. Für jede Dimension im Array wird ein Array-Längeneintrag vorhanden sein. Variant Out gibt den Array-Typ-Deskriptor zurück, nachdem Array-Element und Array-Längen zu Variant hinzugefügt wurden. SetRefnumInfo Legt die Attribute eines Array-Typ-Deskriptors fest. Variant In ist der Array-Typ-Deskriptor, dessen Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden sie gelöscht, bevor die neuen Attribute hinzugefügt werden. Array-Element ist der Elementtyp-Deskriptor, der auf dem Array-Typ-Deskriptor gesetzt wird. Array Lengths ist ein Array von Dimensionslängen. Für jede Dimension im Array wird ein Array-Längeneintrag vorhanden sein. Variant Out gibt den Array-Typ-Deskriptor zurück, nachdem Array-Element und Array-Längen zu Variant hinzugefügt wurden. SetTypeInfo Setzt den Namen und die typedef-Attribute eines Typdeskriptors. Variant In ist der Typdeskriptor, dessen Name und typedef Attribute gesetzt werden. Wenn bereits vorhandene Attribute vorhanden sind, werden diese gelöscht, bevor die neuen Attribute hinzugefügt werden. Name ist eine Zeichenfolge, die zum Erstellen eines Namens für den Typdeskriptor verwendet wird. Typedef Info ist ein Cluster aus einem VI-Namen und einem Zeitstempel, der verwendet wird, um ein typedef für die numerische zu erstellen. Variant Out gibt den Typdeskriptor zurück, nachdem Name und Typedef Info Variant in SetVIInfo hinzugefügt wurden Informationen zum VI-Datentyp, der in Variant gespeichert ist. Wenn Variant8217s Datentyp nicht ein VI ist, wird ein Fehlercode von 1 zurückgegeben. VI Info gibt die vermuteten Merkmale des VIs zurück. VI-Terminaltypen enthält einen Eintrag für jedes Terminal im VIs-Connectorbereich. Unverdrahtete Endgeräte haben einen Void-Datentyp. MGI-Code verwendet Standard-LabVIEW-Fehlercluster, sodass er problemlos mit integrierten LabVIEW-Funktionen integriert werden kann. MGI Insert Reserved Error Wire 8220Reserved Error Code8221 mit einer Fehler-Ring-Konstante eingefügt werden, es sei denn, es8217s ein Upstream-Fehler oder 8220Error8221 ist false. Der Quellstring wird aus der aufrufenden Kette aufgebaut, beginnend mit diesem Aufrufer vi8217s, und wird mit dem Eingang 8220Error Description8221 vorangestellt. MGI Anfügen einer Zeichenfolge an eine Fehlerquelle Anhängen oder Voranstellen der angegebenen Meldung an den Eingabefehlerquellenstring, falls ein Fehler vorliegt. MGI-Unterdrückungs-Fehlercode Dieses polymorphe VI nimmt entweder einen Fehlercode oder ein Array von Fehlercodes auf. Wenn der Fehlercode, der durch Error In übergeben wird, entweder der Skalar oder im Array von Fehlercodes ist, wird er nicht an Error Out übergeben. Alle anderen Fehlercodes werden an Error Out übergeben. MGI Error Reporter Der MGI Error Reporter erlaubt es, dem Benutzer in einer separaten Schleife Fehler anzuzeigen, sodass die Schleife, in der der Fehler aufgetreten ist, fortgesetzt wird. Der Error Reporter wird mit LabVIEW-Klassen erstellt, sodass das Verhalten angepasst werden kann, indem eine untergeordnete Klasse erstellt wird. MGI Create Startet einen Error Reporter-Daemon mit dem optional verdrahteten Error Reporter. Wenn Error Handler nicht verkabelt ist, wird das MGI Error Reporter Dialog verwendet. Wenn ein Error Reporter-Daemon bereits von einem Top-Level-VI ausgeführt wird, nichts ausführen und True für 8220Already Running8221 ausgeben. Siehe 8220VI Tree. vi8221 für weitere Einzelheiten. Wenn dieses VI auf RT verwendet wird, wird die Dialog-Klasse auf RT geladen. Dies kann zu Verbindungsproblemen führen. MGI Logger erstellen Startet einen Fehlerreporter-Daemon mit dem optional verdrahteten Error Reporter. Wenn Error Handler nicht verkabelt ist, wird das MGI Error Reporter Dialog verwendet. Wenn ein Error Reporter-Daemon bereits von einem Top-Level-VI ausgeführt wird, nichts ausführen und True für 8220Already Running8221 ausgeben. Siehe 8220VI Tree. vi8221 für weitere Einzelheiten. MGI-Berichtsfehler Dieses wiedereintrittsfähige VI sendet einen verdrahteten Fehler oder eine Warnung an den Fehler-Reporter-Daemon. Wenn kein Fehlerreporter-Daemon ausgeführt wird oder wenn die Verarbeitungswarteschlange voll ist, wird der Fehler oder die Warnung verworfen. MGI Destroy Stoppen Sie den Fehler Reporter Daemon ausführen, wenn keine anderen VIs sind derzeit mit ihm. Die erweiterte Palette MGI Error Reporter enthält VIs, die das Verhalten des Error Reporters beeinflussen. MGI Get benutzerdefinierte Fehlercodes Geben Sie die benutzerdefinierten Fehlercodes aus, die für den Fehlerreporter definiert wurden. MGI-Set Benutzerdefinierte Fehlercodes Legen Sie die benutzerdefinierten Fehlercodes fest, die vom Error Reporter verwendet werden. Das Custom Name-Array sollte kurze Einzelzeilenbeschreibungen für jeden Code enthalten. MGI Show UI Zeigt ein beliebiges User Interface (UI) Fenster an, das dem Error Reporter zugeordnet ist, indem es eine Show UI Message an den Daemon sendet. Der MGI-Fehlerreporter-Basisklassen-Daemon ignoriert diese Meldung. MGI Get Error Beschreibung Ruft den Namen für den angegebenen Fehlercode ab und gibt die Standardbeschreibung aus, wenn der Fehlercode isn8217t gefunden wurde. Dieses VI gibt den benutzerdefinierten Namen aus, wenn ein benutzerdefinierter Fehlercode angegeben wird. MGI Set Logging Parameter Legt das Verhalten des Error Logger fest. Das Standardverhalten besteht darin, maximal 5000 Fehler pro Datei zu protokollieren und maximal 100 Dateien zu speichern. Max Errors to Log ist die Anzahl der Fehler, die in einer Datei protokolliert werden, in der nachfolgende Fehler nicht protokolliert werden. Wire a -2, um diese Zahl unverändert zu lassen. Verdrahten Sie ein -1, um alle Fehler in die Datei zu protokollieren. Verdrahten Sie eine 0, um die Fehlerprotokollierung zu deaktivieren. Max Log Files ist die Anzahl der Fehlerprotokolle im Fehlerverzeichnis. Die ältesten Protokolldateien werden gelöscht, um Platz für neue Dateien zu schaffen. Wire -2, um diese Zahl unverändert zu lassen. Verdrahten Sie ein -1, um das Löschen älterer Dateien zu deaktivieren. Verdrahten Sie eine 0, um die Fehlerprotokollierung zu deaktivieren. MGI Get Logging Parameters Geben Sie die maximal zu protokollierenden Fehler und das Maximum der Protokolldateien aus. -1 gibt an, dass alle Fehler gespeichert werden. Fehlerprotokollverzeichnis ist der Pfad, in dem Protokolldateien gespeichert werden. MGI Senden einer benutzerdefinierten Nachricht Senden Sie eine benutzerdefinierte Nachricht mit den angegebenen Daten (als Variante) an den Error Reporter-Daemon. Dieses VI ist nützlich für das Senden von Nachrichten an eine untergeordnete Klasse der MGI-Fehlerreporter-Basisklasse, die keine benutzerdefinierten Meldungen verarbeitet. Die MGI-Fehlerreporter-Dokumentationspalette enthält VI-Bäume für die beiden Error Reporter-Klassen. Es ist hilfreich, um zu verstehen, wie der Fehlerreporter funktioniert und welche VIs in untergeordneten Klassen überschrieben werden sollten, um benutzerdefiniertes Verhalten zu erhalten. MGI VI-Baum Dieses VI dokumentiert die MGI-Fehlerreporter-Basisklasse. Siehe Blockdiagramm für Dokumentation. Datei-VIs arbeiten auf Verzeichnissen und Dateien. MGI Append-Text an Datei anfügen 8220Text8221 an die Datei an 8220Path8221 anfügen. Hinweis: Dieses VI öffnet und schließt die angegebene Datei bei jedem Aufruf. MGI Create Directory Chain Dieses VI erstellt alle nicht vorhandenen Ordner in 8220Path8221. Die 8220Auto Detect8221 Einstellung von 8220File Presence8221 sucht nach einem 8216.8217 im Namen. In diesem Modus wird ein Top-Level-Ordner mit einem 8216.8217 won8217t erstellt und eine Datei ohne Erweiterung wird als Ordner erstellt. MGI Default ini Path Dieses VI konstruiert einen standardisierten Konfigurationsdateipfad in MyDocuments oder All UsersDocuments abhängig von 8220Alle Users8221. MGI Replace Dateierweiterung Dieses VI ersetzt die Dateierweiterung auf 8220Path In8221 mit 8220New Extension.8221 MGI-Datei-Dialog Merge VI Merge-VI zum Löschen eines Datei-Dialog-Primitivs (das nicht in der Palette in LabVIEW 8.0 und später angezeigt wird, wenn es nur ist Verfügbar durch ein Express-VI.) MGI Windows Folder Pfad Gibt den Pfad des angegebenen Windows-Ordners zurück. Ruft die SHGetFolderPathA-Routine in shell32.dll auf, um die Antwort zu ermitteln. Checksummen-VIs sind nützlich, um einen Prüfsummenwert für eine Datei oder ein Verzeichnis von Dateien zu berechnen und zu verifizieren. MGI CheckValue Directory Berechnet die Ausgabe eines Arrays aus allen im angegebenen Verzeichnis zusammen mit einem CheckValue für jede Datei. Optionale Fortschrittsbalken Eingabe wird aktualisiert, wenn verdrahtet, sonst wird ein Fortschrittsbalken-Dialog mit Abbruch-Schaltfläche angezeigt. MGI CheckValue Directory Compare Vergleichen Sie die angegebenen erwarteten Dateien und Prüfwerte mit dem angegebenen Verzeichnis. Zusätzliche Dateien im Verzeichnis werden ignoriert. Wenn alle erwarteten Dateien übereinstimmen, geben Sie true aus, andernfalls geben Sie false aus. Wenn eine Referenz auf einen Schieberegler verkabelt ist, wird der Schieberegler aktualisiert, um den Fortschritt des Vergleichs anzuzeigen. Andernfalls wird ein Fortschrittsbalken-Dialog mit der optionalen Abbruch-Schaltfläche angezeigt. MGI Executable Checksum Berechnen Sie die Prüfsumme der EXE-Datei, wenn eine ausführbare Datei ausgeführt wird. FFFFFFFF wird beim Ausführen aus dem Entwicklungssystem zurückgegeben. MGI File CheckValue Berechnet den Checkvalue für die angegebene Datei. Config-VIs sind nützlich, wenn das NI-Konfigurationsdateiformat verwendet wird. Sie fügen Unterstützung für das Lesen und Schreiben von Arrays von numerischen Werten zu einer Konfigurationsdatei hinzu. MGI Read Key Dies ist ein Polymorphic VI. Lesen Sie einen Array-Schlüssel (eigentlich einen Abschnitt), der von dem passenden Write-VI geschrieben wurde. MGI Remove Array Abschnitte Entfernen Sie Abschnitte aus einer Ini-Datei, wenn ein Array schrumpft. Wenn Old Count unbenutzt ist, wird der Zählerstand gelesen, der übergeordnete Bereich entfernt und der Zählerstand ersetzt. Wenn Old Count verdrahtet ist, wurde von it8217s davon ausgegangen, dass die Abwicklung des Teilbereichs bereits durchgeführt wurde. Untergeordnete Abschnitte, die entfernt werden, haben Namen, wobei von neuen Zählern bis zu alten Zählern reicht. MGI Write Key Dies ist ein polymorphe VI. Schreiben Sie einen Array-Datentyp in einem menschenlesbaren Format. Die 8220key8221 ist tatsächlich in einem separaten Abschnitt platziert. Tabellenkalkulations-VIs unterstützen das Lesen und Schreiben von abgegrenzten Textdateien, die Text-Header haben. MGI Read Spreadsheet-Datei Liest eine Spreadsheet-Datei, indem die ersten nicht leeren, nicht numerischen Zeilen als Header und dann die folgenden numerischen Zeilen zurückgegeben werden. Das Lesen beginnt bei Startversatz. End Offset ist der Datei-Offset für den nächsten HeaderValues-Bereich. Dieses VI ähnelt der vi. lib-Datei 8220Read From Spreadsheet File. vi8221, aber es unterstützt Header. MGI Write Spreadsheet-Datei Erstellt oder öffnet die angegebene Spreadsheet-Datei und schreibt die angegebenen Daten an das Ende der Datei. Dieses VI ähnelt dem vi. libWrite Spreadsheet File. vi, aber es enthält Header. Standardmäßig werden Header nur geschrieben, wenn die Datei neu angelegt wird. Wire True zu 8220Append Headers zu vorhandenen files8221, um sie auch vorhandenen Dateien hinzuzufügen. Die Sharp Zip-Bibliothek bietet Unterstützung für das Erstellen von Zip-Dateien, die größer als 2 Gigabyte sind. Die Sharp Zip-Bibliothek ist von Microsoft. Net-Technologie abhängig. MGI SZL Datei hinzufügen Fügt die Datei, die vom Quelldateipfad angegeben wird, in die ZIP-Datei ein. Zielpfad in zip sollte der relative Pfad in der Zip-Datei sein, der den Namen der Datei selbst enthält, jedoch nicht den Namen der ZIP-Datei. Der updateMode-Eingang wählt zwischen Safe und Direct. Der abgesicherte Modus wird eine temporäre Datei erstellen, sodass Fehler in der Datei die gesamte Datei nicht beschädigen. Direct einfach fügt der Datei, so ist es gefährlicher, kann aber deutlich schneller, vor allem für große Dateien. Dieses VI stützt sich auf die Sharp Zip-Bibliothek, die eine. NET-Assembly in C von Mike Krueger geschrieben ist. Es ist lizenziert unter der GPL mit einer besonderen Ausnahme erlaubt unabhängigen Module, um die Bibliothek unabhängig von den Lizenzbedingungen des unabhängigen Moduls zu verknüpfen. Weitere Informationen über die Bibliothek und ihre Lizenz finden Sie unter: icsharpcode. netopensourcesharpziplib MGI SZL Schließen ZIP-Datei Schließt die ZIP-Datei. Dieses VI stützt sich auf die Sharp Zip-Bibliothek, die eine. NET-Assembly in C von Mike Krueger geschrieben ist. Es ist lizenziert unter der GPL mit einer besonderen Ausnahme erlaubt unabhängigen Module, um die Bibliothek unabhängig von den Lizenzbedingungen des unabhängigen Moduls zu verknüpfen. Weitere Informationen über die Bibliothek und ihre Lizenz finden Sie unter: icsharpcode. netopensourcesharpziplib MGI SZL Extract File Extrahiert den Eintrag, der durch den Einstiegspfad in ZIP aus der ZIP-Datei angegeben wurde, in den Zielpfad. Eintrag Pfad in zip sollte der relative Pfad innerhalb der Zip-Datei sein. Wenn der Zielpfad bereits vorhanden ist, können Sie ein Dialogfenster öffnen, um das Überschreiben zu bestätigen, indem Sie TRUE bestätigen, um das Überschreiben zu bestätigen. Dieses VI stützt sich auf die Sharp Zip-Bibliothek, die eine. NET-Assembly in C von Mike Krueger geschrieben ist. Es ist lizenziert unter der GPL mit einer besonderen Ausnahme erlaubt unabhängigen Module, um die Bibliothek unabhängig von den Lizenzbedingungen des unabhängigen Moduls zu verknüpfen. More information about the library and its license is available from: icsharpcode. netopensourcesharpziplib MGI SZL List Zip Contents Lists the file names of all the files in the zip file and if file info is true, outputs a large cluster of info about each file. This VI relies on the Sharp Zip Library which is a. NET assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcode. netopensourcesharpziplib MGI SZL New Zip File Creates a new empty zip file in the path specified by target path. The new file overwrties an existing file or produces an overwrite confirmation dialog based on the value of confirm overwrite. This VI relies on the Sharp Zip Library which is a. NET assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcode. netopensourcesharpziplib MGI SZL Open Zip File Opens an existing zip file. This VI relies on the Sharp Zip Library which is a. NET assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcode. netopensourcesharpziplib MGI SZL UnZip To Directory Unzips the contents of zip file to the target directory. If Preview only is true, this VI doesn8217t unzip the contents and just returns a preview of the list of files. This VI relies on the Sharp Zip Library which is a. NET assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcode. netopensourcesharpziplib MGI SZL Zip Directory Compresses everything in root directory into a zip file. If include subdirectories is TRUE, this VI recursively includes any subdirectories. Open Options can be set to create the zip file new, or open an existing one and append on to it. This VI relies on the Sharp Zip Library which is a. NET assembly written in C by Mike Krueger. It is licenced under the GPL with a special exception permitting independent modules to link to the library regardless of the license terms of the independent module. More information about the library and its license is available from: icsharpcode. netopensourcesharpziplib SZL Zip Directory Compresses everything in root directory into a zip file. If include subdirectories is TRUE, this VI recursively includes any subdirectories. Open Options can be set to create the zip file new, or open an existing one and append on to it. MGI Open Explorer Window Open a Windows Explorer window to the specified file8217s directory and select the file. If the path specifies a directory, then the explorer window is opened to that directory, unless 8220Select Directory8221 is true, in which case the explorer window is opened to the parent directory and the specified directory is selected. Graph VIs are useful for setting properties of Chart and Graph controls MGI Autoscaling Enum Merge VI This is a merge VI. It exists to allow easy dropping of the enumeration from the palettes. MGI Graph Tools Enum Merge VI This is a merge VI. It exists to allow easy dropping of the enumeration from the palettes. MGI Non Repeating Plot Color Generate colors that are good for a white background and distinguishable from each other. MGI Set Plot Names This is a polymorphic VI. Sets the plot names as specified, optionally growing the Plot Legend to fit the number of names. If Plot Name is empty, then the Plot Legend is hidden, otherwise it is shown. MGI Set Z Scale Colors Updates the specified color scale using a distribution of colors specified by 8220Scheme8221. Min and Max describe the range of data that is to be displayed using the color scale. If 8220Z Scale Ref8221 is not wired, the scale will not be updated but 8220ValueScale8221 will still contain data for the specified scheme. The output 8220ValueScale8221 will have 256 colordata pairs. Matrix and Vector VIs operate on 1D (for Vector) and 2D (for Matrix) arrays of numeric data. These include Cross Product, which is not included in LabVIEW. MGI Vectors Approximately Equal Check that two vectors are within a given distance of each other. The default tolerance (distance between vectors) is 1E-5. MGI Cross Product Calculate the cross product of two 3-dimensional vectors in cartesian coordinates. MGI Dot Product Computes the dot product of X Vector and Y Vector. MGI Calculate Vector Length Calculate the length of a cartesian vector. MGI Identity Matrix 42154 Simply provides a 42154 SGL identity matrix. The Menu Building palette provides an extensible API for creating Application Menus, Windows Tray item Menus, and Control shortcut menus. It is useful for dynamic menu creation and for simplifing common Menu behavior such as toggling checkboxes and forcing radio button behavior among a set of Menu items. MenuConstructor Polymorphic VI to choose the type of menu you want to create. MenuItemConstructor Use this to create a new MenuItem. Most of the menu items you create can be left as generic menu items. Only use a specialized menu item when you need to use an additional field of that menu item. For example a shortcut in a VI MenuItem, or an icon in a MenuStrip MenuItem SelectionConstructor Polymorphic VI to select the built in selection types. Destroy Destroys the MenuItem. This ensures that all references contained by the menu item are also destroyed. Do not use the 8220Delete Data Value Reference8221 on a MenuItem Reference as this will lead to memory leaks. Use this vi instead. Init Inistializes the menu. This vi will delete any menu8217s that are currently in place. This also creates the Menuitem Clicked event. Do not use this VI to rebuild the menu. There is a separate Rebuild Menu VI. Menu Building Initialization Merge VI This Merge VI is a good starting place for most MenuBuilding menus. It has all of the vi8217s needed to initialize a new menu RebuildMenu Rebuilds the menu after a menu item array is changed. This will not destroy old MenuItem references, so make sure to destroy any MenuItems no longer being used. BasicInfo Retreives basic information about the last menu click. This VI returns the data of the menu item after the menu click. If you need to view more detailed data or the data before the menu click, use a property node. Cleanup Destroys the Menu and all MenuItems inside it. MenuClicked Simulates the menu click. This will perform an identical action as the user actually clicking the MenuItem. SetToDefault Searches the menu for any item with 8220Clicked by Default8221 set to true and then fakes a click on this item. This is useful for initializeing radio selections or checkmark selections to default values. MenuItem Clicked Events will be generates for these default clicks. If you want to process these events, make sure this VI is run after the Register for User Events node on the MenuItem Clicked Event. The Tray Icon palette contains VIs that work with Windows Tray menus. ShowBalloon Shows the notification balloon from the tray item. Balloon Text is required to be a non-empty string. Default timeout is set by the OS, and typically approx 10 sec. For more info see msdn. microsoften-uslibraryms160065.aspx MinimizeToTray Minimizes the referenced to tray. If VI Refnum is unwired the caller is assumed. RestoreFromTaskbar Restores a VI what has previously been Minimized to Tray. If VI Refnum is unwires, the calling VI will be used. Set Show on Taskbar to false to keep the VI from showing in the taskbar. FindMenuItemByTag Searches the menu structure recursively for a menu item with the full tag specified. The Menu Examples palette contains example VIs that use the MGI Menu Building VIs. VI Menu Example Demonstrates the Menu Strip type. Run the VI to see it8217s Runtime Menu replaced by the specified menu. Notice the shorcut key on the Exit Menu item. Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the VI8217s menu. Tray Icon Example Demonstrates the Tray Icon menu type. Run the VI to see the menu and icon appear in the system tray. Right click the icon to see the menu appear. Double click the Icon to signal a 8220Default8221 menu item click. Fill in the Balloon Info values and click 8220Show Balloon8221 to see the balloon pop-up in the system tray. The 8220tipText8221 is the only field required in the balloon info and an error will be thrown if you try to show a balloon with no tipText. the minimum timeout is controlled by the OS and any value less than the OS value will be coerced up Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the TrayIcon8217s menu. Control Example Demonstrates the Control Menu type. Right click on the 8220Listbox8221 to see the menu generated. Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the control8217s menu. MenuStrip Example Demonstrates the Menu Strip type. Run the VI to see the menu appear in the MenuStrip. NET control. Notice the 8220File - Default8221menu item that contains an icon as well as the 8220File-Exit8221 menu item contains a shortcut. Click summarys show up in the history array. Click the 8220Add Item8221 to add a dummy item to the MenuStrip8217s menu. SelectionTypeExample Run the VI and look under the 8220Selection Types8221 menu item for a demo of the built in selection types. Coordinate VIs are useful for performing rotations on 2D or 3D datasets. MGI Apply Transform Polymorphic VI: Apply a cartesian coordinate translation and rotation. MGI Center from 3 Points Polymorphic VI: Calculate the center of a circle based on three points on the circle. MGI Find 2D Intersection of 2 Lines Finds the intersection of 2 lines. If the lines are parallel, then an argument error (code 1) is output. The lines are specified using 2 points for each line. The points are specified as rows in a 2D array where the first column is x and the second is y. MGI Rotate Vector Polymorphic VI: Perform a 3D vector rotation about a coordinate axis. MGI Cylindrical to Cartesian Convert R, Th, Z to X, Y,Z. MGI Find Closest Line Segment Finds the line segment closest to the given x and y coordinates. The Graph Data is intepreted as a sequence of points which are connected by line segments. The points in the graph are assumed to be connected in the order provided. The output index is the index of the first point in the data that is an endpoint of the closest line segment. MGI Find Closest Point Finds the index of the point in the input data that is closest to the given x and y coordinates. The optional input allows the user to use the city block metric (i. e. the sum of the distances in the x and y directions) instead of the standard distance measurement. MGI Generate Orthonormal Basis Generate a set of orthonormal basis vectors from three points given in cartesian coordinates. The basis vectors are found by normalizing: w1p1-p2 w2w1 x (p2-p3) w3w1 x w2 MGI Generate Rotation Matrix Generate a 32153 rotation matrix with specified diagonal elements, - the off diagonal element, and specified axis unrotated. Numeric VIs operate DBL or SGL precision floating point numbers and on integers. They include the coercion, comparison, and rounding subpalettes. For easy access and use with quickdrop, the compound arithmetic nodes are also included. MGI Get Real Quadratic Roots Gets the real roots of the quadratic equation Ax2 Bx C 0. If there are no real roots, then both outputs are NaN. If there is a double root that is real, then both outputs are equal to the double root. If the coefficients correspond to a linear equation (i. e. A is zero) then Root1 is the solution to the linear equation and Root2 is NaN. This VI is configured to run as a subroutine. MGI Nth Root Take the nth root of x. Handles x Ends with Contains Begins with MGI Determine Time Format String Determines a Time Format String for a given string in a common date format. For example Thu, January 1, 2011 3:00 PM would be a, B, d, Y I:M p. The Day Before Month input specifies whether the day or month is first when in a 12111 type format. The Leading Zeros input determines if the day, month number, and hour will have a leading zero if they are only 1 digit. MGI Parse Format String Parses the string at the specified position for a format code. The portion of the string before the format code is output as 8220Delim8221. If an error occurs, then an error is output and the Offset out is -1. MGI Scan From String This PolyVI handles scan from string for special datatypes. Timing VIs are usefull for measuring the execution duration of some code and for providing a delay that uses explicit dataflow using an error cluster. MGI Wait This is the polymorphic version that contains both millisecond and second versions of MGI Wait. Useful to create data dependency on the error lines and to have a smaller icon. If 8220Error In8221 has an error, then this VI won8217t perform the wait. MGI Milliseconds Since Last Call This VI stores the tick count on a shift register and provides as an output the number of milliseconds since the last time this VI was called. MGI Milliseconds Since Last Reset Returns the amount of time in milliseconds since the last time the VI was reset. This VI is non-reentrant. Tree VIs are usefull for populating the LabVIEW Tree control. MGI Get Tree Tag Children Get all child tags of the specified tag for the specified tree control. MGI Populate Tree with Delimited Strings Populates the specified Tree Control with the specified items. The items are delimited strings where the text of each parent is in the string seperated by delimiters. For example, the string 8220CProjectFoo8221 with the delimiter 82208221 would be shown as C Project Foo Each Row in the 2D Items array is a child item. The first column contains the Tags. Subsequent columns contain Text for the Tree control columns. If 8220Use Child Only Items8221 is true, then items in the 2D array that are not followed by a descendent item are inserted as 8220Child Only8221. Otherwise, all items are inserted as Child OnlyFalse. NOTE: If Use Child Only Items is true, then the 2D array must have all parent tags followed immediately by one child item. MGI Tree Rows from Delimited String Array Convert the array of delimited strings stored in the first column of the specified array to Tree Rows. The remaining columns are used as text for each tree row. Post navigationmoving average for 10 values from an array I have to build an application wherein I continuosly get a values stored in an array of a fixed size 10. For every new time interval the last value is deleted and new value is added to the array. At a time 10 values are read and average is calculated. once I get the mean value. I have to compare with the min and max deviation from the mean. If the value of each array of a set is within the range then I have to provide a count which shows number of values in the array set of 10 else show the count as number of values outside the range. A set is of 10 values for each time interval. t0-t9 - 10 values. t2-t11 - 10 values.. for all set i have to provide indication whether the set is valid or not. Message 1 of 8 (896 Views) Re: moving average for 10 values from an array 12-02-2013 04:03 PM Did you do the search that you were supposed to before you asked your question I typed in moving average and the search engine immediately found 100 message threads, and would probably have found more if I had given it time. Many on the first page looked like exactly what you are asking about. To err is human, but to really foul it up requires a computer. The optimist believes we are in the best of all possible worlds - the pessimist fears this is true. Profanity is the one language all programmers know best. An expert is someone who has made all the possible mistakes. To learn something about LabVIEW at no extra cost, work the online LabVIEW tutorial(s): Message 2 of 8 (867 Views) Re: moving average for 10 values from an array 12-03-2013 12:53 AM I did that already, but dont seem to get a proper solution. I am sorry but I am new to labview and working for the academic project which I have to submit within few days from now. I appreciate your help. and I will try to cover up for me through many other posts. Message 3 of 8 (847 Views) Re: moving average for 10 values from an array 12-03-2013 03:50 AM You just want to know if your method is valid right It is when the array is full (10). Had nothing to do so i changed your vi a bit, removed the for-loop and case structure. UnCertified LabVIEW Student Mistakes are for learning, thats why suggestions are always welcome Message 4 of 8 (820 Views) Re: moving average for 10 values from an array 12-03-2013 04:07 AM I appreciate your help. What I am actually looking is that, once gt I get the first 10 ( at time interval t0-t9 and values as a0-a9 ) values in the array I should start processing the mean and not until the 10 arrays have been filled with the values. after first 10 values are filled, i will check for the deviation for each array value from a0-a9, If in range it should indicate yes or else no.( this i already have ). gt once this is processed I should take the data set fom t1-t10, values as a1-a10. this will be my new set. Again I will follow the procedure for the mean check.. gt This goes on continuously. In the earlier vi of mine and in the later one of yours, in both the case the mean is calculated from the first value itself. which is not needed for my case. It should only process once all 10 values are entered. later for all set it should continuously process the mean. (since for lateral time i will always have 10 values in the array). I tried searching for this querry but could not find any proper solution. I would really appreciate if I can be helped. Danke im Voraus. I dont really get your point. You want a moving average from 10 points, this is what you already implemented. But you dont want to average it untill you have your full 10 points If this is what you want there are two options. 1. you create a for-loop infront of the while loops which iterates 9 times your random generator, then connect it to the array shif register. 2. start with an empty array and let the mean calculate from less then 10 points till the array is full, this one is attached. UnCertified LabVIEW Student Mistakes are for learning, thats why suggestions are always welcome

No comments:

Post a Comment