Ankündigung

Einklappen
Keine Ankündigung bisher.

Füllstandsmessung Tank (Zisterne) (gerne auf KNX)

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

  • Robert86424
    antwortet
    Ich habe mir vor geraumer Zeit vorgenommen, vermehrt regional einzukaufen.
    Wenn die Mehrkosten für ein deutsches Produkt in mein Budget passen bin ich bereit, für made in Germany etwas mehr auszugeben.

    Einen Kommentar schreiben:


  • Techi
    antwortet
    Zitat von EC665 Beitrag anzeigen
    Sind 100W ...
    Doch natürlich, da reichen auch ein paar mA ( >30mA ), aber das Netzteil versorgt halt auch noch eine ganze Menge anderer Geräte (jedoch keine Beleuchtung) im Verteiler.
    Das Bild gab es bei mir halt schon. (aus anderen Gründen)
    Zuletzt geändert von Techi; 20.06.2022, 17:16.

    Einen Kommentar schreiben:


  • EC665
    antwortet
    Sind 100W für die Spannungsquelle nicht ein wenig oversized?

    Einen Kommentar schreiben:


  • Techi
    antwortet
    Habe seit letztem Jahr eine Graf Flachzisterne mit China Drucksensor ( https://www.amazon.de/gp/product/B08C77PPWB ) an einem MDT AIO-0410V.01 ( https://www.mdt.de/fileadmin/user_up...ng_Ausgang.pdf ) über NodeRed am laufen.

    Code für die Umrechung von mA zu Liter (ist für eine NodeRed "function Node")
    Für die Umrechnung nutze ich eine Ausliterungstabelle ( Ausliterung Platin ( Kundentabelle ) - NEU.pdf ) vom Zisternen Hersteller (Graf) in welcher er die Daten des Füllstands in Bezug zur Füllhöhe angibt. Die Zisterne ist extrem unförmig.
    z1.jpg
    Für die Messpunkte zwischen den Tabellendaten wird einfach eine Gerade angenommen.
    Da diese 7500 l Flachzisterne doch ziemlich unförmig ist war das zumindest eine sehr gangbarer Weg.

    Ist primitiv, aber eventuell interessiert es ja jemanden oder kann es wirklich brauchen.

    Code:
    // cistern measurement table (got from manufacturer GRAF)
    // data below are from a 7500l flat plastic cistern
    //
    // first column = fillheight in mm
    // second column = liter
    const literingTable = [
    [0, 0],
    [100, 368],
    [200, 976],
    [300, 1621],
    [400, 2339],
    [500, 3153],
    [600, 3796],
    [700, 4609],
    [800, 5341],
    [900, 6057],
    [1000, 6731],
    [1100, 7301],
    [1200, 7515],
    [1260, 7550]
    ];
    
    // pressure Sensor parameters
    const max_height = 2; // 2m
    const max_mA = 20; // mA at max_height
    const min_mA = 4; // mA at zero height
    
    // index to table for lowest level in cistern where water
    // can still be sourced. Below, pump can't reach the water
    
    const percent_0_index = 2 // eg, 2 is 200mm
    
    
    // Main starts here
    var y;
    
    var measured_mA = msg.payload; // get mA value from Sensor as input
    if (measured_mA < min_mA){
    // if its below allowed range, then exit
    node.warn("Error ! Input Value below 4mA")
    return;
    }
    
    var high_mm = Math.round((max_height * 1000 / (max_mA - min_mA) * (measured_mA - min_mA)));  // bugfix -> string problem fixed
    var x = high_mm;​
    
    //search for fitting table area, getting index into table as i
    for(var i = 0; i < literingTable.length; i++) {
    if ( literingTable[i][0] > x ) break; // if "end entry" found, then exit
    }
    i = i - 1; // correct index to "start entry"
    
    
    // check if index was inside table and not the last entry
    if (i<literingTable.length-1){
    // was inside table
    // get values from table
    var x1 = literingTable[i+0][0];
    var y1 = literingTable[i+0][1];
    var x2 = literingTable[i+1][0];
    var y2 = literingTable[i+1][1];
    // and calculate the value in between
    y=y1+((x-x1)/(x2-x1)*(y2-y1));
    }
    else{
    // was the last entry,
    // so return last entry as fixe value from table
    // no calcuation needed
    y=literingTable[i+0][1]
    }
    
    // calculate percentage from table index 2 as 0% to last table index as 100%
    
    var percent = 100 / (literingTable[literingTable.length-1][1] - literingTable[percent_0_index][1]);
    percent = (percent * (y - literingTable[2][1])).toFixed(0) * 1;
    if (percent < 0){
    percent = -1;
    }
    
    msg = { topic: "L", payload: y };
    msg2 = { topic: "%", payload: percent };
    
    return [msg, msg2];

    zps1.jpg

    zds2.jpg
    Angehängte Dateien
    Zuletzt geändert von Techi; 02.06.2023, 21:55.

    Einen Kommentar schreiben:


  • Derausvoelksen
    antwortet
    aleladata: ok perfekt, danke!

    Robert86424: Warum möchtest du die tescon sonde, und nicht die aus China? Preislich liegt da ein Faktor 3 dazwischen, oder? Oder brauchst du mehr als 5m Wasserhöhe?

    Einen Kommentar schreiben:


  • aleladata
    antwortet
    Derausvoelksen den brauchst du beim MDT AIO gar nicht da man das alles in der ETS einstellen kann.
    Den würde man nur brauchen wenn man nicht umstellen kann da man bei herkömmlichen 0-10V Eingängen den Spannungsabfall am Widerstand als Messgröße erfasst.

    Eingang.jpg
    Zuletzt geändert von aleladata; 18.06.2022, 08:39.

    Einen Kommentar schreiben:


  • Robert86424
    antwortet
    Könnt ihr mir mal erklären, was es mit dem Widerstand auf sich hat?

    Ist dieser nicht schon in den Tecson Sonden integriert?
    So interpretiere ich das Tecson Datenblatt.
    https://www.tecson.de/pegelsonde-tds-52xx.html

    In der Anleitung vom MDT Analogeingang steht auch nichts von einem Widerstand

    Ich frage speziell nach Tecson weil ich diesen Sensor bei mir verwenden möchte.
    Zuletzt geändert von Robert86424; 18.06.2022, 05:51.

    Einen Kommentar schreiben:


  • concept
    antwortet
    vollzitate sind doof. vor allem, wenn man sich auf den post gleich darüber bezieht.

    und dann sind sie auch noch gegen die forenregeln.

    Einen Kommentar schreiben:


  • Derausvoelksen
    antwortet
    Zitat von aleladata Beitrag anzeigen
    Derausvoelksen hab ein KNX Kabel von der Zisterne in einen Unterverteiler gezogen und der Sensor wird mit einem MDT AIO-0410V.01 auf der Hutschiene ausgewertet.
    Klingt gut! Den 500 Ohm Widerstand hast du dann auch im Schaltschrank verdrahtet?
    Zuletzt geändert von Derausvoelksen; 18.06.2022, 06:00.

    Einen Kommentar schreiben:


  • aleladata
    antwortet
    Derausvoelksen hab ein KNX Kabel von der Zisterne in einen Unterverteiler gezogen und der Sensor wird mit einem MDT AIO-0410V.01 auf der Hutschiene ausgewertet.

    Hier die Kabelverbindung mit dem alten Ultraschallsensor - hatte leider einige Reflexionen
    Kabel.jpg

    Einen Kommentar schreiben:


  • Punker Deluxe
    antwortet
    Zitat von hjk Beitrag anzeigen
    Weil UP Geräte nicht in den Schaltschrank gehören?
    Da bin ich jetzt auch gespannt... wenn irgendwo genau ein Kanal fehlt.... kenn ich keine Lösung im Bestand.

    Wo ich schon alles UP Aktoren usw gefunden habe.... ist dann zulässig das MDT UP Aktoren in der UV verputzt werden hjk

    Einen Kommentar schreiben:


  • Derausvoelksen
    antwortet
    Zitat von hjk Beitrag anzeigen
    Weil UP Geräte nicht in den Schaltschrank gehören?
    Ausnahmen bestätigen die Regel 😉

    Zitat von hjk Beitrag anzeigen
    Ich bin davon ausgegangen, dass du kein REG Gerät mit 4 Eingängen brauchst.
    Stimmt schon, ich werd schon einen geeigneten Platz finden.

    Einen Kommentar schreiben:


  • hjk
    antwortet
    Weil UP Geräte nicht in den Schaltschrank gehören?
    Ich bin davon ausgegangen, dass du kein REG Gerät mit 4 Eingängen brauchst.

    Einen Kommentar schreiben:


  • Derausvoelksen
    antwortet
    Zitat von hjk Beitrag anzeigen
    Die Leitungslänge kann ohne Problem 100m sein. Das AIO Interface ist besser in einer Abzweigdose (innen) aufgehoben als im Schaltschrank.
    Warum besser nicht im Schaltschrank?

    Das AIO für die Abzweigdose wäre dann z.b. ein MDT AIO-0210V.01?



    Einen Kommentar schreiben:


  • Lungos
    antwortet
    Das ist ja das schöne an der 4-20mA Lösung das die Leitungslänge fast keine Rolle spielt. Im Anhang ist das Anschlusschema. Hier sieht man das der Wiederstand in der Minus Leitung für den Strom zum Interface verantwortlich ist. Der Strom fliesst vom Plus über die Leitung , über den Sensor, über den Rückweg der Leitung zum Interfac und über den Wiederstand zum Minus. Wenn die Leitung 100m lang ist und ein Kabel mit einem kleinen Querschnitt von 0.25mm2 verwendet wird, hat die Leitung einen Wiederstand von 13.6 Ohm. Also im Verhältnis zum Wiederstand kann dieser fast vernachlässigt werden. Man muss ja den Wert Wert am KNX Interface sowieso ins Verhältnis setzen zum Füllstand. Das habe ich mir ganz einfach gemacht. 20 cm über dem Boden ist 0 Liter. Der Sensorwert ist beim mir 162. Der Sensorwert steigt nun Linear an.

    Viele Grüsse
    Roberto
    Angehängte Dateien

    Einen Kommentar schreiben:

Lädt...
X