Spitzenwerterkennung
- Aktualisiert2025-07-30
- 5 Minute(n) Lesezeit
Sucht die Position, die zweite Ableitung und die Amplitude der positiven und negativen Spitzenwerte im Eingangssignal.

Ein-/Ausgänge
X
—
X ist das Array aus Eingangswerten, die die zu analysierenden Signale darstellen. Diese Daten können aus einem einzelnen Array oder aus fortlaufenden Datensätzen bestehen. Fortlaufende Datensätze sind für große Daten-Arrays oder zur Echtzeitverarbeitung nützlich. Beachten Sie, dass bei der Echtzeitverarbeitung Pos./Neg. Spitzenwerte bis ungefähr Breite/2 Datenwerte nach dem Spitzenwert nicht erkannt werden.
Schwellwert
—
Schwellwert gibt an, dass positive und negative Spitzenwerte einer bestimmten Größe ignoriert werden sollen. Die angepasste Amplitude der positiven Spitzenwerte darf nicht unter dem Schwellwert liegen. Die angepasste Amplitude der negativen Spitzenwerte darf nicht über Schwellwert liegen.
Breite
—
Breite legt die Anzahl der aufeinander folgenden Punkte fest, die bei der Anpassung nach der Methode der kleinsten Quadrate verwendet werden. Der Parameter Breite muss größer oder gleich Null sein. Der Wert sollte maximal etwa der Hälfte der Breite der positiven Spitzenwerte oberhalb von Schwellwert oder der negativen Spitzenwerte unterhalb von Schwellwert betragen und kann bei rauschfreien Daten auch viel kleiner sein (allerdings > 2). Durch große Breiten kann die scheinbare Amplitude von Spitzen verringert und die scheinbare Position verschoben werden. Bei verrauschten Daten ist diese Änderung unbedeutend, da das Rauschen die tatsächliche Spitze verdeckt. Breite sollte so klein wie möglich, aber immer noch groß genug sein, um die Erkennung falscher Spitzenwerte auf Grund von Rauschen auszuschließen.
Pos./Neg. Spitzenwerte
—
Pos./Neg. Spitzenwerte gibt an, ob das Eingangssignal nach positiven oder negativen Spitzenwerten durchsucht werden soll.
Initialisieren (T)
—
Setzen Sie das Element initialisieren (T) zur Verarbeitung des ersten Datensatzes auf TRUE. Bei diesem VI muss zu Beginn eine bestimmte interne Konfiguration durchgeführt werden, um einen ordnungsgemäßen Betrieb zu gewährleisten. Wenn Sie nur einen Datensatz verarbeiten möchten, lassen Sie entweder den Parameter initialisieren unverbunden oder setzen Sie den Standardstatus auf TRUE. Für die Verarbeitung fortlaufender Datensätze setzen Sie den Parameter initialisieren für den ersten Datensatz auf TRUE und für alle weiteren Datensätze auf FALSE.
Ende der Daten (T)
—
Setzen Sie Ende der Daten (T) zur Verarbeitung des letzten Datensatzes auf TRUE. Nach dem letzten Datensatz verarbeitet das VI interne Daten. Wenn Sie nur einen Datensatz verarbeiten möchten, lassen Sie entweder den Parameter Ende der Daten offen oder setzen Sie den Standardstatus auf TRUE. Für die Verarbeitung aufeinander folgender Datensätze setzen Sie Ende der Daten für alle Datensätze mit Ausnahme des letzten auf FALSE.
Trefferanzahl
—
Trefferanzahl ist die Anzahl der im aktuellen Datenblock gefundenen Pos./Neg. Spitzenwerte. Die Größe der Arrays Positionen, Amplituden und 2. Ableitungen entspricht dem Wert des Parameters Trefferanzahl.
Positionen
—
Positionen enthält die Index-Positionen der positiven oder negativen Spitzenwerte, die im aktuellen Datenblock gefunden wurden. Da der Algorithmus zur Spitzenwerterkennung eine quadratische Anpassung verwendet, führt er zwischen den Werten eine Interpolation durch. Daher sind die Indizes keine Ganzzahlen. In anderen Worten: Die gefundenen Spitzenwerte sind nicht unbedingt tatsächliche Werte, sondern können an Teilen von Indizes oder Amplituden liegen, die nicht im Eingangs-Array enthalten sind. Die Position auf der Zeitachse wird nach folgender Gleichung ermittelt: Position auf der Zeitachse[i] = t0 + dt × Position[i]
Amplituden
—
Amplituden ist ein Array aus den Amplituden der positiven oder negativen Spitzenwerte, die im aktuellen Datensatz gefunden wurden. Hinweis Bei Signalen mit hohem Rauschanteil und großer Dynamik können fehlerhafte Positionen und Amplituden von Spitzenwerten ausgegeben werden.
2. Ableitungen
—
2. Ableitungen gibt die zweite Ableitung der Amplitude aller positiven oder negativen Spitzenwerte aus, die im aktuellen Datenblock gefunden werden. 2. Ableitungen gibt die ungefähre Steilheit jedes positiven und negativen Spitzenwerts an. Positive Spitzwerte haben alle einen negativen Wert. Negative Spitzenwerte haben alle einen positiven Wert.
Hinweis Es wird von dt (die Zeitdifferenz zwischen Samples) gleich 1 ausgegangen.
Fehler
—
Fehler gibt alle Fehler oder Warnungen des VIs aus. Zur Umwandlung eines Fehlercodes oder einer Warnung in einen Fehler-Cluster verbinden Sie Fehler mit dem VI Fehler-Cluster aus Fehlercode. |
Die Werte können in Form eines Arrays oder blockweise an das VI "Spitzenwerterkennung" weitergeleitet werden.
Das VI "Spitzenwerterkennung" arbeitet mit einem Algorithmus, der ein quadratisches Polynom an fortlaufende Datenblöcke anpasst. Die für die Anpassung verwendete Anzahl der Messpunkte wird durch die Breite bestimmt.
Für jeden positiven und negativen Spitzenwert wird die quadratische Anpassung auf den Schwellwert getestet: Positive Spitzenwerte unter dem Schwellwert oder negative Spitzenwerte mit Scheitelwerten über dem Schwellwert werden ignoriert. Die Erkennung der Spitzenwerte ist um etwa Breite/2 Werte verzögert. Diese Verzögerung bereitet in der Regel keine Probleme, nur bei der Echtzeitverarbeitung.
Dem VI "Spitzenwerterkennung" muss der erste und der letzte Datenblock signalisiert werden, so dass das VI initialisiert werden kann und die erkannten Spitzenwerte ausgegeben werden können.
Weitere Informationen zur Spitzenwerterkennung finden Sie im folgenden Support-Dokument auf ni.com.
Beispiele
Die folgenden Beispieldateien sind in LabVIEW enthalten.
- labview\examples\Signal Processing\Signal Operation\Peak Detection and Display.vi
X
—
Schwellwert
—
Breite
—
Pos./Neg. Spitzenwerte
—
Initialisieren (T)
—
Trefferanzahl
—
Positionen
—