![]() |
probleme mutisinus - 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) +--- Sujet : probleme mutisinus (/thread-686.html) |
probleme mutisinus - 59jag - 01-11-2024 Bonjour, Encore bravo pour votre routeur. Voulant rajouter un sortie DAC a l esp pour piloter un chargeur de batterie LFP avec votre routeur je me suis plongée dans votre code . je regarde la partie multisinus , ou il y a le calcul pour remplir les 2 tableaux tabPulseSinusTotal[I] et tabPulseSinusOn[I] normalement pour éviter les composantes continues il faut le couple de valeur soit paire ou impaire, mais pas impaire et pair. Code : //Tableau Longueur Pulse et Longueur Trame pour Multi-Sinus de 0 à 100% pour etre sur j ai fait une simulation avec (T % 2 == 1 || N % 2 == 0) ca donne ceci dans les tableaux I T N N/T TARGET Resultat 0 20 0 0.000 0.00 ok 1 73 1 0.014 0.01 ok 2 43 1 0.023 0.02 ok 3 31 1 0.032 0.03 ok 4 23 1 0.043 0.04 ok 5 21 1 0.048 0.05 ok 6 32 2 0.062 0.06 ok 7 28 2 0.071 0.07 ok 8 24 2 0.083 0.08 ok 9 22 2 0.091 0.09 ok 10 20 2 0.100 0.10 ok 11 27 3 0.111 0.11 ok 12 25 3 0.120 0.12 ok 13 23 3 0.130 0.13 ok 14 21 3 0.143 0.14 ok 15 26 4 0.154 0.15 ok 16 25 4 0.160 0.16 bad 17 23 4 0.174 0.17 bad 18 22 4 0.182 0.18 ok 19 21 4 0.190 0.19 bad 20 20 4 0.200 0.20 ok 21 29 6 0.207 0.21 bad 22 23 5 0.217 0.22 ok 23 26 6 0.231 0.23 ok 24 21 5 0.238 0.24 ok 25 24 6 0.250 0.25 ok 26 23 6 0.261 0.26 bad 27 22 6 0.273 0.27 ok 28 25 7 0.280 0.28 ok 29 31 9 0.290 0.29 ok 30 20 6 0.300 0.30 ok 31 26 8 0.308 0.31 ok 32 25 8 0.320 0.32 bad 33 21 7 0.333 0.33 ok 34 35 12 0.343 0.34 bad 35 23 8 0.348 0.35 bad 36 22 8 0.364 0.36 ok 37 27 10 0.370 0.37 bad 38 21 8 0.381 0.38 bad 39 23 9 0.391 0.39 ok 40 20 8 0.400 0.40 ok 41 27 11 0.407 0.41 ok 42 24 10 0.417 0.42 ok 43 21 9 0.429 0.43 ok 44 25 11 0.440 0.44 ok 45 29 13 0.448 0.45 ok 46 26 12 0.462 0.46 ok 47 30 14 0.467 0.47 ok 48 21 10 0.476 0.48 bad 49 37 18 0.486 0.49 bad 50 20 10 0.500 0.50 ok 51 37 19 0.514 0.51 ok 52 21 11 0.524 0.52 ok 53 30 16 0.533 0.53 ok 54 26 14 0.538 0.54 ok 55 29 16 0.552 0.55 bad 56 25 14 0.560 0.56 bad 57 21 12 0.571 0.57 bad 58 24 14 0.583 0.58 ok 59 27 16 0.593 0.59 bad 60 20 12 0.600 0.60 ok 61 23 14 0.609 0.61 bad 62 21 13 0.619 0.62 ok 63 27 17 0.630 0.63 ok 64 22 14 0.636 0.64 ok 65 23 15 0.652 0.65 ok 66 35 23 0.657 0.66 ok 67 21 14 0.667 0.67 bad 68 25 17 0.680 0.68 ok 69 26 18 0.692 0.69 ok 70 20 14 0.700 0.70 ok 71 31 22 0.710 0.71 bad 72 25 18 0.720 0.72 bad 73 22 16 0.727 0.73 ok 74 23 17 0.739 0.74 ok 75 24 18 0.750 0.75 ok 76 21 16 0.762 0.76 bad 77 26 20 0.769 0.77 ok 78 23 18 0.783 0.78 bad 79 29 23 0.793 0.79 ok 80 20 16 0.800 0.80 ok 81 21 17 0.810 0.81 ok 82 22 18 0.818 0.82 ok 83 23 19 0.826 0.83 ok 84 25 21 0.840 0.84 ok 85 26 22 0.846 0.85 ok 86 21 18 0.857 0.86 bad 87 23 20 0.870 0.87 bad 88 25 22 0.880 0.88 bad 89 27 24 0.889 0.89 bad 90 20 18 0.900 0.90 ok 91 22 20 0.909 0.91 ok 92 24 22 0.917 0.92 ok 93 28 26 0.929 0.93 ok 94 32 30 0.937 0.94 ok 95 21 20 0.952 0.95 bad 96 23 22 0.957 0.96 bad 97 31 30 0.968 0.97 bad 98 43 42 0.977 0.98 bad 99 73 72 0.986 0.99 bad 100 20 20 1.000 1.00 ok avec if ((T % 2) ^ (N % 2) == 0) I T N N/T TARGET Resultat 0 20 0 0.000 0.00 ok 1 73 1 0.014 0.01 ok 2 43 1 0.023 0.02 ok 3 31 1 0.032 0.03 ok 4 23 1 0.043 0.04 ok 5 21 1 0.048 0.05 ok 6 32 2 0.062 0.06 ok 7 28 2 0.071 0.07 ok 8 24 2 0.083 0.08 ok 9 22 2 0.091 0.09 ok 10 20 2 0.100 0.10 ok 11 27 3 0.111 0.11 ok 12 25 3 0.120 0.12 ok 13 23 3 0.130 0.13 ok 14 21 3 0.143 0.14 ok 15 26 4 0.154 0.15 ok 16 31 5 0.161 0.16 ok 17 24 4 0.167 0.17 ok 18 22 4 0.182 0.18 ok 19 32 6 0.187 0.19 ok 20 20 4 0.200 0.20 ok 21 33 7 0.212 0.21 ok 22 23 5 0.217 0.22 ok 23 26 6 0.231 0.23 ok 24 21 5 0.238 0.24 ok 25 24 6 0.250 0.25 ok 26 27 7 0.259 0.26 ok 27 22 6 0.273 0.27 ok 28 25 7 0.280 0.28 ok 29 31 9 0.290 0.29 ok 30 20 6 0.300 0.30 ok 31 26 8 0.308 0.31 ok 32 41 13 0.317 0.32 ok 33 21 7 0.333 0.33 ok 34 64 22 0.344 0.34 ok 35 34 12 0.353 0.35 ok 36 22 8 0.364 0.36 ok 37 35 13 0.371 0.37 ok 38 29 11 0.379 0.38 ok 39 23 9 0.391 0.39 ok 40 20 8 0.400 0.40 ok 41 27 11 0.407 0.41 ok 42 24 10 0.417 0.42 ok 43 21 9 0.429 0.43 ok 44 25 11 0.440 0.44 ok 45 29 13 0.448 0.45 ok 46 26 12 0.462 0.46 ok 47 30 14 0.467 0.47 ok 48 23 11 0.478 0.48 ok 49 39 19 0.487 0.49 ok 50 20 10 0.500 0.50 ok 51 37 19 0.514 0.51 ok 52 21 11 0.524 0.52 ok 53 30 16 0.533 0.53 ok 54 26 14 0.538 0.54 ok 55 31 17 0.548 0.55 ok 56 32 18 0.562 0.56 ok 57 28 16 0.571 0.57 ok 58 24 14 0.583 0.58 ok 59 29 17 0.586 0.59 ok 60 20 12 0.600 0.60 ok 61 31 19 0.613 0.61 ok 62 21 13 0.619 0.62 ok 63 27 17 0.630 0.63 ok 64 22 14 0.636 0.64 ok 65 23 15 0.652 0.65 ok 66 35 23 0.657 0.66 ok 67 24 16 0.667 0.67 ok 68 25 17 0.680 0.68 ok 69 26 18 0.692 0.69 ok 70 20 14 0.700 0.70 ok 71 41 29 0.707 0.71 ok 72 36 26 0.722 0.72 ok 73 22 16 0.727 0.73 ok 74 23 17 0.739 0.74 ok 75 24 18 0.750 0.75 ok 76 25 19 0.760 0.76 ok 77 26 20 0.769 0.77 ok 78 27 21 0.778 0.78 ok 79 29 23 0.793 0.79 ok 80 20 16 0.800 0.80 ok 81 21 17 0.810 0.81 ok 82 22 18 0.818 0.82 ok 83 23 19 0.826 0.83 ok 84 25 21 0.840 0.84 ok 85 26 22 0.846 0.85 ok 86 28 24 0.857 0.86 ok 87 30 26 0.867 0.87 ok 88 33 29 0.879 0.88 ok 89 36 32 0.889 0.89 ok 90 20 18 0.900 0.90 ok 91 22 20 0.909 0.91 ok 92 24 22 0.917 0.92 ok 93 28 26 0.929 0.93 ok 94 32 30 0.937 0.94 ok 95 38 36 0.947 0.95 ok 96 46 44 0.957 0.96 ok 97 59 57 0.966 0.97 ok 98 84 82 0.976 0.98 ok 99 -1 -1 1.000 0.99 ok 100 20 20 1.000 1.00 ok seul 99 ne donne pas de resultat. voila j espere ne pas avoir dit trop de conneries RE: probleme mutisinus - F1ATB - 02-11-2024 Je ne vois pas quel est votre critère pour dire bad ou ok. André RE: probleme mutisinus - 59jag - 02-11-2024 (02-11-2024, 06:58 AM)F1ATB a écrit : Je ne vois pas quel est votre critère pour dire bad ou ok.si j ai bien compris la logique du programme par exemple a l' itération 16 de la boucle qui donne (16 25 4 0.160 0.16 bad ) on a 4 demi alternances ON sur un total de 25 , si on considère la première alternance est positive la 4eme est alors négative et la 25eme positive, et on recommence le cycle avec une positive . or on veux éviter les composantes continues donc lorsque tabPulseSinusOn est paire faut un total pair et de même quand c est impaire faut un tolal impaire. sinon ca marche très bien comme ca j ai aucun parasites. RE: probleme mutisinus - gerapi - 02-11-2024 (02-11-2024, 11:49 AM)59jag a écrit :(02-11-2024, 06:58 AM)F1ATB a écrit : Je ne vois pas quel est votre critère pour dire bad ou ok.si j ai bien compris la logique du programme bonjour, chez moi ce mode fait scintiller la lampe led de mon bureau j'ai un triac, c'est peut-être différent avec un ssr RE: probleme mutisinus - gerapi - 02-11-2024 je n'ai pas été assez explicite le triac pilote un cumulus 2000 W la lampe led qui scintille n'a rien à voir avec le routeur, c'est la lampe de mon bureau RE: probleme mutisinus - H3rv3 - 15-11-2024 (02-11-2024, 11:49 AM)59jag a écrit :(02-11-2024, 06:58 AM)F1ATB a écrit : Je ne vois pas quel est votre critère pour dire bad ou ok.si j ai bien compris la logique du programme Interessant. Mais je pense que le code d'André est bon. 1. La condition de neutralité est bonne pour toutes les combinations où il y a un nombre d'alternances complètes (c'est à dire N est pair). 2. Dans le cas où le total est impair, le cycle suivant recommence sur un alternance differente (dans votre exemple de l'itération 16, le cycle suivant repart sur une demi alternance négative) et donc il faut un nombre de demi alternances impair pour garder la neutralité. Donc, la condition de neutralité est bonne pour tous les T impairs (avec N pair c'est la condition 1 ci-dessus, avec N impair c'est cette explication 2). 3. Le seul cas qui n'est pas bon c'est T pair et N impair. Dans ce cas on démarerait toujours sur la même alternance créant un surplus de demi alternance de ce signe. La condition de la boucle (T impair OU N pair), comme codé par André est donc bonne. La votre évite aussi les combinaisons T pair-N impair et donc elle est bonne aussi (mias elle donne 1 pour 0.99 ![]() Cdlt. RE: probleme mutisinus - 59jag - 16-11-2024 (15-11-2024, 09:52 AM)H3rv3 a écrit : Interessant. Mais je pense que le code d'André est bon.Bonjour. je parle d'éviter d avoir 2 alternances du même signe a la suite. par exemple avec T impair et N pair comme l itération 16 ou T pair et N impair . en gros pour ne pas avoir 2 alternances du même signe a la suite il faut T+N pair. ex avec T=5 et N=2 RE: probleme mutisinus - H3rv3 - 16-11-2024 Bonjour, Citation :je parle d'éviter d avoir 2 alternances du même signe a la suite.OK, mais ce n'est pas la même chose que de ne pas avoir de composante continue. Une alternance complète n'a pas de composante continue. On a seulement besoin de s'assurer qu'on ne démarre pas sur la même alternance si le nombre de demi alternances actives est impair. Citation :pour ne pas avoir 2 alternances du même signe a la suite il faut T+N pair.Visiblement pas une condition sufisante et nécessaire. Dans le cas de l'exemple T=5 et N=2, on démarre bien sur une alternance diferente mais 5+2=7 est impair. Je ne vois toujours pas pourquoi André devrait changer le code. Cdlt. RE: probleme mutisinus - 59jag - 16-11-2024 [quote pid="4805" dateline="1731766438"] Visiblement pas une condition sufisante et nécessaire. Dans le cas de l'exemple T=5 et N=2, on démarre bien sur une alternance diferente mais 5+2=7 est impair. [/quote] faux regarde l image que j ai mis au poste précédent RE: probleme mutisinus - H3rv3 - 17-11-2024 ok, je pense que les malentendus sont dus au fait de parler d'alternances pour nomer les demis alternances et je pense que j'ai compris le but: éviter que la demi alternance de départ d'un nouveau cycle soit la même que la dernière demi alternance du cycle. C'est louable et très nécessaire quand le nombre de demi alternances actives est impair. Dans ce cas là en effet commencer toujours sur la même demi alternance créerai une composante continue. Mais ca sert à quoi quand le nombre de demi alternances est pair? Dans l'exemple T5 N2 où est la composante continue? Cdlt. |