Gira Homeserver DIY Logic Modules

Visualisatie in EIB-KNX systemen, een vak apart.
747driver
Berichten: 1346
Lid geworden op: za 19 feb 2011, 10:06

Gira Homeserver DIY Logic Modules

Bericht door 747driver » di 26 nov 2013, 03:39

Naar aanleiding van dit topic en de daarin genoemde "dezimalzeit to string" logic module van Rainer Trier heb ik m'n GLE pagina's eens doorplozen om te zien of er nog meer berekeningen waren welke konden worden vereenvoudigd.
Heb wat contact gehad met Rainer en ben vervolgens begonnen met het zelf maken van logic modules.
De module van Rainer heb ik herschreven en aangepast aan m'n eigen behoeften.
Heb er nu 1 welke de kloktijd weergeeft met voorloopnul en 1 welke dit doet zonder voorloopnul.
Beiden met 2 uitgangen, (h)h:mm en (h)h:mm:ss
Had hier kortgeleden nog een flinke groep modules voor nodig...

Net weer een module gemaakt voor het weergeven van verbruikt vermogen.
Als ingang heb ik de stroomwaarde komende van een Gira 104600 schakelaktor met stroom detectie + een vaste waarde (voorlopig) voor de spanning.
De 2 uitgangen geven de stroomwaarde in mA als string (bv 453 mA) en het wattage als string (bv 106 W).
Deze worden in QC en de Gira apps op 1 lijn weergegeven in de Date/Time function template.
Deze module (heb 'm 10350_Amp_Watt.hsl genoemd) ziet er als volgt uit:

Code: Selecteer alles

#######################
###    Amp_Watt     ###
#######################
5000|"747driver\Elec. energie"|0|2|"mA"|"Voltage"|2|"mA"|"Watts”|
5001|2|2|0|0|1
5002|1|0|0	    # Input Amps EIS5
5002|2|0|0	    # Input voltage as number
5004|1|""|0|1|1     # Output Amps as text
5004|2|""|0|1|1     # Output Watts as text
5012|0|""|"str(int(round(EN[1])))+ ' mA'"            |""|1|0|0|0
5012|0|""|"str(int(round(EN[1]*EN[2]/1000)))+' W'"|""|2|0|0|0

pvhuf
Berichten: 237
Lid geworden op: vr 28 dec 2012, 18:28

Re: Gira Homeserver DIY Logic Modules

Bericht door pvhuf » wo 27 nov 2013, 19:11

:P Thumbs up!

747driver
Berichten: 1346
Lid geworden op: za 19 feb 2011, 10:06

Re: Gira Homeserver DIY Logic Modules

Bericht door 747driver » wo 27 nov 2013, 22:45

OSX is standaard voorzien van Python, Windows wellicht ook?
Handig voor het testen van formules.
Python.jpg
Python.jpg (15.71 KiB) 4000 keer bekeken

747driver
Berichten: 1346
Lid geworden op: za 19 feb 2011, 10:06

Re: Gira Homeserver DIY Logic Modules

Bericht door 747driver » vr 06 dec 2013, 15:02

Heb nog een module samengesteld.
Had een functie in gebruik voor het instellen van de CV watertemperatuur.
Hierbij gebruik ik een soort economy mode waarbij de CV watertemperatuur (voor de vloerverwarming) op 40 graden wordt ingesteld.
Wanneer die temperatuur boven de 40 graden komt dan wordt de target temperatuur de actuele temperatuur - 1 zodat de ketel uiteindelijk volledig terug moduleert.
Indien het modulatie percentage 0 is en de temperatuur > 40 graden dan wordt de target gelijkgesteld aan de actuele temperatuur om te voorkomen dat de ketel afslaat.
Had hier eerst 10 modulen voor nodig en een hoop input boxes om het overzichtelijk te houden.
Nu ziet het er een stuk simpeler uit...
CHC.jpg
CHC.jpg (18.67 KiB) 3975 keer bekeken
Ben al weer bezig met een aangepaste IntToString module met een stuk meer in en uitgangen.
Zo heb ik voor de Theben KNX-OT-Box veel (25) van die modules in gebruik om alle parameters als tekst zichtbaar te maken in de Gira app.
Een module met zeg 10 in/uitgangen ziet er wat overzichtelijker uit.

747driver
Berichten: 1346
Lid geworden op: za 19 feb 2011, 10:06

Re: Gira Homeserver DIY Logic Modules

Bericht door 747driver » zo 15 dec 2013, 22:54

Nog 1, stuurt iedere minuut/uur/dag/week/maand/jaar een 1.
Gebruik 'm voor waterverbruik en bronpomp cycles.
Time Resets.jpg
Time Resets.jpg (37.79 KiB) 3934 keer bekeken

pvhuf
Berichten: 237
Lid geworden op: vr 28 dec 2012, 18:28

Re: Gira Homeserver DIY Logic Modules

Bericht door pvhuf » ma 16 dec 2013, 21:03

Die Time Resets module, waar heb je die gevonden (linkje, linkje :P )? Of zelf geschreven (code, code :P )?

747driver
Berichten: 1346
Lid geworden op: za 19 feb 2011, 10:06

Re: Gira Homeserver DIY Logic Modules

Bericht door 747driver » ma 16 dec 2013, 21:35

Bericht verwijderd aangezien de beschreven functie niet volledig juist werkte.
Verderop in dit topic staat een gecorrigeerde versie (in bericht geschreven op vr 28 maart 2014, 17:37).
Laatst gewijzigd door 747driver op vr 28 mar 2014, 16:43, 2 keer totaal gewijzigd.

747driver
Berichten: 1346
Lid geworden op: za 19 feb 2011, 10:06

Re: Gira Homeserver DIY Logic Modules

Bericht door 747driver » ma 16 dec 2013, 22:26

Hmm, met die 1 werkt het uiteraard niet aangezien de conditie erachter True is wanneer de seconde ingang 0 is...
Heb nu de volgende regel als eerste 5012 regel:
5012|1|"EC[1] and EN[1]<>0"|"" |""|0|0|0|0
Wanneer nu seconde ongelijk aan 0 is, is de conditie True en worden de volgende 5012 regels niet uitgevoerd.

747driver
Berichten: 1346
Lid geworden op: za 19 feb 2011, 10:06

Re: Gira Homeserver DIY Logic Modules

Bericht door 747driver » di 17 dec 2013, 01:53

Net getest door het toevoegen van een extra uitgang (#7) en de volgende regel:
5012|0|"EC[1] and EN[1]<>0"|"EN[1]"|""|7|0|0|0
Oftewel bij ontvangst van een telegram op input 1 en wanneer de inhoud ervan ongelijk is aan nul, schrijf dan de waarde van dat telegram naar uitgang 7.
Zonder onderstaande regel kreeg ik keurig iedere seconde op uitgang 7.
Na het plaatsen ervan als eerste regel wordt eerdergenoemde regel niet meer uitgevoerd wanneer seconds<>0
5012|1|"EC[1] and EN[1]<>0"|"" |""|0|0|0|0 # Skip de rest indien seconds<>0
Scheelt weer wat processor tijd ;)

pvhuf
Berichten: 237
Lid geworden op: vr 28 dec 2012, 18:28

Re: Gira Homeserver DIY Logic Modules

Bericht door pvhuf » di 17 dec 2013, 19:17

Goed bezig. Als je zo verder doet, kan je misschien bij DACOM een eigen range krijgen. ;)

Plaats reactie