Willkommen auf unserer neuen Forenplattform für das Bus-Profi Forum

Neue Felder für die persönlichen Daten
Man kann jetzt seine öffentlich einsehbare Daten genau bestimmen. Details findet ihr in in diesem Beitrag.

Durch die neue Forensoftware und die Portierung der Daten konnten die Passwörter aus dem alten Forum nicht übernommen werden, bitte lassen Sie sich ein neues Passwort über die Passwort vergessen Funktion zusenden. Sollte es zu Problemen kommen kontaktieren Sie das Bus-Profi Team per E-Mail.

Heizungssteuerung reload

... alles was es nicht bei Issendorff gibt
Benutzeravatar

Themenersteller
Thomas
Alleswisser
Alleswisser
Beiträge: 5727
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 19 Mal
Danksagung erhalten: 13 Mal

#1 Heizungssteuerung reload

Beitragvon Thomas » So 10. Jan 2016, 20:04

Hallo,

da mir nach Jahren doch meine Heizungssteuerung "verlassen" hat, und ich da einiges per IP-Symcon auf dem Pi gemacht habe, möchte ich das auch hier, weitergeben.
An Hardware ist nur ein 1wire Bus und Relaisblock direkt am RaspberryPi(2) verbaut, der 1wire Bus ist nur für die Temperaturen der Heizung zuständig, der Relaisblock steuert Brenner, Mischer und Pumpen. Das ganze ist noch umsteckbar auf die alte Steuerung, und bleibt als "Notnagel" erst mal vorhanden.
Für IP-Symcon habe ich ein Install Skript erstellt, welches alles anlegt, nur einige enige Dinge müssen von Hand angepasst (eingerichtet) werden.
Kleine Doku ist als PHP enthalten.
Wer Fehler findet, darf die mir gerne zeigen.

Code: Alles auswählen

';
CreateScriptByName('aktion',$HauptCatId,$skript);
//IPS_SetHidden($ScriptID, true);
IPS_SetVariableCustomAction($a1, $ScriptID);
IPS_SetVariableCustomAction($a2, $ScriptID);
IPS_SetVariableCustomAction($a3, $ScriptID);
IPS_SetVariableCustomAction($a4, $ScriptID);

IPS_SetVariableCustomAction($k2, $ScriptID);
IPS_SetVariableCustomAction($k3, $ScriptID);
IPS_SetVariableCustomAction($k4, $ScriptID);
IPS_SetVariableCustomAction($k5, $ScriptID);
IPS_SetVariableCustomAction($k6, $ScriptID);
IPS_SetVariableCustomAction($k7, $ScriptID);
IPS_SetVariableCustomAction($k8, $ScriptID);
IPS_SetVariableCustomAction($k9, $ScriptID);

IPS_SetVariableCustomAction($m1, $ScriptID);
IPS_SetVariableCustomAction($m2, $ScriptID);
//IPS_SetVariableCustomAction($m3, $ScriptID);
IPS_SetVariableCustomAction($m4, $ScriptID);
IPS_SetVariableCustomAction($m5, $ScriptID);
IPS_SetVariableCustomAction($m6, $ScriptID);
IPS_SetVariableCustomAction($m7, $ScriptID);
IPS_SetVariableCustomAction($m8, $ScriptID);
IPS_SetVariableCustomAction($m9, $ScriptID);
IPS_SetVariableCustomAction($m10, $ScriptID);

IPS_SetVariableCustomAction($s1, $ScriptID);
IPS_SetVariableCustomAction($s2, $ScriptID);
IPS_SetVariableCustomAction($s3, $ScriptID);
IPS_SetVariableCustomAction($s4, $ScriptID);

//------------------------------------------------------------------------------

$skript =' /sys/class/gpio/gpio23/value\');// Mischer Pumpe aus
      exec (\'echo "1" > /sys/class/gpio/gpio22/value\');// Brenner aus
      exec (\'echo "1" > /sys/class/gpio/gpio24/value\');// Speicher Pumpe aus
      exec (\'echo "1" > /sys/class/gpio/gpio17/value\');// Mischer aus
//      exec (\'echo "1" > /sys/class/gpio/gpio27/value\');// Mischer auf/zu
   }
}
?>';
CreateScriptByName('aktion Hand',$CatID_aussen,$skript);
IPS_SetVariableCustomAction($a1, $ScriptID);
//------------------------------------------------------------------------------
$skript =' /sys/class/gpio/export
  echo "in" >/sys/class/gpio/gpio${Port}/direction
  chmod 660 /sys/class/gpio/gpio${Port}/direction
  chmod 660 /sys/class/gpio/gpio${Port}/value
done

# Output-Ports (LED)
for Port in 17 27 22 23 24
  do
  echo "$Port" > /sys/class/gpio/export
  echo "out" >/sys/class/gpio/gpio${Port}/direction
  echo "0" >/sys/class/gpio/gpio${Port}/value
  chmod 660 /sys/class/gpio/gpio${Port}/direction
  chmod 660 /sys/class/gpio/gpio${Port}/value
done

##############################################################
/etc/rc.local erweitern :

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/opt/gpio/gpio_init.sh
exit 0


#############################################################

/boot/config.txt :
gpu_mem=16
dtoverlay=sdhost
#dtoverlay=w1-gpio
dtoverlay=w1-gpio,gpiopin=4,pullup=on

*/

?>';
CreateScriptByName('doku',$HauptCatId,$skript);
//------------------------------------------------------------------------------
$skript =' $zaehler) {
           break;
      }
      $ds_id[$i]= trim($ds_id[$i]);
      $temp = exec(\'cat /sys/bus/w1/devices/\'.$ds_id[$i].\'/w1_slave |grep t=\');
      $crc = exec(\'cat /sys/bus/w1/devices/\'.$ds_id[$i].\'/w1_slave | grep crc | sed "s/^.*\(...\)$/\1/"\');
      $temp = explode(\'t=\',$temp);
      //The power-on reset value of the temperature register is +85°C
      if($crc =="YES" and $temp[1] !== "-62" and $temp[1]  !== "85000") //Fehler raus, -1.2 °C ,85°C und CRC
      {
         $temp = $temp[1] / 1000;
         $temp = round($temp,2);
           $id = CreateVariableByName($id3, $ds_id[$i], 2);
         SetValue($id, $temp);
      }
   }
//------------------------------------------------------------------------------
 if($_IPS[\'SENDER\'] == "Variable")
 {
  if($_IPS[\'VALUE\'])
  {
   IPS_SetScriptTimer($_IPS[\'SELF\'], 10);         // Sekunden-Takt
  } else {
   IPS_SetScriptTimer($_IPS[\'SELF\'], 0);
  }
 }
//------------------------------------------------------------------------------
//##############################################################################
function CreateVariableByName($id, $name, $type)
{
   $vid = @IPS_GetVariableIDByName($name, $id);
   if($vid===false) {
      $vid = IPS_CreateVariable($type);
      IPS_SetParent($vid, $id);
      IPS_SetName($vid, $name);
   }
   return $vid;
}
//##############################################################################
function CreateEventIDByName($id, $name, $type)
{
   $eid = @IPS_GetEventIDByName($name, $id);
   if($eid===false) {
      $eid = IPS_CreateEvent($type);
      IPS_SetParent($eid, $id);
      IPS_SetName($eid, $name);
   }
   return $eid;
}
?>';
CreateScriptByName('Temperaturen_lesen',$CatID_gpio,$skript);

//------------------------------------------------------------------------------
$skript =' /sys/class/gpio/gpio22/value\');
       }

   If ($y > $Kessel_faktor )
       {
         exec (\'echo "0" > /sys/class/gpio/gpio22/value\');
       }
}
$x = intval(exec (\'cat /sys/class/gpio/gpio22/value\'));
if ($x == 1){ $x=0;} else { $x=1; }
SetValueBoolean($bernnerID,$x);
?>';
CreateScriptByName('Regler Kessel',$CatID_kessel,$skript);
IPS_SetScriptTimer($ScriptID, 0);

$skript =' /sys/class/gpio/gpio22/value\');}// Brenner aus
   if($_IPS["VALUE"] ==1) {exec (\'echo "0" > /sys/class/gpio/gpio22/value\');}// Brenner ein
}
?>';
CreateScriptByName('aktion gpio',$CatID_kessel,$skript);
IPS_SetHidden($ScriptID, true);
$aktion_skript=$ScriptID;

$skript ='';
CreateScriptByName('graph1',$CatID_kessel,$skript);
IPS_SetHidden($ScriptID, true);

$skript ='';
CreateScriptByName('graph2',$CatID_kessel,$skript);
IPS_SetHidden($ScriptID, true);

//------------------------------------------------------------------------------
$skript =' /sys/class/gpio/gpio23/value\'); // Pumpe ein
//      $Vorlauftemperatur_Mischer=min(max(round((0.55*$Steilheit*(pow($Raumsollwert,($Aussentemp/(320-$Aussentemp*4))))*((-$Aussentemp+20)*2)+$Raumsollwert+$Korrektur_Mischer)*1)/1,$min_Mischer),$max_Mischer);
      $Vorlauftemperatur_Mischer=min(max(  ((0.55*$Steilheit*(pow($Raumsollwert,($Aussentemp/(320-$Aussentemp*4))))*((-$Aussentemp+20)*2)+$Raumsollwert+$Korrektur_Mischer)*1)/1,$min_Mischer),$max_Mischer);

      SetValueFloat($Soll_Temperatur_MischerID, $Vorlauftemperatur_Mischer);
     } else{
// Ausentemp grösserr Raumsollwert
     exec (\'echo "1" > /sys/class/gpio/gpio23/value\');// Pumpe aus
     SetValueFloat($Soll_Temperatur_MischerID,$min_Mischer);//Wert anpassen !!!!!
     }
}

$e = (GetValueFloat($Soll_Temperatur_MischerID)- GetValueFloat($IstTemperaturID));
// Die Berechnung des neuen Regelwertes
//$y = ($Kp * $e + $Ki * $Ta * $esum + $Kd * ($e - $ealt) / $Ta);
$y = $Kp * $e;
$Einschaltzeit=$y;

if ($Hand == 1)  { //Hand ist an
   $action = \'Hand\';
}

SetValueFloat($VorherigeRegelabweichungID, $y);
   $Einschaltzeit=abs($y);
    IF ($Einschaltzeit = 14) {
       $Einschaltzeit = 14;
    }

   IPS_SetEventCyclic($EinschaltzeitID, 0, 0, 0, 0, 1 ,$Einschaltzeit);

if (IPS_GetName($_IPS[\'EVENT\'])==\'Einschaltzeit\') {
      //Netzrelais aus
      if ($Hand == 0)  { //Automatik ist an
         exec (\'echo "1" > /sys/class/gpio/gpio17/value\');
         SetValueInteger($MischerID, 1); //Stop
      }
      IPS_SetEventActive($EinschaltzeitID,false);
      IPS_SetEventActive($WartezeitID,true);
  }

if (IPS_GetName($_IPS[\'EVENT\'])==\'Wartezeit\') {
    $Soll_VL = GetValue($Soll_Temperatur_MischerID);
    $Ist_VL = GetValue($IstTemperaturID);
    if ($Hand == 0)  { //Automatik ist an
          $action = \'Idle\';
          if ($Ist_VL  ($Soll_VL + $Hysterese) ) $action = \'Zu\';

//if (GetValue(32015 /*[Objekt #32015 existiert nicht]*/) == False)    $action = \'Idle\';

          Switch ($action){

              Case \'Idle\':
              break;

              Case \'Zu\':
               //Richtungsrelais aus
               exec (\'echo "1" > /sys/class/gpio/gpio27/value\');
               //Netzrelais ein
               exec (\'echo "0" > /sys/class/gpio/gpio17/value\');
               SetValueInteger($MischerID, 3); //Zu
              break;

              Case \'Auf\':
               //Richtungsrelais ein
               exec (\'echo "0" > /sys/class/gpio/gpio27/value\');
               //Netzrelais ein
               exec (\'echo "0" > /sys/class/gpio/gpio17/value\');
               SetValueInteger($MischerID, 0); //Auf
              break;
            }
    }
    SetValueString($actionID,$action);
    IPS_SetEventActive($EinschaltzeitID,true);
    IPS_SetEventActive($WartezeitID,false);
}

$x = intval(exec (\'cat /sys/class/gpio/gpio23/value\'));
if ($x == 1){ $x=0;} else { $x=1; }
SetValueBoolean($PumpeID,$x);

//}
?>';
CreateScriptByName('Regler Mischer',$CatID_Mischer,$skript);
CreateEventIDByName($ScriptID, 'Einschaltzeit', 1);
CreateEventIDByName($ScriptID, 'Wartezeit', 1);

$skript =' /sys/class/gpio/gpio27/value\');
      //Netzrelais ein
      exec (\'echo "0" > /sys/class/gpio/gpio17/value\');
   }
   if($_IPS["VALUE"] ==2) { // Mischer zu
      //Richtungsrelais aus
      exec (\'echo "1" > /sys/class/gpio/gpio27/value\');
      //Netzrelais ein
      exec (\'echo "0" > /sys/class/gpio/gpio17/value\');
   }
   if($_IPS["VALUE"] ==1) { // Mischer Stop
      //Netzrelais ein
      exec (\'echo "1" > /sys/class/gpio/gpio17/value\');
   }
}
?>';
CreateScriptByName('aktion gpio Mischer',$CatID_Mischer,$skript);
IPS_SetHidden($ScriptID, true);
$aktion_skript=$ScriptID;


$skript =' /sys/class/gpio/gpio23/value\');}// Pumpe aus
   if($_IPS["VALUE"] ==1) {exec (\'echo "0" > /sys/class/gpio/gpio23/value\');}// Pumpe ein
}
?>';
CreateScriptByName('aktion gpio Pumpe',$CatID_Mischer,$skript);
IPS_SetHidden($ScriptID, true);
$aktion_skript=$ScriptID;

$skript ='';
CreateScriptByName('graph',$CatID_Mischer,$skript);
IPS_SetHidden($ScriptID, true);

//------------------------------------------------------------------------------

$skript ='= $Hysterese )
      {
         SetValue($SpeicheranforderungID, 1);
          SetValue($ZustandID, " Speicheranforderung ein");
         If ( ($IstTemperaturKessel+3) > $IstTemperaturUnten )
         {
            exec (\'echo "0" > /sys/class/gpio/gpio24/value\');
            SetValue($ZustandID, " Speicheranforderung ein - Pumpe ein");
         }
         else
         {
            exec (\'echo "1" > /sys/class/gpio/gpio24/value\');
            SetValue($ZustandID, "Kessel zu kalt - Pumpe aus");
         }
      }
      If ($y  /sys/class/gpio/gpio24/value\');
               SetValue($SpeicheranforderungID, 0);
               SetValue($ZustandID, " Speicheranforderung aus - Nachlauf");
      }
   } //Uhr
   if ($Uhr == 0)
   {
         //Kessel auf sollwert setzen
         SetValue($SpeicheranforderungID, 0);
         SetValue($ZustandID, " Nachtabsenkung");
   }
}
$x = intval(exec (\'cat /sys/class/gpio/gpio24/value\'));
if ($x == 1){ $x=0;} else { $x=1; }
SetValueBoolean($PumpeID,$x);
?>';
CreateScriptByName('Regler Speicher',$CatID_Speicher,$skript);
CreateEventIDByName($ScriptID, 'Speichertimer', 1);



//------------------------------------------------------------------------------

$skript ='= $Nachlauf_soll){
      exec (\'echo "1" > /sys/class/gpio/gpio24/value\');
      IPS_SetEventCyclic($NachlaufzeitID, 0, 0, 0, 0, 1 ,0);
      SetValue($NachlaufIstAltID, $Nachlauf_ist);
      SetValue($NachlaufIstID, 0);
      SetValue($ZustandID, " Nachlauf Zeit abgelaufen");

   }
//   if ($Kessel_ist  /sys/class/gpio/gpio24/value\');
      IPS_SetEventCyclic($NachlaufzeitID, 0, 0, 0, 0, 1 ,0);
      SetValue($NachlaufIstAltID, $Nachlauf_ist);
      SetValue($NachlaufIstID, 0);
      SetValue($ZustandID, " Nachlauf stop, Temperatur");
   }
}
$x = intval(exec (\'cat /sys/class/gpio/gpio24/value\'));
if ($x == 1){ $x=0;} else { $x=1; }
SetValueBoolean($PumpeID,$x);

?>';
CreateScriptByName('Nachlauf Pumpe',$CatID_Speicher,$skript);
CreateEventIDByName($ScriptID, 'Nachlaufzeit', 1);


//------------------------------------------------------------------------------
$skript =' /sys/class/gpio/gpio24/value\');}// Pumpe aus
   if($_IPS["VALUE"] ==1) {exec (\'echo "0" > /sys/class/gpio/gpio24/value\');}// Pumpe ein
}
?>
';
CreateScriptByName('aktion_gpio',$CatID_Speicher,$skript);
//------------------------------------------------------------------------------


} // KatID vorhanden
else
{
    echo "Die Kategorien-ID lautet: ". $KategorieID;
    echo " Bitte erst löschen: ". $KategorieID;
}
//##############################################################################
function CreateVariableByName($id, $name, $type)
{
   $vid = @IPS_GetVariableIDByName($name, $id);
   if($vid===false) {
      $vid = IPS_CreateVariable($type);
      IPS_SetParent($vid, $id);
      IPS_SetName($vid, $name);
   }
   return $vid;
}
//##############################################################################
function CreateEventIDByName($id, $name, $type)
{
   $eid = @IPS_GetEventIDByName($name, $id);
   if($eid===false) {
      $eid = IPS_CreateEvent($type);
      IPS_SetParent($eid, $id);
      IPS_SetName($eid, $name);
   }
   return $eid;
}
//##############################################################################

function CreateScriptByName($ScriptNAME, $ParentID, $ScriptTEXT)
{
   global $_IPS,$ScriptID;
    $ScriptID = @IPS_GetScriptIDByName($ScriptNAME, $ParentID);
    if ($ScriptID == 0){
       $ScriptID = IPS_CreateScript(0);
       IPS_SetName($ScriptID, $ScriptNAME);
       IPS_SetParent($ScriptID, $ParentID);
       IPS_SetInfo($ScriptID, "This script was created by: ".$_IPS['SELF']);
       $ScriptPath = $ScriptID.".ips.php";     //Skriptdatei
       IPS_SetScriptFile($ScriptID, $ScriptPath);
       IPS_SetHidden($ScriptID, false);
       IPS_SetScriptContent($ScriptID, $ScriptTEXT);
    }
}

?>


lg Thomas - hat so nichts mit LCN zu tun, aber eine Anbindung habe ich da auch.;)
lg Thomas

Benutzeravatar

Themenersteller
Thomas
Alleswisser
Alleswisser
Beiträge: 5727
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 19 Mal
Danksagung erhalten: 13 Mal

#2 RE: Heizungssteuerung reload

Beitragvon Thomas » Di 26. Jan 2016, 18:21

Mittlerweile habe ich noch eine Heizkennlinie mit drin, da kann ich dann auf einen Blick sehen, was eingestellt ist.
rot = Kessel
gelb= Mischer Tag
blau = Mischer Nacht
Senkrecht blau = aktuelle Aussentemperatur.
[img]1[/img]
Jetzt brauche ich noch Temperaturen von 2-3 Wohnzimmern aus den Wohnungen.
Da bin ich aber nicht mit LCN drin, und bekomme nicht einfach eine Datenader da rein, daher werde ich zwave versuchen.
Habe da da Razberry Modul von zwave.me und den "http://www.zwave-shopping.com/de/sensoren/fibaro/121-fibfgbs-001-fibaro-fibaro-universal-binr-sensor-sensoren.html" Sensor mit 4x DS18S20 jetzt auch noch eingebunden.
Reichweite werde ich wohl Probleme bekommen, und einige zwave Zwischenstecker setzen müssen (Mesh-Netzwerk aufbauen), ich werde es mal versuchen.

lg Thomas
Dateianhänge
681741mischer.png
681741mischer.png (54.02 KiB) 11125 mal betrachtet
lg Thomas

Benutzeravatar

Themenersteller
Thomas
Alleswisser
Alleswisser
Beiträge: 5727
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 19 Mal
Danksagung erhalten: 13 Mal

#3 Re: Heizungssteuerung reload

Beitragvon Thomas » Mi 16. Mär 2016, 23:13

Das Skript oben ist nicht mehr aktuell, lasse es aber stehen.
Mittlerweile werkelt auch ein Pi2 in Bayern, an einem kleinen Ölkessel ohne Mischer.
Das scheint auch gut zu laufen, aber es braucht noch Anpassungen.
Ich bin jetzt überzeugt, es bleibt bei mir drin, und eine neue Steuerung "schenke" ich mir.
Klar ist, ich habe bestimmt noch Fehler drin, die bei mir nicht auffallen, und würde mir wünschen, der ein oder andere macht mit, es zu verbessern.
Bis jetzt ist die Steuerung nur von der Außentemperatur abhängig, da meine Hütte 4 Wohnungen hat, und ich nur an die Daten meiner Wohnung komme..
Aber da arbeite ich dran, und versuche es mal mit zwave (Funk wollte ich eigentlich nicht, aber geht ohne Baumaßnahmen)

Später mehr...
lg Thomas

Benutzeravatar

Themenersteller
Thomas
Alleswisser
Alleswisser
Beiträge: 5727
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 19 Mal
Danksagung erhalten: 13 Mal

#4 Re: Heizungssteuerung reload

Beitragvon Thomas » So 8. Mai 2016, 21:17

Hi Leute,

da ich am WE mal etwas Zeit hatte, habe ich mal die Aussentemperatur "verzögert", wie auch Speichertemperaturen an die Kesseltemperatur "gebunden", um die Wärme im Kessel nicht im "Sommer" verpuffen zu lassen. Waren jetzt die ersten Tage, wo ich das genau beobachten konnte. Also wieder einiges neues eingebaut, und beobachten, aber es sieht gut aus, vom Ölverbrauch gestern und heute.
lg Thomas

Benutzeravatar

Themenersteller
Thomas
Alleswisser
Alleswisser
Beiträge: 5727
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 19 Mal
Danksagung erhalten: 13 Mal

#5 Re: Heizungssteuerung reload

Beitragvon Thomas » Mo 13. Jun 2016, 20:09

Tag der Auswertung von 9 Monaten :lol:
Mit der Pi Steuerung meines 50kw Kessels habe ich ~ 1/4 weniger Heizkosten (Ölverbrauch), als mit der orginal Steuerung.
Jetzt kommt die nächste Stufe, im Herbst (hoffe da etwas mehr Zeit zu haben...)
Im Moment ist Robi dran, der muss auch "umgebaut" werden. :lol:
lg Thomas
lg Thomas

Benutzeravatar

Themenersteller
Thomas
Alleswisser
Alleswisser
Beiträge: 5727
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 19 Mal
Danksagung erhalten: 13 Mal

#6 Re: Heizungssteuerung reload

Beitragvon Thomas » Mo 22. Aug 2016, 23:58

Kurzer Zwischenstand.

DS18(S und B)20 am Pi werkeln absolut störungsfrei, so habe ich es am I-Port mit LCN-TS und Eigenbau nie über so einen Zeitraum hin bekommen. :scared:
Auch meine Skripte bei der Heizungssteuerung haben Probleme verursacht, die ich aber finden konnte, da ich die eigenen Software Fehler untersuchen konnte. Dieses ist leider bei fast allen anderen Systemen nicht möglich.
Daher wir die LCN Datenader oder z-wave oder ... nur noch ein Datenaustausch Weg sein. (Was sehr gut geht.)

Die LCN Datenader ist "geil", aber der Rest ?
Wie war das damals, "LCN dumm machen" und der Rest andere Syteme regeln lassen ? Jetzt bin ich dabei. :scared:
Und im Notfall, macht auch ein uraltes LCN Modul "alles", da die Logik ganz wo anders liegt (und ich schnell ändern kann. :scared: )

lg Thomas - ich mache mit IP-Symcon(kom­mer­zi­ell) weiter, aber es gibt auch noch andere Systeme (free und kom­mer­zi­ell, die LCN verarbeiten können)

ps. bei mir im Haus wird immer mehr z-wave verbaut, da ich keine Leitungen mehr verlegen kann. :scared: ( Ist aber auch trickreich :-/ )
lg Thomas

Benutzeravatar

Themenersteller
Thomas
Alleswisser
Alleswisser
Beiträge: 5727
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 19 Mal
Danksagung erhalten: 13 Mal

#7 Re: Heizungssteuerung reload

Beitragvon Thomas » Di 25. Okt 2016, 23:09

Steuerung arbeitet weiterhin perfekt. :scared:
Aber ich habe ein Problem, Flexcon hatte Druck verloren. Habe ich erst mal gelöst, mit "Pressluft" und "Ventil Dichtung".
Ich weiss, nicht gut, da Stickstoff rein müsste, aber die Membran ist noch OK.....

Ventil war undicht, dadurch Druckabfall im Heizkreislauf. Dieses habe ich nicht überwacht.
Welchen Sensor könnte ich da verbauen im Wasserkreislauf ? (Nicht am LCN, der muss direkt an den PI...)
Zweiter Fehler kommt noch hinzu, ein Wasserhahn tropft jetzt, nach Nachfüllung und Ausgleich. (Wird die Tage ausgetauscht, dazu muss ich aber die Anlage am Rohr "frosten" oder entleeren.
Ich suche jetzt einen Sensor, der Heizungswasser von 0-5 BAR ab kann, den ich da gleich mit verbauen könnte.
Hat da jemand nen Tipp ?
lg Thomas


Zurück zu „Hardware Eigenproduktionen“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 21 Gäste