Also hier ma meine Konfiguration.
<?
/*
* This file is part of the IPSLibrary.
*
* The IPSLibrary is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The IPSLibrary is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with the IPSLibrary. If not, see http://www.gnu.org/licenses/gpl.txt.
*/
/**@defgroup ipsshadowing_configuration IPSShadowing Konfiguration
* @ingroup ipsshadowing
* @{
*
* @file IPSShadowing_Configuration.inc.php
* @author Andreas Brauneis
* @version
* Version 2.50.1, 19.03.2012<br/>
*
* Konfigurations File für IPSShadowing
*
*/
IPSUtils_Include ("IPSShadowing_Constants.inc.php", "IPSLibrary::app::modules::IPSShadowing");
IPSUtils_Include ("IPSTwilight_Configuration.inc.php", "IPSLibrary::config::modules::Weather::IPSTwilight");
/** Temperatursensor Innen
*
* Definition des Innentemperatur Sensors, die Konstante muß auf eine Variable verweisen, die die aktuelle Innentemperatur
* als Float Value enthält.
* Die Verlinkung der Variable erfolgt entweder direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_TEMPSENSORINDOOR", "23070");
/** Temperatursensor Aussen
*
* Definition des Aussentemperatur Sensors, die Konstante muß auf eine Variable verweisen, die die aktuelle Aussentemperatur
* als Float Value enthält.
* Die Verlinkung der Variable erfolgt entweder direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_TEMPSENSOROUTDOOR", "");
/** Helligkeitssensor
*
* Definition des Helligkeits Sensors, die Konstante muß auf eine Variable verweisen, die die aktuelle Helligkeit
* als Integer oder Float Value enthält.
* Die Verlinkung der Variable erfolgt entweder direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_BRIGHTNESSSENSOR", '');
/** Regensensor
*
* Definition des Regen Sensors, die Konstante muß auf eine Variable verweisen, die den Wert des Sensors als
* boolschen Wert enthält.
* Die Verlinkung der Variable erfolgt entweder direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_RAINSENSOR", "");
/** Windsensor
*
* Definition des Wind Sensors, die Konstante muß auf eine Variable verweisen, die den Wert des Sensors als
* Float Wert mit Angabe in "kmh" enthält,
* Die Verlinkung der Variable erfolgt entweder direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_WINDSENSOR", "");
/** Anwesenheits Flag
*
* Definition des Anwesenheits Flags, die Konstante muß auf eine Variable verweisen, die den aktuellen Anwesenheits Status als
* boolean Wert enthält (true bedeutet Anwesend).
* Die Verlinkung der Variable erfolgt entweder direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_PRESENT", '24098');
/** Abwesenheits Flag
*
* Definition des Abwesenheits Flags, die Konstante muß auf eine Variable verweisen, die den aktuellen Abwesenheits Status als
* boolean Wert enthält (true bedeutet Abwesend).
* Diese Variable kann alternativ zu dem Anwesenheits Flag gesetzt werden.
* Die Verlinkung der Variable erfolgt entweder direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_ABSENCE", "");
/** Zeitpunkt Sonnenaufgang
*
* Definition des Tagesbeginn Zeitpunktes, die Konstante muß auf eine Variable verweisen, die die Zeit in der Form
* hh:mm enthält.
* Verlinkung erfolgt direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_TWILIGHTSUNRISE", "Program.IPSLibrary.data.modules.Weather.IPSTwilight.Values.SunriseBegin");
/** Zeitpunkt Sonnenuntergang
*
* Definition des Tagesend Zeitpunktes, die Konstante muß auf eine Variable verweisen, die die Zeit in der Form
* hh:mm enthält.
* Verlinkung erfolgt direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_TWILIGHTSUNSET", "Program.IPSLibrary.data.modules.Weather.IPSTwilight.Values.SunriseEnd");
/** Zeitpunkt limited Sonnenaufgang
*
* Definition des "limited" Tagesbeginn Zeitpunktes, die Konstante muß auf eine Variable verweisen, die die Zeit in der Form
* hh:mm enthält. Durch diese Variable ist es möglich, dass der Tagesbeginn in bestimmten Grenzen liegen muß.
* Verlinkung erfolgt direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_TWILIGHTSUNRISELIMITED", "Program.IPSLibrary.data.modules.Weather.IPSTwilight.Values.SunriseBeginLimited");
/** Zeitpunkt limited Sonnenuntergang
*
* Definition des "limited" Tagesend Zeitpunktes, die Konstante muß auf eine Variable verweisen, die die Zeit in der Form
* hh:mm enthält. Durch diese Variable ist es möglich, dass der Tagesbeginn in bestimmten Grenzen liegen muß.
* Verlinkung erfolgt direkt durch Angabe der ID oder durch Angabe des Pfades.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_TWILIGHTSUNSETLIMITED", "Program.IPSLibrary.data.modules.Weather.IPSTwilight.Values.SunriseEndLimited");
/**
* Angabe des Breitengrades zur Berechnung des Sonnenstandes
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ('IPSSHADOWING_LATITUDE', IPSTWILIGHT_LATITUDE);
/**
* Angabe des Längengrades zur Berechnung des Sonnenstandes
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ('IPSSHADOWING_LONGITUDE', IPSTWILIGHT_LONGITUDE);
/**
* Ausrichtung des Gebäudes
*
* Dieser Wert spezifiziert die Abweichung von der Ausrichtung des Gebäudes Richtung Süden in Grad.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ('IPSSHADOWING_BUILDINGORIENTATION', 0);
/**
* Verhältnis der Gebäudewände
*
* Mit diesem Parameter kann das Verhältnis der Länge der Gebäudewände in der Grafik verändert werden.
*
* 0 bedeutet dass alle Gebäudewände gleich lang sind, bei positiven Werten wird die südliche Seite des Gebäudes
* breiter und umgekehrt.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ('IPSSHADOWING_BUILDINGRELATION', 0);
/**
* Definiert die Anzahl der Meldungen, die im Applikation Logging Window angezeigt werden.
*
* Dieser Parameter kann jederzeit geändert werden, keine Installation erforderlich.
*/
define ("IPSSHADOWING_LOGMESSAGECOUNT", 30);
/**
*
* Definition der Beschattungs Elemente
* Die Konfiguration erfolgt in Form eines Arrays, für jedes Beschattungs Device wird ein Eintrag im Array erzeugt.
*
* Die Eigenschaft c_Property_ShadowingType spezifiziert den Type der Beschattung, folgende Typen stehen zur Auswahl:
* - c_ShadowingType_Jalousie, Ansteuerung einer Jalousie, es werden noch zusätzliche Properties ausgewertet, um die Lamellen in eine bestimmte Position zu bringen
* - c_ShadowingType_Shutter, Ansteuerung eines normalen Rollos
* - c_ShadowingType_Marquees, Ansteuerung einer Markise
*
* Der Eintrag "c_Property_Name" spezifiziert den Namen des Beschattungs Elements, der im WebFront und in den Log's angezeigt
* wird.
*
* Der Eintrag "c_Property_Component" spezifiziert die Hardware, es kann jeder "Shutter" Component String Konstruktor
* angegeben werden. Detailiertere Informationen kann man auch im core Modul IPSComponent finden.
*
* Mit den Properties c_Property_TimeOpening, c_Property_TimeClosing, c_Property_TimeDimoutUp, c_Property_TimeDimoutDown, c_Property_TimePause
* werden die Fahrzeiten spezifiziert. c_Property_TimeDimoutUp und c_Property_TimeDimoutDown werden nur bei Jalousien ausgewertet, um die Lamellen
* in die Verdunkelungs- bzw. Beschatttungsposition zu bringen.
*
* Mit c_Property_TempSensorIndoor ist die Einbindung eines Innentemperatursensors für das Beschattungselement möglich. Verlinkung erfolgt durch
* Angabe des Pfades oder direkt durch die ID der Temperatur Variable.
*
* Beispiel:
* @code
function get_ShadowingConfiguration() {
return array(
c_ShadowingDevice_1 => array(
c_Property_ShadowingType => c_ShadowingType_Jalousie,
c_Property_Name => 'Küche',
c_Property_Component => 'IPSComponentShutter_Dummy,12345',
c_Property_TimeOpening => 35,
c_Property_TimeClosing => 35,
c_Property_TimeDimoutUp => 2,
c_Property_TimeDimoutDown => 3,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '',
));
}
* @endcocde
*
* @return string Liefert Array mit Beschattungs Elementen
*/
function get_ShadowingConfiguration() {
return array(
c_ShadowingDevice_1 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Arbeitszimmer 1',
c_Property_Component => 'IPSComponentShutter_Homematic,42253',
c_Property_TimeOpening => 18,
c_Property_TimeClosing => 18,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_2 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Arbeitszimmer 2',
c_Property_Component => 'IPSComponentShutter_Homematic,59958',
c_Property_TimeOpening => 28,
c_Property_TimeClosing => 28,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_3 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Gäste-WC',
c_Property_Component => 'IPSComponentShutter_Homematic,14470',
c_Property_TimeOpening => 18,
c_Property_TimeClosing => 18,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_4 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Ankleide',
c_Property_Component => 'IPSComponentShutter_Homematic,19903',
c_Property_TimeOpening => 19,
c_Property_TimeClosing => 19,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_5 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Küche',
c_Property_Component => 'IPSComponentShutter_Homematic,57377',
c_Property_TimeOpening => 26,
c_Property_TimeClosing => 28,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_6 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Terasse links',
c_Property_Component => 'IPSComponentShutter_Homematic,21125',
c_Property_TimeOpening => 28,
c_Property_TimeClosing => 26,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_7 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Terasse rechts',
c_Property_Component => 'IPSComponentShutter_Homematic,50739',
c_Property_TimeOpening => 30,
c_Property_TimeClosing => 27,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_8 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Couchecke',
c_Property_Component => 'IPSComponentShutter_Homematic,12139',
c_Property_TimeOpening => 16,
c_Property_TimeClosing => 16,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_9 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Bad',
c_Property_Component => 'IPSComponentShutter_Homematic,49312',
c_Property_TimeOpening => 28,
c_Property_TimeClosing => 26,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_10 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Zimmer Max',
c_Property_Component => 'IPSComponentShutter_Homematic,34416',
c_Property_TimeOpening => 28,
c_Property_TimeClosing => 28,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_11 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Zimmer Alina',
c_Property_Component => 'IPSComponentShutter_Homematic,44377',
c_Property_TimeOpening => 28,
c_Property_TimeClosing => 28,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
),
c_ShadowingDevice_12 => array(
c_Property_ShadowingType => c_ShadowingType_Shutter,
c_Property_Name => 'Schlafzimmer',
c_Property_Component => 'IPSComponentShutter_Homematic,34322',
c_Property_TimeOpening => 28,
c_Property_TimeClosing => 28,
c_Property_TimePause => 1,
c_Property_TempSensorIndoor => '23070',
)
);
}
/** @}*/
?>
Wie man sieht sind das alles Homematic-Rollladen-Aktoren die über einen Homematic-Lan-Adapter angesteuert werden.
Ressourcenseitig gibt es eigentlich keine Probleme. Das Ganze läuft auf einer Zotac Z-Box Plus Nano XS mit 2GB RAM und 1.6GHz Dual Core Prozessor. Außer IPSymcon läuft da nix weiter drauf.
Eine Verständnisfrage nochmal zu den Flags „Automatik“ und „Manuell“. Momentan ist es so, dass manuell anscheinend die höhere Priorität hat. Im Normalfall soll alles auf „Automatik“ laufen, also nachts zum Beispiel die Rollläden herunter fahren. Wenn jemand nun einen Rolladen mit dem Wandtaster manuell verstellt wird das „manuell“ Flag gesetzt, aber gleichzeitig bleibt „Automatik“ aktiv. Dennoch wird keine Automatik, also keine Steuerung nach Profilen für diesen Rollladen ausgeführt bis letztendlich um Mitternacht das „Manuell“-Flag gelöscht wird. Dann fahren alle Rolläden in die ANchstellung und ich bin halt munter :-). Warum bleibt dann aber „Automatik“ bei manueller Bedienung am Wandtaster auf True, wenn doch gar keine Automatik mehr aktiv zu sein scheint?