KNX Data Secure Unterstützung
für KNX Logger und KNX Busmonitor

KNX Diagnose Monitor, Import des ETS Projektes deutlich beschleunigt, Suche in der Navigation
Mehr Informationen dazu hier im Forum

Insider Version 6 zur 4.5 jetzt für alle Mitglieder des Insider Clubs installierbar
Alle Infos zum Update im Timberwolf Wiki

[Frage] [V4.0.1] Logik zum Konvertieren von bool in 0/1

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
Kaaennixx
Reactions:
Beiträge: 113
Registriert: Mi Dez 28, 2022 9:28 pm
Hat sich bedankt: 25 Mal
Danksagung erhalten: 74 Mal

[V4.0.1] Logik zum Konvertieren von bool in 0/1

#1

Beitrag von Kaaennixx »

Hallo zusammen,

Ich bin mir sicher, dass möglich ist, was ich vorhabe, aber leider finde ich noch keine Lösung.

Ich habe in der Visu ein Widget, welches ein Objekt schalten soll, was 0/1 erwartet. Ich dachte, die automatische Konvertierung würde das schon regeln, aber leider funktioniert das nicht. Ich bekomme dann einen Fehler. Also benötige ich eine Logik, welche das für mich macht.

Am Eingang das Visu Objekt, also bool, da ja im Moment nichts anderes möglich ist, soweit ich weiß. Und am Ausgang dann 0 /1. Das sollte doch eigentlich ganz einfach sein, oder? Irgendwie stehe ich hier etwas auf dem Schlauch.. :roll:

Viele Grüße
Raimund
Zuletzt geändert von Parsley am So Aug 25, 2024 10:23 pm, insgesamt 1-mal geändert.
Viele Grüße
Raimund

Timberwolf Server 3500L #1049 / VPN - im Auslieferungszustand, Reboot ok

MrWilson
Reactions:
Beiträge: 284
Registriert: Do Dez 27, 2018 2:19 pm
Wohnort: Borgsdorf
Hat sich bedankt: 46 Mal
Danksagung erhalten: 168 Mal

#2

Beitrag von MrWilson »

Hallo Raimund,

du legst eine Und-Logik an und stellst bei der Ausgangsfunktion Mapping auf Ganzzahl ein.

Grüße Willy
TWS 2500 ID: 341 + PBM ID: 463, VPN offen, Reboot nur nach Absprache
Benutzeravatar

starwarsfan
Reactions:
Beiträge: 1395
Registriert: Mi Okt 10, 2018 2:39 pm
Hat sich bedankt: 864 Mal
Danksagung erhalten: 1199 Mal

#3

Beitrag von starwarsfan »

Hoi Raimund
Kaaennixx hat geschrieben: So Aug 25, 2024 12:40 pm Am Eingang das Visu Objekt, also bool, da ja im Moment nichts anderes möglich ist, soweit ich weiß. Und am Ausgang dann 0 /1. Das sollte doch eigentlich ganz einfach sein, oder? Irgendwie stehe ich hier etwas auf dem Schlauch.. :roll:
Ich hab's grad mal versucht und das via Customlogik so gemacht:

Code: Alles auswählen

{
  "Level":[
    ["$BoolIn", "bool", true],
    ["$IntOut", "integer", 0],
    ["$ConstInt0", "integer", 0],
    ["$ConstInt1", "integer", 1],

    ["$VAR<Inhibit?>", "bool", false]
  ],
  "Input": [
    ["Boolean Input", "", "$BoolIn", "a"],
    ["Inhibit","INHIBIT","$VAR<Inhibit?>","u"]
  ],
  "Module": [
    ["Break", ["$VAR<Inhibit?>"]],
    ["Multiplexer", ["$ConstInt0", "$ConstInt1"], "$IntOut", "$BoolIn"]
  ],
  "Output": [
    ["Integer Output", "", "$IntOut", "ct"]
  ]
}
Das funktioniert hier problemlos. Input "true" liefert "1" auf dem Ausgang. Input "false" liefert "0" auf dem Ausgang. Wenn Du's andersherum brauchst, musst Du nur einfach die beiden Konstanten im Multiplexer tauschen.
Kind regards,
Yves

TWS 2500 ID:159 / TWS 3500 ID:618 / TWS 3500 ID:1653 + PBM ID:401 / ProxMox / 1-Wire / iButtons / Edomi (LXC / Docker) / evcc / ControlPro
(TW-VPN jeweils offen, Reboot nach Rücksprache)

gbglace
Reactions:
Beiträge: 4089
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1416 Mal
Danksagung erhalten: 1901 Mal

#4

Beitrag von gbglace »

Kaaennixx hat geschrieben: So Aug 25, 2024 12:40 pm Ich habe in der Visu ein Widget, welches ein Objekt schalten soll, was 0/1 erwartet.
Was für ein Objekt ist das denn, das die Automatische Konvertierung nicht funktioniert?
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

StefanW
Elaborated Networks
Elaborated Networks
Reactions:
Beiträge: 10713
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 5303 Mal
Danksagung erhalten: 8685 Mal
Kontaktdaten:

#5

Beitrag von StefanW »

Hi Raimund,
Kaaennixx hat geschrieben: So Aug 25, 2024 12:40 pmUnd am Ausgang dann 0 /1.
Was meinst Du denn mit "0" und mit "1"?

Ist das eine Zahl? Ein String? Ein boolescher Wert (dann aber bitte mit TRUE und FALSE kennzeichnen).

lg

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

Ersteller
Kaaennixx
Reactions:
Beiträge: 113
Registriert: Mi Dez 28, 2022 9:28 pm
Hat sich bedankt: 25 Mal
Danksagung erhalten: 74 Mal

#6

Beitrag von Kaaennixx »

Hallo und danke für die zahlreichen Antworten.

Es sind ja schon einige Tips dabei, die werde ich morgen gern testen.

Zur Erklärung: Es geht um meine neue Wärmepumpe, die ich per Modbus TCP angebunden habe. Bei dieser kann ich, um die Wärmepumpe zu starten wenn der Strom günstig ist (Tibber), per Modbus die SG Ready Schnittstelle simulieren, ohne die Kontakte verkabeln und potentialfrei schalten zu müssen. Ich schicke also per Modbus für die 2 SG Ready Kontakte eine 0 oder eine 1 als Integer zur Wärmepumpe. Da ich an einer Logik die Schaltzeiten zu automatisieren noch arbeite, war mein Plan dieses erstmal über die Visu von Hand schaltbar zu machen.

Verbinde ich nun mein Widget mit dem Modbus Objekt, bekomme ich beim Auslösen einen Fehler, dass die Objekte nicht kompatibel sind (den genauen Wortlaut hab ich grad nicht mehr im Kopf). Der TWS macht also nicht von allein aus dem true eine 1 und aus dem false eine 0, was ich eigentlich erwartet hatte. Deshalb benötige ich die Logik :)
Viele Grüße
Raimund

Timberwolf Server 3500L #1049 / VPN - im Auslieferungszustand, Reboot ok
Benutzeravatar

Eraser
Reactions:
Beiträge: 677
Registriert: So Aug 12, 2018 1:51 pm
Hat sich bedankt: 218 Mal
Danksagung erhalten: 281 Mal

#7

Beitrag von Eraser »

Ich schätze mal du musst den Weg über das Output-Mapping und einer banalen UND-Logik gehen.
mfg
Wolfgang

Timberwolf 2500 #151 / VPN offen / Reboot nach Rücksprache
+ PBM #938

gbglace
Reactions:
Beiträge: 4089
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1416 Mal
Danksagung erhalten: 1901 Mal

#8

Beitrag von gbglace »

OK das ist aber schade, das es da nicht funktioniert. Ein binäres Signal kommt ja immer erstmal als 1Bit 0/1 an.

In einer Logikzelle nimmt er das auch anstandslos an, um damit in einer freien Formel Sachen zu multiplizieren / Addieren usw.
Da hätte ich jetzt auch gedacht, das er aus dem 1Bit 0/1 ein Integer 0/1 machen könnte wenn es ein Input an ein Modbus Integer Datenpunkt ist.
Es ist ja immerhin kein String der als false/true aus dem Visu-Objekt kommt.
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

StefanW
Elaborated Networks
Elaborated Networks
Reactions:
Beiträge: 10713
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 5303 Mal
Danksagung erhalten: 8685 Mal
Kontaktdaten:

#9

Beitrag von StefanW »

Hi Raimund,

das empfangende Objekt im Modbus ist mit welchem Datentyp angelegt? Bool? Int? Float?

lg

Stefan

PS: Wir haben ja noch die Implementierung des Aussende- / Rückmelde-Assistenten im VISU System vor uns und dort stellt man dann ein, wie was gesendet werden soll.

PSS: Automatische Typkonvertierung passiert immer im jeweils empfangenden Subsystem, hier wäre das wohl das für Modbus und daher meine Nachfrage
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

Ersteller
Kaaennixx
Reactions:
Beiträge: 113
Registriert: Mi Dez 28, 2022 9:28 pm
Hat sich bedankt: 25 Mal
Danksagung erhalten: 74 Mal

#10

Beitrag von Kaaennixx »

Hi Göran, Hi Stefan,

das Objekt ist in UINT angelegt. Ich habe es heute zeitig noch nicht geschafft die Tips zu testen, aber ich bleibe dran. Rückmeldung folgt.
Viele Grüße
Raimund

Timberwolf Server 3500L #1049 / VPN - im Auslieferungszustand, Reboot ok
Antworten

Zurück zu „Logikengine & Logik-Editor“