Il faut ajouter 3 lignes dans la fonction GestionOverproduction() du fichier principal.
Je rajoute une ligne d'origine pour se repérer dans le code.
Pour augmenter ou réduire le temps de détection à 0W, modifiez la valeur 100 qui correspond à 20s
unsigned int cptCacsiPuissanceNulle = 0; // à ajouter
void GestionOverproduction() {
...
float Puissance = float(PuissanceS_M - PuissanceI_M);
if (Puissance == 0) cptCacsiPuissanceNulle++; else cptCacsiPuissanceNulle = 0; // à ajouter
...
GainBoucle = float(LesActions[i].Reactivite); //Valeur stockée dans Port
if (cptCacsiPuissanceNulle > 100) GainBoucle *= 10; // à ajouter
Avec ce code, j'observe +1% d'ouverture du triac chaque 2s (sur réception TIC, réactivité à 11 avec 1400W) pendant 20s. Après 20s, j'observe +10% chaque 2s jusqu'à ce que Puissance devienne != 0.
Ludovic
Je rajoute une ligne d'origine pour se repérer dans le code.
Pour augmenter ou réduire le temps de détection à 0W, modifiez la valeur 100 qui correspond à 20s
unsigned int cptCacsiPuissanceNulle = 0; // à ajouter
void GestionOverproduction() {
...
float Puissance = float(PuissanceS_M - PuissanceI_M);
if (Puissance == 0) cptCacsiPuissanceNulle++; else cptCacsiPuissanceNulle = 0; // à ajouter
...
GainBoucle = float(LesActions[i].Reactivite); //Valeur stockée dans Port
if (cptCacsiPuissanceNulle > 100) GainBoucle *= 10; // à ajouter
Avec ce code, j'observe +1% d'ouverture du triac chaque 2s (sur réception TIC, réactivité à 11 avec 1400W) pendant 20s. Après 20s, j'observe +10% chaque 2s jusqu'à ce que Puissance devienne != 0.
Ludovic