Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Liste für PWM abarbeiten

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    10
    1
    65

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    554

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

Liste für PWM abarbeiten

Geplant Angeheftet Gesperrt Verschoben Blockly
6 Beiträge 2 Kommentatoren 451 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R Offline
    R Offline
    Ralf 6
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich möchte eine Aquariumlampe per PWM über einen ESP32 mit Zusatzmodul PCA9685 dimmen. Das Blockly hierzu:

    2f3a8e20-7396-4984-a92f-5aa35bc5c151-grafik.png

    Dieses Dimmen funktioniert schon seit Jahren über ein Raspberry mit einem Python-Programm. Ich bin derzeit dran, die komplette Aquariumsteuerung auf iobroker umzustellen. Die verwendete Liste beinhaltet im Original ca. 1.000 Werte und simuliert einen Sonnenauf bzw. -untergang.

    Das Blockly macht, was ich erwarte und ich habe dennoch Fragen hierzu:

    1. Ist das mit der "PAUSE" so ok oder gibt es eine elegantere Lösung? In verschiedenen Beiträgen habe ich gelesen, dass möglichst der Befehl "PAUSE" nicht verwendet werden soll.
    2. In Python konnte ich die Liste auch rückwärts abarbeiten. Gibt es hier auch eine Möglichkeit oder benötige ich eine zweite gespiegelte Liste?
    3. Ist das ok, die Liste hier im Blockly zu definieren oder sollte ich besser einen Datenpunkt nehmen?

    Über erhellende Antworten würde ich mich freuen. Gerne beantworte ich auch Fragen.
    Gruß Ralf

    geschildG 1 Antwort Letzte Antwort
    0
    • R Ralf 6

      Hallo,

      ich möchte eine Aquariumlampe per PWM über einen ESP32 mit Zusatzmodul PCA9685 dimmen. Das Blockly hierzu:

      2f3a8e20-7396-4984-a92f-5aa35bc5c151-grafik.png

      Dieses Dimmen funktioniert schon seit Jahren über ein Raspberry mit einem Python-Programm. Ich bin derzeit dran, die komplette Aquariumsteuerung auf iobroker umzustellen. Die verwendete Liste beinhaltet im Original ca. 1.000 Werte und simuliert einen Sonnenauf bzw. -untergang.

      Das Blockly macht, was ich erwarte und ich habe dennoch Fragen hierzu:

      1. Ist das mit der "PAUSE" so ok oder gibt es eine elegantere Lösung? In verschiedenen Beiträgen habe ich gelesen, dass möglichst der Befehl "PAUSE" nicht verwendet werden soll.
      2. In Python konnte ich die Liste auch rückwärts abarbeiten. Gibt es hier auch eine Möglichkeit oder benötige ich eine zweite gespiegelte Liste?
      3. Ist das ok, die Liste hier im Blockly zu definieren oder sollte ich besser einen Datenpunkt nehmen?

      Über erhellende Antworten würde ich mich freuen. Gerne beantworte ich auch Fragen.
      Gruß Ralf

      geschildG Offline
      geschildG Offline
      geschild
      schrieb am zuletzt editiert von geschild
      #2

      @ralf-6 said in Liste für PWM abarbeiten:

      Ich weiß es zwar nicht aber evtl. werden bei PAUSE nops abgearbeitet und alles andere blockiert (wie delay() im arduino).
      Ich hab mal was ohne PAUSE mit vor - rückwärts geschrieben, nicht getestet, nur ein Vorschlag.

      ee594c09-d1e9-412b-894d-f7363c42fb6c-image.png
      script.txt <--- hier ist der Quelltext

      Ich denke, ob die Liste aus einem Text oder einem DP erstellt wird, dürfte wohl ein ähnlicher Rechenzeitaufwand sein, evtl. ist Text sogar schneller.

      R 1 Antwort Letzte Antwort
      0
      • geschildG geschild

        @ralf-6 said in Liste für PWM abarbeiten:

        Ich weiß es zwar nicht aber evtl. werden bei PAUSE nops abgearbeitet und alles andere blockiert (wie delay() im arduino).
        Ich hab mal was ohne PAUSE mit vor - rückwärts geschrieben, nicht getestet, nur ein Vorschlag.

        ee594c09-d1e9-412b-894d-f7363c42fb6c-image.png
        script.txt <--- hier ist der Quelltext

        Ich denke, ob die Liste aus einem Text oder einem DP erstellt wird, dürfte wohl ein ähnlicher Rechenzeitaufwand sein, evtl. ist Text sogar schneller.

        R Offline
        R Offline
        Ralf 6
        schrieb am zuletzt editiert von
        #3

        @geschild :

        Vielen Dank für den Input und das Script. Den ersten Test hat die Logig erfolgreich bestanden und macht was sie soll.

        Das ich jetzt die Liste vorwärts und rückwärts verwenden kann finde ich super. Diesen Ansatz kannte ich noch nicht.
        Wenn ich in unter "Hosts" die CPU - Auslastung (ein Raspberry 4) schaue, sehe ich keinen Unterschied zur Version mit der "PAUSE". Gibt es hier geeignetere bzw. feinere Methoden um die Auslastung zu überwachen?

        Ich werde diesen Ansatz mal mit meiner Liste ausgiebig testen.

        Gruß Ralf

        1 Antwort Letzte Antwort
        0
        • geschildG Offline
          geschildG Offline
          geschild
          schrieb am zuletzt editiert von
          #4

          @ralf-6 Freut mich, das es klappt.

          Ich bin kein Linux Fachmann. Mit dem Befehl 'top' kann man sich die laufenden Prozesse anzeigen lassen und deren Anteil an der Systemauslastung.

          Hier im Forum habe ich diese Diskussion gefunden: https://forum.iobroker.net/topic/43167/unterschied-timeout-und-pause-in-blockly

          geschildG 1 Antwort Letzte Antwort
          0
          • geschildG geschild

            @ralf-6 Freut mich, das es klappt.

            Ich bin kein Linux Fachmann. Mit dem Befehl 'top' kann man sich die laufenden Prozesse anzeigen lassen und deren Anteil an der Systemauslastung.

            Hier im Forum habe ich diese Diskussion gefunden: https://forum.iobroker.net/topic/43167/unterschied-timeout-und-pause-in-blockly

            geschildG Offline
            geschildG Offline
            geschild
            schrieb am zuletzt editiert von geschild
            #5

            @ralf-6 Kann man die Liste nicht also Algorithmus darstellen ?

            R 1 Antwort Letzte Antwort
            0
            • geschildG geschild

              @ralf-6 Kann man die Liste nicht also Algorithmus darstellen ?

              R Offline
              R Offline
              Ralf 6
              schrieb am zuletzt editiert von
              #6

              @geschild :

              Was meinst du mit Algorithmus?
              Hinter den 1000 Werten steckt schon eine Formel. Da habe ich damals in diversen Aquarien-Foren und bei Beleuchtungsmenschen mitgelesen. Auf die Schnelle habe ich jedoch keine Quelle mehr parat.
              Ich kann mich nur erinnern, daß dieses Thema komplex war. Die Helligkeitsänderungen pro Sekunde sind nicht linear. Das hängt mit der Sehempfindung des Auges zusammen. So wie die Werte jetzt sind, läuft es sehr harmonisch und ohne flackern ab. Bei Bedarf kann ich die Werte gerne zur Verfügung stellen. Für mich war es einfacher die Werte einmal zu ermitteln als die Formel nachzubauen und jedes Mal neu errechnen zu lassen.
              Aktuell steuere ich drei große Lichtbalken für das Aquarium und meine Pflanzen. Alles separat und mit verschiedenen Parametern.

              Das mit der Leistung bzw. Auslastung schaue ich mir separat an.

              Danke und Gruß

              1 Antwort Letzte Antwort
              0
              Antworten
              • In einem neuen Thema antworten
              Anmelden zum Antworten
              • Älteste zuerst
              • Neuste zuerst
              • Meiste Stimmen


              Support us

              ioBroker
              Community Adapters
              Donate

              643

              Online

              32.5k

              Benutzer

              81.8k

              Themen

              1.3m

              Beiträge
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
              ioBroker Community 2014-2025
              logo
              • Anmelden

              • Du hast noch kein Konto? Registrieren

              • Anmelden oder registrieren, um zu suchen
              • Erster Beitrag
                Letzter Beitrag
              0
              • Home
              • Aktuell
              • Tags
              • Ungelesen 0
              • Kategorien
              • Unreplied
              • Beliebt
              • GitHub
              • Docu
              • Hilfe