PID-Modul für Fussbodenheizung und Klimaanlage

Begonnen von Damian, 18 Januar 2013, 23:51:43

Vorheriges Thema - Nächstes Thema

Damian

Hallo zusammen,

auf Wunsch einiger User stelle ich hier ein von mir angepasstes PID-Modul. Mit diesem Modul können beliebige on/off Aktoren geschaltet werden. Es lassen sich ebenso 1-Wire Temperatursensoren vom TYPE OWTHEMP auslesen:

Das Modul ist vollständig kompatibel zum original PID-Modul und kann dieses ersetzen.

Und hier ein Auszug aus der Doku:

        Wenn anstatt der Parameter p i d das Schlüsselwort 'heat' oder 'cool' gesetzt wird, dann arbeitet das
   Modul ohne p,i,d Regelung als ein einfachas Thermostat. Der Modus 'heat' wird zum Heizen gesetzt,
   insb. bei Fussbodenheizung, wo 230 V Stellantriebe über einen
   Schalter geöffnet bzw. geschlossen werden sollen.
   Der Modus ´cool´ wird zum Kühlen gesetzt z. B. bei Klimaanlagen. In diesem Modus wird der Befehl
   on mit off vertauscht.
   
   In beiden Fällen wird ein beliebiger on/off-Aktor per set Aktor on/off geschaltet.
   Die Parameter cmd, min, max, p, i, d haben dann keine Bedeutung.
   Der Parameter delta definiert die Abweichung von der Solltemperatur, ab der der Aktor
   ein- bzw. ausgeschaltet wird.
   delta kann nur im 'heat' oder 'cool' Modus optional gesetzt werden. Default ist 0.5.
   
   Beispiel:
   
   define floor_pid PID thermometer Switch heat
   
   Bedeutung:
   
   Bei einer Unterschreitung der Solltemperatur um 0,5 Grad C wird der Aktor Switch
   per set Switch on eingeschaltet und beim Überschreiten der Solltemperatur um 0,5 Grad C
   per set Switch off ausgeschaltet.
   
        Für eine Abweichung um 0.7 Grad C muss der Befehl lauten:
   
   define floor_pid PID thermometer Switch heat 0.7

Wenn jemand Lust hat, so kann er gerne den Text ins Englische übersetzen.

Und nun viel Spaß damit.

Gruß

Damian







Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Damian

Da ist noch ein Fehler in der Doku: der Modus muss in Großbuchstaben HEAT bzw. COOL gesetzt werden.

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

rudolfkoenig

Ich habe folgende Probleme das Modul zu uebernehmen/einzuchecken:

- ich meine, dass ein "einfacher" Schwellen-Schalter nicht ins PID Modul gehoert, damit ist das auch kein PID mehr. Die, die wissen was PID ist, wuerden es da nicht suchen, und die anderen haben danach eine Falsche assoziation. Ich wuerde ein anderes Modul bevorzugen, auch wenn vieles vom PID kopiert werden kann.

- deutsche Doku im englishen Teil liest sich komisch.

- ich meine fuer COOL sollte man nicht die Schaltbefehle umdrehen, sondern die Grenzen. Ich bin zwar kein Klimageraetenexperte, ich faende es aber komisch, wenn eine Klimaanlage mit off eingeschaltet und mit on ausgeschaltet wird.

Damian

Zitat von: rudolfkoenig schrieb am Sa, 19 Januar 2013 10:06Ich habe folgende Probleme das Modul zu uebernehmen/einzuchecken:

- ich meine, dass ein "einfacher" Schwellen-Schalter nicht ins PID Modul gehoert, damit ist das auch kein PID mehr. Die, die wissen was PID ist, wuerden es da nicht suchen, und die anderen haben danach eine Falsche assoziation. Ich wuerde ein anderes Modul bevorzugen, auch wenn vieles vom PID kopiert werden kann.

Da hast du wohl recht.

Ein separates Modul habe ich zuvor schon erstellt, dachte dann aber dass, falls es eingecheckt werden sollte, es für dich ein größerer Aufwand wäre, ein neues einzupflegen als ein bestehendes upzudaten.

Es ist für mich kein Problem ein separates zu erstellen. Es macht die Sache für mich wesentlich einfacher, weil ich dann auf die Abwärtskompatibilität zum PID-Modul nicht achten muss (das war der größerer Änderungsaufwand;)). Wie sollen wir es nennen?

Zitat- deutsche Doku im englishen Teil liest sich komisch.
Klar.

Habe es zunächst für die 99% der FHEM-User und für mich in deutsch erstellt, kann es aber gerne ins Englische übersetzen.


Zitat- ich meine fuer COOL sollte man nicht die Schaltbefehle umdrehen, sondern die Grenzen. Ich bin zwar kein Klimageraetenexperte, ich faende es aber komisch, wenn eine Klimaanlage mit off eingeschaltet und mit on ausgeschaltet wird.

Es reicht nicht die Grenzen zu ändern, beim Kühlen musst du ein Kühlaggregat einschalten (on-Befehl), falls die Solltemperatur überschritten wird und ausschalten (off-Befehl), wenn die Solltemperatur unterschritten wird, also genau andersherum als beim Heizen. Ob so etwas jemals zum Einsatz kommt, weiß ich nicht, da Klimaanlagen normalerweise schon Thermostat gesteuert sind. Es war eben nur eine Idee die Schaltlogik umzudrehen.

Beim eigenständigen Modul werde ich dann eher optional den jeweiligen Befehl für das Unterschreiten bzw. Überschreiten definierbar machen, dann stehen alle Möglichkeiten des Schaltens offen.

Programmiert habe ich das Modul für mich in erster Linie, um eine Fußbodenheizung mit konventionellen 230 V Stellantrieben in FHEM einzubinden.

Gruß

Damian


Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

rudolfkoenig

ZitatWie sollen wir es nennen?

Mir faellt nichts schoenes ein. ON_THRESHOLD?

Zitatich meine fuer COOL sollte man nicht die Schaltbefehle umdrehen, sondern die Grenzen

Ok. nicht lange genug nachgedacht: Es ist egal, ob man die Grenzwerte oder die Schaltbefehle umdreht, Deine Methode ist also genauso gut.

Vladi2010

Hallo Damian,
ich weiß nicht ob ich es richtig verstanden habe,

ersetzt oder ergänzt dein Modul das Standard PID Modul ?

ich suche etwas das meine FHT8V zwar mit PID regelt, aber gleichzeitig auch einen Aktor auslösen kann.

zB.
Stellandrieb <1%  und Ventilator AN
oder
Stellandrieb >1% und Ventilator AUS

geht das mit deinem Modul ?

Grüße Andreas

diko

Hallo Damian, Rudolf,

das Modul arbeitet doch wie ein Thermostat, dann nennt es doch auch so.
Ich muss da Rudolf zustimmen, es ist kein PID mehr.

Gruß Dieter
FHEM auf Raspi 2 B, Jessi, 1x CUL868, 1x Hue, 1x Harmony, 1x HM-USB2

Damian

Zitat von: diko schrieb am Di, 22 Januar 2013 11:51Hallo Damian, Rudolf,

das Modul arbeitet doch wie ein Thermostat, dann nennt es doch auch so.
Ich muss da Rudolf zustimmen, es ist kein PID mehr.

Gruß Dieter

Das Modul wird nicht eingecheckt, sondern ein separates erstellt. Das geht aber aus obiger Konversation hervor.

Gruß

Damian


Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Damian

Zitat von: Vladi2010 schrieb am Di, 22 Januar 2013 10:54Hallo Damian,
ich weiß nicht ob ich es richtig verstanden habe,

ersetzt oder ergänzt dein Modul das Standard PID Modul ?

ich suche etwas das meine FHT8V zwar mit PID regelt, aber gleichzeitig auch einen Aktor auslösen kann.

zB.
Stellandrieb <1%  und Ventilator AN
oder
Stellandrieb >1% und Ventilator AUS

geht das mit deinem Modul ?

Grüße Andreas

Diese Version wird es so nicht geben, sondern zwei separate mit unterschiedlichen Namen und Funktionen.

In deinem Fall musst du zwei verschiedene Sachen defnieren. Wenn du nicht warten möchtest, kannst du es auch schon mit dem obigen PID-Modul von mir ausprobieren.

define Stellantrieb_P PID Tempsensor Stellantrieb

define Ventilator_T PID Tempsensor Ventilator HEAT

Die Solltemperatur muss dann jeweils mit set Stellantrieb_P desired Temp und set Ventilator_T desired Temp gesetzt werden.

Gruß

Damian




Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

teggi

Hallo Damian,

gibt es seit dem 18.1. schon eine neuere Version des Moduls?

Gruß

Teggi

Damian

Zitat von: teggi schrieb am Do, 24 Januar 2013 14:41Hallo Damian,

gibt es seit dem 18.1. schon eine neuere Version des Moduls?

Gruß

Teggi

Ich bastle noch, will es am Wochenende fertigstellen.


Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Damian

Zitat von: Damian schrieb am Do, 24 Januar 2013 17:37
Zitat von: teggi schrieb am Do, 24 Januar 2013 14:41Hallo Damian,

gibt es seit dem 18.1. schon eine neuere Version des Moduls?

Gruß

Teggi

Ich bastle noch, will es am Wochenende fertigstellen.


Gruß

Damian

...ich habe fertig, siehe hier: Link

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF