HmIP-FBL, der Aktor der Nerven kostet!
Warum ist das so?
- Keine hilfreiches Handbuch bzw. brauchbaren Hinweise des Herstellers EQ3, Homematic.
- Viele Fragende in den entsprechenden Foren
Ich verwende den Aktor für Markise und Jalousien.
Nach ein paar Stunden Beschäftigung mit dem Aktor, fallen mir spontan folgende Punkte ein:
- Autmatisch ermitteln bringt nichts, da der Aktor anscheindend den Verbrauch nicht messen kann
- Nur mit dem einstellen der korrekten Fahrzeiten sind nachvollziehbare Zwischenpositionen zu erreichen
- Dazu gehören Behanghöhe und Lamellen Position
Der Rohrmotor der Jalousie hat Endschaltpunkte, die durch einen Klick gut zu hören sind. Die Positionen Auf/zu funktionierten ohne Anpassung, jedoch waren alle Positionen dazwischen waren “nicht nachvollziehbar”.
Einstellungen
- Korekkte Auf und Ab Fahrzeiten gestoppt, und eingetragen
- Lamellenfahrzeit musste von Sekunden auf Millisekunden umgestellt werden, so das hier zB. eine 50% Horizontal Position korrekt angefahren wird.
Kanal 3 und 4 sind nun zB. wie folgt einsgestellt (Kanal 5,6 werden nicht benötigt, und sind deshalb inaktiv)
Kanal:3
Eventverzögerung: Nicht aktiv
Zufallsanteil: Nicht aktiv
Anzahl der Fahrten bis zur automatischen Kalibrierfahrt: 0Fahrzeit von unten nach oben Wert eingeben
Einheit der Fahrzeit Sekunden
Wert der Fahrzeit 55Fahrzeit von oben nach unten Wert eingeben
Einheit der Fahrzeit Sekunden
Wert der Fahrzeit 54Lamellenverstellzeit Wert eingeben
Einheit der Lamellenverstellzeit 100ms
Wert der Lamellenverstellzeit 16msMotoreinschaltverzögerung
Automatisch ermitteln: Aus
Zeitverzögerung 0.0Kanal:4
Behanghöhe hochgefahren: 100%
Lamellenposition hochgefahren: IgnorierenKanäle 6 und 7 sind bei mir inaktiv.
Im entsprechenden Smarthome Script (in diesem Fall Symcon) muss nur darauf geachtet werden das die Lamellenposition vor der Behanghöhe gesetzt wird.
?php
SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);
$Aktor = 56936;
$Name = "EZ Jalousie: ";
if ( $_IPS['VALUE'] == 0 ) {
IPS_LogMessage($_IPS['SELF'], $Name . "Auf");
HM_WriteValueFloat($Aktor, "LEVEL_2", 1);
HM_WriteValueFloat($Aktor, "LEVEL", 1);
LichterAus();
} elseif ( $_IPS['VALUE'] == 1 ) {
IPS_LogMessage($_IPS['SELF'], $Name . "Zu");
HM_WriteValueFloat($Aktor, "LEVEL_2", 0);
HM_WriteValueFloat($Aktor, "LEVEL", 0);
} elseif ( $_IPS['VALUE'] == 2 ) {
IPS_LogMessage($_IPS['SELF'], $Name . "Offen");
HM_WriteValueFloat($Aktor, "LEVEL_2", 0.5);
HM_WriteValueBoolean($Aktor, 'STOP', true);
} elseif ( $_IPS['VALUE'] == 3 ) {
IPS_LogMessage($_IPS['SELF'], $Name . "Halb");
HM_WriteValueFloat($Aktor, "LEVEL_2", 0.2);
HM_WriteValueFloat($Aktor, "LEVEL", 0.5);
} elseif ( $_IPS['VALUE'] == 4 ) {
IPS_LogMessage($_IPS['SELF'], $Name . "Katze");
HM_WriteValueFloat($Aktor, "LEVEL_2", 0.5);
HM_WriteValueFloat($Aktor, "LEVEL", 0.8);
} elseif ( $_IPS['VALUE'] == 9 ) {
IPS_LogMessage($_IPS['SELF'], $Name . "Stop");
HM_WriteValueBoolean($Aktor, 'STOP', true);
}
function LichterAus() {
$time = date("H:i");
if ( $time -->= "05:00" && $time <= "16:00" ) {
#Globale Variablen
include("15096.ips.php");
Ku_Lichter(false);
}
}
Hi Simon,
danke für deine Artikel hier, hat mir sehr weitergeholfen. Ich hatte allerdings weiterhin das Problem, dass wenn ich viele Jalousien gleichzeitig (16 Stück) gesteuert habe immer wieder die Positionen nicht korrekt angefahren wurden. Ein 5s Delay zwischen jeder Jalousie hat das Problem gelöst, war aber natürlich unschön. Nun habe ich endlich eine Lösung gefunden die bisher bestens funktioniert: statt LEVEL_2 und LEVEL, setze ich den Datapoint “COMBINED_PARAMETER” mit dem man mehrere Datapoints gleichzeitig setzen kann. Als Value kann man z.B. “L2=50,L=50” setzen. Siehe Beispiele hier: https://github.com/rdmtc/node-red-contrib-ccu/issues/154#issuecomment-1079763871
Vielleicht ist das für dich oder andere hilfreich.
Grüße,
Jakob