Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Bewässerung und Lüftungsteuerung

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Bewässerung und Lüftungsteuerung

    This topic has been deleted. Only users with topic management privileges can see it.
    • cvidal
      cvidal Forum Testing last edited by

      Hallo zusammen,

      ich versuche gerade meine Hausautomation auszubauen nun bin ich an einen Punkt angelangt an dem ich alleine nicht weiterkomme…

      Ich versuche mal zu erklären was ich vorhabe und wo ich hilfe gebrauche.

      1. Elektrischer Schaltplan den ich gezeichnet habe (ich hoffe ihr könnt es lesen) kann ich den so umsetzten oder gibt es dort fehler die ich eingebaut habe?

      2. ich habe einen Wemos mit dem ich Temperatur und Feuchte messen möchte kann ich da 2stk. BME280 anschließen? An dem Wemos gibt es einen Pin für SCL und einen für SCA den zweiten BME28 einfach auf 2 andere Pins legen und in der ESPEasy Config zuweisen?

      3. Ich brächte ein Skripte am besten Blockly da ich Java nicht behersche welches einen lüfter Steuert um meine Garage im Winter zu entfeuchten, folgendes sollte dieses Skripte erfüllen:

      3.1 Lüfter soll anlaufen wenn die Feuchtigkeit in der Garage über Relative Luftfeuchtigket von 65% liegt und ab 55% wieder abschalten.

      3.2 Es müsste die Absoloute feuchtigkeit innen/aussen verglichen werden um mir von draussen nicht noch feuchtere luft in die Gagage zu holen

      3.3 Es soll eine mindest Temperatur in der Garage gehalten werden ca. 3 Grad da ich im Winter Schimmelprobleme in der Garage habe.

      4. Dazu Plane ich noch eine Steuerung meiner Bewässerungsanlage ich würde diese Gerne über meine Visu Steuern Ein/Aus wäre kein Problem ich möchte diese aber Halbwegs Automatisieren dh. ich drücke in der Visu ein Widget dabei soll die Voreingestellte zeit Pro Zone (3Stk. V1-3) laufen zb. Zone1 10min, Zone2 15min und Zone3 13min. Dieses Skripte sollte acuh über Blockly laufen.

      So, ich hoffe ich konnte es euch einigermaßen erklären und bin auf eure Antworten gespannt.
      2113_schaltplan.png

      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by

        Zu 3. Mit Blockly kann ich nicht dienen, aber mit einem Skript. In die Konfiguration der JS-Instanz muss unter "Zusätzliche NPM-Module" dewpoint eingetragen werden.

        // Garagenlüftung
        
        var tiid = getIdByName("Garage.Temperatur");
        var taid = getIdByName("Aussen.Temperatur");
        var fiid = getIdByName("Garage.rel_Feuchte");
        var faid = getIdByName("Aussen.rel_Feuchte");
        var lid  = getIdByName("Garage.Lueften");
        
        var ti = getState(tiid).val;  // Raumtemperatur in °C
        var ta = getState(taid).val;  // Aussentemperatur in °C
        var fi = getState(fiid).val;  // Raumfeuchte in %rH
        var fa = getState(faid).val;  // Aussenfeuchte in %rH
        var DP = require('dewpoint');
        
        // 70 m über NN
        var xdp = new DP(70); 
        
        // Feuchtegehalt berechnen
        function calcx(t, rh) {
            var y = xdp.Calc(t, rh);
            return y.x;
        }
        
        var xi = calcx(ti, fi);  // Feuchtegehalt innen
        var xa = calcx(ta, fa);  // Feuchtegehalt außen 
        
        // Lüftung steuern mit 0,3 g/kg, 0,5 K und 10 % Hysterese
        function lueften() {
        	if (xa <= (xi - 0.4) && fi >= 65 && ti >= 3.5) {
        	    setState(lid, true);
        	}
        	else if (xa >= (xi - 0.1) || fi <= 55 || ti <= 3.0) {
        	    setState(lid, false);
            }	
        }
        
        // Script start
        lueften();  
        
        on(fiid, function (dp) {
           fi = dp.state.val;
        	xi = calcx(ti, fi);
        	lueften();
        });
        
        on(faid, function (dp) {
           fa = dp.state.val;
        	xa = calcx(ta, fa);
        	lueften();
        });
        
        on(tiid, function (dp) {
           ti = dp.state.val;
        	xi = calcx(ti, fi);
        	lueften();
        });
        
        on(taid, function (dp) {
           ta = dp.state.val;
        	xa = calcx(ta, fa);
        	lueften();
        });
        
        
        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 last edited by

          @cvidal:

          kann ich da 2stk. BME280 anschließen? `
          Ja, I²C ist ein Bus, d.h. Du kannst 2 BME280 parallel betreiben, wenn Du jedem eine andere Adresse verpasst. Das geht über SDO (Pin 5): Bei einem Sensor mit GND (Pin 0) und beim anderen Sensor mit Vddio (Pin 6) verbinden.

          1 Reply Last reply Reply Quote 0
          • cvidal
            cvidal Forum Testing last edited by

            @paul53:

            Zu 3. Mit Blockly kann ich nicht dienen, aber mit einem Skript. In die Konfiguration der JS-Instanz muss unter "Zusätzliche NPM-Module" dewpoint eingetragen werden. `

            Super, teste ich die Tage mal

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

            Support us

            ioBroker
            Community Adapters
            Donate

            876
            Online

            31.7k
            Users

            79.8k
            Topics

            1.3m
            Posts

            2
            4
            871
            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