Attention ! Gitlab fournissant maintenant nativement des certificats Let’s Encrypt aux domaines personnalisés des Gitlab Pages, nous avons coupé notre service qui le faisait automatiquement pour vous.

Il est impératif, pour que votre domaine personnalisé continue à avoir un certificat Let’s Encrypt à jour, d’activer la fonctionnalité native dans les paramètres de votre projet. Cette activation remplacera votre certificat actuel par un nouveau certificat Let’s Encrypt géré par Gitlab.

Voir les détails sur https://docs.framasoft.org/fr/gitlab/gitlab-pages-le.html

Commit 47e9d1eb authored by root's avatar root

v 0.3.1

    - Prise en compte du courant de charge max des batteries (dans le régulateur)
    - Ajout de l'angle 0° dans la carte d'iradiation solaire
parent e5e7a8ec
......@@ -31,13 +31,16 @@ if (isset($_GET['submit'])) {
}
if ($_GET['ModRegu'] == 'perso') {
if (empty($_GET['PersoReguVmaxPv']) || $_GET['PersoReguVmaxPv'] < 0) {
$erreurDansLeFormulaire=$erreurDansLeFormulaire.erreurPrint('PersoPvV', 'La tension du régulateur personalisé n\'est pas correcte car < 0');
$erreurDansLeFormulaire=$erreurDansLeFormulaire.erreurPrint('PersoReguVmaxPv', 'La tension du régulateur personalisé n\'est pas correcte car < 0');
}
if (empty($_GET['PersoReguPmaxPv']) || $_GET['PersoReguPmaxPv'] < 0) {
$erreurDansLeFormulaire=$erreurDansLeFormulaire.erreurPrint('PersoPvW', 'La puissance du régulateur personalisé n\'est pas correcte car < 0');
$erreurDansLeFormulaire=$erreurDansLeFormulaire.erreurPrint('PersoReguPmaxPv', 'La puissance du régulateur personalisé n\'est pas correcte car < 0');
}
if (empty($_GET['PersoReguImaxPv']) || $_GET['PersoReguImaxPv'] < 0) {
$erreurDansLeFormulaire=$erreurDansLeFormulaire.erreurPrint('PersoPvVdoc', 'Le courant de court-circuit du régulateur personalisé n\'est pas correcte car < 0');
$erreurDansLeFormulaire=$erreurDansLeFormulaire.erreurPrint('PersoReguImaxPv', 'Le courant de court-circuit du régulateur personalisé n\'est pas correcte car < 0');
}
if (empty($_GET['PersoReguIbat']) || $_GET['PersoReguIbat'] < 0) {
$erreurDansLeFormulaire=$erreurDansLeFormulaire.erreurPrint('PersoReguIbat', 'Le courant de charge max des batteries du régulateur personalisé n\'est pas correcte car < 0');
}
}
if (empty($_GET['Aut']) || $_GET['Aut'] < 0) {
......@@ -296,6 +299,8 @@ if (isset($_GET['submit'])) {
/*
* ####### Recherche d'une Config régulateur : #######
*/
// Courant de charge max avec les batteries
$batICharge = $meilleurParcBatterie['Ah']*$meilleurParcBatterie['nbBatterieParallele'] * $_GET['IbatCharge'] / 100;
// D'abord on test avec 1 régulateur
// Ensuite on test tout en série
// Si on trouve pas, on divise en parallèle
......@@ -316,6 +321,7 @@ if (isset($_GET['submit'])) {
$parcPvW = $nbPvConfigFinal * $meilleurParcPv['W'];
$parcPvV = $VdocParcPv;
$parcPvI = $IscParcPv*$_GET['reguMargeIcc']/100+$IscParcPv;
$meilleurRegulateur = chercherRegulateur();
// Solutaion trouvé
......@@ -340,7 +346,6 @@ if (isset($_GET['submit'])) {
if (!$meilleurRegulateur['nom']) {
echo '<p>Désolé nous n\'avons pas réussi à faire une hypothèse de câblage panneaux/régulateur. ';
if ($_GET['ModRegu'] != 'auto') {
echo 'C\'est peut être une conséquence du choix des panneaux '.$meilleurParcPv['W'].'W. ' ;
echo 'Nous vous encourageons à passer le modèle du régulateur et/ou les panneaux en automatique. ';
}
echo '</p>';
......@@ -375,6 +380,8 @@ if (isset($_GET['submit'])) {
<div id="resultCalcRegu" class="calcul">
<p>Un régulateur type <?= $meilleurRegulateur['nom'] ?>, avec un parc de batterie(s) en <b><?= $meilleurRegulateur['Vbat'] ?>V</b>, accepte : </p>
<ul>
<li><b><?= $meilleurRegulateur['Ibat'] ?>A</b> de courant charge des batteries : </li>
<ul><li>Avec <?= $meilleurParcBatterie['Ah']*$meilleurParcBatterie['nbBatterieParallele'] ?> Ah, le courant de charge ne doit pas exéder <?= $_GET['IbatCharge'] ?>% soit <b><?= $meilleurParcBatterie['Ah']*$meilleurParcBatterie['nbBatterieParallele']*$_GET['IbatCharge']/100 ?></b>A (<a rel="tooltip" class="bulles" title="<?= $meilleurParcBatterie['Ah'] ?> Ah * <?= $meilleurParcBatterie['nbBatterieParallele'] ?> batterie(s) en parallèle(s) * <?= $_GET['IbatCharge'] ?> / 100">?</a>)</li></ul>
<li><b><?= $meilleurRegulateur['PmaxPv'] ?>W</b> de puissance maximum de panneaux : </li>
<ul><li>Avec un total de <?= $nbPvSerie*$nbPvParalele ?> panneau(x) en <?= $meilleurParcPv['W'] ?>W, on monte à <b><?= $meilleurParcPv['W']*$nbPvParalele*$nbPvSerie ?>W</b> (<a rel="tooltip" class="bulles" title="<?= $meilleurParcPv['W'] ?>W x <?= $nbPvParalele*$nbPvSerie ?> panneau(x) ">?</a>)</li></ul>
<li><b><?= $meilleurRegulateur['VmaxPv'] ?>V</b> de tension PV maximale de circuit ouvert : </li>
......@@ -495,6 +502,7 @@ if (isset($_GET['submit'])) {
<label>Donner l'inclinaison des panneaux <a rel="tooltip" class="bulles" title="En site isolé on choisie l'inclinaison optimum pour le pire mois de l'année niveau ensoleillement, en France souvent décembre ~65°">(~65° conseillé)</a></label>
<select name="Deg">
<option value="0"<?php echo valeurRecupSelect('Deg', 0); ?>></option>
<option value="35"<?php echo valeurRecupSelect('Deg', 35); ?>>35°</option>
<option value="65"<?php echo valeurRecupSelect('Deg', 65); ?>>65°</option>
</select>
......@@ -584,8 +592,8 @@ if (isset($_GET['submit'])) {
</select> V <a rel="tooltip" class="bulles" title="En mode automatique la tension des batteries sera déduite du besoin en panneaux<br />De 0 à 800Wc : 12V<br />De 800 à 1600 Wc : 24V<br />Au dessus de 1600 Wc : 48V">(?)</a>
</div>
<div class="form DD">
<label>Degré de décharge : </label>
<input maxlength="2" size="2" id="DD" type="number" step="1" min="0" max="100" style="width: 70px" value="<?php echo valeurRecup('DD'); ?>" name="DD" /> %
<label>Degré de décharge limite : </label>
<input maxlength="2" size="2" id="DD" type="number" step="1" min="0" max="100" style="width: 70px" value="<?php echo valeurRecup('DD'); ?>" name="DD" /> %
</div>
<div class="form ModBat">
<label>Modèle de batterie : </label>
......@@ -630,6 +638,10 @@ if (isset($_GET['submit'])) {
<li>
<label>Tension finale des batteries : <a rel="tooltip" class="bulles" title="Cette valeur se change dans 'Dimensionnement du parc batteries'"><span id="PersoReguVbat"></span>V</a></label>
</li>
<li>
<label>Courant de charge des batteries :</label>
<input type="number" step="0.01" min="0,01" max="999" style="width: 70px;" value="<?php echo valeurRecup('PersoReguIbat'); ?>" name="PersoReguIbat" />A
</li>
<li>
<label>Puissance maximale PV : </label>
<input type="number" min="1" max="9999" style="width: 70px;" value="<?php echo valeurRecup('PersoReguPmaxPv'); ?>" name="PersoReguPmaxPv" />W
......@@ -639,15 +651,25 @@ if (isset($_GET['submit'])) {
<input type="number" min="1" max="9999" style="width: 70px;" value="<?php echo valeurRecup('PersoReguVmaxPv'); ?>" name="PersoReguVmaxPv" />V
</li>
<li>
<label>Max. PV courant de court-circuit :</label>
<label>Max. PV courant (Puissance / Tension) :</label>
<input type="number" step="0.01" min="0,01" max="999" style="width: 70px;" value="<?php echo valeurRecup('PersoReguImaxPv'); ?>" name="PersoReguImaxPv" />A
</li>
</ul>
</div>
<div class="form reguMargeIcc">
<label>Marge de sécurité du courant de court-circuit Icc : </label>
<label>Marge de sécurité du courant de court-circuit Icc des panneaux : </label>
<input maxlength="2" size="2" id="reguMargeIcc" type="number" step="1" min="0" max="100" style="width: 70px" value="<?php echo valeurRecup('reguMargeIcc'); ?>" name="reguMargeIcc" /> %
</div>
<div class="form IbatCharge">
<label>Pourcentage de courant de charge max des batteries : </label>
<input maxlength="2" size="2" id="IbatCharge" type="number" step="1" min="0" max="100" style="width: 70px" value="<?php echo valeurRecup('IbatCharge'); ?>" name="IbatCharge" /> %
</div>
<!--
<div class="form IbatDecharge">
<label>Pourcentage de courant de décharge max : </label>
<input maxlength="2" size="2" id="IbatDecharge" type="number" step="1" min="0" max="100" style="width: 70px" value="<?php echo valeurRecup('IbatDecharge'); ?>" name="IbatDecharge" /> %
</div>
-->
</div>
<div class="form End">
......
......@@ -20,7 +20,7 @@ Pour l'utilisateur de base :
- (précis) Valeur du site http://ines.solaire.free.fr/gisesol_1.php (kWh/m²/j)
- En mode expert, ajuster le degré de décharge, les valeurs de rendement électrique des batteries ou du reste de l'installation,
- Déduction automatique du nombre de panneaux nessésaire (possibilité de forcer un modèle type ou de personnaliser ces caractéristiques)
- Déduction automatique du régulateur nessésaire (possibilité de forcer un modèle type ou de personnaliser ces caractéristiques)
- Déduction automatique du régulateur nécessaire (possibilité de forcer un modèle type ou de personnaliser ces caractéristiques)
- Hypothèse de câblage panneaux / régulateur (exemple : 3 panneaux en série sur 2 paralèles branché sur un régulateur)
- Déduction automatique de la tension du parc de batteries à utiliser (possibilité de forcer une valeur en mode expert)
- Déduction automatique d'une configuration du parc de câblage des batteries et du modèle à utiliser (exemple : "2 batteries 220Ah 12V en série") (possibilité de forcer un modèle de travail en mode expert)
......@@ -53,10 +53,23 @@ Le rendre accessible depuis votre serveur http et personnaliser les valeur du fi
- Bug info bulle pas bien positionné
- Bug plusieurs "auto" appariasse dans le select de tension de batterie en manipulant les régulateurs...
- Bug : virer "1 série" quand il n'y a que des paralèles...
- Préciser que les valeurs des batteries c'est pour du C20 - faire un lien pour explication : http://www.batterie-solaire.com/batterie-delestage-electrique.htm
- ERREUR Régulateur :
Ajouter le courant PV max
sur un 100/30 le 30 c'est le courant de sortie des batterie (pas des panneaux) et ça ne doit pas être > 19% de la capacité des batterie
http://forum-photovoltaique.fr/viewtopic.php?p=407128#p407128
- Truc du frigo 24/24 mais qui consomem pas tout le temps... A affiner...
- Pîque de conso qui fait varier le choix de l'onduleur et donc la tension du parc de batterie...
12V: de 150 à 1500VA, 24V : de 400 à 5000VA, 48V : 1000 à 10000VA... (voir mail de guillaume)
- considère tout les appareils 24/24 + les sélectionné par exemple
- Ajouter l'angle à 0° sur la carte des iradiations pour les camions ect...
- BAT : Toujours respecter le paramètre de 15% de charge 20% de décharge max.
- Prendre en considération l'énergie hybride (éolienne, groupe, hydrolienne...)
- Mettre un script de bugtrack
- Préciser que l'aide d'un professionel est souhaitable
- Pouvoir personnaliser ses batteries
- Prendre en compte l'autodécharge
- Beau dessin du câblage...
- Calcul des sections de câbles
- Prévoir d'autres technologie batterie que AGM
......@@ -67,13 +80,14 @@ Le rendre accessible depuis votre serveur http et personnaliser les valeur du fi
- Traduction anglais
CalcConsommation :
- BUG mettre un arondi
- Plus de pédagogie sur le calcul
- Sauvegarder dans les cookies (il manque pas grand chose)
### Changelog
- 0.3
- Déduction automatique du régulateur nessésaire (possibilité de forcer un modèle type ou de personnaliser ces caractéristiques)
- Déduction automatique du régulateur nécessaire (possibilité de forcer un modèle type ou de personnaliser ces caractéristiques)
- Déduction automatique du câblage des panneaux (série/parallèle)
- 0.2
- Déduction automatique du nombre de panneaux (possibilité de forcer un modèle de travail)
......@@ -84,7 +98,7 @@ CalcConsommation :
- 3 mode au formulaire (Débutant, Eclairé, Expert)
- Pour déterminer l'ensoleillement :
- (simple) Carte par zone
- (précis) Valeur du site http://ines.solaire.free.fr/gisesol_1.php (kWh/m²/j)
- (précis) Valeur du site http://inécessairenes.solaire.free.fr/gisesol_1.php (kWh/m²/j)
- En mode expert, ajuster le degré de décharge, les valeurs de rendement électrique des batteries ou du reste de l'installation,
- Déduction automatique de la tension du parc de batteries à utiliser (possibilité de forcer une valeur en mode expert)
- Déduction automatique de câblage du parc des batteries et du modèle à utiliser (exemple : "2 batteries 220Ah 12V en série") (possibilité de forcer un modèle de travail en mode expert)
......@@ -97,10 +111,11 @@ CalcConsommation :
- La fourchette de prix des panneaux photovoltaïque et des batteries
- Les modèles de batteries possible pour la détermination d'une configuration
### Auteur
### Auteur / contributeur
- David Mercereau [david #arobase# mercereau #point# info](http://david.mercereau.info/contact/)
- David Mercereau [david #arobase# mercereau #point# info](http://david.mercereau.info/contact/) (auteur)
- Largement inspiré du [tableur posté par lr83](http://forum-photovoltaique.fr/viewtopic.php?p=403856#p403837)
- Guillaume Piton de [SolisION-event](http://solision-event.centerblog.net) (contribution technique)
### License
......
......@@ -25,33 +25,45 @@ U=0
Deg=65
; Zone
ZoneId=3
; Marge courant court circuit régulateur Icc
reguMargeIcc=20
; Marge courant court circuit régulateur Icc : ne marge de 38%, car les panneaux sont calibré sur un soleil de 1000Wc au m², hors, en France, on peut atteindre 1380W/m².. cette marge augmente avec le froid et peut baisser si le fabricant du régulateur à déjà appliqué une marge à la conception
reguMargeIcc=38
; Pourcentage de courant de charge max
IbatCharge=15
; Pourcentage de courant de décharge max
IbatDecharge=19
; Rayonnement moyen quotidien du mois le plus défavorable (kWh/m²/j)
[irradiation]
; Lille
zone1_0=0.55
zone1_35=0.83
zone1_65=0.92
; Paris
zone2_0=0.72
zone2_35=1.11
zone2_65=1.22
; Nantes
zone3_0=0.83
zone3_35=1.27
zone3_65=1.39
; Limoges
zone4_0=1.04
zone4_35=1.67
zone4_65=1.85
; Bordeaux
zone5_0=1.09
zone5_35=1.7
zone5_65=1.86
; Carcasonne
zone6_0=1.28
zone6_35=1.99
zone6_65=2.17
; Montpelier
zone7_0=1.55
zone7_35=2.66
zone7_65=2.94
; Marseille
zone8_0=1.49
zone8_35=2.7
zone8_65=2.97
......@@ -133,10 +145,10 @@ pompeimmergee[conso]=400
; 2V Gel opzv
; Le moins cher que j'ai trouvé avec le plus de puissance
; 2485/3000 = 0,828333333 https://www.victronenergy.fr/upload/documents/Pricelist_EURO-C_2017_Q1.pdf
bat2V_bas=0.82
bat2V_bas=0.674
; Le plus cher que j'ai trouvé avec le moins de puissance
; 300/200 = 1,614 http://www.ecolodis-solaire.com/batterie-solaire-2v-opzs-et-opzv-17/batterie-2-volts-opzv-3000-victron-1719
bat2V_haut=1.61
bat2V_haut=2.74
; 12V AGM
; Le moins cher que j'ai trouvé avec le plus de puissance
; 439/220 = 1,995454545 http://electrosun.fr/Batterie-AGM-12V-220-Ah-PowerS
......@@ -185,6 +197,12 @@ PV_Mono_190[V]=24
PV_Mono_190[Vdoc]=43,2
PV_Mono_190[Isc]=5,98
PV_Mono_190[type]="monocristalin"
; http://www.elysun.fr/pdf/elysun_mono_sanyo_240w.pdf
PV_Mono_240[W]=240
PV_Mono_240[V]=24
PV_Mono_240[Vdoc]=43,6
PV_Mono_240[Isc]=7,37
PV_Mono_240[type]="monocristalin"
PV_Mono_300[W]=300
PV_Mono_300[V]=24
PV_Mono_300[Vdoc]=43,5
......@@ -308,183 +326,217 @@ GEL_2_3000[Ah]=3000
; Les 2 derniers caractères précédé d'un "_" doivent définir la tension Vbat du parc de batterie
MPPT_75_10_12[nom]="MPTT 75/10"
MPPT_75_10_12[Vbat]=12
MPPT_75_10_12[Ibat]=10
MPPT_75_10_12[PmaxPv]=145
MPPT_75_10_12[VmaxPv]=75
MPPT_75_10_12[ImaxPv]=10
MPPT_75_10_24[nom]="MPTT 75/10"
MPPT_75_10_24[Vbat]=24
MPPT_75_10_24[Ibat]=10
MPPT_75_10_24[PmaxPv]=290
MPPT_75_10_24[VmaxPv]=75
MPPT_75_10_24[ImaxPv]=10
MPPT_75_15_12[nom]="MPTT 75/15"
MPPT_75_15_12[Vbat]=12
MPPT_75_15_12[Ibat]=15
MPPT_75_15_12[PmaxPv]=220
MPPT_75_15_12[VmaxPv]=75
MPPT_75_15_12[ImaxPv]=15
MPPT_75_15_24[nom]="MPTT 75/15"
MPPT_75_15_24[Vbat]=24
MPPT_75_15_24[Ibat]=15
MPPT_75_15_24[PmaxPv]=440
MPPT_75_15_24[VmaxPv]=75
MPPT_75_15_24[ImaxPv]=15
MPPT_100_15_12[nom]="MPTT 100/15"
MPPT_100_15_12[Vbat]=12
MPPT_100_15_12[Ibat]=15
MPPT_100_15_12[PmaxPv]=220
MPPT_100_15_12[VmaxPv]=100
MPPT_100_15_12[ImaxPv]=15
MPPT_100_15_24[nom]="MPTT 100/15"
MPPT_100_15_24[Vbat]=24
MPPT_100_15_24[Ibat]=15
MPPT_100_15_24[PmaxPv]=440
MPPT_100_15_24[VmaxPv]=100
MPPT_100_15_24[ImaxPv]=15
MPPT_100_30_12[nom]="MPTT 100/30"
MPPT_100_30_12[Vbat]=12
MPPT_100_30_12[Ibat]=30
MPPT_100_30_12[PmaxPv]=440
MPPT_100_30_12[VmaxPv]=100
MPPT_100_30_12[ImaxPv]=30
MPPT_100_30_12[ImaxPv]=35
MPPT_100_30_24[nom]="MPTT 100/30"
MPPT_100_30_24[Vbat]=24
MPPT_100_30_24[Ibat]=30
MPPT_100_30_24[PmaxPv]=880
MPPT_100_30_24[VmaxPv]=100
MPPT_100_30_24[ImaxPv]=30
MPPT_100_30_24[ImaxPv]=35
MPPT_100_50_12[nom]="MPTT 100/50"
MPPT_100_50_12[Vbat]=12
MPPT_100_50_12[Ibat]=50
MPPT_100_50_12[PmaxPv]=700
MPPT_100_50_12[VmaxPv]=100
MPPT_100_50_12[ImaxPv]=50
MPPT_100_50_12[ImaxPv]=60
MPPT_100_50_24[nom]="MPTT 100/50"
MPPT_100_50_24[Vbat]=24
MPPT_100_50_24[Ibat]=50
MPPT_100_50_24[PmaxPv]=1400
MPPT_100_50_24[VmaxPv]=100
MPPT_100_50_24[ImaxPv]=50
MPPT_100_50_24[ImaxPv]=60
MPPT_150_35_12[nom]="MPTT 150/35"
MPPT_150_35_12[Vbat]=12
MPPT_150_35_12[Ibat]=34
MPPT_150_35_12[PmaxPv]=500
MPPT_150_35_12[VmaxPv]=150
MPPT_150_35_12[ImaxPv]=35
MPPT_150_35_12[ImaxPv]=40
MPPT_150_35_24[nom]="MPTT 150/35"
MPPT_150_35_24[Vbat]=24
MPPT_150_35_24[Ibat]=35
MPPT_150_35_24[PmaxPv]=1000
MPPT_150_35_24[VmaxPv]=150
MPPT_150_35_24[ImaxPv]=35
MPPT_150_35_24[ImaxPv]=40
MPPT_150_35_48[nom]="MPTT 150/35"
MPPT_150_35_48[Vbat]=48
MPPT_150_35_48[Ibat]=35
MPPT_150_35_48[PmaxPv]=2000
MPPT_150_35_48[VmaxPv]=150
MPPT_150_35_48[ImaxPv]=35
MPPT_150_35_48[ImaxPv]=40
MPPT_150_45_12[nom]="MPTT 150/45"
MPPT_150_45_12[Vbat]=12
MPPT_150_45_12[Ibat]=45
MPPT_150_45_12[PmaxPv]=650
MPPT_150_45_12[VmaxPv]=150
MPPT_150_45_12[ImaxPv]=45
MPPT_150_45_12[ImaxPv]=50
MPPT_150_45_24[nom]="MPTT 150/45"
MPPT_150_45_24[Vbat]=24
MPPT_150_45_24[Ibat]=45
MPPT_150_45_24[PmaxPv]=1300
MPPT_150_45_24[VmaxPv]=150
MPPT_150_45_24[ImaxPv]=45
MPPT_150_45_24[ImaxPv]=50
MPPT_150_45_48[nom]="MPTT 150/45"
MPPT_150_45_48[Vbat]=48
MPPT_150_45_48[Ibat]=45
MPPT_150_45_48[PmaxPv]=2600
MPPT_150_45_48[VmaxPv]=150
MPPT_150_45_48[ImaxPv]=45
MPPT_150_45_48[ImaxPv]=50
MPPT_150_60_12[nom]="MPTT 150/60"
MPPT_150_60_12[Vbat]=12
MPPT_150_60_12[Ibat]=60
MPPT_150_60_12[PmaxPv]=860
MPPT_150_60_12[VmaxPv]=150
MPPT_150_60_12[ImaxPv]=60
MPPT_150_60_12[ImaxPv]=50
MPPT_150_60_24[nom]="MPTT 150/60"
MPPT_150_60_24[Vbat]=24
MPPT_150_60_24[Ibat]=60
MPPT_150_60_24[PmaxPv]=1720
MPPT_150_60_24[VmaxPv]=150
MPPT_150_60_24[ImaxPv]=60
MPPT_150_60_24[ImaxPv]=50
MPPT_150_60_48[nom]="MPTT 150/60"
MPPT_150_60_48[Vbat]=48
MPPT_150_60_48[Ibat]=60
MPPT_150_60_48[PmaxPv]=3440
MPPT_150_60_48[VmaxPv]=150
MPPT_150_60_48[ImaxPv]=60
MPPT_150_60_48[ImaxPv]=50
MPPT_150_70_12[nom]="MPTT 150/70"
MPPT_150_70_12[Vbat]=12
MPPT_150_70_12[Ibat]=70
MPPT_150_70_12[PmaxPv]=1000
MPPT_150_70_12[VmaxPv]=150
MPPT_150_70_12[ImaxPv]=70
MPPT_150_70_12[ImaxPv]=50
MPPT_150_70_24[nom]="MPTT 150/70"
MPPT_150_70_24[Vbat]=24
MPPT_150_70_24[Ibat]=70
MPPT_150_70_24[PmaxPv]=2000
MPPT_150_70_24[VmaxPv]=150
MPPT_150_70_24[ImaxPv]=70
MPPT_150_70_24[ImaxPv]=50
MPPT_150_70_48[nom]="MPTT 150/70"
MPPT_150_70_48[Vbat]=48
MPPT_150_70_48[Ibat]=70
MPPT_150_70_48[PmaxPv]=4000
MPPT_150_70_48[VmaxPv]=150
MPPT_150_70_48[ImaxPv]=70
MPPT_150_70_48[ImaxPv]=50
MPPT_150_85_12[nom]="MPTT 150/85"
MPPT_150_85_12[Vbat]=12
MPPT_150_85_12[Ibat]=85
MPPT_150_85_12[PmaxPv]=1200
MPPT_150_85_12[VmaxPv]=150
MPPT_150_85_12[ImaxPv]=85
MPPT_150_85_12[ImaxPv]=70
MPPT_150_85_24[nom]="MPTT 150/85"
MPPT_150_85_24[Vbat]=24
MPPT_150_85_24[Ibat]=85
MPPT_150_85_24[PmaxPv]=2400
MPPT_150_85_24[VmaxPv]=150
MPPT_150_85_24[ImaxPv]=85
MPPT_150_85_24[ImaxPv]=70
MPPT_150_85_48[nom]="MPTT 150/85"
MPPT_150_85_48[Vbat]=48
MPPT_150_85_48[Ibat]=85
MPPT_150_85_48[PmaxPv]=4900
MPPT_150_85_48[VmaxPv]=150
MPPT_150_85_48[ImaxPv]=85
MPPT_150_85_48[ImaxPv]=70
MPPT_150_100_12[nom]="MPTT 150/100"
MPPT_150_100_12[Vbat]=12
MPPT_150_100_12[Ibat]=100
MPPT_150_100_12[PmaxPv]=1450
MPPT_150_100_12[VmaxPv]=150
MPPT_150_100_12[ImaxPv]=100
MPPT_150_100_12[ImaxPv]=70
MPPT_150_100_24[nom]="MPTT 150/100"
MPPT_150_100_24[Vbat]=24
MPPT_150_100_24[Ibat]=100
MPPT_150_100_24[PmaxPv]=2900
MPPT_150_100_24[VmaxPv]=150
MPPT_150_100_24[ImaxPv]=100
MPPT_150_100_24[ImaxPv]=70
MPPT_150_100_48[nom]="MPTT 150/100"
MPPT_150_100_48[Vbat]=48
MPPT_150_100_48[Ibat]=100
MPPT_150_100_48[PmaxPv]=5800
MPPT_150_100_48[VmaxPv]=150
MPPT_150_100_48[ImaxPv]=100
MPPT_150_100_48[ImaxPv]=70
MPPT_250_85_12[nom]="MPTT 250/85"
MPPT_250_85_12[Vbat]=12
MPPT_250_85_12[Ibat]=85
MPPT_250_85_12[PmaxPv]=1200
MPPT_250_85_12[VmaxPv]=250
MPPT_250_85_12[ImaxPv]=85
MPPT_250_85_12[ImaxPv]=70
MPPT_250_85_24[nom]="MPTT 250/85"
MPPT_250_85_24[Vbat]=24
MPPT_250_85_24[Ibat]=85
MPPT_250_85_24[PmaxPv]=2400
MPPT_250_85_24[VmaxPv]=250
MPPT_250_85_24[ImaxPv]=85
MPPT_250_85_24[ImaxPv]=70
MPPT_250_85_48[nom]="MPTT 250/85"
MPPT_250_85_48[Vbat]=48
MPPT_250_85_48[Ibat]=85
MPPT_250_85_48[PmaxPv]=4900
MPPT_250_85_48[VmaxPv]=250
MPPT_250_85_48[ImaxPv]=85
MPPT_250_85_48[ImaxPv]=70
MPPT_250_100_12[nom]="MPTT 250/100"
MPPT_250_100_12[Vbat]=12
MPPT_250_100_12[Ibat]=100
MPPT_250_100_12[PmaxPv]=1450
MPPT_250_100_12[VmaxPv]=250
MPPT_250_100_12[ImaxPv]=100
MPPT_250_100_12[ImaxPv]=70
MPPT_250_100_24[nom]="MPTT 250/100"
MPPT_250_100_24[Vbat]=24
MPPT_250_100_24[Ibat]=100
MPPT_250_100_24[PmaxPv]=2900
MPPT_250_100_24[VmaxPv]=250
MPPT_250_100_24[ImaxPv]=100
MPPT_250_100_24[ImaxPv]=70
MPPT_250_100_48[nom]="MPTT 250/100"
MPPT_250_100_48[Vbat]=48
MPPT_250_100_48[Ibat]=100
MPPT_250_100_48[PmaxPv]=5800
MPPT_250_100_48[VmaxPv]=250
MPPT_250_100_48[ImaxPv]=100
MPPT_250_100_48[ImaxPv]=70
......@@ -46,7 +46,7 @@ function erreurPrint($id, $msg) {
// Recherche bonne config régulateur
function chercherRegulateur() {
global $parcPvW,$parcPvV,$parcPvI,$config_ini,$U,$_GET;
global $parcPvW,$parcPvV,$parcPvI,$config_ini,$U,$meilleurParcBatterie,$_GET,$batICharge;
$meilleurRegulateur['nom'] = null;
$meilleurRegulateur['diffRegulateurParcPvW'] = 99999;
......@@ -61,20 +61,26 @@ function chercherRegulateur() {
debug('<li>');
debug('Test de config avec le régulateur perso ::: ');
debug($parcPvW.'&lt;'.$_GET['PersoReguPmaxPv'].'W, ');
debug($parcPvV.'&lt;'.$_GET['PersoReguVmaxPv'].'V, ');
debug($parcPvI.'&lt;'.$_GET['PersoReguImaxPv'].'A');
debug($batICharge.'&lt;'.$_GET['PersoReguIbat'].'A Bat, ');
if ($batICharge < $_GET['PersoReguIbat']) {
debug($parcPvW.'&lt;'.$_GET['PersoReguPmaxPv'].'W, ');
debug($parcPvV.'&lt;'.$_GET['PersoReguVmaxPv'].'V, ');
debug($parcPvI.'&lt;'.$_GET['PersoReguImaxPv'].'A');
if ($parcPvW < $_GET['PersoReguPmaxPv']
&& $parcPvV < $_GET['PersoReguVmaxPv']
&& $parcPvI < $_GET['PersoReguImaxPv']) {
debug(' | ** ça fonctionne ** ');
$meilleurRegulateur['nom'] = 'Regulateur Personnalisé';
$meilleurRegulateur['Vbat'] = $_GET['U'];
$meilleurRegulateur['PmaxPv'] = $_GET['PersoReguPmaxPv'];
$meilleurRegulateur['VmaxPv'] = $_GET['PersoReguVmaxPv'];
$meilleurRegulateur['ImaxPv'] = $_GET['PersoReguImaxPv'];
}
if ($parcPvW < $_GET['PersoReguPmaxPv']
&& $parcPvV < $_GET['PersoReguVmaxPv']
&& $parcPvI < $_GET['PersoReguImaxPv']) {
debug(' | ** ça fonctionne ** ');
$meilleurRegulateur['nom'] = 'Regulateur Personnalisé';
$meilleurRegulateur['Vbat'] = $_GET['U'];
$meilleurRegulateur['Ibat'] = $_GET['PersoReguIbat'];
$meilleurRegulateur['PmaxPv'] = $_GET['PersoReguPmaxPv'];
$meilleurRegulateur['VmaxPv'] = $_GET['PersoReguVmaxPv'];
$meilleurRegulateur['ImaxPv'] = $_GET['PersoReguImaxPv'];
}
} else {
debug(' | impossible ');
}
debug('</li>');
} else {
......@@ -95,10 +101,15 @@ function chercherRegulateur() {
debug('<li>');
debug('Test de config avec le '.$regulateur['nom'].' ::: ');
debug($batICharge.'&lt;'.$regulateur['Ibat'].'A Bat, ');
if (! $batICharge > $regulateur['Ibat']) {
continue;
}
debug($parcPvW.'&lt;'.$regulateur['PmaxPv'].'W, ');
debug($parcPvV.'&lt;'.$regulateur['VmaxPv'].'V, ');
debug($parcPvI.'&lt;'.$regulateur['ImaxPv'].'A');
if ($parcPvW < $regulateur['PmaxPv']
&& $parcPvV < $regulateur['VmaxPv']
&& $parcPvI < $regulateur['ImaxPv']) {
......@@ -121,6 +132,7 @@ function chercherRegulateur() {
$meilleurRegulateur['diffRegulateurParcPvA'] = $diffRegulateurParcPvI;
$meilleurRegulateur['nom'] = $regulateur['nom'];
$meilleurRegulateur['Vbat'] = $regulateur['Vbat'];
$meilleurRegulateur['Ibat'] = $regulateur['Ibat'];
$meilleurRegulateur['PmaxPv'] = $regulateur['PmaxPv'];
$meilleurRegulateur['VmaxPv'] = $regulateur['VmaxPv'];
$meilleurRegulateur['ImaxPv'] = $regulateur['ImaxPv'];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment