Mögliches Problem mit IP 5

Bild

Uns wurde ein Problem im Logik Editor mit der IP 5 gemeldet, wir untersuchen dies derzeit.

Offenbar können beim Anlegen neuer Logiken keine Parameter gesetzt werden. Bereits laufende Logiken sind nicht betroffen.

Bitte warten Sie mit der Installation der IP 5 falls Sie derzeit Logiken anlegen wollen bzw. stellen Sie sich auf ein zeitnahes Update zur IP 5.1 ein

Info im Insider-Forum: viewtopic.php?t=6230

[Problem] [V4.1] Logik Editor – "$15" Variablenname erzeugt Error

Informationen und Diskussionen über Logik-Engine und Logik-Editor
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten

Ersteller
hpmau
Beiträge: 28
Registriert: Mi Aug 03, 2022 4:20 pm
Hat sich bedankt: 3 Mal
Danksagung erhalten: 2 Mal

[V4.1] Logik Editor – "$15" Variablenname erzeugt Error

#1

Beitrag von hpmau »

Ich habe ein Problem mit einem Variablennamen das ich nicht verstehe. Ich konnte das Problem im unteren, kleinen Logik Beispiel reproduzieren.
Wenn ich in der unteren Logik die Variable nicht "$_15", sondern "$15" benenne (ohne Underscore), dann bekomme ich beim Versuch die Logik zu speichern einen Fehler. Die Variable "$4" funktioniert aber ohne Underscore. Ich hatte die ursprüngliche Logik schon vor der Version 4.1 erstellt, und da hatte "$15" noch funktioniert, erst jetzt wo ich Anpassungen machen wollte ging es nicht mehr...

Gruss, Hanspeter

Mit dieser Logik kann man das Verhalten reproduzieren:
/**
 * New custom logic
 *
 * 
 */

{
  "_Meta": { // Optional
    "Description": "",
    "Version": "1.00"
  },
  "Input": [
  ],
  "Output": [
  ],
  "Level": [
      ["$Hour","integer",0],
      ["$Nach4Uhr","bool",false],
      ["$Nach15Uhr","bool",false],

      ["$4","integer",4],
      ["$_15","integer",15]

  ],
  "Module": [
      
      ["Comparator","-$Hour","-$Nach4Uhr","-$4"],
      ["Comparator","-$Hour","-$Nach15Uhr","-$_15"]

  ]
}
Dies ist der Fehler den ich bekomme wenn ich die Variable "$15" benenne:
Bild
Timberwolf 3500 XL (ID 1651), ETS 5 / VPN offen, reboot nach Absprache

gbglace
Beiträge: 4296
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1505 Mal
Danksagung erhalten: 2048 Mal

#2

Beitrag von gbglace »

Den Grund dieses Fehlers kann ich Dir nicht erklären, aber aus der Erfahrung bezgl. einiger anderer Programmierungen in diversen Systemen ist es meist kein guter Einfall eine Variable einfach nur aus Zahlen zu bezeichnen.

Bei mir wäre das wahrscheinlich auf $T04 und $T15 hinausgelaufen. Dies vermeidet auch das man andere Variablen baut deren vollständiger Name schon ein Teilstring der ersten Zeichen der anderen ist. bei Dir womöglich mal eine Variable $_1 oder $1.
Grüße Göran
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
Antworten

Zurück zu „Logikengine & Logik-Editor“