Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Slider auf null stellen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Slider auf null stellen

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @neuling321 last edited by mickym

      @neuling321

      Wo ist das Problem .- wie @frankyboy73 sagte die ui_control vorne dran setzen. Ich habs mal auch nur für den Steuerungstab gefiltert und natürlich im slider die Nachricht durchgeschleift.

      35334859-bc1e-4541-beaa-4a441e122b4c-image.png

      [
         {
             "id": "2403138cd6adc1e5",
             "type": "inject",
             "z": "a9604a18f9eb47cc",
             "name": "",
             "props": [
                 {
                     "p": "topic",
                     "v": "0",
                     "vt": "num"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": true,
             "onceDelay": 0.1,
             "topic": "",
             "x": 310,
             "y": 180,
             "wires": [
                 [
                     "d0b0ed28374d6acd"
                 ]
             ]
         },
         {
             "id": "d0b0ed28374d6acd",
             "type": "change",
             "z": "a9604a18f9eb47cc",
             "name": "",
             "rules": [
                 {
                     "t": "set",
                     "p": "payload",
                     "pt": "msg",
                     "to": "0",
                     "tot": "num"
                 }
             ],
             "action": "",
             "property": "",
             "from": "",
             "to": "",
             "reg": false,
             "x": 570,
             "y": 280,
             "wires": [
                 [
                     "e2a11196ba92e0d1"
                 ]
             ]
         },
         {
             "id": "e2a11196ba92e0d1",
             "type": "ui_slider",
             "z": "a9604a18f9eb47cc",
             "name": "",
             "label": "slider",
             "tooltip": "",
             "group": "8249f6de3bc04b8f",
             "order": 2,
             "width": 0,
             "height": 0,
             "passthru": true,
             "outs": "all",
             "topic": "topic",
             "topicType": "msg",
             "min": "0",
             "max": "50",
             "step": 1,
             "className": "",
             "x": 730,
             "y": 280,
             "wires": [
                 [
                     "0e9d557add63b1f5",
                     "52b6ecf315b5317a"
                 ]
             ]
         },
         {
             "id": "0e9d557add63b1f5",
             "type": "ui_gauge",
             "z": "a9604a18f9eb47cc",
             "name": "",
             "group": "8249f6de3bc04b8f",
             "order": 3,
             "width": 0,
             "height": 0,
             "gtype": "gage",
             "title": "Speedometer",
             "label": "units",
             "format": "",
             "min": "0",
             "max": "50",
             "colors": [
                 "#00b500",
                 "#e6e600",
                 "#ca3838"
             ],
             "seg1": "",
             "seg2": "",
             "className": "",
             "x": 900,
             "y": 300,
             "wires": []
         },
         {
             "id": "52b6ecf315b5317a",
             "type": "range",
             "z": "a9604a18f9eb47cc",
             "minin": "0",
             "maxin": "50",
             "minout": "0",
             "maxout": "100",
             "action": "scale",
             "round": true,
             "property": "payload",
             "name": "",
             "x": 880,
             "y": 260,
             "wires": [
                 []
             ]
         },
         {
             "id": "a64d054a38d84c38",
             "type": "ui_ui_control",
             "z": "a9604a18f9eb47cc",
             "name": "",
             "events": "change",
             "x": 140,
             "y": 280,
             "wires": [
                 [
                     "7664e297e66023da"
                 ]
             ]
         },
         {
             "id": "7664e297e66023da",
             "type": "switch",
             "z": "a9604a18f9eb47cc",
             "name": "name = Steuerung?",
             "property": "name",
             "propertyType": "msg",
             "rules": [
                 {
                     "t": "eq",
                     "v": "Steuerung",
                     "vt": "str"
                 }
             ],
             "checkall": "true",
             "repair": false,
             "outputs": 1,
             "x": 330,
             "y": 280,
             "wires": [
                 [
                     "d0b0ed28374d6acd"
                 ]
             ]
         },
         {
             "id": "8249f6de3bc04b8f",
             "type": "ui_group",
             "name": "Slider",
             "tab": "2c5a2c732f2cb639",
             "order": 1,
             "disp": true,
             "width": 7,
             "collapse": false,
             "className": ""
         },
         {
             "id": "2c5a2c732f2cb639",
             "type": "ui_tab",
             "name": "Steuerung",
             "icon": "dashboard",
             "order": 1,
             "disabled": false,
             "hidden": false
         }
      ]
      

      Wenn es beim Verlassen des tabs auch auf 0 gestellt werden soll, dann halt den Filter weglassen.

      34f8f57b-0b1f-4e68-bf18-ceaee3a9e9c0-image.png

      Die slider Node gibt aber nichts aus, wenn sie schon auf 0 war.

      F 1 Reply Last reply Reply Quote 0
      • F
        frankyboy73 @neuling321 last edited by frankyboy73

        @neuling321 Hi, da fehlt die ui-control. Aus der kommt der Name raus den du über einen Switch auswerten kannst. Also mal die Debug Ausgabe anschauen wenn du die Seite / Tab aufrufst und den Namen in die Switch Node eintragen.
        Slider1.jpg
        Slider2.jpg

        [
            {
                "id": "d0b0ed28374d6acd",
                "type": "change",
                "z": "9e1c0edb.e6d2d",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "payload",
                        "pt": "msg",
                        "to": "0",
                        "tot": "num"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 490,
                "y": 2660,
                "wires": [
                    [
                        "e2a11196ba92e0d1"
                    ]
                ]
            },
            {
                "id": "e2a11196ba92e0d1",
                "type": "ui_slider",
                "z": "9e1c0edb.e6d2d",
                "name": "",
                "label": "slider",
                "tooltip": "",
                "group": "8249f6de3bc04b8f",
                "order": 2,
                "width": 0,
                "height": 0,
                "passthru": false,
                "outs": "all",
                "topic": "topic",
                "topicType": "msg",
                "min": "0",
                "max": "50",
                "step": 1,
                "className": "",
                "x": 670,
                "y": 2640,
                "wires": [
                    [
                        "0e9d557add63b1f5",
                        "52b6ecf315b5317a"
                    ]
                ]
            },
            {
                "id": "0e9d557add63b1f5",
                "type": "ui_gauge",
                "z": "9e1c0edb.e6d2d",
                "name": "",
                "group": "8249f6de3bc04b8f",
                "order": 3,
                "width": 0,
                "height": 0,
                "gtype": "gage",
                "title": "Speedometer",
                "label": "units",
                "format": "",
                "min": "0",
                "max": "50",
                "colors": [
                    "#00b500",
                    "#e6e600",
                    "#ca3838"
                ],
                "seg1": "",
                "seg2": "",
                "className": "",
                "x": 920,
                "y": 2680,
                "wires": []
            },
            {
                "id": "52b6ecf315b5317a",
                "type": "range",
                "z": "9e1c0edb.e6d2d",
                "minin": "0",
                "maxin": "50",
                "minout": "0",
                "maxout": "100",
                "action": "scale",
                "round": true,
                "property": "payload",
                "name": "",
                "x": 900,
                "y": 2620,
                "wires": [
                    []
                ]
            },
            {
                "id": "f30e16aa84098d4f",
                "type": "ui_ui_control",
                "z": "9e1c0edb.e6d2d",
                "name": "",
                "events": "change",
                "x": 380,
                "y": 2540,
                "wires": [
                    [
                        "58ae926d0a8d4f68",
                        "b7951df2b2cbc185"
                    ]
                ]
            },
            {
                "id": "58ae926d0a8d4f68",
                "type": "debug",
                "z": "9e1c0edb.e6d2d",
                "name": "",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "true",
                "targetType": "full",
                "statusVal": "",
                "statusType": "auto",
                "x": 750,
                "y": 2480,
                "wires": []
            },
            {
                "id": "b7951df2b2cbc185",
                "type": "switch",
                "z": "9e1c0edb.e6d2d",
                "name": "",
                "property": "name",
                "propertyType": "msg",
                "rules": [
                    {
                        "t": "eq",
                        "v": "Start",
                        "vt": "str"
                    }
                ],
                "checkall": "true",
                "repair": false,
                "outputs": 1,
                "x": 450,
                "y": 2600,
                "wires": [
                    [
                        "d0b0ed28374d6acd"
                    ]
                ]
            },
            {
                "id": "8249f6de3bc04b8f",
                "type": "ui_group",
                "name": "Slider",
                "tab": "2c5a2c732f2cb639",
                "order": 1,
                "disp": true,
                "width": 7,
                "collapse": false,
                "className": ""
            },
            {
                "id": "2c5a2c732f2cb639",
                "type": "ui_tab",
                "name": "Steuerung",
                "icon": "dashboard",
                "order": 1,
                "disabled": false,
                "hidden": false
            }
        ]
        

        Im Code fehlt die letzte Node, die musste ich zum testen löschen, weil ich die nicht benutze.
        Edit: Da war @mickym mal wieder schneller.👍
        Edit 2: Warum hast du eigentlich im Slider die Range 0-50 und änderst das dann auf 0-100? Warum nicht gleich im Slider 0-100?

        1 Reply Last reply Reply Quote 0
        • N
          neuling321 last edited by

          @all

          Cool,
          wieder einiges gelernt.
          Klappt hervorragend.

          Vielen Dank

          1 Reply Last reply Reply Quote 0
          • F
            frankyboy73 @mickym last edited by

            @mickym sagte in Slider auf null stellen:

            Die slider Node gibt aber nichts aus, wenn sie schon auf 0 war.

            Ah, ok, das wusste ich auch noch nicht. Dann kann man sich ja auch ausversehen keine Schleife erstellen. Oder gilt das nur für 0?

            mickym 1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active @frankyboy73 last edited by

              @frankyboy73 Ich habs nicht ausprobiert - vielleicht auch nur bei geänderten Werten. 😉 Hab den Testflow schon wieder gelöscht. 😉

              F 1 Reply Last reply Reply Quote 0
              • N
                neuling321 last edited by

                Peinlich aber nun habe ich ein paar fragen zum Flow von mickym.

                ui Control -> von welchem Tab komme ich -> das ist klar
                switch -> wenn der Name stimmt gehe über Pin 1 weiter -> auch klar

                inject -> wer triggert das?
                Change -> kann der inject das nicht direkt an den Slider senden ?

                Gruss Sascha

                mickym F 2 Replies Last reply Reply Quote 0
                • F
                  frankyboy73 @mickym last edited by

                  @mickym Da hast du recht, habs getestet, wenn Input und letzter Wert gleich, wird nichts ausgegeben.👍

                  1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @neuling321 last edited by mickym

                    @neuling321 Ich habs mir ehrlich gesagt nicht so genau angeschaut, die Inject stammt ja aus Deinem Flow zu initialisieren gehe ich mal davon aus. Die ChangeNode schmeisst grundsätzlich alles weg - woher es kommt und setzt die payload auf 0.
                    Du willst ja nicht das was aus der ui_control Node kommt in Deinem slider haben. Insofern hast Du Recht, dass Du die Inject Node auch direkt mit Deinem Slider verbindest und nur die Change NOde für den ui_control Input verwendest.

                    1 Reply Last reply Reply Quote 0
                    • F
                      frankyboy73 @neuling321 last edited by frankyboy73

                      @neuling321 Hi, der Injekt ist eigentlich nur zum testen, man kann mit der Node allerdings auch zu bestimmten Zeiten oder Intervallen Sachen auslösen.
                      Die Change brauchst du, weil der Trigger aus der ui-control kommt, aber da steht ja nicht die richtige msg (msg.payload = number 0) drin, deshalb die change um die Nachricht die aus der ui-control rauskommt zu ändern, in "msg.payload, number 0"
                      Wenn du das mal richtig nachverfolgen willst, was der Flow macht, dann häng doch mal hinter alle Nodes ne Debug Node und stelle in den Debug Nodes ein Volles Nachrichten Objekt ausgeben, damit kannst du dann sehen was wo ausgegeben und umgewandelt wird.
                      Debug1.jpg
                      Debug2.jpg

                      1 Reply Last reply Reply Quote 0
                      • N
                        neuling321 last edited by

                        Willen Dank für die Erklärungen werde das am WE mal testen.
                        Aber ich bin schon wieder etwas schlauer geworden.

                        Danke

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        1.0k
                        Online

                        31.7k
                        Users

                        79.7k
                        Topics

                        1.3m
                        Posts

                        4
                        14
                        751
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo