Planning sur Sélecteur Domoticz
Planning sur Sélecteur Domoticz
Bonjour,
Je n'arrive pas à piloter mes radiateurs correctement avec cette fonction. Pourtant en commutant les états de pilotage (Off, HorsGel, Eco, Confort) à la main, tout va bien.
Très souvent le passage en mode Confort s'éxécute correctement depuis le planning, mais le passage en mode Off est raté.
Pourtant, le log montre que les commandes sont bien émises.
Mon Domoticz est en version 2020.1. Une version est à upgrader 11995, cela résoudrait?
Dommage, parce que sinon,tout marche très bien. Vos avis? pareil chez vous? autre solution avec du script LUA ou BLOCKLY?
Je n'arrive pas à piloter mes radiateurs correctement avec cette fonction. Pourtant en commutant les états de pilotage (Off, HorsGel, Eco, Confort) à la main, tout va bien.
Très souvent le passage en mode Confort s'éxécute correctement depuis le planning, mais le passage en mode Off est raté.
Pourtant, le log montre que les commandes sont bien émises.
Mon Domoticz est en version 2020.1. Une version est à upgrader 11995, cela résoudrait?
Dommage, parce que sinon,tout marche très bien. Vos avis? pareil chez vous? autre solution avec du script LUA ou BLOCKLY?
Re: Planning sur Sélecteur Domoticz
Je trouve qu'il y a souvent des soucis avec les plannings et les sélecteurs en ce moment : plusieurs sujets parlent de cette problématique
Il y a une autre version stable en 2020.2. Mais je ne pense pas que ça résolve le problème. Tu peux essayer néanmoins (fais quand même une sauvegarde par sécurité).
Il y a une autre version stable en 2020.2. Mais je ne pense pas que ça résolve le problème. Tu peux essayer néanmoins (fais quand même une sauvegarde par sécurité).
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Re: Planning sur Sélecteur Domoticz
Salut,
quel est le protocole?
quel est le type de device? ça donne directement confort et off ou existe-t-il qqch entre?
quel est le protocole?
quel est le type de device? ça donne directement confort et off ou existe-t-il qqch entre?
Re: Planning sur Sélecteur Domoticz
Ma configuration est toute simple et en conformité avec les capteurs MySensors.
Le but de l'installation est de piloter chaque radiateur avec un ordre "fil pilote" pour avoir accès à distance via accès @, et pour domotiser en programmant les plages horaires.
J'utilise un Raspi Pi4, avec Domoticz, qui via une Gateway USB, qui discute avec une poignée de noeuds répartis dans la maison
Chaque noeud est constitué d'un PCB alimenté depuis le 230V du radiateur, et par un module alim, qui permet le 5V sur un Arduino MiniPro, qui pilote 2 optotriacs qui permettent suivant la combinaison binaire d'obtenir 4 état pour piloter le mode de fonctionnement du radiateur. Un capteur de température, hygro, et pression BME280 complète le noeud et permet la remontée des mesures sur Domoticz. Un régulateur 5V/3V,3 permet l'alimentation de l'antenne NRF24L01 on board aussi.
Le tout est installé dans un boitier réalisé 3D.
Coté Domoticz, 2 voies TOR descendent(les optos) et 3 mesures remontent, par radiateur.
Pour piloter en manuel le chauffage, plutôt que d'actionner manuellement les 2 bits binaires, un sélecteur à 4 position est intercalé, un script LUA retranscrit les états aux 2 bits suivant le choix Off, HorsGel, Eco, Confort : ça marche super bien comme ça.
Dès que j'utilise les plannings de chaque sélecteur, c'est la panique.
Merci à tous de votre expertise.
Le but de l'installation est de piloter chaque radiateur avec un ordre "fil pilote" pour avoir accès à distance via accès @, et pour domotiser en programmant les plages horaires.
J'utilise un Raspi Pi4, avec Domoticz, qui via une Gateway USB, qui discute avec une poignée de noeuds répartis dans la maison
Chaque noeud est constitué d'un PCB alimenté depuis le 230V du radiateur, et par un module alim, qui permet le 5V sur un Arduino MiniPro, qui pilote 2 optotriacs qui permettent suivant la combinaison binaire d'obtenir 4 état pour piloter le mode de fonctionnement du radiateur. Un capteur de température, hygro, et pression BME280 complète le noeud et permet la remontée des mesures sur Domoticz. Un régulateur 5V/3V,3 permet l'alimentation de l'antenne NRF24L01 on board aussi.
Le tout est installé dans un boitier réalisé 3D.
Coté Domoticz, 2 voies TOR descendent(les optos) et 3 mesures remontent, par radiateur.
Pour piloter en manuel le chauffage, plutôt que d'actionner manuellement les 2 bits binaires, un sélecteur à 4 position est intercalé, un script LUA retranscrit les états aux 2 bits suivant le choix Off, HorsGel, Eco, Confort : ça marche super bien comme ça.
Dès que j'utilise les plannings de chaque sélecteur, c'est la panique.
Merci à tous de votre expertise.
Re: Planning sur Sélecteur Domoticz
vu ce qui suit, c'est sophistiqué...
Je pourrais suggérer de tester le planning sur des devices dummy pour voir si c'est un pur pb de plannnig ou autre.
Aussi de doubler les commandes qui ne fonctionnement pas toujours 15:15 et 15:16.
Ne pas mettre tous les plannings exactement à la même minute au cas où...
J'utilise les planning pour mon chauffage et c'est ok, c'est un device dummy qui a le planning et un script qui met à jour chaque radiateur. Ma version est 2020.2 (build 12819)
Re: Planning sur Sélecteur Domoticz
A voir aussi ici https://www.domoticz.com/forum/viewtopi ... =6&t=35259
Je vais à la fin sans tout lire en détail:
"Some of them (but not all) are related to a (temporary) wrong timezone setting on the host."
Je vais à la fin sans tout lire en détail:
"Some of them (but not all) are related to a (temporary) wrong timezone setting on the host."
Re: Planning sur Sélecteur Domoticz
Bonjour,
Vous savez quoi? tout marche bien mieux depuis que j'ai calmé un noeud que j'avais un peu oublié car il fonctionnait bien dans son coin : seul problème il émettait des mesures toutes les 2 secondes avec un" Delai(2000); Durée de la boucle en ms" dans l'arduino. Je l'ai passé à Wait(20000), ça libère un peu le réseau? et tout les cas les timers marchent correctement depuis.
J'ai lu que le Wait(MySensors) permet d'attendre sans monopoliser le processeur, contrairement au Delai (d'Arduino de base).
Le fait de passer la remonté de mesure de 2s à 20s peut aider aussi.
Mais je n'y vois pas très clair, quelqu'un a déjà sniffé un réseau MySensors récemment?
Vous savez quoi? tout marche bien mieux depuis que j'ai calmé un noeud que j'avais un peu oublié car il fonctionnait bien dans son coin : seul problème il émettait des mesures toutes les 2 secondes avec un" Delai(2000); Durée de la boucle en ms" dans l'arduino. Je l'ai passé à Wait(20000), ça libère un peu le réseau? et tout les cas les timers marchent correctement depuis.
J'ai lu que le Wait(MySensors) permet d'attendre sans monopoliser le processeur, contrairement au Delai (d'Arduino de base).
Le fait de passer la remonté de mesure de 2s à 20s peut aider aussi.
Mais je n'y vois pas très clair, quelqu'un a déjà sniffé un réseau MySensors récemment?
-
Flying Domotic
- Messages : 772
- Inscription : 10 mars 2020, 15:26
Re: Planning sur Sélecteur Domoticz
Bonjour,
Wait/delay/sleep bloquent l'exécution du programme "utilisateur". Ça ne pose pas de souci lorsqu'on n'a qu'un seul capteur, mais devient problématique quand on en a plusieurs, ou qu'on souhaite faire quelque chose pendant le temps d'attente.
Une autre façon de faire est de modifier un peu le contenu de la boucle loop. Avant :
Après :
En faisant comme ça, on ne bloque plus la boucle, et on peut empiler différents bouts de code avec des timers ou des conditions de déclenchement différents.
Wait/delay/sleep bloquent l'exécution du programme "utilisateur". Ça ne pose pas de souci lorsqu'on n'a qu'un seul capteur, mais devient problématique quand on en a plusieurs, ou qu'on souhaite faire quelque chose pendant le temps d'attente.
Une autre façon de faire est de modifier un peu le contenu de la boucle loop. Avant :
Code : Tout sélectionner
loop: {
do_something;
delay(xxx);
}Code : Tout sélectionner
unsigned long previousTime; //!< horodatage de la dernière exécution du code
loop: {
// Récupérer l'horodatage actuel
unsigned long currentTime = (unsigned long) millis();
// Est-il temps d'exécuter le code ?
if((currentTime - previousTime) > xxx) {
// Oui, mémoriser l'horodatage de la dernière exeécution
previousTime = currentTime;
// Faire le boulot ...
do_something;
}
}