Estimation d'injection avec TIC + CACSI - Version imprimable +- F1ATB forum (https://f1atb.fr/forum_f1atb) +-- Forum : Forum de F1ATB (https://f1atb.fr/forum_f1atb/forum-3.html) +--- Forum : Routeur Photovoltaïque (https://f1atb.fr/forum_f1atb/forum-4.html) +---- Forum : Evolutions faites, à faire, dont vous rêvez... (https://f1atb.fr/forum_f1atb/forum-10.html) +---- Sujet : Estimation d'injection avec TIC + CACSI (/thread-230.html) |
Estimation d'injection avec TIC + CACSI - Ludovic35 - 13-07-2024 Bonjour, On voit que l'usage de la TIC a une limitation quand on a un CACSI; la réactivité à ouvrir le triac est lente. Cela vient du fait que le Linky ne fournit pas la puissance injectée; on considère donc que c'est 0W. L'ouverture du triac étant piloté par un asservissement, la réactivité va dépendre de l'écart (Puissance-Pw). L'écart étant faible, la réactivité à la montée est faible. Quand on observe les données du Linky, on peut voir que même si SINSTS (puissance apparente) est à 0VA, IRMS n'est pas toujours à 0A. On peut donc estimer grossièrement la puissance injectée quand la valeur SINSTS est à 0VA (et seulement quand c'est 0VA). L'estimation ne sera pas précise car la précision sur la mesure en courant est à 1A, soit 230VA environ. Cela ne devrait pas être trop gênant car le principal est de corriger sur de forts écarts (Puissance-Pw). Estimation injection = (SINSTS1 == 0 ? -1 : 1) * URMS1 * IRMS1 + (SINSTS2 == 0 ? -1 : 1) * URMS2 * IRMS2 + (SINSTS3 == 0 ? -1 : 1) * URMS3 * IRMS3 (formule probablement à revoir pour le triphasé) Exemple ici en triphasé. SINSTS=0 Estimation injection = 1*236-2*235-2*235 = -704W IRMS1 001 / IRMS2 002 1 IRMS3 002 2 URMS1 236 E URMS2 235 E URMS3 235 F SINSTS 00000 F SINSTS1 00178 G SINSTS2 00000 8 SINSTS3 00000 9 Dans ce cas, on pourrait utiliser la valeur -704VA plutôt que 0VA du SINSTS. Cela éviterait d'avoir à booster la réactivité quand on détecte SINSTS collé à 0VA sur plusieurs secondes. La modification doit pouvoir tenir dans le fichier Source_Linky.ino. Je peux tester une version béta sous vous le souhaitez. Cordialement, Ludovic RE: Estimation d'injection avec TIC + CACSI - F1ATB - 14-07-2024 On risque un asservissement instable. Lorsque que l'on régule bien, la valeur en VA augmente fortement et c'est là ou il ne faut pas changer le réglage. Cdlt RE: Estimation d'injection avec TIC + CACSI - Ludovic35 - 14-07-2024 (14-07-2024, 08:40 AM)F1ATB a écrit : On risque un asservissement instable. Lorsque que l'on régule bien, la valeur en VA augmente fortement et c'est là ou il ne faut pas changer le réglage. Il faudrait regarder les valeurs IRMS et URMS quand la régulation se passe bien. Les valeurs "RMS" pourraient être différentes de la puissance apparente SINSTS. Mais si le résultat est de même nature que la puissance apparente, alors cela ne fonctionnerait pas. Cordialement RE: Estimation d'injection avec TIC + CACSI - Ludovic35 - 14-07-2024 Ma curiosité m'a poussé à faire une tentative... En cas de CACSI détecté (absence EAIT), ET si PuissanceS_M==0, on calcule de l'estimation de la puissance injectée pPuissance (sur réception du champ SMAXSN1). Si pPuissance < -100, on force PuissanceI_M = pPuissance. S'il y a moins de 100W estimés en injection, on ne change rien. A ma surprise, cela fonctionne bien; on gagne beaucoup en réactivité. https://zupimages.net/viewer.php?id=24/28/hro8.png Les pics à -475W sont issus de ce changement; j'ai un lave-linge qui tourne et fait varier régulièrement la puissance consommée. Dans mon réglage, je garde la consigne PW=50W, car l'estimation de puissance injectée n'est que grossière, et n'est valable que pour des valeurs <-100W Je vais continuer à observer le comportement avec cette solution, afin de vérifier que cela ne génère pas d'instabilité. Je met les bouts de codes ici: int pIRMS1, pIRMS2, pIRMS3 = -1, pURMS1, pURMS2, pURMS3, pSINSTS1, pSINSTS2, pSINSTS3, pPuissance; void LectureLinky() { //Lecture port série du LINKY ... if (!EAITvalid && Tm > 8000) { //Cas des CACSI ou EAIT n'est jamais positionné EAITvalid = true; cacsi = true; StockMessage("Detection mode CACSI/TIC"); } ... if (code.indexOf("IRMS1") == 0) { Intensite_M = val.toFloat(); //Phase 1 uniquement } if (code.indexOf("URMS1") == 0) { pURMS1 = val.toInt(); } if (code.indexOf("URMS2") == 0) { pURMS2 = val.toInt(); } if (code.indexOf("URMS3") == 0) { pURMS3 = val.toInt(); } if (code.indexOf("IRMS1") == 0) { pIRMS1 = val.toInt(); } if (code.indexOf("IRMS2") == 0) { pIRMS2 = val.toInt(); } if (code.indexOf("IRMS3") == 0) { pIRMS3 = val.toInt(); } if (code.indexOf("SINSTS1") == 0) { pSINSTS1 = val.toInt(); } if (code.indexOf("SINSTS2") == 0) { pSINSTS2 = val.toInt(); } if (code.indexOf("SINSTS3") == 0) { pSINSTS3 = val.toInt(); } if (code.indexOf("SMAXSN1") == 0) { pPuissance = 0; if (cacsi && PuissanceS_M == 0) { // estimation de la puissance d'injection si PuissanceS_M==0 pPuissance = (pSINSTS1 == 0?-1:1) * pURMS1 * pIRMS1; if (pIRMS3 != -1) { // triphasé pPuissance += (pSINSTS2 == 0?-1:1) * pURMS2 * pIRMS2; pPuissance += (pSINSTS3 == 0?-1:1) * pURMS3 * pIRMS3; } if (pPuissance > -100) { // pas d'estimation si l'écart est faible pPuissance = 0; } } PuissanceI_M = -pPuissance; } Cordialement RE: Estimation d'injection avec TIC + CACSI - Ludovic35 - 19-07-2024 Bonjour, Voilà un premier retour après quelques jours de fonctionnement avec une estimation d'injection (TIC et CACSI): https://www.zupimages.net/viewer.php?id=24/29/9qhv.png (la courbe de température interne en dents de scie est le résultat du déclenchement du ventilateur si t >= 35°C) La régulation est rapide maintenant qu'il y a une estimation de l'injection. La marge de 150W semble être adaptée (avec une précision à 230W, cela affiche 80W d'injection par exemple s'il y a 1A) Je n'ai pas encore vu d'instabilité dans l'asservissement. Code source modifié ici: https://drive.google.com/file/d/1iHNg7w1e4JxG0PF-B5FPyiXV99gzrfTS Cordialement RE: Estimation d'injection avec TIC + CACSI - mternet - 21-07-2024 (14-07-2024, 05:47 PM)Ludovic35 a écrit : Ma curiosité m'a poussé à faire une tentative... Super boulot Ludovic ! RE: Estimation d'injection avec TIC + CACSI - Ludovic35 - 22-07-2024 Merci. Il faudrait vérifier si ça fonctionne toujours aussi bien avec un cumulus en monophasé / 3000W. J'ai 3 résistances en tri (soit 1400W sur 2+1 phases); je ne vois donc pas le comportement sur de plus fortes puissances. Cordialement RE: Estimation d'injection avec TIC + CACSI - mternet - 24-07-2024 (22-07-2024, 03:14 PM)Ludovic35 a écrit : Merci. Je ne pourrais pas vérifier car je n'utilise plus de cumulus depuis lontemps à cause du taux de calcaire dans l'eau, je me situe au pied des Corbières et les chauffe eau durent aux maximum 3 ans , cependant , je me lave quand meme... avec un chauffeau électrique instantané de 5kw et dont le cricuit d'eau est vidé totalement après chaque utilisation. Je suis juste heureux de voir des personnes qui recherchent et mettent les mains "dans le camboui" et grand merci à André de mettre à disposition les codes source ! RE: Estimation d'injection avec TIC + CACSI - Ludovic35 - 28-07-2024 Bonjour, Ci-dessous, une capture montrant la réactivité de l'asservissement avec une lecture de la TIC quand une charge de 2000W s'allume puis s'éteint. https://zupimages.net/viewer.php?id=24/30/0yid.png La charge asservie sur un SSR en multi-sinus est de 1500W (l'autre charge, le CE, est plein). On peut voir qu'il y a une estimation d'injection à 560W (~= 3A*230V-150W_marge). La précision étant à 1A, on retrouve des variations de ~230W. On observe que c'est aussi rapide sur la fermeture du SSR que sur sa fermeture; environ 15s au total. Cordialement, |