Ankündigung

Einklappen
Keine Ankündigung bisher.

If wird falsch ausgewertet

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

    [EibStudio] If wird falsch ausgewertet

    Hallo Enertegus,

    gestern abend bin ich über einen kleinen Fehler bei der if Auswertung gestolpert. Die Zeile hieß:

    If kuehlungDG or kuehlungOG or kuehlungEG then kuehlung=1 else kuehlung=0 endif

    obwohl alle einzelkuehlungen = AUS war kuehlung=1

    Der Fehler war in der Schreibweise des If ,das was versehendlich mit grossem I geschrieben. Es ist aber normal übertragen worden, ohne Fehler.
    Der schöne Niederrhein läßt Grüssen

    Andreas


    Alter Hof mit neuer Technik

    #2
    Zitat von anlo007 Beitrag anzeigen
    Der Fehler war in der Schreibweise des If ,das was versehendlich mit grossem I geschrieben. Es ist aber normal übertragen worden, ohne Fehler.
    Es wird bei eingebauten Funktionen nicht groß/klein unterschieden. Also sin,SIN, sIN, Sin etc. sind alle gleichwertig. Daher wäre der Fehler wo anders zu suchen.
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      #3
      Evtl. war eine Kühlung bisher noch nicht EIN und wenn nun die anderen AUS sind, wird die Bedingung nicht mehr geprüft und daher bleibt kuehlung EIN?

      Ich meine so ein Problem mit den Startbedingungen, wenn Telegramme noch nie empfangen wurden. Würde aber nur passen, wenn kuehlung an anderer Stelle auch noch EIN gesetzt wird.
      BR
      Marc

      Kommentar


        #4
        Ich hatte auch mal Probleme mit der "or" Verknüpfung. An was es genau liegt weis ich nicht, denke irgendwie am Validierungskonzept.

        Am besten Du arbeitest mit einer if Anweisung für jedes Stockwerk.

        So z.B.:

        If kuehlungDG then kuehlung=1 endif
        If kuehlungOG then kuehlung=1 endif
        If kuehlungEG then kuehlung=1 endif
        If kuehlungDG==AUS and kuehlungOG==AUS and kuehlungEG==AUS then kuehlung=0 endif

        Grüße,
        Felix

        Kommentar


          #5
          Zitat von anlo007 Beitrag anzeigen
          Hallo Enertegus,
          gestern abend bin ich über einen kleinen Fehler bei der if Auswertung gestolpert.
          Hast DU mal einen Beispielcode, den wir hier testen könnten?
          offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
          Enertex Produkte kaufen

          Kommentar


            #6
            Zitat von anlo007 Beitrag anzeigen
            If kuehlungDG or kuehlungOG or kuehlungEG then kuehlung=1 else kuehlung=0 endif
            als Idee zwischendurch:
            Code:
            kuehlung = kuehlungDG or kuehlungOG or kuehlungEG
            Das sollte doch seinen Zweck erfüllen, oder?

            Gruß,
            Bernd

            Kommentar


              #7
              Zitat von bmx Beitrag anzeigen
              als Idee zwischendurch:
              Code:
              kuehlung = kuehlungDG or kuehlungOG or kuehlungEG
              Das sollte doch seinen Zweck erfüllen, oder?
              Klar, frage mich nur, was an der If-Sache nicht gehen soll.
              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
              Enertex Produkte kaufen

              Kommentar

              Lädt...
              X