Ankündigung

Einklappen
Keine Ankündigung bisher.

brauche Hilfe

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    brauche Hilfe

    Hallo Foumsmitglieder,
    komme mit meinem Problem nicht weiter. Folgende Aufgabenstellung:
    Heizung soll beim Schalten der Variablen "Intervall" eingeschaltet werden, dann eine definierte Zeit laufen, anschließend eine definierte Zeit aus sein und solange "Intervall" ein ist soll sich das Spiel wiederholen.
    Mein Code:

    Heizung_an=60000u64*60u64
    Heizung_aus=60000u64*60u64
    Intervall="Heizung Intervall-4/0/7"

    if (Intervall==EIN) then write ("Aktor Heizung Ein/Aus-4/0/0",EIN) endif
    if (delay("Aktor Heizung Ein/Aus-4/0/0"==EIN,Heizung_an)) then write ("Aktor Heizung Ein/Aus-4/0/0",AUS) endif;
    if (delay("Aktor Heizung Ein/Aus-4/0/0"==AUS,Heizung_aus)) then write ("Aktor Heizung Ein/Aus-4/0/0",EIN) endif

    soweit funktioniert es aber wenn ich "Intervall" ausschalte geht die Heizung trotzdem nach der eingestellten Zeit auf aus.
    Wollte das ganze in eine verschachtelte Abfrage packen aber weder delay noch after funktionieren darin.
    Bin Anfänger auf dem Gebiet.
    Gibt bestimmt eine elegantere Lösung,, komme leider nicht drauf.

    Besten Dank.
    Alfred​

    #2
    Wie wäre sowas in dieser Art?
    Code:
    if (delay("Aktor Heizung Ein/Aus-4/0/0"==EIN,Heizung_an)) then {
        if Intervall then write ("Aktor Heizung Ein/Aus-4/0/0",AUS) endif;
    } endif;

    Kommentar


      #3
      Einfach die Variable Intervall mit dem delay Verknüpfen:
      Code:
      if (Intervall==EIN) then write ("Aktor Heizung Ein/Aus-4/0/0",EIN) endif
      if (delay("Aktor Heizung Ein/Aus-4/0/0"==EIN,Heizung_an)) and Intervall  then write ("Aktor Heizung Ein/Aus-4/0/0",AUS) endif;
      if (delay("Aktor Heizung Ein/Aus-4/0/0"==AUS,Heizung_aus)) and Intervall then write ("Aktor Heizung Ein/Aus-4/0/0",EIN) endif
      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
      Enertex Produkte kaufen

      Kommentar


        #4
        @energetus Danke der Code , leuchtet mir jetzt ein. Nur zum Verständnis: in der zweiten if Schleife hat Intervall ein EIN ,wenn Intervall AUS ist werden die drei if nicht verarbeitet?​

        Kommentar


          #5
          Was soll eigentlich passieren, wenn man "Intervall" auf AUS schaltet - läuft dann die Heizung ewig weiter?

          Kommentar


            #6
            Dann soll die Heizung in Dauerlauf gehen, bis sie manuell ausgeschaltet wird. Hintergrund ist eine Taktung zu verhindern, ist eine on/off Pumpe die etwas überdimensioniert ist.
            Funktioniert jetzt so wie gedacht.
            Danke an alle.

            Eine Frage noch. Gibt es Literatur wo man sich in die Syntax einarbeiten kann, welche progr. Sprache braucht EibPc?

            Kommentar


              #7
              Zitat von chook Beitrag anzeigen
              Eine Frage noch. Gibt es Literatur wo man sich in die Syntax einarbeiten kann, welche progr. Sprache braucht EibPc?
              Für den eibPC gibt es ein sehr ausführliches Handbuch, das auch gut in die "Experten"-Programmierung einführt.

              Kommentar


                #8
                Zitat von chook Beitrag anzeigen
                progr. Sprache braucht EibPc?
                Ist eine eigene "Sprache". Sollte alles im Handbuch (F1 im EibStudio drücken bzw. https://enertex.de/downloads/1159/1159-HB_EibPC2_DE.pdf) stehen. Das Zentrale ist, dass die Befehle nicht imperativ verarbeitet werden, sondern dass vom Compiler ein Abhängigkeitsbaum generiert wird (siehe Handbuch ab S. 32)

                Kommentar

                Lädt...
                X