Häufig werden Sensordaten über einen längeren Zeitraum gemessen. Relevant sind davon jedoch meist nur Teilbereiche. Zu analysieren sind diese Teilbereiche auch nur wenn weitere Ereignisse und Randbedingungen erfüllt sind.
Hier ein einfaches Beispiel: In einem Kühlraum sollen Drehzahl-Kenngrößen eines Ventilators ermittelt werden, wenn die Drehzahl > 50 1/min beträgt, das Kühlaggregat aktiv und die Eingangstüre geöffnet ist.
Die Messdaten dazu sehen so aus:
Für dieses einfache Beispiel gibt es sicherlich mehrere praktikable Lösungen. Interaktiv könnte man die drei Bereiche jeweils mit einem Band-Cursor identifizieren, kopieren und die Kennwerte dazu berechnen. Auch ein Skript hierzu ist vergleichsweise einfach zu erstellen. Nur, wenn die zu berücksichtigenden Randbedingungen komplexer werden, werden auch die obigen Lösungswege deutlich schwieriger.
Eine einfache Lösung – auch für komplexe Situationen – die sowohl interaktiv als auch in Skripten eingesetzt werden kann ist die Ereignissuche.
Mit dieser Funktion kann das Zutreffen (oder nicht-Zutreffen) von Kanalereignissen geprüft und mit anderen Kanalereignissen logisch verknüpft werden. Kanalereignisse können durch Flanken, Fenster, Differenzen (zum vorherigen Wert) und unterschiedlichen Kanalvergleichen (mit anderen Kanälen) detektiert werden und haben ihrerseits weitere Einstellmöglichkeiten.
Als Logikverknüpfungen stehen AND, OR, GATE und INCLUDEED zur Verfügung. AND und OR sind sicherlich selbsterklärend.
Beim GATE werden die Ergebnisse der ersten Kanalereignisse (Suchbedingung) als Liste für mögliche Startpunkte und die der zweiten Kanalereignisse als Liste möglicher Stoppunkte interpretiert. Vom ersten Startpunkt der ersten Kanalereignisse an, werden alle weiteren Startpunkte so lange ignoriert, bis der erste Stoppunkt der zweiten Kanalereignisse eintritt. Danach geht es mit dem nächsten Startpunkt weiter.
Beim INCLUDED müssen die Ergebnisse der zweiten Kanalereignisse vollständig in den Ergebnissen der ersten enthalten sein.
Für das Gesamtergebnis können dann für Kanäle Kennwerte berechnet oder Werte ausgeschnitten werden.
Unser kleines Beispiel sieht dann so aus. Den Kanal Kühlung (eingeschaltet = 5V) mit der Fenster-Bedingung überprüfen:
Den Kanal Türschalter (Türe geschlossen = 5V) ebenfalls mit der Fenster-Bedingung überprüfen und das Ergebnis negieren:
Auch den Kanal Ventilator-Drehzahl (soll > 50 1/min sein) mit einer Fenster-Bedingung überprüfen:
Alle Bedingungen werden mit „AND“ verknüpft. Das Gesamtergebnis sind 3 ermittelten Bereiche, für die die Kennwerte des Kanals Ventilator-Drehzahl zu berechnen sind.
Aus den 50000 Messwerten pro Kanal liegen dann sehr schnell die relevanten Kennwerte vor.
Noch ein Tipp für das Scripting mit der Ereignissuche: Mit der Tastenkombination CTRL-SHIFT-C werden alle für die Ausführung notwendigen Skript-Befehle in die Zwischenablage kopiert bzw. bei aktivem Aufzeichnungsmodus direkt in den Skript-Editor eingefügt. – Je nach Komplexität der definierten Ereignisse (Suchbedingungen) können das durchaus einige Befehlszeilen sein.
Carpe DIAdem
Author: Walter Rick
Diese und viele weitere Tricks lernt ihr in unseren Schulungen und Consultings.