ENLYZE
🇩🇪 ENLYZE
🇩🇪 ENLYZE
  • Willkommen bei ENLYZE
    • Manufacturing Data Platform
    • Shopfloor BI
  • Einstieg
    • Schnellstart
  • Guides
    • Wie Best Practices nutzen?
    • Plattformkonfiguration
    • Maschineneinrichtung
      • Variablenselektion
      • OEE-Erfassung Einrichtung
      • Einstelldatenblatt Konfiguration
    • Buchungsdaten verbinden
    • SPARK Inbetriebnahme
      • Vorbereitung
      • Einbau
      • Verbinden mit der Manufacturing Data Platform
    • ENLZYE EDGE
      • Oberfläche aufrufen
      • Netzwerk konfigurieren
      • Routen einrichten
      • Routen verwalten
      • Netzwerk-Tools
      • Troubleshooting
  • Features
    • Home
      • Überblick Anlagenstatus
    • Suche
    • Zeitstrahl
    • Produkte
      • Produktübersicht
      • Einstelldatenblatt
    • Produktoptimierung
      • Leistungsparameter wurde nicht definiert
      • Material Erfassung
    • Co-Pilot
    • Automatische Stillstandserfassung
      • Keine Daten
  • PLATFORM
    • Integrationen
      • Grafana
        • Struktur der ENLYZE Datenquellen
        • Tutorials
          • Erste Schritte mit Platform Grafana
          • Grafana-Grundlagen zur Prozessüberwachung
          • OEE Daten mit Infinity Datenquelle
          • Zuordnung von UUIDs zu Display Namen mit der Infinity-Datenquelle
      • Power BI
        • Installation der Power BI Integration
        • Struktur des ENLYZE Power BI Connectors
        • Tutorials
          • Erste Schritte mit dem ENLYZE-Connector
          • Zeitreihendaten aus Maschinenvariablen abrufen
          • Aggregierte Maschinenkennzahlen abrufen
          • UUIDs in Display-Namen umwandeln
          • Aggregierte Zeitreihendaten
  • EDGE
    • Übersicht Edge Funktionalitäten
    • SPARK Edge Gerät
    • ENLYZE EDGE
  • Konzepte
    • OEE Management
      • Das Konzept OEE
      • Verfügbarkeit
      • Leistung
        • Definition der maximalen Leistung
        • Berechnung Maximum Demonstrated Speed (MDS)
      • Qualität
      • 6 Big Losses
      • OEE Steigern
    • Golden Run
  • IT Sicherheit
    • IT Sicherheit
    • Warum ist die Verbindung sicher, obwohl eine Warnung angezeigt wird?
  • FAQ
    • Meine Anlage ist noch nicht eingerichtet. Was kann ich tun?
  • Wie wähle ich das passende Integrationsszenario?
Powered by GitBook
On this page
  • Anwendungsfall: Berechnung der spezifischen Energie pro Produktionsauftrag
  • 1. Erforderliche Daten importieren
  • 2. Relevante Variablen filtern
  • 3. Zeitreihendaten pro Auftrag abfragen
  • 3.1. Hilfsfunktion fxGetMachineVariables erstellen
  • 3.2. Hilfsfunktion fxTimeseriesForRuns erstellen
  • 3.3. Tabelle TimeseriesPerProductionRun erstellen
  • 4. Zeitreihendaten für Visualisierungen aggregieren
  • 4.1. Aggregationsfunktion fxAggregateTimeseries erstellen
  • 4.2. Aggregationsfunktion anwenden
  1. PLATFORM
  2. Integrationen
  3. Power BI
  4. Tutorials

Aggregierte Zeitreihendaten

PreviousUUIDs in Display-Namen umwandelnNextÜbersicht Edge Funktionalitäten

Last updated 2 months ago

Die Timeseries-Datenfunktion im ENLYZE Power BI Connector ermöglicht das Abfragen von Maschinendaten innerhalb eines definierten Zeitraums.

Dieses Tutorial zeigt, wie Zeitreihendaten basierend auf anderen Datenstrukturen, die Zeiträume definieren (z. B. Produktionsaufträge), abgefragt und aggregiert werden, um Key Performance Indicators (KPIs) zu berechnen.

Anwendungsfall: Berechnung der spezifischen Energie pro Produktionsauftrag

Hier wird der Prozess zur Berechnung des spezifischen Energie für jeden Auftrag in einem Werk mit fünf Produktionslinien beschrieben. Dazu werden Maschinenvariablen benötigt, die Folgendes messen:

  • Linien-Durchsatz (verarbeitete Produktmenge)

  • Wirkleistung (Energieverbrauch pro Produktionslinie)

Schrittübersicht

  1. Zeitreihendaten für Durchsatz und Wirkleistung während jedes Produktionsauftrags abfragen.

  2. Die Daten aggregieren, um die Gesamtproduktionsmenge und den gesamten Energieverbrauch pro Auftrag zu erhalten.

Anschließend lässt sich die spezifische Energie berechnen:

1. Erforderliche Daten importieren

Folgende Elemente aus dem ENLYZE Power BI Connector werden benötigt:

  • Die Timeseries-Funktion

  • Die Variables-Tabelle

  • Die Production Runs-Tabelle

Hinweis Die Production Runs-Tabelle ist spezifisch für dieses Beispiel. Jede Tabelle mit separaten start- und end-Zeitstempeln kann stattdessen verwendet werden.

2. Relevante Variablen filtern

Bevor Zeitreihendaten abgefragt werden, müssen die relevanten Maschinenvariablen gefiltert werden.

  • Eine Kopie der Variables-Tabelle erstellen und FilteredVariables nennen.

  • Die Tabelle filtern und nur die für die Analyse relevanten Variablen beibehalten.

  • Die Variablen nach display_name sortieren

3. Zeitreihendaten pro Auftrag abfragen

Als Nächstes wird eine modifizierte Version der Production Runs-Tabelle erstellt, die eine zusätzliche Spalte für Zeitreihendaten enthält.

Tipp Vorher die Production Runs-Tabelle filtern, um nur relevante Läufe einzubeziehen. Dies reduziert die Verarbeitungszeit.

3.1. Hilfsfunktion fxGetMachineVariables erstellen

Da jeder Auftrag einer bestimmten Maschine zugeordnet ist, wird eine Funktion benötigt, um die korrekten Variablen für jede Maschine abzurufen.

  1. Eine leere Abfrage erstellen und fxGetMachineVariables nennen.

  2. Eine Power Query M-Funktion definieren, die FilteredVariables basierend auf der Maschinen-UUID filtert:

    = (machine as text) as table =>
        let 
            SelectedVariables = Table.SelectRows(FilteredVariables, each [machine] = machine)
        in
            SelectedVariables

3.2. Hilfsfunktion fxTimeseriesForRuns erstellen

Nun wird eine Funktion definiert, die die Timeseries-Abfrage auf jede Zeile der Production Runs-Tabelle anwendet.

  1. Eine leere Abfrage erstellen und fxTimeseriesForRuns nennen.

  2. Eine Power Query M-Funktion definieren, die Zeitreihendaten für jeden Auftrag abruft:

    = (runs as table) as table =>
        let
            TimeseriesForRuns = Table.AddColumn(
                runs, 
                "timeseries", 
                each Record.ToList(
                    Timeseries(
                        fxGetMachineVariables([machine]), 
                        [start] as datetimezone, 
                        [end] as datetimezone, 
                        "1h", 
                        "avg"
                    ){0}
                ){0}
            )
        in
            TimeseriesForRuns

3.3. Tabelle TimeseriesPerProductionRun erstellen

  1. Eine leere Abfrage erstellen und TimeseriesPerProductionRun nennen.

  2. Die fxTimeseriesForRuns-Funktion auf die Production Runs-Tabelle anwenden:

    = fxTimeseriesForRuns(#"Production Runs")

Die resultierende TimeseriesPerProductionRun-Tabelle enthält alle Aufträge mit einer zusätzlichen timeseries-Spalte, in der die zugehörigen Zeitreihendaten gespeichert sind.

4. Zeitreihendaten für Visualisierungen aggregieren

Nun werden die abgerufenen Zeitreihendaten aggregiert, um Gesamt-Durchsatz und Gesamtenergieverbrauch pro Auftrag zu berechnen.

4.1. Aggregationsfunktion fxAggregateTimeseries erstellen

Diese Funktion verwendet die TimeseriesPerProductionRun-Tabelle und aggregiert die Werte in zusätzlichen Spalten.

In diesem Beispiel wird List.Sum zur Aggregation genutzt. Alternativ können Methoden wie average, min, max, first oder last verwendet werden.

  1. Eine leere Abfrage erstellen und fxAggregateTimeseries nennen.

  2. Eine Power Query M-Funktion definieren, die aggregierte Werte berechnet:

    = (RunsWithTimeseries as table) =>
        let
            AggregatedThroughput = Table.AddColumn(
                RunsWithTimeseries, 
                "total_throughput", 
                each List.Sum(Table.Column([timeseries], Table.ColumnNames([timeseries]){1}))
            ),
            AggregatedEnergy = Table.AddColumn(
                AggregatedThroughput, 
                "total_energy", 
                each List.Sum(Table.Column([timeseries], Table.ColumnNames([timeseries]){2}))
            ),
    
            // Set column types to number
            ResultWithTypes = Table.TransformColumnTypes(AggregatedEnergy, {
                {"total_throughput", type number},
                {"total_energy", type number}
            })
        in 
            ResultWithTypes
    

4.2. Aggregationsfunktion anwenden

Die fxAggregateTimeseries-Funktion auf TimeseriesPerProductionRun anwenden:

= fxAggregateTimeseries(Quelle)

Glückwunsch! Du hast erfolgreich Zeitreihendaten für jeden Auftrag abgefragt und die Werte aggregiert