Ce Forum passera en lecture seule en janvier 2020
Image
Merci de vous rendre sur https://community.jeedom.com maintenant pour vos prochains postes ;)

Api Viessmann pour récupération de données avec Vitoconnect

Réservé à l'utilisation et la programmation de scripts dans JEEDOM
fmetz
Timide
Messages : 69
Inscription : 26 oct. 2015, 12:31

Re: Script pour Gestion Chaudière Viessmann connecté

Message par fmetz » 24 oct. 2018, 11:13

thetrueavatar a écrit :
22 oct. 2018, 21:09
Merci pour le retour. A part pour le deactivateEcoProgram où je sais que ça marche pas(toujours pas compris pourquoi) le reste semble "ok". Les FEATURE_NOT_FOUND et problème de propriété non trouvée sont des erreurs du au fait que tu as pas ce type de données là exposées pour ton équipement.
OK merci.
Juste pour clarifier, est-ce que c'est pareil pour tout le monde sur ces trucs qui ne marchent pas chez moi et que j'aimerais bien avoir :
1/ getDhwGasConsumption : renvoi en fait getHeatingGasConsumption
2/ getDhwSchedule : renvoi un tableau vide
3/ getHeatingBurnerModulation : FEATURE_NOT_FOUND
4/ getCirculationPumpStatus : FEATURE_NOT_FOUND
5/ getDhwTemperatureOutlet : FEATURE_NOT_FOUND

Finalement, j'ai vu passer ces fonctions. Elles n'apportent pas beaucoup par rapport au GetActiveMode !
isDhwModeActive : True quand mode eau chaude seulement
isInStandbyMode : True quand chaudière arrêtée

fmetz
Timide
Messages : 69
Inscription : 26 oct. 2015, 12:31

Re: Script pour Gestion Chaudière Viessmann connecté

Message par fmetz » 24 oct. 2018, 11:28

Avataar120 a écrit :
03 sept. 2018, 20:36
Désolé, je ne l'utilise pas.

J'utilise seulement la régulation de la chaudière plus des têtes thermostatiques popp.

J'ai un scénario pour comparer mes consignes avec la réalité et qui ajuste automatiquement la pente et la parallèle

Et un autre qui active ou désactive le mode chauffage en fonction de la température extérieure et des températures intérieures.
Hello Avataar120,
Est-ce que tu pourrais me dire quel algo tu fais pour ajuster automatiquement la pente et la parallèle stp ?

vmath54
Timide
Messages : 95
Inscription : 30 sept. 2016, 14:42

Re: Script pour Gestion Chaudière Viessmann connecté

Message par vmath54 » 24 oct. 2018, 15:31

fmetz a écrit :
24 oct. 2018, 11:13

Juste pour clarifier, est-ce que c'est pareil pour tout le monde sur ces trucs qui ne marchent pas chez moi et que j'aimerais bien avoir :
1/ getDhwGasConsumption : renvoi en fait getHeatingGasConsumption
2/ getDhwSchedule : renvoi un tableau vide
3/ getHeatingBurnerModulation : FEATURE_NOT_FOUND
4/ getCirculationPumpStatus : FEATURE_NOT_FOUND
5/ getDhwTemperatureOutlet : FEATURE_NOT_FOUND

...
Chez moi, c'est GetHeatingBurnerActive.php qui renvoie toujours chaine vide (donc false, je suppose).

- getDhwSchedule renvoie également un tableau vide
- pas testé getDhwGasConsumption ni getHeatingGasConsumption
- dans les 'features' retournées par ma chaudière, je n'ai pas les infos heating.burner.modulation, heating.dhw.sensors.temperature.outlet, et je ne trouve rien en "pump.status" ou "status.pump"

thetrueavatar
Timide
Messages : 282
Inscription : 30 nov. 2017, 13:54

Re: Script pour Gestion Chaudière Viessmann connecté

Message par thetrueavatar » 24 oct. 2018, 15:32

Juste pour vous mettre en garde contrel fait de changer dynamiquement la pente et le parallèle. N'oubliez pas qu'il faut 48h pour que l'impact d'un changement de pente et parrallèle soit perçu. L'idée est d'adapter le parallèle et pente à l'entre-saison(automne,printemps) et en hiver. Ceci n'est censé être fait qu'une seule fois et pas régulièrement.
Une chaudière à condensation avec sonde extérieure suit la loi d'eau et donc les courbes de chauffes. Celle-ci défini qu'il y a un lien entre température d'eau de chaudière, la température extérieure et température ambiante souhaitée comme le montre les courbes viessmann ci-dessous
:
courbe-de-chauffe-viessmann-elyotherm.jpg
courbe-de-chauffe-viessmann-elyotherm.jpg (105.35 Kio) Consulté 386 fois
Une pente de 1 dit simplement que pour maintenir 20° il faut que pour une température extérieure de -10 enclencher le brûler dès que la température de chaudière chute en dessous de 50°. Si la maison est mieux isolée, on prend une pente plus basse. 0,8 par exemple et là il faut maintenir 45° au lieu de 50° quand il fait -10°.
L'idée est que si la température extérieure chute de 1° il faut augmenter la t° d'eau de la chaudière d'une certaines valeurs pour maintenir la température souhaitéee. Cette augmetation est la pente. Elle détermine la vitesse à laquelle on chauffe l'eau par rtpport à la chute de température extérieure. Le parallèle lui défini plutôt à partir de quelle température ext on chauffe. Donc le but du réglage est de trouver la bonne pente qui garanti que la température de référence souhaitée(20° en général) soit bien celle de la pièce en pratique. La découverte de la pente se fait par essaie erreur(en fonction de l'isolation de la maison, taille pièce, dimensionnement radiateur). Donc un algo pour la trouver en début de saison la pente à l'aide d'un capteur ok, mais pas à adapter au jour le jour ça n'aurait pas de sens.
Dernière édition par thetrueavatar le 24 oct. 2018, 15:59, édité 2 fois.

vmath54
Timide
Messages : 95
Inscription : 30 sept. 2016, 14:42

Re: Script pour Gestion Chaudière Viessmann connecté

Message par vmath54 » 24 oct. 2018, 15:38

thetrueavatar a écrit :
21 oct. 2018, 20:02
S'ils utilisent un API Gateway j'imagine qu'il doit y avoir un DDOS protection. Pour ma part j'ai constaté un interval de 5 minutes entre les mises à jours des données donc j'ai configuré le cron dans ce sens-là.
J'ai lancé un GetHotWaterStorageTemperature.php par cron toutes les minutes ; je constate un rafraichissement toutes les minutes pendant les périodes ou on tire de l'eau chaude. Voici un extrait des logs de ce cron :

Code : Tout sélectionner

20181022 12:17:01;hwsTemp;52
20181022 12:18:01;hwsTemp;50.9
20181022 12:19:01;hwsTemp;49.8
20181022 12:20:01;hwsTemp;48.5
20181022 12:21:01;hwsTemp;47.2
20181022 12:22:01;hwsTemp;47.2
20181022 12:23:01;hwsTemp;43.1
20181022 12:24:01;hwsTemp;41.9
...
20181022 13:38:01;hwsTemp;43.9
20181022 13:39:01;hwsTemp;46
20181022 13:40:01;hwsTemp;47
20181022 13:41:01;hwsTemp;49.2
20181022 13:42:01;hwsTemp;50.2
20181022 13:43:01;hwsTemp;52.3
20181022 13:44:01;hwsTemp;53.4

thetrueavatar
Timide
Messages : 282
Inscription : 30 nov. 2017, 13:54

Re: Script pour Gestion Chaudière Viessmann connecté

Message par thetrueavatar » 24 oct. 2018, 15:41

ok merci pour l'info je vais regarder à changer le cron alors.

fmetz
Timide
Messages : 69
Inscription : 26 oct. 2015, 12:31

Re: Script pour Gestion Chaudière Viessmann connecté

Message par fmetz » 24 oct. 2018, 15:51

vmath54 a écrit :
24 oct. 2018, 15:31
fmetz a écrit :
24 oct. 2018, 11:13

Juste pour clarifier, est-ce que c'est pareil pour tout le monde sur ces trucs qui ne marchent pas chez moi et que j'aimerais bien avoir :
1/ getDhwGasConsumption : renvoi en fait getHeatingGasConsumption
2/ getDhwSchedule : renvoi un tableau vide
3/ getHeatingBurnerModulation : FEATURE_NOT_FOUND
4/ getCirculationPumpStatus : FEATURE_NOT_FOUND
5/ getDhwTemperatureOutlet : FEATURE_NOT_FOUND

...
Chez moi, c'est GetHeatingBurnerActive.php qui renvoie toujours chaine vide (donc false, je suppose).

- getDhwSchedule renvoie également un tableau vide
- pas testé getDhwGasConsumption ni getHeatingGasConsumption
- dans les 'features' retournées par ma chaudière, je n'ai pas les infos heating.burner.modulation, heating.dhw.sensors.temperature.outlet, et je ne trouve rien en "pump.status" ou "status.pump"
OK, merci.
C'est bizarre que l'info brûleur actif ne marche pas chez tout le monde...

thetrueavatar
Timide
Messages : 282
Inscription : 30 nov. 2017, 13:54

Re: Script pour Gestion Chaudière Viessmann connecté

Message par thetrueavatar » 24 oct. 2018, 16:02

Ben ça dépend du moment où tu prends la mesure et des paramètres de pentes et parallèle. Si au moment où on regarde la t° de chaudière est à 50° et que le brûleur ne doit déclencher qu'à 40° normal que tu vois rien.

vmath54
Timide
Messages : 95
Inscription : 30 sept. 2016, 14:42

Re: Script pour Gestion Chaudière Viessmann connecté

Message par vmath54 » 24 oct. 2018, 20:37

thetrueavatar a écrit :
24 oct. 2018, 16:02
Ben ça dépend du moment où tu prends la mesure et des paramètres de pentes et parallèle. Si au moment où on regarde la t° de chaudière est à 50° et que le brûleur ne doit déclencher qu'à 40° normal que tu vois rien.
Non, non, ce n'est pas ca.
J'ai fait tourner par cron le script GetHeatingBurnerActive.php toutes les minutes pendant qqs jours ; la réponse est toujours une chaine vide, alors que je suis absolument certain que le bruleur s'est mis en route, et pas que pour l'ECS.
J'ai controlé sur l'écran de la chaudière, et sur jeedom avec la remontée de GetBoilerTemperature.php. J'ai même mis la température de consigne très élevée pour etre certain de forcer la mise en route de la chaudière.


Bon, je viens de regarder le json retourné par la requete .../features/heating.burner
reformatté et débarrassé de ce qui n'est pas utile ici, il reste :

Code : Tout sélectionner

{
....
	"class": ["heating.burner", "feature"],
	"properties": {
		"active": {
			"type": "boolean",
			"value": true
		}
	},
	"entities": [{
...
		}, {
...
			"properties": {
				"components": ["automatic"]
			}
		}
...
}
Et donc, derrière /features/heating.burner , il ne reste que /features/heating.burner.automatic

Je ne récupère donc pas la valeur "features/heating.burner.active", qui est la valeur retournée (je crois) par GetHeatingBurnerActive.php

Etrange, non ? Alors que ma chaudière (installée récemment, début septembre 2018) fonctionne correctement.
Est-ce que ca pourrait être lié à une version de firmware du boitier vitoconnect, voire de la chaudière (une vitodens 222-f) ?


J'en profite pour vous poser une question pas directement liée :
lorsque j'ai un arret / redémarrage de la box internet (coupure d'alimentation de la box, par exemple), le boitier vitoconnect se met en erreur ; une led clignote rouge et ca ne se récupère pas.
Ca reste dans cet état indéfiniment si pas d'intervention manuelle.
Je suis obligé de couper électriquement le vitoconnect (débrancher pui rebrancher la prise micro usb) pour que le vitoconnect se remette à fonctionner correctement.
Etrange également, non ?

fmetz
Timide
Messages : 69
Inscription : 26 oct. 2015, 12:31

Re: Script pour Gestion Chaudière Viessmann connecté

Message par fmetz » 24 oct. 2018, 20:57

vmath54 a écrit :
24 oct. 2018, 20:37
Je suis obligé de couper électriquement le vitoconnect (débrancher pui rebrancher la prise micro usb) pour que le vitoconnect se remette à fonctionner correctement.
Etrange également, non ?
J'ai un ami pour qui cela fait pareil dans une maison de famille et comme il est loin, il a été obligé de mettre le vitoconnect sur prise commandée pour le redémarrer à distance une fois la box démarrée.

thetrueavatar
Timide
Messages : 282
Inscription : 30 nov. 2017, 13:54

Re: Script pour Gestion Chaudière Viessmann connecté

Message par thetrueavatar » 24 oct. 2018, 21:01

En fait la feature est heating.burner et sur cette feature il y a une propriété "active" qui a un type et une valeur.
Les components sont les sous feature qu'on peut récupérer.
EDIT: je vois l'erreur... J'ai mis return au lieu d'echo dans le fichier example/GetHeatingBurnerActive.php...
J'avais corrigé en develop mais pas sur master et Features/MethodsNotYetTested.
Normalement ça devrait fonctionner désormais...
J'avais aussi le problème comme quoi le boitier vitoconnect ne se reconnectait pas bien. Depuis que j'ai mis ma box en bridge et mon routeur Netgear NightHawk j'ai plus le problème. Peut-être un soucis de puissance de signale wifi qui lui plaisait pas trop. Le wifi de la box était catastrophique...
Dernière édition par thetrueavatar le 24 oct. 2018, 21:03, édité 1 fois.

Manouille
Timide
Messages : 33
Inscription : 29 juil. 2017, 12:59
Localisation : Anjou

Re: Script pour Gestion Chaudière Viessmann connecté

Message par Manouille » 24 oct. 2018, 21:01

vmath54 a écrit :
24 oct. 2018, 20:37
Je suis obligé de couper électriquement le vitoconnect (débrancher pui rebrancher la prise micro usb) pour que le vitoconnect se remette à fonctionner correctement.
Même souci chez moi.

Manouille
Timide
Messages : 33
Inscription : 29 juil. 2017, 12:59
Localisation : Anjou

Re: Script pour Gestion Chaudière Viessmann connecté

Message par Manouille » 24 oct. 2018, 21:52

Quel est le moyen pour avoir un retour sur la fonction getHeatingGasConsumption("year")
J'ai toujours une erreur en retour chez moi.

thetrueavatar
Timide
Messages : 282
Inscription : 30 nov. 2017, 13:54

Re: Script pour Gestion Chaudière Viessmann connecté

Message par thetrueavatar » 25 oct. 2018, 06:47

Quelle est l'erreur ? Si c'est FEATURE_NOT_FOUND ça veut simplement dire que vous n'avez pas sur votre chaudière la fonctionnalité ou que le service Viessmann ne l'expose pas(encore ?)
Mon api est générique et donc expose des fonctionnalités qui ne sont pas disponibles pour chaque appareil.

Xavier.g
Timide
Messages : 43
Inscription : 23 juil. 2014, 14:19

Re: Script pour Gestion Chaudière Viessmann connecté

Message par Xavier.g » 25 oct. 2018, 15:00

J'ai le même probleme pour le boitier Wifi.
avec le plugin Network, je le ping régulierement. si il ne réponds pas, je coupe 30sec son alim et je relance.

vmath54
Timide
Messages : 95
Inscription : 30 sept. 2016, 14:42

Re: Script pour Gestion Chaudière Viessmann connecté

Message par vmath54 » 25 oct. 2018, 18:50

thetrueavatar a écrit :
24 oct. 2018, 21:01
En fait la feature est heating.burner et sur cette feature il y a une propriété "active" qui a un type et une valeur.
Les components sont les sous feature qu'on peut récupérer.
EDIT: je vois l'erreur... J'ai mis return au lieu d'echo dans le fichier example/GetHeatingBurnerActive.php...
J'avais corrigé en develop mais pas sur master et Features/MethodsNotYetTested.
Normalement ça devrait fonctionner désormais...
Dans l'arbre json "features", je n'avais pas vu cette propriété "active" qui est sur le noeud heating.burner
J'ai mis à jour mon git local ; j'ai 'branché' le script GetHeatingBurnerActive.php sur jeedom, et sur un script exécuté toutes les minutes, pour tester.
. coté script, c'est OK : retourne 1 si le bruleur est en marche, et rien (chaine vide) sinon
. coté jeedom, l'historique indique 1 en continu depuis que j'ai branché le script modifié ; c'erst mieux qu'avant, c'était 0 ;-))
Je ne suis pas un spécialiste du plugin script. J'ai déclaré cette 'commande' avec le type binaire ; ca vient peut-être de ca. Je vais valider.

Un indicateur qui serait intéressant en complément de celui-ci : le niveau de puissance (en pourcentage ou en kWh) délivré par le bruleur.
Ce n'est pas essentiel, c'est par curiosité, pour bien comprendre le fonctionnement de la chaudière.
Et si on pouvait discerner ce qui concerne l'énergie utilisée pour l'ECS de celle utilisée pour le chauffage, ca serait le top. Je pense que je suis trop gourmand.

Par ailleurs, je me perds un peu dans les différentes températures proposées par cette API viessmann.
Je graphe ce que je crois être la 'température chaudière' : GetBoilerTemperature.php . Je suppose que c'est la température de l'eau dans le bloc de chauffe ; on voit que, dans cette période douce, ca varie pour la production d'ECS (très vite, dès qu'on consomme un peu d'eau chaude, et de manière importante) ou pour le chauffage des radiateurs (de manière délicate : température externe raisonnable).
Est-ce qu'on peut obtenir la température de départ et de retour de l'eau pour le circuit chauffage ?

thetrueavatar
Timide
Messages : 282
Inscription : 30 nov. 2017, 13:54

Re: Script pour Gestion Chaudière Viessmann connecté

Message par thetrueavatar » 25 oct. 2018, 19:30

Bonjour,
Ce n'est qu'une API pour appeler les services viessmann. J'ai repris leur terminologie. Personellement, j'ai toujours eu une seule température que je suppose être la température de l'eau à la sortie de la chaudière. Celle-ci va dans dans mes raadiateurs et aussi dans le serpentin qui réchauffe l'eau chaude sanitaire dans mon ballon Vitocell. Idéalement, il te faudrait la température de retour pour le radiateur et pour le serpentin. Maintenant, me semble qu'un des problèmes avec le serpentin est que l'eau ne refroidit pas assez et donc qu'on n'a pas vraiment de condensat... J'ai bien vu un montage particulier pour compenser mais bon perso je chauffe 10 min chaque matin et ça suffit pour garder >55° d'ECS la journée donc pas sûr que ça vaille la peine.

vmath54
Timide
Messages : 95
Inscription : 30 sept. 2016, 14:42

Re: Script pour Gestion Chaudière Viessmann connecté

Message par vmath54 » 25 oct. 2018, 19:31

Concernant le problème du boitier vitoconnect qui ne sait pas se rattraper lorsqu'il y a perte de connexion wifi ; je pensais que c'était lié à mon installation, je constate que c'est général.
Très gênant, je trouve, même dans un contexte hors domotique : cette fonctionnalité est proposée, entre autre, pour pouvoir piloter son installation de chauffage y compris en cas d'absence de plusieurs jours (congés, ...).
Ca ne marche donc pas, car le moindre incident (box qui reboote, qui resette la connexion wifi pour une raison quelconque, ...) rend hors service le vitoconnect sans intervention manuelle.
Pour moi, c'est un dysfonctionnement important.
Tous les équipements informatiques que je connais, reliés par wifi (ou autre support) à internet, sont capables de se récupérer en cas de coupure de réseau ; C'est un minimum.

Je suis conscient que ce problème n'est pas l'objet de ce forum.
Vous savez comment contacter viessmann pour remonter le problème ?

Manouille
Timide
Messages : 33
Inscription : 29 juil. 2017, 12:59
Localisation : Anjou

Re: Script pour Gestion Chaudière Viessmann connecté

Message par Manouille » 25 oct. 2018, 21:16

thetrueavatar a écrit :
25 oct. 2018, 06:47
Quelle est l'erreur ? Si c'est FEATURE_NOT_FOUND ça veut simplement dire que vous n'avez pas sur votre chaudière la fonctionnalité ou que le service Viessmann ne l'expose pas(encore ?)
Mon api est générique et donc expose des fonctionnalités qui ne sont pas disponibles pour chaque appareil.
Voici le résultat :
Erreur pour [Jeedom][Viessmann Vitodens 222W][Conso Gaz : ] : Erreur dans l'exécution du terminal, la valeur retournée est : 255. Détails : Array ( [0] => PHP Fatal error: Uncaught Error: Call to undefined method Viessmann\API\ViessmannAPI::getHeatingGasConsumption() in /var/www/html/plugins/script/core/ressources/Viessmann-Api-Develop/getHeatingGasConsumption.php:3 Stack trace: #0 {main} thrown in /var/www/html/plugins/script/core/ressources/Viessmann-Api-Develop/getHeatingGasConsumption.php on line 3 )

C'est bizarre car ma Vitodens 222W me permet de consulter les consommations électriques et gaz sur l'ecran lcd.

vmath54
Timide
Messages : 95
Inscription : 30 sept. 2016, 14:42

Re: Script pour Gestion Chaudière Viessmann connecté

Message par vmath54 » 26 oct. 2018, 21:11

J'ai modifié le script GetHeatingBurnerActive.php pour qu'il retourne '1' si le bruleur fonctionne, et 0 sinon.
Ca marche avec le plugin jeedom script... mais l'info n'est finalement pas très utile.
Ce qui serait utile, ca serait d'avoir le pourcentage de puissance fourni par ce bruleur.

Pas regardé si dispo dans l'API ... je vous informe si je trouve.

Le script modifié (je suis nul en php) :

<?php
include __DIR__.'/bootstrap.php';
if ($viessmannApi->isHeatingBurnerActive()) {
echo "1";
} else {
echo "0";
}

Répondre

Revenir vers « [Plugin officiel] Scripts »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité