Tables
Tabellenübersicht
Das Tabellenmodul in PLCVisu ermöglicht die Anzeige und Interaktion mit strukturierten Daten innerhalb deiner Visualisierung. Es unterstützt verschiedene Tabellentypen mit unterschiedlichen Datenquellen – von der Live-Integration mit CODESYS bis zur datenbankgestützten historischen Anzeige.
Tabellentypen
PLCVisu bietet vier Haupttypen von Tabellen:
1. Online-Tabelle
- Direkte Verbindung zu CODESYS (ohne Datenbank)
- Zeigt Live-Datenströme aus dem laufenden System
- Keine Historie oder zeitbasierte Filterung möglich
- Ideal für Echtzeitüberwachung
- Die CODESYS-Anbindung muss separat konfiguriert werden
→ Anleitung und Beispielprojekte sind verfügbar unter:
PLCVisu CODESYS Projekt
2. Basis-Tabelle
- Anbindung an eine ausgewählte Datenbank (z. B. SQLite, MySQL, MSSQL, Trends)
- Zeigt historische Daten aus der Datenbank
- Nur lesend – keine Bearbeitung im Frontend möglich
- Ideal für Protokolle, Berichte oder Datenübersichten
3. Editierbare Tabelle
- Ebenfalls mit einer Datenbank verbunden
- Im Frontend bearbeitbar (Einfügen, Löschen, Ändern von Werten)
- Bearbeitung ist abhängig von den Benutzerrechten
- Geeignet für manuelle Eingaben, Operatorenprotokolle oder Nutzerdaten
4. Erweiterte Tabelle
- Basiert auf der editierbaren Tabelle, bietet aber visuelle Logik
- Unterstützt dynamische Bilder innerhalb von Zellen per JSON-Regeln
- Beispiel: Eine Batterie-Ikone ändert sich je nach Ladezustand
Beispiel-Logik für Bildanzeige:
{
"conditions": [
{
"script": "value == 0",
"url": "",
"value": "ready"
},
{
"script": "value >= 0 && value < 20 ",
"url": "./Example/upload/files/battery/battery_1.png"
},
{
"script": "value >= 20 && value < 40",
"url": "./Example/upload/files/battery/battery_2.png"
},
{
"script": "value >= 40 && value < 60",
"url": "./Example/upload/files/battery/battery_3.png"
},
{
"script": "value >= 60 && value < 80",
"url": "./Example/upload/files/battery/battery_4.png"
},
{
"script": "value >= 80",
"url": "./Example/upload/files/battery/battery_5.png"
}
],
"img": {
"style": "margin-right:8px;"
},
"value": {
"style": "font-weight:bold;"
},
"suffix": {
"style": "font-weight:bold;"
}
}
{
"conditions": [
{
"script": "value == 0",
"url": "",
"value": "ready"
},
{
"script": "value >= 0 && value < 20 ",
"url": "./Example/upload/files/battery/battery_1.png"
},
{
"script": "value >= 20 && value < 40",
"url": "./Example/upload/files/battery/battery_2.png"
},
{
"script": "value >= 40 && value < 60",
"url": "./Example/upload/files/battery/battery_3.png"
},
{
"script": "value >= 60 && value < 80",
"url": "./Example/upload/files/battery/battery_4.png"
},
{
"script": "value >= 80",
"url": "./Example/upload/files/battery/battery_5.png"
}
],
"img": {
"style": "margin-right:8px;"
},
"value": {
"style": "font-weight:bold;"
},
"suffix": {
"style": "font-weight:bold;"
}
}