Skip to main content

simulateur de panneau solaire

La courbe tension/courant d'un paneau solaire est celle ci:

ps-tension-courant.jpg

Un panneau solaire se comporte comme un générateur de courant constant, avec une zone de transition pour les courants faibles due aux diodes en série. Plus de détails sur cette page: https://solarpost.in/basics/i-v-curve-solar-pv/

Pour le projet Régulateur solaire MPTT j'ai besoin d'une alimentation simulant un panneau solaire pour mettre au point l'agorithme MPTT. Une simple alimentation de laboratoire en courant constant a un comportement trop «carré» pour cela; de plus les alimentation à découpage présentent des impultions lors de la limitation de courant qui, lorsque l'on travaille sous courant élevé, peut être destructeur. L'idée est donc de réaliser une source de courant constant qui réponde au besoin.

emulateur-panneau-solaire.svg

Le courant est limité par le transistor de puissance Q2, monté en darlington avec Q1. Le courant est mesuré aux bornes de la résistance R3. R1, D1 et RV1 fournissent une référence de tension ajustable. L'amplificateur operationel U1 compare la tension aux bornes de R3 avec la référence sur son entrée «+» et sa sortie pilote le transistor de puissance. Pour les courants faibles, Q2 devrait être passant mais le montage darlington impose une chute de tension minimale pour saturer Q2, donnant a l'ensemble un comportement plus linéaire.

Pour R3 nous n'avons pas en stock de résistance de puissance de si faible valeur. Mais nous avons une bobine de fil de cuivre pour lequel le fournisseur donne les caractéristiques; en particulier sa résistance: 183 ohms par Km. 1 mètre de ce cable donnera donc une résistance d'environ 183 mOhms (nous n'avont pas besoin d'une valeur très précise ici; RV1 nous permettra d'ajuster le courant).

Le montage est réalisé sur une breadboard; le transistor de puissance Q2 est monté sur un radiateur pour évacuer la chaleur.

Pour caractériser le montage nous utilisons une alimentation de laboratoire pouvant founir plusieurs ampères sous 25V, et une charge fictive Charge électronique TENMA 72-13210. Cette dernière sera utilisée en tension constante (ce qui veut dire qu'elle consome le courant nécessaire pour atteindre la tension de consigne), en faisant varier le réglage de la tension et en mesurant le courant nous obtenons la courbe I/V du montage.

Cet appareil peut être connecté à un ordinateur par USB, qui pourra alors le piloter et récupŕer les valeur mesurées. L'appareil est vu comme un pont USB/série sur le PC. il envoie ses commandes sous forme de chaine de caractère, et obtient les réponses sous forme de chaine de caractère également (se reporter aux documentations sur la page Charge électronique TENMA 72-13210). Nous allons donc utiliser un script (en perl) pour réaliser les mesures:

#!/usr/pkg/bin/perl use Device::SerialPort; use Time::HiRes qw( usleep ); my $line; my $port = Device::SerialPort->new($ARGV[0]) or die "failed to open serial port"; $port->databits(8); $port->baudrate(115200); $port->parity("none"); $port->stopbits(1); $port->write("*IDN?\n"); $line = getportln($port); print ("IDN: $line\n"); my $setvolt=24; $port->write(":FUNC CV\n"); setvolt($port, $setvolt); $port->write(":INP ON\n"); while ($setvolt >= 10) { setvolt($port, $setvolt); $setvolt = $setvolt - 0.1; } $port->write(":INP OFF\n"); exit(0); sub setvolt { my ($p, $v) = @_; $p->write(":VOLT " . $v . "V\n"); $p->write(":VOLT?\n"); my $l = getportln($p); print("set $l"); usleep(500000); $p->write(":MEAS:CURR?\n"); $l = getportln($p); print(" $l "); $p->write(":MEAS:VOLT?\n"); $l = getportln($p); print(" $l\n"); } sub getportln { my ($p) = @_; my $l = ""; while(1) { my $byte = $port->read(1); if ($byte eq "\n") { $p->lookclear; return $l; } $l = $l . $byte; } }

La commande *IDN? permet de vérifier la communication avec l'appareil. Ensuite nous réglons la consigne à 24V puis activons la charge fictive. ensuite, pour chaque valeur de 24V à 10V (par pas de 0,1V) la consigne est envoyée à l'appareil, et après une attente de 500ms les valeurs mesurées de tension et intensité sont récupérées (cela se passe dans la routine setvolt). Enfin l'appareil est désactivé avant la fin du programme.

L'exécution donne: IDN: TENMA 72-13210 V2.10 S50011730 set 24.000V 0.0000A 24.407V set 24.000V 0.0000A 23.998V set 23.900V 0.0000A 23.896V set 23.800V 0.0000A 23.796V set 23.700V 0.0047A 23.698V set 23.600V 0.0160A 23.598V set 23.500V 0.0382A 23.496V set 23.400V 0.0699A 23.397V set 23.300V 0.1103A 23.296V set 23.200V 0.1546A 23.198V set 23.100V 0.2049A 23.096V set 23.000V 0.2572A 22.996V set 22.900V 0.3104A 22.895V set 22.800V 0.3645A 22.796V set 22.700V 0.4185A 22.698V set 22.600V 0.4733A 22.598V set 22.500V 0.5278A 22.499V set 22.400V 0.5821A 22.398V set 22.300V 0.6363A 22.299V set 22.200V 0.6915A 22.197V set 22.100V 0.7435A 22.099V set 22.000V 0.7974A 21.998V set 21.900V 0.8490A 21.900V set 21.800V 0.9019A 21.797V set 21.700V 0.9536A 21.697V set 21.600V 1.0035A 21.599V set 21.500V 1.0540A 21.499V set 21.400V 1.1048A 21.397V set 21.300V 1.1538A 21.297V set 21.200V 1.2032A 21.196V set 21.100V 1.2502A 21.099V set 21.000V 1.2986A 20.998V set 20.900V 1.3457A 20.898V set 20.800V 1.3929A 20.797V set 20.700V 1.4395A 20.698V set 20.600V 1.4864A 20.596V set 20.500V 1.5310A 20.498V set 20.399V 1.5769A 20.397V set 20.299V 1.6215A 20.298V set 20.199V 1.6672A 20.195V set 20.099V 1.7112A 20.095V set 19.999V 1.7546A 19.996V set 19.899V 1.7979A 19.896V set 19.799V 1.8412A 19.797V set 19.699V 1.8841A 19.696V set 19.599V 1.9263A 19.596V set 19.499V 1.9680A 19.498V set 19.399V 2.0100A 19.397V set 19.299V 2.0521A 19.297V set 19.199V 2.0936A 19.196V set 19.099V 2.1345A 19.096V set 18.999V 2.1762A 18.996V set 18.899V 2.2157A 18.897V set 18.799V 2.2565A 18.796V set 18.699V 2.2964A 18.698V set 18.599V 2.3367A 18.595V set 18.499V 2.3766A 18.495V set 18.399V 2.4148A 18.396V set 18.299V 2.4543A 18.296V set 18.199V 2.4935A 18.197V set 18.099V 2.5313A 18.097V set 17.999V 2.5704A 17.996V set 17.899V 2.6074A 17.899V set 17.799V 2.6465A 17.796V set 17.699V 2.6846A 17.696V set 17.599V 2.7219A 17.595V set 17.499V 2.7594A 17.496V set 17.399V 2.7967A 17.394V set 17.299V 2.8319A 17.297V set 17.199V 2.8357A 17.196V set 17.099V 2.8391A 17.097V set 16.999V 2.8410A 16.994V set 16.899V 2.8443A 16.895V set 16.799V 2.8479A 16.795V set 16.699V 2.8502A 16.696V set 16.599V 2.8547A 16.597V set 16.499V 2.8580A 16.496V set 16.399V 2.8623A 16.397V set 16.299V 2.8651A 16.302V set 16.199V 2.8688A 16.201V set 16.099V 2.8732A 16.099V set 15.999V 2.8777A 16.001V set 15.899V 2.8828A 15.899V set 15.799V 2.8869A 15.802V set 15.699V 2.8913A 15.700V set 15.599V 2.8966A 15.600V set 15.499V 2.9011A 15.500V set 15.399V 2.9062A 15.399V set 15.299V 2.9112A 15.298V set 15.199V 2.9154A 15.201V set 15.099V 2.9199A 15.099V set 14.999V 2.9236A 15.000V set 14.899V 2.9277A 14.899V set 14.799V 2.9312A 14.799V set 14.699V 2.9345A 14.701V set 14.599V 2.9385A 14.600V set 14.499V 2.9426A 14.498V set 14.399V 2.9466A 14.398V set 14.299V 2.9499A 14.298V set 14.199V 2.9532A 14.200V set 14.099V 2.9572A 14.099V set 13.999V 2.9606A 13.999V set 13.899V 2.9642A 13.899V set 13.799V 2.9661A 13.798V set 13.699V 2.9683A 13.698V set 13.599V 2.9723A 13.599V set 13.499V 2.9769A 13.499V set 13.399V 2.9820A 13.400V set 13.299V 2.9866A 13.299V set 13.199V 2.9903A 13.199V set 13.099V 2.9940A 13.101V set 12.999V 2.9972A 13.000V set 12.899V 3.0006A 12.899V set 12.799V 3.0025A 12.798V set 12.699V 3.0055A 12.698V set 12.599V 3.0090A 12.600V set 12.499V 3.0120A 12.498V set 12.399V 3.0176A 12.398V set 12.299V 3.0203A 12.299V set 12.199V 3.0236A 12.198V set 12.099V 3.0270A 12.098V set 11.999V 3.0301A 11.999V set 11.899V 3.0339A 11.899V set 11.799V 3.0392A 11.800V set 11.699V 3.0455A 11.697V set 11.599V 3.0495A 11.598V set 11.499V 3.0538A 11.500V set 11.399V 3.0584A 11.399V set 11.299V 3.0622A 11.298V set 11.199V 3.0652A 11.198V set 11.099V 3.0684A 11.097V set 10.999V 3.0710A 11.000V set 10.899V 3.0740A 10.897V set 10.799V 3.0765A 10.797V set 10.699V 3.0783A 10.698V set 10.599V 3.0806A 10.598V set 10.499V 3.0826A 10.499V set 10.399V 3.0850A 10.399V set 10.299V 3.0871A 10.300V set 10.199V 3.0892A 10.200V set 10.099V 3.0918A 10.100V

Ce fichier pemet de tracer la courbe V/I, par exemple avec gnuplot:

emulsp-2n3716+SS9014.svg

L'ensemble des fichiers sont disponibles dans emulsp.zip