Registrieren Sie sich jetzt!
(08.05.2018, 16:03)Hammalui schrieb: Du musst im Startfenster unter Einstellungen (Zahnrad) gehen. Dann auf Register Wetterstation. Im Register Temperatur gibt es das Feld "Aussentemperatur von". Dort "von Lüftungsanlage" auswählen. Dann wird allerdings auch im Startfenster die Außentemperatur von der Lüftungsanlage genommen.
(08.05.2018, 16:03)Hammalui schrieb: Hallo Alkahna, diese Regelung habe ich bei mir schon umgesetzt. Du musst im Startfenster unter Einstellungen (Zahnrad) gehen. Dann auf Register Wetterstation. Im Register Temperatur gibt es das Feld "Aussentemperatur von". Dort "von Lüftungsanlage" auswählen. Dann wird allerdings auch im Startfenster die Außentemperatur von der Lüftungsanlage genommen. Wie schon beschrieben kannst du dann die Außentemperatur in die Logik einbringen.
(08.05.2018, 16:03)Hammalui schrieb: Bei mir ist allerdings das Problem, dass die Aktion ausgeführt wird, die Lüftung (von Pluggit) ausgeht, aber nach einer dreiviertel Stunde wieder an geht. Dann aber auf Stufe 3. Kannst dass ja mal bei dir probieren. Wenn es besser klappt, gerne mir mal Bescheid geben, damit ich mein Problem im Griff bekomme.
(09.05.2018, 09:33)Bluescreen schrieb: Wäre einen Versuch wert, allerdings sollte man die Lüftungsanlage ja nicht unbedingt komplett abschalten...
# Script: Pluggit Werte auslesen # Code als .ps1 Datei speichern # Ausführen via: PS C:\Users\Admin\Desktop> & '.\Pluggit-Script.ps1' # WICHTIG: Es kann sein das dieser Befehl nötig ist, um das Script zu starten !!!! # Vor Ausführung: Set-ExecutionPolicy Unrestricted # WICHTIG: Änderung nach Ausführung wieder Rückgängig machen, zwecks Sicherheit !!!! # Nach Ausführung: Set-ExecutionPolicy restricted # Zur Einfacheren Bedienung kann folgender Befehl verwendet werden: # powershell.exe -executionpolicy Unrestricted # Dies ruft eine neue Powershell-Session auf, in welcher die ExecutionPolicy angepasst wurde. # Vorteil, diese Ausnahme gilt nur für diese laufende Session und nicht für alle laufende Sessions und # muss daher beim Beenden der Session nicht wieder zurück gesetzt werden. param( # IP DER PLUGGIT HIER EINTRAGEN [string] $remoteHost = "192.168.X.X", [int]$port = 502 ) # set-psdebug -strict # enforce strict variable checking function modbusread ([string]$remoteHost, [int]$port, [int]$startaddress,[int]$bytecount,[string]$targetformat,[string]$flipoption) { #write-host "prtg-pluggit: Prepare request" [byte[]]$sendbuffer=00,110 # Transaction Identifier $sendbuffer+=00,00 #Protocol identifier $sendbuffer+=00,06 #Length $sendbuffer+=00 #Unit ID $sendbuffer+=03 #Function Read Holding Registers $sendbuffer+=[byte]([math]::Truncate(($startaddress -40001)/256)),([system.byte](($startaddress -40001)%256)) #Data of first register 40133-40001 = 132 $sendbuffer+=00,($bytecount) #write-host "prtg-pluggit: Send request" $tcpclient = new-object System.Net.Sockets.TcpClient($remoteHost, $port) $netStream = $tcpclient.GetStream() $netStream.write($sendbuffer,0,$sendbuffer.length) start-sleep -milliseconds 50 #write-host "prtg-pluggit: prepare Read of @($startaddress -40001) bytes" [byte[]]$recbuffer = new-object System.Byte[] ([int]($bytecount+9)) # +8 für ModbusTCP Header #write-host "prtg-pluggit: Reading socket" $receivedbytes = $netStream.Read($recbuffer, 0, [int]($bytecount+9)); #write-host "prtg-pluggit: Received Byes: $receivedbytes " $tcpclient.Close() $netStream.Close() $resultdata = $recbuffer[9..($recbuffer[8]+8)] if (($flipoption.tolower() -eq "reverse") -or ($flipoption.tolower() -eq "both")) { [array]::reverse($resultdata) } if (($resultdata.length%2 -eq 0) ` -and (($flipoption.tolower() -eq "flip") ` -or ($flipoption.tolower() -eq "both"))) { $resultdataflip = $resultdata.clone() # flip bytes für some actions for ($count=0; $count -lt $resultdata.length ;$count+=2) { $resultdataflip[$count] = $resultdata[$count+1] $resultdataflip[$count+1] = $resultdata[$count] } $resultdata = $resultdataflip } #write-host " Convertto" $targetformat.tolower() switch ($targetformat.tolower()) { "uint16" {[bitconverter]::ToUInt16($resultdata,0)} "int16" {[bitconverter]::ToInt16($resultdata,0)} "uint32" {[bitconverter]::ToUInt32($resultdata,0)} "int32" {[bitconverter]::ToInt32($resultdata,0)} "uint64" {[bitconverter]::ToUInt64($resultdata,0)} "int64" {[bitconverter]::ToInt64($resultdata,0)} "float" {[Math]::Round(([BitConverter]::ToSingle(($resultdata[1],$resultdata[0],$resultdata[3],$resultdata[2]),0)),1)} "float2" {[Math]::Round(([BitConverter]::ToSingle($resultdataflip,0)),1)} "time" {(get-date "1970-01-01 00:00:00").addseconds([bitconverter]::ToUInt32($resultdata,0))} "string" {[System.Text.Encoding]::ASCII.GetString($resultdata)} default {$resultdata} } } write-host "Pluggit Werte: Start Script" write-host "#################################" write-host "Aussenluft: " (modbusread $remoteHost $port 40133 4 float) "°C" write-host "Zuluft Raum: " (modbusread $remoteHost $port 40135 4 float) "°C" write-host "Abluft Raum: " (modbusread $remoteHost $port 40137 4 float) "°C" write-host "Fortluft nach aussen: " (modbusread $remoteHost $port 40139 4 float) "°C" write-host "Lüfterstufe: " (modbusread $remoteHost $port 40325 4 uint32 flip) write-host "Fan1 RPM: " (modbusread $remoteHost $port 40101 4 float) write-host "Fan2 RPM: " (modbusread $remoteHost $port 40103 4 float) write-host "Modus: " (modbusread $remoteHost $port 40473 4 uint32 flip) write-host "Filter-Tage übrig: " (modbusread $remoteHost $port 40555 4 uint32 flip) "Tage" write-host "Letzter Alarm: " (modbusread $remoteHost $port 40517 4 uint32 flip) write-host "#################################"
(08.05.2018, 16:03)Hammalui schrieb: Die Regelung der Lüftungsanlage selbst kannst du nur über Aktionen und Merker verwirklichen.
(09.05.2018, 10:19)Alkahna schrieb: (08.05.2018, 16:03)Hammalui schrieb: [quote='Hammalui' pid='2407' dateline='1525788212'] Die Regelung der Lüftungsanlage selbst kannst du nur über Aktionen und Merker verwirklichen. Meinst du damit das Setzen der Stufe in der Logik? Hoffe ich konnte dir bei deinem Problem helfen Vllt. findet sich zu meinem Problem auch noch eine Lösung ohne die Außentemperatur der Gekko generell auf die Pluggit als Quelle umzustellen (Nachteil: Wenn die Pluggit die Temperatur misst, ist diese ja bereits erwärmt und bei ausgeschalteter Anlage stellt die Temperatur ja die Temperatur des Kellerraums dar) Grüße Alkahna
(08.05.2018, 16:03)Hammalui schrieb: [quote='Hammalui' pid='2407' dateline='1525788212'] Die Regelung der Lüftungsanlage selbst kannst du nur über Aktionen und Merker verwirklichen.
(09.05.2018, 12:31)Hammalui schrieb: Hallo Alkahna, ich möchte in den Einstellungen der Lüftungsanlage erstmal nichts verändern. Wegen Gewährleistung etc.
(09.05.2018, 12:31)Hammalui schrieb: Ich habe gestern mit Pluggit telefoniert. Der Support meinte, dass diese Einstellung der Sicherheit dient. Es geht dabei um die Feuchte im Haus und eventuell daraus resultierender Schimmelbefall. Sollte Schimmelbefall eintreten, hätten die wohl die Möglichkeit, den Betriebsstunden-Zähler auszulesen. Dann sehen die, dass z.B. den ganzen Tag die Lüftung ausgeschaltet war.
(09.05.2018, 12:31)Hammalui schrieb: Bei mir funktioniert das mit dem direkten Schalten in den Logiken nicht. Ich gebe einen digitalen Merker (z.B. M100) als Ausgabe in der Logik. In der erstellten Aktion kommt derselbe Merker als "Taster (Start)" rein. So klappt das bei mir immer.