Messages : 9
Sujets : 3
Inscription : Jun 2024
Réputation :
0
Bonjour,
Comment ce traduit le pourcentage de réactivité?
apres plusieurs test j'ai l'impression que si on baisse la réactivitée le temps de montée pourcentage d'ouverture triac est tres lent comme la descente. a contrario si le temps de réactivité est assez élévé la montée est assez rapide mais la descente aussi.
est il possible de dissocier les 2? vitesse de montée et vitesse de descente
Maël
Messages : 676
Sujets : 22
Inscription : May 2024
Réputation :
71
Non la même réactivité s'applique à tout moment.
Cdlt
Messages : 56
Sujets : 4
Inscription : Jul 2024
Réputation :
9
Bonjour,
Pour ceux qui sont sur la lecture TIC avec un CACSI, le temps de montée du triac est en effet plus lent que le temps de descente.
C'est lié au fait que la consommation minimale prise en compte sera toujours à 0W (le max n'a pas de limite).
L'asservissement (ie, la rapidité de convergence) est calculé d'après l'écart (Pw-Puissance)
Puissance étant à minimum 0W d'après la TIC (même si c'est -2000W), on voit bien qu'avec Pw=50, on va avoir un écart de (50-0)=50 lors de la montée du triac; et impossible d'avoir plus que ça.
Alors que pour la descente on peut avoir (2000-50)=1950, cela va donc aller vite pour fermer le triac.
Un moyen d'accélérer la montée du triac, c'est de détecter qu'on reste collé à 0W (pendant un certain temps), et de booster la réactivité tant que Puissance reste à 0W.
// détection où on reste collé à 0W
if (Puissance == 0) cptCacsiPuissanceNulle++;
else cptCacsiPuissanceNulle = 0;
// boost réactivité *10 après un certain temps (20s ici)
GainBoucle = float(LesActions[i].Reactivite); //Valeur stockée dans Port
if (cptCacsiPuissanceNulle > 100) GainBoucle *= 10;
Ludovic
Messages : 56
Sujets : 4
Inscription : Jul 2024
Réputation :
9
12-07-2024, 01:44 PM
(Modification du message : 12-07-2024, 01:47 PM par Ludovic35.)
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