Ankündigung

Einklappen
Keine Ankündigung bisher.

OFM-LogicModule: Zufallsvariable

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

    OFM-LogicModule: Zufallsvariable

    Ich habe bei den Benutzerformeln keine Zufallsfunktion gefunden.
    Wie könnte ich mit dem Logikmodul denn eine Zufallsvariable (int) erzeugen?
    Ich dachte ggf. mit
    Code:
    (int)Helligkeitswert % MAX_VALUE
    . Das könnte sogar gleichverteilt sein, aber geht halt eher nur am Tag vernünftig und darf nicht zu häufig aufgerufen werden.
    Andere Ideen? Oder könnten wir die rand()-Funktion zu den Benutzerformeln hinzufügen?

    #2
    Was willst Du denn überhaupt erreichen?

    Zitat von overkill Beitrag anzeigen
    Das könnte sogar gleichverteilt sein, aber geht halt eher nur am Tag vernünftig und darf nicht zu häufig aufgerufen werden.
    Da wäre skeptisch. Bei Erreichen des maximal messbaren Helligkeitswertes bekommst Du eine Konstante raus. Wenn MAX_VALUE nicht seht deutlich kleiner ist als der Helligkeitsbereich, dann ist das auch problematisch. Und die Eigenschaften von 16Bit-Floats werden es auch nicht verbessern...

    Stellt sich auch noch die Frage: Bei welchem Ereignis sollte sich der Wert denn überhaupt ändern?

    Man könnte zumindest aus Neugier mal schauen, ob sich nicht gängige Pseusozufallszahlengeneratoren mit dem Logikmodul umsetzen lassen...
    OpenKNX www.openknx.de | StateEngine: Universelle Zustandsautomaten in KNX | OpenKNX Konfigurationstransfer

    Kommentar


      #3
      Zitat von coko Beitrag anzeigen
      gängige Pseusozufallszahlengeneratoren mit dem Logikmodul umsetzen
      Das geht ziemlich sicher
      Gruß Bernhard

      Kommentar


        #4
        Zitat von willisurf Beitrag anzeigen
        Das geht ziemlich sicher
        Ich hatte schon den Verdacht, dass Du das ausprobiert haben könntest ;-)
        OpenKNX www.openknx.de | StateEngine: Universelle Zustandsautomaten in KNX | OpenKNX Konfigurationstransfer

        Kommentar


          #5
          Nein habe ich nicht, das überlasse ich dem Anwender. Aber es geht sicher und bei Fragen sind wir ja da.
          Gruß Bernhard

          Kommentar


            #6
            Ich hab bisher nicht über Zufallszahlen nachgedacht... aber ich kann nochmal schauen, ob ich eine rnd-Funktion hinzufügen kann. Sonst kannst Du natürlich was mit Formeln probieren. Derzeit gibt es keine Zufallsfunktionen im Logikmodul.

            Gruß, Waldemar
            OpenKNX www.openknx.de

            Kommentar


              #7
              ChatGPT ist da ganz gesprächig
              image.png
              Gruß Bernhard

              Kommentar


                #8
                Das war der Startprompt
                image.png
                Angehängte Dateien
                Gruß Bernhard

                Kommentar


                  #9
                  willisurf die Umsetzung eines linearen Kongruenzgenerators wäre auch meine erste Idee gewesen. Von der Umsetzung sehr einfach und wahrscheinlich ausreichend für den noch unbekannten Anwendungsfall. Update über Trigger auslösen.
                  OpenKNX www.openknx.de | StateEngine: Universelle Zustandsautomaten in KNX | OpenKNX Konfigurationstransfer

                  Kommentar


                    #10
                    und als Seed eignet sich durchaus irgendeine Helligkeit oder Temperatur/Luftfeuchte oder….
                    Gruß Bernhard

                    Kommentar


                      #11
                      Als Seed könnte ich mir gut einen Betriebsstundenzähler vorstellen, z.B. von MDT-NTs mit Diagnose-Funktion. Wenn Du nicht häufiger als einmal pro Stunde neu startest, dann hättest Du jeweils einen neuen Wert.
                      OpenKNX www.openknx.de | StateEngine: Universelle Zustandsautomaten in KNX | OpenKNX Konfigurationstransfer

                      Kommentar

                      Lädt...
                      X