HMIP-PS: Programm zum manuellen Schalten

HMIP lokale Installation

Moderator: Co-Administratoren

frankieman
Beiträge: 9
Registriert: 24.10.2020, 13:50
System: CCU
Hat sich bedankt: 3 Mal

HMIP-PS: Programm zum manuellen Schalten

Beitrag von frankieman » 08.11.2020, 13:56

Moin Forum,

ich bin Anfänger in der HMIP-Programmierung und habe die viel beschriebenen Verständnisprobleme mit der Logik.
Screenshot 2020-11-08 134525.png
Der Code schaltet die Steckdose nur aus, nicht aber ein. Also wird die Sonst-Bedingung wird nicht ausgeführt. Warum?
Mit 2 Programmen für jeweils "ein" und "aus" habe ich es hinbekommen. Aber 1 Programm sollte doch genügen.

Die Steckdose selbst bietet drei Schaltaktoren. Welcher ist zu nehmen? Oder ist das egal?

Im Voraus danke für die Erklärung.

Xel66
Beiträge: 14297
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 601 Mal
Danksagung erhalten: 1529 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von Xel66 » 08.11.2020, 14:01

Erklären kann man Dir nicht, was Du falsch machst (das Programm ist an und für sich überflüssig). Du müsstest erklären, was Du von diesem Programm erwartest und warum du es angelegt hast, denn dieses Programm kann eigentlich den Aktor nur einschalten. Eigentlich definiert man Auslöser eines Programmes (Taste, Bedingung etc.) und lässt dann einen Aktor schalten. Hier triggert das Einschalten des Aktors (WENN) das Ausschalten (DANN). Sinnvoll ist das nicht und mit zwei derartigen gegensätzlichen Programmen kannst Du Dir Dein System auf den Bauch legen, da sich die Programme gegenseitig Triggern und dann den Aktor stetig ein- und ausschalten, was den Duty Cycle treibt.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

frankieman
Beiträge: 9
Registriert: 24.10.2020, 13:50
System: CCU
Hat sich bedankt: 3 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von frankieman » 08.11.2020, 14:11

Na ja, es geht um grundsätzliches Verständnis, unabhängig davon, ob das Programm sinnvoll ist oder nicht. Wie hätte das Programm auszusehen?


Benutzeravatar
Baxxy
Beiträge: 11084
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 638 Mal
Danksagung erhalten: 2299 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von Baxxy » 08.11.2020, 14:19

frankieman hat geschrieben:
08.11.2020, 13:56
Die Steckdose selbst bietet drei Schaltaktoren. Welcher ist zu nehmen? Oder ist das egal?
Als Einsteiger ist der "niedrigste" Schaltkanal vorzuziehen. Bei einer HmIP-PS wäre das Kanal:3.
Kanal:2 zeigt immer an ob das Relais geschlossen ist und somit Strom fließt.
Kanal:3-5 sind "virtuelle Kanäle" die sich mit diversen Logiken miteinander verknüpfen lassen. In der Standardkonfiguration steht bei allen 3 die Logik auf "ODER", das heißt es ist egal welchen du nimmst. Solange nur einer der 3 Kanäle "EIN" ist, ist auch der Schaltausgang (Kanal:2) "EIN".

manfredh
Beiträge: 4157
Registriert: 09.09.2012, 10:41
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 79 Mal
Danksagung erhalten: 301 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von manfredh » 08.11.2020, 14:37

Vieles ist schon gesagt. Hier mal zusammengefasst im Sinne der Logik:

Zuerst einmal: das Programm wird (von Ausnahmen, auf die ich hier erst mal ggü. einem Anfänger nicht eingehen möchte) nie ausgeführt!
Das "nur prüfen" hinter der Wenn-Zeile heißt im Langtext: "Wenn das Programm einmal angestoßen / ausgeführt wird, muss der Schaltzustand Ein des HMIP-PS... nur geprüft werden".

Stellst du das "nur prüfen " um auf "bei Änderung auslösen" (mache es bitte nicht!!!), passiert folgendes:

HMIP-PS... wird (wie auch immer) eingeschaltet (z.B, über das WebUi). Ergebnis:
- Programm wird ausgeführt (die Änderung hat ja stattgefunden)
- das Wenn ist wahr (HMIP-PS... ist ja ein)
- HMIP-PS... wird ausgeschaltet
Ergebnis:
- Programm wird ausgeführt (die Änderung hat ja stattgefunden)
- das Wenn ist nicht wahr (HMIP-PS... ist ja aus)
- HMIP-PS... wird eingeschaltet
Ergebnis:
- Programm wird ausgeführt (die Änderung hat ja stattgefunden)
- das Wenn ist wahr (HMIP-PS... ist ja ein)
- HMIP-PS... wird ausgeschaltet
Ergebnis:
- Programm wird ausgeführt (die Änderung hat ja stattgefunden)
- das Wenn ist nicht wahr (HMIP-PS... ist ja aus)
- HMIP-PS... wird eingeschaltet
Ergebnis:
- Programm wird ausgeführt (die Änderung hat ja stattgefunden)
- das Wenn ist wahr (HMIP-PS... ist ja ein)
- HMIP-PS... wird ausgeschaltet
Ergebnis:
- Programm wird ausgeführt (die Änderung hat ja stattgefunden)
- das Wenn ist nicht wahr (HMIP-PS... ist ja aus)
- HMIP-PS... wird eingeschaltet
...usw. bis zum jüngsten Tag.

Vermutlich wird sich aber die CCU in der Endlosschleife aufhängen.
Es gibt 10 Arten von Menschen: solche die Binärcode verstehen und solche, die ihn nicht verstehen.

MichaelN
Beiträge: 9850
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 712 Mal
Danksagung erhalten: 1671 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von MichaelN » 08.11.2020, 14:52

Einsteiger Tipps durchlesen!
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Benutzeravatar
Roland M.
Beiträge: 9914
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 257 Mal
Danksagung erhalten: 1421 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von Roland M. » 08.11.2020, 14:57

Hallo!

Ich glaube, man wird auch hier die Problematik auf die beiden typischen Anfängerfehler zurück führen können:

1. wie schon erwähnt, "nur prüfen" löst kein Programm aus
2. wird das Programm über die WebUI manuell gestartet, wird ohne Prüfung der Bedingungen immer das erste DANN ausgeführt!
Nennt sich Logik... :twisted:


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • 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,...

frankieman
Beiträge: 9
Registriert: 24.10.2020, 13:50
System: CCU
Hat sich bedankt: 3 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von frankieman » 08.11.2020, 16:04

Ihr denkt am Thema vorbei und Beiträge wie Einsteiger-Tipps durchlesen helfen nicht weiter. Weiter würde helfen, den Code funktionierend zu ergänzen.

1. Ich programmiere zu Übungszwecken. Wenn man keinen Anwendungsfall hat, sucht man sich etwas. Andere fangen mit "Hello world an".

2. Hier soll einfach nur mittels manuell zu startendem Programm das Drücken auf den Schalter simuliert werden. Hier soll nix getriggert werden oder dergleichen. Mit 2 Programmen geht es ja auch, was aber nicht der Anspruch sein kann.

Aber wenn ich Roland richtig verstanden habe, löst manuelles Auslösen des Programms (Start aus ccu) immer die erste Dann-Anweisung aus. Also mit anderen Worten: Die Bedingung wird gar nicht erst geprüft, sondern gilt als stets erfüllt.

Benutzeravatar
Roland M.
Beiträge: 9914
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 257 Mal
Danksagung erhalten: 1421 Mal

Re: HMIP-PS: Programm zum manuellen Schalten

Beitrag von Roland M. » 08.11.2020, 16:27

Hallo!
frankieman hat geschrieben:
08.11.2020, 16:04
Ihr denkt am Thema vorbei und Beiträge wie Einsteiger-Tipps durchlesen helfen nicht weiter.
Doch, die helfen ungemein! Wenn man sie denn liest.

Weiter würde helfen, den Code funktionierend zu ergänzen.
Vorgekaute Lösungen helfen genau so wenig weiter.

2. Hier soll einfach nur mittels manuell zu startendem Programm das Drücken auf den Schalter simuliert werden.
Und genau das funktioniert nicht so auf der CCU!

Hier soll nix getriggert werden
Doch!
Dein Programm muss getriggert werden, damit es funktioniert!

Mit 2 Programmen geht es ja auch, was aber nicht der Anspruch sein kann.
Dann ist leider Homematic nichts für dich. Dieser Anspruch wird nicht erfüllt.

Aber wenn ich Roland richtig verstanden habe, löst manuelles Auslösen des Programms (Start aus ccu) immer die erste Dann-Anweisung aus. Also mit anderen Worten: Die Bedingung wird gar nicht erst geprüft, sondern gilt als stets erfüllt.
Genau so ist es.
Du brauchst daher einen Trigger.
Üblicherweise verwendet man in so einem Fall einen der virtuellen Taster und startet nicht das Programm, sondern betätigt den Taster. Problem solved.


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • 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,...

Antworten

Zurück zu „HomeMatic IP mit CCU“