+ Antworten
Seite 2 von 29 ErsteErste 1 2 3 4 12 ... LetzteLetzte
Ergebnis 11 bis 20 von 287
  1. #11
    Registriert seit
    Jun 2007
    Ort
    Hockenheim
    Beiträge
    1,798

    Standard Also....

    ...ich stelle mich ja manchmal wirklich schusselig an...

    Aber mit der Nutzung der Syntax der Call Back Funktionen forderst Du meinen nicht PHP Programmierer Kopf echt heraus.

    Könntest Du einmal Deine Konfig hier oder im Wiki posten ?
    Ich denke dann wird nicht nur mir einiges klarer.
    Ist halt nix für dummies :-) aber einfach zu genial um es nicht doch hin zu bekommen :-)

    Gruss & merry x-mas
    B71
    IP-Symcon V4.4,MAC mini mit Parallels 12 und W10 und PI 5.0 Testing,15" Touch Screen,iPADs,Sonos,FHZ1300,HM Gateways,Allnet 3691,USB-T 868,Homematic: 140 Instanzen, FS20: 6 Instanzen, Allnet: 1 Instanz

  2. #12
    Registriert seit
    Dec 2008
    Ort
    Degmarn (BaWü)
    Beiträge
    549

    ich bin auch am Testen der Callback.
    Derzeit noch ohne Erfolg.
    Da ich an 4 Sensoren nur die Leistung in Watt bekomme, wollte ich mir die KWH wie folgt berechnen:

    Code:
    function IPSPowerControl_CalculateValuesKWH($sensorList, $valueList) {
    		$returnList = $valueList;
    		foreach ($sensorList as $idx=>$value) {
    			$returnList[$idx] = $value;
    		}
    		$returnList[0]  = IPSPowerControl_Watt2KWH(0);
    		$returnList[1]  = IPSPowerControl_Watt2KWH(1);
    		$returnList[2]  = IPSPowerControl_Watt2KWH(2);
    		$returnList[3]  = IPSPowerControl_Watt2KWH(3);
    		$returnList[4]  = IPSPowerControl_Watt2KWH(4);
    		$returnList[5]  = $sensorList[5];
    		return $returnList;
    	}
    ich bekomme aber einfach keine Werte.
    Mir ist auch noch nicht klar, ob die irgend wo gespeichert werden, oder immer neu berechnet.

    Die Erweiterung um Wasser bin ich noch am Testen.
    Ich nehme mal an, der Sensor soll den Verbrauch in Liter liefern.

    Ich finde das Modul echt genial!
    Danke für die tolle Arbeit!

    Jens
    IPS auf Symbox / DigitalStrom / Homematic / Mobotix T24 / UBNT-Netzwerk / Enigma GigaBlue / Apple iPad als Visu mit IPSView / iPhone mit IPS Mobil / Vistapool Poolsteuerung / IPS-868 für LED und Garagentor und Energieerfassung / Vitodens über optische Schnittstelle / Poolscheinwerfer-RGB über WLAN-RS485 Koppler ...und viel Spaß am Testen

  3. #13
    Registriert seit
    Aug 2010
    Ort
    Österreich (Korneuburg)
    Beiträge
    4,365

    @B71

    Meine Konfig befindet sich im Example Ordner, ist aber noch etwas komplizierter als das Beispiel im WIKI.

    Im Prinzip defniert man in der Konfig eine Liste von Sensoren (0-x) und eine Liste von Werten die man berechnen und speichern möchte (0-y).
    In den Callback Funktionen nimmt mandann die Zuordnung von Sensor und Visualisierungswert vor. Das kann man direkt machen ($returnList[0] = $sensorList[0]) oder man verwendet eine der Utility Funktionen (IPSPowerControl_Watt2KWH(0)).

    @Jens

    Die kWh Werte werden nur alle Stunde gespeichert, eventuell musst Du noch etwas warten. Poste doch auch noch Deine Konfig, damit ich Deine Callbacks überprüfen kann.

    Die Zuweisung mit der Schleife am Beginn kannst Du entfernen, da Du die Resultate danach ja eh einzeln befüllst.

    PHP-Code:
    function IPSPowerControl_CalculateValuesKWH($sensorList$valueList) {
            
    $returnList[0]  = IPSPowerControl_Watt2KWH(0);
            
    $returnList[1]  = IPSPowerControl_Watt2KWH(1);
            
    $returnList[2]  = IPSPowerControl_Watt2KWH(2);
            
    $returnList[3]  = IPSPowerControl_Watt2KWH(3);
            
    $returnList[4]  = IPSPowerControl_Watt2KWH(4);
            
    $returnList[5]  = $sensorList[5];
            return 
    $returnList;

    Es wundert mich auch, dass Du 5x Watt aus kWh berechnest, aber vorher schreibst, dass Du nur 4 Sensoren hast...
    Gruß
    Andreas

  4. #14
    Registriert seit
    Dec 2008
    Ort
    Degmarn (BaWü)
    Beiträge
    549

    Es wundert mich auch, dass Du 5x Watt aus kWh berechnest, aber vorher schreibst, dass Du nur 4 Sensoren hast...
    Also, ich dachte eigentlich, dass ich mit "IPSPowerControl_Watt2KWH(X)" aus meinen gemessenen Leistungen (in Watt) den dazu gehörenden Verbrauch in KW/h errechne.

    So habe ich die Beschreibung im WIKI verstanden.
    "Beispiel
    Die Funktion IPSPowerControl_Watt2KWH kann verwendet werden, wenn der Sensor nur Watt Werte unterstützt."

    Würde aber natürlich auch erklären, warum ich gestern 123 KW/h Verbrauch hatte

    Hier noch die Config:
    PHP-Code:
        function IPSPowerControl_GetSensorConfiguration() {
            return array(
                
    0    => array(IPSPC_PROPERTY_NAME        => '13_EG',
                              
    IPSPC_PROPERTY_VARWATT     => 43522,
                              
    IPSPC_PROPERTY_VARKWH      => null,
                              ),
               
    1    => array(IPSPC_PROPERTY_NAME        => '14_OG',
                              
    IPSPC_PROPERTY_VARWATT     => 25862,
                              
    IPSPC_PROPERTY_VARKWH      => null,
                              ),
             
    2    => array(IPSPC_PROPERTY_NAME        => '15_UG/Rollo',
                              
    IPSPC_PROPERTY_VARWATT     => 16272,
                              
    IPSPC_PROPERTY_VARKWH      => null,
                              ),
             
    3    => array(IPSPC_PROPERTY_NAME        => '16_Wohnbereich',
                              
    IPSPC_PROPERTY_VARWATT     => 51774,
                              
    IPSPC_PROPERTY_VARKWH      => null,
                              ),
             
    4    => array(IPSPC_PROPERTY_NAME        => '21_Hzg/Server',
                              
    IPSPC_PROPERTY_VARWATT     => 46276,
                              
    IPSPC_PROPERTY_VARKWH      => null,
                              ),
             
    5    => array(IPSPC_PROPERTY_NAME        => 'Verbrauch',
                              
    IPSPC_PROPERTY_VARWATT     => 17999,
                              
    IPSPC_PROPERTY_VARKWH      => 52343,
                              ),
             
    6    => array(IPSPC_PROPERTY_NAME        => 'Water',
                           
    IPSPC_PROPERTY_VARM3       => 32589,
                        ),

                );
        }
        

        
    /**
         *
         * Defintion der Visualisierungs Werte
         * 
         * Die Konfiguration erfolgt in Form eines Arrays, für jede Visualisierungs Variable wird ein Eintrag im Array erzeugt.
         *
         *   IPSPC_PROPERTY_NAME      - Name der Visualisierungs Variable
         *
         *   IPSPC_PROPERTY_DISPLAY   - Spezifiziert ob der Wert in der GUI visualisiert werden soll
         *
         *   IPSPC_PROPERTY_VALUETYPE - Werte Type der Variable, mögliche Werte:
         *                                IPSPC_VALUETYPE_TOTAL  ... definiert die Variable als Summenwert über alle Stromkreise
         *                                IPSPC_VALUETYPE_DETAIL ... definiert die Variable als Detailwert eines Stromkreises
         *                                IPSPC_VALUETYPE_OTHER  ... übrige Werte (weder Total noch Detail)
         *
         * Eine ausführliche Beispielliste findet sich auch im Example Ordner
         *
         *
         * Beispiel:
         * @code
            function IPSPowerControl_GetValueConfiguration() {
              return array(
                 0    => array(IPSPC_PROPERTY_NAME        => 'Total',
                               IPSPC_PROPERTY_DISPLAY     => true,
                               IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_TOTAL,
                              ),
                 1    => array(IPSPC_PROPERTY_NAME        => 'Waschmaschine',
                               IPSPC_PROPERTY_DISPLAY     => true,
                               IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_DETAIL,
                              ),
                 );
            }
         * @endcocde
         *
         * @return string Liefert Array mit den Daten der Visualisierungs Werte
         */
        
    function IPSPowerControl_GetValueConfiguration() {
            return array(
                
    0    => array(IPSPC_PROPERTY_NAME        => '13_EG',
                              
    IPSPC_PROPERTY_DISPLAY     => true,
                              
    IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_DETAIL,
                              ),
                
    1    => array(IPSPC_PROPERTY_NAME        => '14_OG',
                              
    IPSPC_PROPERTY_DISPLAY     => true,
                              
    IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_DETAIL,
                              ),
             
    2    => array(IPSPC_PROPERTY_NAME        => '15_UG/Rollo',
                              
    IPSPC_PROPERTY_DISPLAY     => true,
                              
    IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_DETAIL,
                              ),
             
    3    => array(IPSPC_PROPERTY_NAME        => '16_Wohnbereich',
                              
    IPSPC_PROPERTY_DISPLAY     => true,
                              
    IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_DETAIL,
                              ),
             
    4    => array(IPSPC_PROPERTY_NAME        => '21_Hzg/Server',
                              
    IPSPC_PROPERTY_DISPLAY     => true,
                              
    IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_DETAIL,
                              ),
             
    5    => array(IPSPC_PROPERTY_NAME        => 'Verbrauch',
                              
    IPSPC_PROPERTY_DISPLAY     => true,
                              
    IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_TOTAL,
                              ),
             
    6    => array(IPSPC_PROPERTY_NAME        => 'Wasser',
                              
    IPSPC_PROPERTY_DISPLAY     => true,
                              
    IPSPC_PROPERTY_VALUETYPE   => IPSPC_VALUETYPE_WATER,
                              ),
                              
                              
            );
        }

        
    /** IPSPowerControl Stromkosten  
         *
         * Definiert die Stromkosten in Cents per kWh, die für die Berechnung der Werte verwendet
         * werden soll.
         *
         */
        
    define ("IPSPC_ELECTRICITYRATE",    23 /*Cents per KWh*/);


        
    /** IPSPowerControl Aktualisierungs Interval Watt 
         *
         * Definiert das Interval für die Aktualisierung der berechneten Watt Verbrauchswerte.
         * Die Angabe erfolgt in Sekunden
         *
         */
        
    define ("IPSPC_REFRESHINTERVAL_WATT",   60);

        
    /** IPSPowerControl Aktualisierungs Interval kWh 
         *
         * Definiert das Interval für die Aktualisierung der berechneten kWh Verbrauchswerte.
         * Die Angabe erfolgt in Minuten
         *
         */
        
    define ("IPSPC_REFRESHINTERVAL_KWH",   60);

        
    /** @}*/
    ?> 
    Geändert von Isi (23.12.12 um 11:45 Uhr)
    IPS auf Symbox / DigitalStrom / Homematic / Mobotix T24 / UBNT-Netzwerk / Enigma GigaBlue / Apple iPad als Visu mit IPSView / iPhone mit IPS Mobil / Vistapool Poolsteuerung / IPS-868 für LED und Garagentor und Energieerfassung / Vitodens über optische Schnittstelle / Poolscheinwerfer-RGB über WLAN-RS485 Koppler ...und viel Spaß am Testen

  5. #15
    Registriert seit
    Aug 2010
    Ort
    Österreich (Korneuburg)
    Beiträge
    4,365

    OK, ich zähle aber 5 Sensoren, wo kWh aus Watt berechnet wird.

    Zuweisung des Wasser Sensors fehlt noch in der Callback bzw. kannst Du den Loop einfach in der Callback lassen.

    Deine Config sollte also funktionieren!
    Gruß
    Andreas

  6. #16
    Registriert seit
    Dec 2008
    Ort
    Degmarn (BaWü)
    Beiträge
    549

    ja,

    habe meine Callback noch mal bearbeitet:

    PHP-Code:
        function IPSPowerControl_CalculateValuesKWH($sensorList$valueList) {
            
    $returnList $valueList;
            foreach (
    $sensorList as $idx=>$value) {
                
    $returnList[$idx] = $value;
            }
            
    $returnList[0]  = IPSPowerControl_Watt2KWH(0,1);
            
    $returnList[1]  = IPSPowerControl_Watt2KWH(1,1);
            
    $returnList[2]  = IPSPowerControl_Watt2KWH(2,1);
            
    $returnList[3]  = IPSPowerControl_Watt2KWH(3,1);
            
    $returnList[4]  = IPSPowerControl_Watt2KWH(4,1);

            return 
    $returnList;
        } 
    Habe etwas mit dem Multiplikator experimentiert, aber habe es wohl noch nicht verstanden.
    Egal ob ich 1, 1000, 0.001 eingebe- Die Werte stimmen nicht.
    Was wird da im Hintergrund gerechnet?
    Ich habe keinen fortlaufenden Zähler sondern bekomme alle x sec. die aktuelle Leistung in Watt. (digitalStrom)
    IPS auf Symbox / DigitalStrom / Homematic / Mobotix T24 / UBNT-Netzwerk / Enigma GigaBlue / Apple iPad als Visu mit IPSView / iPhone mit IPS Mobil / Vistapool Poolsteuerung / IPS-868 für LED und Garagentor und Energieerfassung / Vitodens über optische Schnittstelle / Poolscheinwerfer-RGB über WLAN-RS485 Koppler ...und viel Spaß am Testen

  7. #17
    Registriert seit
    Aug 2010
    Ort
    Österreich (Korneuburg)
    Beiträge
    4,365

    OK, hab da grad noch ein Problem entdeckt bei der Umrechnung von Watt auf kWh (Problem ist, das die Funktion nur jede Stunde aufgerufen wird).

    Muss da nochmals etwas drüber nachdenken...
    Gruß
    Andreas

  8. #18
    Registriert seit
    Mar 2010
    Ort
    Austria - Korneuburg
    Beiträge
    248

    Standard ...

    Hi Andreas,

    Ich find´s echt super, dass du noch andere Sensoren ins IPS Powercontrol implementiert hast.
    In Kombination mit Highchart kann man damit dann alle möglichen Sensoren visualiseren :-)
    ich werd aber noch nicht so wirklich schlau, wie das IPS Powercontrol funktioniert und was es tatsächlich anzeigen soll bzw. welche Inputwerte in welcher Art und Weise verwendet werden sollen.

    Die meisten Zählersensoren (hauptsächlich S0) zählen die Impulse innerhalb einer gewissen Zeit.
    Somit könnte man dann alles mögliche ansprechend visualisieren (und im Endeffekt neben den Verbrauchswerten wie Strom, Gas, Wasser auch eine Wetterstation wunderbar abbilden (mit Wind- und Regenmesser über die S0 Zählervariante, Temperatur-, Luftfeuchtigkeit-, Helligkeit-, Solarstrahlung, UV usw. über div. andere Sensoren).

    Zurück zu IPS Control und z.b. dem Wasserverbrauch.
    Das ist, wenn ich das ganze richtig verstanden habe, so implementiert, dass vom Zähler die Absolutstände ausgelesen werden.
    Ich glaub aber, dass das mit der Zeit recht unübersichtlich wird und auch nicht wirklich aussagekräftig, da z.b. über den Zeitraum von 1 Monat der Absolutzählerstand von 13123 m3 auf 25432 m3 hochgezählt und angezeigt wird.
    Vor allem, wenn man mehrere Sensoren miteinander vergleichen will.

    Ich hab das bei mir so implementiert, dass ich Tageswerte, Wochenwerte, Monatswerte und Jahreswerte und die dazugehörigen Werte vom letzten Tag, Woche, Monat, Jahr wegschreibe und die Zähler dann nach 1 Tag, Woche, Monat, Jahr zurücksetze.

    Vielleicht kann man das so ähnlich auch ins IPS Control implementieren.
    Was ich noch super finden würde...wenn man beim Type/offset für jede Einheit ein eigenes Icon hätte und das dann z.b. noch kombinierbar wäre (also eine Mehrfachauswahl zulässig wäre)...also eigentlich pro IPSPC_PROPERTY_VALUETYPE .
    Momentan werden die m3 Werte auch mit der Rubrik kwh angezeigt.

    Aber das können wir ja ev. am nächsten Stammtisch diskutieren :-)

    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Screen Shot 2012-12-23 at 13.23.14.png 
Hits:	410 
Größe:	26.5 KB 
ID:	19599Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Screen Shot 2012-12-23 at 13.24.00.png 
Hits:	457 
Größe:	89.6 KB 
ID:	19598Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Screen Shot 2012-12-23 at 13.47.27.png 
Hits:	542 
Größe:	131.6 KB 
ID:	19597

  9. #19
    Registriert seit
    Mar 2010
    Ort
    Austria - Korneuburg
    Beiträge
    248

    Standard ...

    Jetzt hab ich´s anscheinend verstanden.
    Ich hab jetzt einfach meine Tages, Wochen, Monatswerte ins IPS Powercontrol integriert...
    Somit passts wunderbar für mich und ich kann mir alle möglichen Sachen übereinanderlegen.

  10. #20
    Registriert seit
    Mar 2010
    Ort
    Austria - Korneuburg
    Beiträge
    248

    Standard ...

    ok, anscheinend doch nicht verstanden.
    Man muss anscheinend doch die absoluten Zählerstände einlesen und IPS Powercontrol bzw. highchart ist dann klug genug, dass es selbständig die deltas zu jeder Stunde ausrechnet und darstellt.