Ankündigung

Einklappen
Keine Ankündigung bisher.

RGB Sequenzer

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

    RGB Sequenzer

    Hi,

    habe heute endlich mal meine RGB-Strips angeschlossen und bin nun auf der Suche nach einem RGB-Sequenzer für den eibPC.

    Haben "wir" sowas schonmal entwickelt?
    Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

    #2
    Ich habe bei mir über den EibPC eine Zufallsfunktion für die RGB LEDs realisiert.

    Sieht so aus:
    [Highlight=epc]
    LEDsBadRot=0%
    LEDsBadGruen=0%
    LEDsBadBlau=0%

    if event("LEDs Bad Anforderung-1/2/21") and ("LEDs Bad Anforderung-1/2/21"==EIN) then\\
    LEDsBadRot=convert(random(255u32),0%);LEDsBadGruen =convert(random(255u32),0%);LEDsBadBlau=convert(ra ndom(255u32),0%)\\
    endif

    if event("LEDs Bad Anforderung-1/2/21") and ("LEDs Bad Anforderung-1/2/21"==EIN) then\\
    write("Dimmwert LEDs Dusche rot-1/2/56",LEDsBadRot); write("Dimmwert LEDs Dusche grün-1/2/57",LEDsBadGruen); write("Dimmwert LEDs Dusche blau-1/2/58",LEDsBadBlau)\\
    endif

    if ("LEDs Bad Anforderung-1/2/21"==AUS) then write("Dimmwert LEDs Dusche rot-1/2/56",0); write("Dimmwert LEDs Dusche grün-1/2/57",0); write("Dimmwert LEDs Dusche blau-1/2/58",0) endif
    if after("LEDs Bad Anforderung-1/2/21"==AUS,5000u64) then write("LEDs Dusche an/aus-1/2/12",AUS) endif
    [/Highlight]Grüße,
    Felix

    Kommentar


      #3
      ein guter Ansatz vielen Dank!
      Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

      Kommentar


        #4
        Der letzte Absatz ist für die LED Beleuchtung eigentlich nicht mehr relevant. Er bewirkt nur die richtige Anzeige auf den Slidern in der Visu.

        Kommentar


          #5
          war klar ...

          was mich an dem Ansatz noch ein wenig "stört" ist, dass manchmal eben alle drei Farben geringen Werte bekommen und dadurch nicht nur die Farbe sondern auch die Gesamt-Helligkeit stark schwankt.

          Ich habe schon überlegt den HS-Sequenzer von MatthiasS (im Downloadbereich) auf eibPC-Makro zu portieren. Aber ich kann diese komische Syntax des HS nicht lesen.

          mal sehen ...
          Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

          Kommentar


            #6
            Hallo zusammen,

            gibt es hier was neues? stehe mehr oder weniger vor der gleichen Situation und suche auch einen RGB Sequenzer aufbauend auf dem EIB PC.

            @teichsta: Hast Du Dir die Mühe noch gemacht das HS Makro auf den EIB PC zu portieren?

            Oder gibt es mittlerweile von Enertex ein spezielles Makro in dieser Art?


            Grüsse
            Jochen

            Kommentar


              #7
              Zitat von joggele777 Beitrag anzeigen
              gibt es hier was neues? stehe mehr oder weniger vor der gleichen Situation und suche auch einen RGB Sequenzer aufbauend auf dem EIB PC.
              Da gab es einen Code aus dem Wettbewerb - wir sind nur noch nicht dazugekommen, den zu veröffentlichen. Wenn gewünscht, kann ich den mal ungefiltert hier rein stellen.
              Die nächsten 14 Tage haben hier einige Urlaub (ich inklusive).
              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
              Enertex Produkte kaufen

              Kommentar


                #8
                Hi Michael,

                von mir aus kannst Du den code gerne hier reinstellen, wenn sonst niemand etwas dagegen hat.

                Grüsse
                Jochen

                Kommentar


                  #9
                  Zitat von joggele777 Beitrag anzeigen
                  @teichsta: Hast Du Dir die Mühe noch gemacht das HS Makro auf den EIB PC zu portieren?
                  nein, habe ich nicht, da ich nicht mehr den eibPC sondern openHAB einsetze.
                  Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

                  Kommentar


                    #10
                    Hallo zusammen,

                    hier der RGB-Sequenzer.
                    Müsste die aktuelle Version sein. Hoffe ich zumindest.
                    In ein Makro hab ich das immer noch nicht geschafft.
                    Viel zu viel Arbeit im Moment. Hoffentlich wird das ab 1.7. besser.

                    Code:
                    //---------------------------------------------------------------------------------------------------------------------
                    //--- RGB-Fader/Sequenzer ---------------------------------------------------------------------------------------------
                    //---------------------------------------------------------------------------------------------------------------------
                    RGBSequenz=AUS
                    RGBSqRepeat=AUS
                    RGBSqRed=$$
                    RGBSqRedPos=0u16
                    RGBSqGreen=$$
                    RGBSqGreenPos=0u16
                    RGBSqBlue=$$
                    RGBSqBluePos=0u16
                    RGBByteSize=3u16
                    RGBSqArray=$000001002002002003003004005006007008010011013016019023027032038045054064076091108128152181215255$
                    //Das Array kann beliebig verändert werden. Es müssen nur alle Werte mit 3 Stelle angegeben werden und der letzte Wert muss 255 sein
                    //Hier haben wir ein Array mit 32 Werten. Damit geht die Sequenz schon relativ sanft
                    // An dieser Stelle können die Gruppenandressen angepasst werden
                    // Schreiben auf den Bus
                    if change(RGBSqRed) then {
                    write("DALI-EVG1 (Wert)-12/1/0",convert(RGBSqRed,0u08))
                    } endif
                    //Grün
                    if change(RGBSqGreen) then {
                    write("DALI-EVG2 (Wert)-12/1/1",convert(RGBSqGreen,0u08))
                    } endif
                    //Blau
                    if change(RGBSqBlue) then {
                    write("DALI-EVG3 (Wert)-12/1/2",convert(RGBSqBlue,0u08))
                    } endif
                    // Millisekungen Timer bauen
                    // Der EIBPC kann das ja nicht, da geht das nur auf Sekunden genau...
                    // RGBSeqRepeat geht alle 600 ms auf EIn und triggert damit die nächste IF Anweisung
                    if RGBSequenz==EIN then RGBSqRepeat=EIN endif
                    if after(RGBSqRepeat==EIN,600u64) and RGBSequenz==EIN then RGBSqRepeat=AUS endif
                    if after(RGBSqRepeat==AUS,10u64) and RGBSequenz==EIN then RGBSqRepeat=EIN endif
                    if after(RGBSequenz==AUS,1000u64) then RGBSqRepeat=AUS endif
                    // Init bei Systemstart
                    if systemstart() then {
                    RGBSqRed=split(RGBSqArray,RGBSqRedPos*RGBByteSize,(RGBSqRedPos*RGBByteSize)+2u16);
                    RGBSqGreen=split(RGBSqArray,RGBSqGreenPos*RGBByteSize,(RGBSqGreenPos*RGBByteSize)+2u16);
                    RGBSqBlue=split(RGBSqArray,RGBSqBluePos*RGBByteSize,(RGBSqBluePos*RGBByteSize)+2u16);
                    } endif
                    //Das Array pro Farbe nach oben und unten in der Reiehnfolge Rot->Grün->Blau durchlaufen
                    if RGBSequenz==EIN and RGBSqRepeat==EIN then {
                    /* rot hochlaufen lassen; START!*/;
                    if ((convert(RGBSqRed,0u16)<255u16) and (convert(RGBSqBlue,0u16)==0u16) and (convert(RGBSqGreen,0u16)==0u16)) then {
                    RGBSqRedPos=RGBSqRedPos+1u16
                    } endif;
                    /* Wenn rot auf 255 ist, grün hochlaufen lassen*/;
                    if ((convert(RGBSqRed,0u16)==255u16) and (convert(RGBSqBlue,0u16)==0u16) and (convert(RGBSqGreen,0u16)<255u16)) then {
                    RGBSqGreenPos=RGBSqGreenPos+1u16
                    } endif;
                    /* Wenn grün auf 255 ist, rot wieder auf 0 laufen lassen*/;
                    if ((convert(RGBSqRed,0u16)>0u16) and (convert(RGBSqBlue,0u16)==0u16) and (convert(RGBSqGreen,0u16)==255u16)) then {
                    RGBSqRedPos=RGBSqRedPos-1u16
                    } endif;
                    /* Wenn rot auf 0 ist und grün noch auf 255, dann Blau auf 255 laufen lassen*/;
                    if ((convert(RGBSqRed,0u16)==0u16) and (convert(RGBSqBlue,0u16)<255u16) and (convert(RGBSqGreen,0u16)==255u16)) then {
                    RGBSqBluePos=RGBSqBluePos+1u16
                    } endif;
                    /* Wenn grün auf 255 ist und Blau auf 255 ist, dann grün wieder auf 0 laufen lassen*/;
                    if ((convert(RGBSqRed,0u16)==0u16) and (convert(RGBSqBlue,0u16)==255u16) and (convert(RGBSqGreen,0u16)>0u16)) then {
                    RGBSqGreenPos=RGBSqGreenPos-1u16
                    } endif;
                    /* Wenn grün wieder auf 0 ist, dann muss Rot wieder auf 255 laufen. Blau bleibt auf 255*/;
                    if ((convert(RGBSqRed,0u16)<255u16) and (convert(RGBSqBlue,0u16)==255u16) and (convert(RGBSqGreen,0u16)==0u16)) then {
                    RGBSqRedPos=RGBSqRedPos+1u16
                    } endif;
                    /*Wenn rot wieder auf 255 ist, muss blau wieder auf 0 laufen; grün ist auf 0*/;
                    if ((convert(RGBSqRed,0u16)==255u16) and (convert(RGBSqBlue,0u16)>0u16) and (convert(RGBSqGreen,0u16)==0u16)) then {
                    RGBSqBluePos=RGBSqBluePos-1u16
                    } endif;
                    } endif
                    // Bei Änderung einer Variable wird das Array neu ausgelesen
                    //Rot
                    if change(RGBSqRedPos) then {
                    RGBSqRed=split(RGBSqArray,RGBSqRedPos*RGBByteSize,(RGBSqRedPos*RGBByteSize)+2u16)
                    } endif
                    //Grün
                    if change(RGBSqGreenPos) then {
                    RGBSqGreen=split(RGBSqArray,RGBSqGreenPos*RGBByteSize,(RGBSqGreenPos*RGBByteSize)+2u16)
                    } endif
                    //Blau
                    if change(RGBSqBluePos) then {
                    RGBSqBlue=split(RGBSqArray,RGBSqBluePos*RGBByteSize,(RGBSqBluePos*RGBByteSize)+2u16)
                    } endif
                    //Zur Sicherheit, falls jemand doch 256 oder einen falschen Wert in das Array schreibt, dann gehen die Farben auf MAXIMUM 255
                    if (convert(RGBSqRed,0u16)>255u16) then RGBSqRed=$255$ endif
                    if (convert(RGBSqGreen,0u16)>255u16) then RGBSqGreen=$255$ endif
                    if (convert(RGBSqBlue,0u16)>255u16) then RGBSqBlue=$255$ endif
                    //--------------------------------------------------------------------------------------------------------------------------
                    //--------------------------------------------------------------------------------------------------------------------------
                    //--------------------------------------------------------------------------------------------------------------------------
                    // RGB Fader Ende
                    Gruß
                    Volker

                    Wer will schon Homematic?

                    Kommentar


                      #11
                      Hallo zusammen,

                      mein EIB PC befindet sich zwar noch auf dem Postweg, aber ich habe in der Richtung auch eine Frage. Da ich noch Neuling auf dem Gebiet des EIB PC bin mag sein dass bereits eine Lösung existiert die ich nicht kenne.

                      Ich habe unter anderem ein Arcus Touch_IT, auf dem ist eine Farbskala abgebildet über die man jede gewünschte Farbe aufrufen kann. Der Touch sendet dann die entsprechenden RGB Dimmwerte ans Dali GW. Gibt es sowas auch für den EIB PC um es in der Visu anzeigen zu lassen und die RGB Streifen so zu steuern?

                      Gruß Nils

                      Kommentar


                        #12
                        Zitat von SnowMaKeR Beitrag anzeigen
                        Hallo zusammen,

                        hier der RGB-Sequenzer.
                        Müsste die aktuelle Version sein. Hoffe ich zumindest.
                        In ein Makro hab ich das immer noch nicht geschafft.
                        Viel zu viel Arbeit im Moment. Hoffentlich wird das ab 1.7. besser.


                        Code:
                        //--- RGB-Fader/Sequenzer -----------------------------------


                        Hallo Volker,

                        vielen Dank! Ich nehme an der Code ist von Dir selbst entwickelt? Respekt! Da steckt ja ganz schön arbeit drin! Super, dass Du den hier einfach so "frei gibst"!

                        Werde gleich mal in den nächsten Tagen testen.....

                        Grüsse
                        Jochen

                        Kommentar


                          #13
                          Hallo Jochen,

                          Danke für die Blumen.
                          Mich hat das mal interessiert und als ich damit begonnen hatte, hatte ich noch etwas mehr Zeit bzw. einfach weniger Projektstress.
                          Der Wettbewerb hat dann dafür gesorgt, dass ich es auch fertig gemacht habe.

                          Es geht mit Sicherheit besser, schöner und eleganter. Aber ich bin im Moment zufrieden damit.
                          Und wenn ich dann auch mal wieder mehr Zeit hab, dann kann man immern och ne V2 nachreichen.

                          Teilen mach ich immer gerne.
                          7/4, 15/2...
                          Gruß
                          Volker

                          Wer will schon Homematic?

                          Kommentar


                            #14
                            Moin

                            ich hab meine RGB- und RGBWW-LED´s per DMX am Wiregate.
                            Gibt es in der Richtung schon ein Plugin für nen Sequenzer?

                            Gruß Bernd

                            Kommentar


                              #15
                              Zitat von Izeman Beitrag anzeigen
                              ich hab meine RGB- und RGBWW-LED´s per DMX am Wiregate.
                              Gibt es in der Richtung schon ein Plugin für nen Sequenzer?

                              Gruß Bernd
                              Falsches Forum, ich denke die Frage bezieht sich aufs Wiregate.
                              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                              Enertex Produkte kaufen

                              Kommentar

                              Lädt...
                              X