Hola compañer@s:
Como habéis visto, lo primero que he hecho es cambiar el título del tema pues, al fin y al cabo, el motivo del mismo era saber la manera de recoger datos sobre tarifas de luz.
Siempre he buscado información en los foros ya sea en español, inglés o francés y me ha sido de mucha utilidad. Soy habitual en los foros, por éso, y estaréis conmigo, es frustrante el momento en el que encuentras lo que buscas en un post de un foro y éste está inacabado. El motivo de este post, por tanto, es acabarlo.
En los primeros post, Paconet, me enseñó un a página de la cual obtener las tarifas de luz. La manera para recopilar las tarifas de luz era crear 24 sensores (uno por cada hora), (las instrucciones están un poco más arriba).
Una vez creados los sensores, había que unificarlos en uno solo con el fin de que el tratamiento de la información fuera más eficiente y eficaz. La forma de crear este sensor unificador está aquí:
http://www.domoticadomestica.com/foro/index.php?topic=1016.0. El actuador http que controla al sensor tiene una regla consistente en actualizar el actuador cada hora del día.
Una vez que tenemos las tarifas de la luz unificadas y sabiendo que éstas se actualizan cada hora, cada día, el siguiente paso es crear la manera de obtener el consumo de un aparato en euros (Tv, router, lavadora, etc...).
Si el aparato está conectado en un periférico que mide el consumo (caso de las regletas Greenwave, por ejemplo), tenemos un sensor que muestra el consumo en Watios de ese aparato. Ese consumo es instantáneo, es decir, el dato que ofrece es en el momento. Si vamos al historial, sí que se verá un histórico del consumo.
A partir de aquí, ya tenemos LA TARIFA, por un lado, y EL CONSUMO, por otro. Por tanto, ya solo nos queda multiplicar los datos. ¿cómo?, con un script tal que así lo he hecho (éste funciona, ¿eh?):
<?php
#Asignamos el código API de los perifericos: tarifa global, consumo del periférico que queremos monitorizar
$Tarifaglobal_id = 'XXXXXX';
$ConsumoTv_id = 'XXXXX';
#Asignamos el código API de los periféricos (sensores de estado) que contendrán los resultados
$CosteTv_id = 'XXXXXX';
#Obtenemos los valores de los periféricos que contienen los datos
$Tarifaglobal = getValue ($Tarifaglobal_id);
$ConsumoTv = getValue ($ConsumoTv_id);
#Calculamos el coste consumo de la Tv (euros)con 5 decimales
$CosteTv = round ($Tarifaglobal ['value'] * $ConsumoTv ['value']/1000,5);
#Asignamos los resultados a su periférico correspondiente
setValue($CosteTv_id, $CosteTv);
?>
Ese script sirve para saber el consumo en euros del aparato en cuestión EN EL MOMENTO.
¿Y ahora qué?... EL COSTE ACUMULADO del aparato.
Para calcular el coste acumulado hay que hacer uso de un servidor (raspberry, NAS, etc..) por la simple razón de que para calcular el coste acumulado es necesario un histórico de los valores y este histórico, aunque se obtiene directamente de eedomus, hay que, primero guardarlos y luego obtenerlos.
Os dejo la forma de hacerlo (en francés):
http://www.domo-blog.fr/comptage-energetique-hebdomoisannee-via-phpmysql/Yo ahora lo que haré, es hacer uso de mi rapsberry, sacar el histórico de los históricos y editarlos en excel ya que para mí es más fácil.
Perdonad por este tocho.
Salu2.