Hallo zusammen,
ich verzweifle gerade an einem m. E. sehr simplen Problem, aber ich komme irgendwie nicht richtig weiter.
Aufgabe ist, ein Programm zu schreiben, dass abhängig vom aktuellen Schaltzustand den gegenteiligen Zustand herstellt. Also, wenn 1 dann 0, wenn 0 dann 1. Sollte eigentlich nicht so schwer sein, funktioniert aber trotzdem nicht und irgendwie stehe ich auf dem Schlauch. Schaut euch mal bitte das unten angehängte Programm an.
Hinweis: "EG WZ - Licht Regal" ist der umbenannte Kanal 3 der HMIP-PSM.
Der Schaltzustand wird auf der Geräteübersicht mit ein bis zwei Sekunden Verzögerung sauber erkannt. Wenn ich Debug-Nachrichten in das Programm einbaue, statt den Aktor zu schalten, kommt er meistens in den Wenn-Zweig (also EIN), manchmal in den Sonst-Zweig (unklar?) und ab und zu in den Sonst-Wenn-Zweig (AUS).
Wo ist mein Denkfehler?
Herzlichen Dank!
MfG
Bernd
Togglen von HMIP-PSM (Schalt-Mess-Steckdose)
Moderator: Co-Administratoren
Re: Togglen von HMIP-PSM (Schalt-Mess-Steckdose)
Ein "Nur Prüfen" löst nichts aus.
Gruß
Rainer
Gruß
Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!
- Roland M.
- Beiträge: 9842
- Registriert: 08.12.2012, 15:53
- System: CCU
- Wohnort: Graz, Österreich
- Hat sich bedankt: 254 Mal
- Danksagung erhalten: 1395 Mal
Re: Togglen von HMIP-PSM (Schalt-Mess-Steckdose)
Hallo Bernd, willkommen im Forum!
1. klassischer Anfängerfehler - "nur prüfen"
Ein Programm wird nur gestartet, wenn ein Auslöser gesetzt ist. In deinem Programm fehlt jegliches "Auslösen auf Änderung" oder "Auslösen auf Aktualisierung".
2. klassischer Anfängerfehler - das manuelle Starten des Programms
Im Gegensatz zu jeder üblichen Logik wird beim händischen Start eines Programms keine Bedingungen ausgewertet, sondern schlicht das (erste) DANN abgearbeitet.
Beides und viele andere nützliche Informationen findest du in den Tipps für Anfänger http://homematic-forum.de/forum/viewtop ... 19&t=22801
Zur Lösung deines Problems brauchst du noch einen Auslöser, wie z.B. einen Taster
WENN Taster bei Tastendruck kurz
UND Aktor bei Schaltzustand aus (nur prüfen)
DANN Aktor sofort Schaltzustand ein
SONST Aktor sofort Schaltzustand aus
Würdest du keinen externen Auslöser verwenden, sondern nur "Auslösen auf Änderung" wählen, würdest du ein Blinklicht erhalten, bis die CCU wegen Überschreitung des Duty Cycle w.o. gibt...
Roland
Dein Programm beinhaltet zwei Fehler.Bernd112 hat geschrieben:Aufgabe ist, ein Programm zu schreiben, dass abhängig vom aktuellen Schaltzustand den gegenteiligen Zustand herstellt. Also, wenn 1 dann 0, wenn 0 dann 1. Sollte eigentlich nicht so schwer sein, funktioniert aber trotzdem nicht und irgendwie stehe ich auf dem Schlauch. Schaut euch mal bitte das unten angehängte Programm an.
1. klassischer Anfängerfehler - "nur prüfen"
Ein Programm wird nur gestartet, wenn ein Auslöser gesetzt ist. In deinem Programm fehlt jegliches "Auslösen auf Änderung" oder "Auslösen auf Aktualisierung".
2. klassischer Anfängerfehler - das manuelle Starten des Programms
Im Gegensatz zu jeder üblichen Logik wird beim händischen Start eines Programms keine Bedingungen ausgewertet, sondern schlicht das (erste) DANN abgearbeitet.
Beides und viele andere nützliche Informationen findest du in den Tipps für Anfänger http://homematic-forum.de/forum/viewtop ... 19&t=22801
Zur Lösung deines Problems brauchst du noch einen Auslöser, wie z.B. einen Taster
WENN Taster bei Tastendruck kurz
UND Aktor bei Schaltzustand aus (nur prüfen)
DANN Aktor sofort Schaltzustand ein
SONST Aktor sofort Schaltzustand aus
Würdest du keinen externen Auslöser verwenden, sondern nur "Auslösen auf Änderung" wählen, würdest du ein Blinklicht erhalten, bis die CCU wegen Überschreitung des Duty Cycle w.o. gibt...
Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...
- Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
- Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
- Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
- Fehlermeldungen genau abschreiben, besser noch...
- Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!
-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...