Table des matières:

Onduleur Grid Tie : 10 étapes (avec photos)
Onduleur Grid Tie : 10 étapes (avec photos)

Vidéo: Onduleur Grid Tie : 10 étapes (avec photos)

Vidéo: Onduleur Grid Tie : 10 étapes (avec photos)
Vidéo: Small domestic wind turbine solution 2024, Juillet
Anonim
Image
Image
Onduleur de lien de grille
Onduleur de lien de grille
Onduleur de lien de grille
Onduleur de lien de grille

C'est un projet charnu alors attachez-vous!

Les onduleurs réseau vous permettent d'alimenter une prise secteur, ce qui est une capacité impressionnante. Je trouve l'électronique de puissance et les systèmes de contrôle impliqués dans leur conception intéressants alors j'ai construit le mien. Ce rapport partage ce que j'ai appris et documente comment j'ai fait les choses. Je serais intéressé par tous vos commentaires (à part ceux sur le fait de ne pas déranger le réseau électrique).

Tous les concepts sont évolutifs, mais cette configuration avait une puissance maximale de 40 watts avant que les inducteurs du filtre ne commencent à saturer. Le courant de sortie était sinusoïdal avec un THD < 5%.

Voir le logiciel sur mon GitHub

Fournitures

  • J'ai utilisé la carte de développement STM32F407. Il fonctionne à 168 MHz et dispose de 3 CAN intégrés capables d'une résolution de 12 bits à plus de 2,4 MSPS (millions d'échantillons par seconde) chacun. C'est dingue!
  • J'ai utilisé la carte de développement DRV8301. Celui-ci abrite un pont en H 60v ainsi que les pilotes de grille, les shunts de courant et les amplificateurs de shunt de courant nécessaires. Super sympa !
  • J'ai utilisé un transformateur toroïdal 230-25v avec 2 prises de sortie. Cela signifiait que je n'avais pas à produire directement de tension secteur, mais que je pouvais plutôt travailler avec des tensions de crête de 40 volts. Beaucoup plus sécuritaire!
  • J'ai connecté une charge d'inducteurs et de condensateurs ensemble pour obtenir les valeurs L et C que je voulais pour le filtre.
  • Un oscilloscope et une sonde différentielle sont essentiels pour un projet comme celui-ci. j'ai un picoscope

Étape 1: Qu'est-ce que l'alimentation secteur ?

Qu'est-ce que l'alimentation secteur ?
Qu'est-ce que l'alimentation secteur ?
Qu'est-ce que l'alimentation secteur ?
Qu'est-ce que l'alimentation secteur ?

Ce que vous obtenez sur une prise de courant (au Royaume-Uni) est un signal sinusoïdal 50 Hz 230 V RMS avec une très faible impédance. Quelques choses à dire à ce sujet:

50 Hz - La fréquence du secteur est maintenue très précisément à 50 Hz. Il varie légèrement, mais 90 % du temps, il se situe entre 49,9 et 50,1 Hz. Vois ici. Vous pouvez imaginer tous les énormes générateurs des centrales électriques de haut en bas du pays tournant à l'unisson. Ils tournent de manière synchrone, produisant pour nous un signal sinusoïdal de 50 Hz. Leur inertie de rotation massive combinée met du temps à ralentir ou à accélérer.

En théorie, si une charge ÉNORME était connectée au réseau, elle commencerait à ralentir les générateurs du pays. Cependant, en réponse, les gars du bureau de contrôle du National Grid demanderaient aux centrales électriques d'alimenter leurs chaudières, d'augmenter le chauffage et de forcer ces générateurs plus durement à répondre à la demande. Ainsi, l'offre et la demande sont dans une danse continue l'une avec l'autre.

Une dernière chose à dire sur le signal 50Hz. Bien que cela varie très légèrement autour de 50 Hz, les gars du haut s'assurent que la fréquence moyenne au cours de la journée est exactement de 50 Hz. Donc, si la grille est à 49,95 Hz pendant 10 minutes, ils s'assureront qu'elle fonctionne à 50,05 Hz plus tard pour amener le nombre exact de cycles à 50 Hz x 60 secondes x 60 minutes x 24 heures = 4 320 000/jour. Ils le font précisément en utilisant le temps atomique international. Les appareils ménagers, de bureau et industriels peuvent donc utiliser la fréquence du réseau pour garder l'heure. Cela se fait couramment avec des minuteries à douilles mécaniques par exemple.

230v - C'est la tension RMS (Root Mean Square) du signal 50Hz. Le signal réel oscille jusqu'à un pic de 325v. Ceci est important à savoir car si vous construisez un onduleur, vous devez produire des tensions aussi élevées si vous voulez faire circuler du courant dans les prises.

En réalité, les tensions vues sur une prise de votre maison sont assez variables. Cela est dû à la chute de tension à travers la résistance dans les fils, les connecteurs, les fusibles, les transformateurs, etc. Il y a de la résistance partout. Si vous allumez une douche électrique tirant 11 kilowatts (c'est ~ 50 ampères), alors même 0,2 ohms de résistance va vous faire chuter de 10 volts. Vous pouvez voir cela comme les lumières diminuant très légèrement. Les gros moteurs, comme ceux des aspirateurs, consomment d'énormes courants pendant que le moteur accélère. Ainsi, vous voyez souvent un léger scintillement des lumières lorsque vous les allumez.

Ce que je veux dire, c'est que la tension secteur est beaucoup plus variable. Ici, au Royaume-Uni, il est censé être de 230 v avec une tolérance de +10 %/-6%. Vous pouvez vous attendre à voir des changements et des fluctuations soudains lorsque de grandes charges à proximité s'allument/s'éteignent. Pensez aux sèche-linge, bouilloires, fours, aspirateurs, etc.

Sinusoïdal - Le signal devrait être une belle onde sinusoïdale propre, mais en réalité, certains appareils non linéaires aspirent leur puissance à partir de certains points du cycle d'onde sinusoïdale. Cela introduit de la distorsion et c'est pourquoi le signal n'est pas une onde sinusoïdale parfaite. Les charges non linéaires incluent généralement les alimentations des ordinateurs, les lampes fluorescentes, les chargeurs, les téléviseurs, etc.

La distorsion harmonique totale (THD) quantifie cela dans la forme d'onde. Il existe des réglementations sur la propreté de la sortie d'un onduleur. S'il est incapable de produire un signal suffisamment propre, il ne sera pas approuvé pour la vente. Ceci est important car le contenu harmonique dans le réseau réduit l'efficacité de certains appareils qui y sont connectés (en particulier les harmoniques impaires). Je crois que le THD maximum autorisé est de 8%

Faible impédance - Lorsque vous pensez à un onduleur lié au réseau, il sera important d'en tenir compte. Il existe toutes sortes de charges connectées au secteur, y compris des charges inductives, résistives et parfois capacitives. L'impédance est donc inconnue et variable. La résistance est très faible, ce qui signifie que si vous connectez une charge à courant élevé, la tension ne chutera pas beaucoup du tout.

Étape 2: Comment introduire de l'électricité dans le réseau

Comment introduire de l'électricité dans le réseau
Comment introduire de l'électricité dans le réseau

Pour injecter de l'énergie dans le réseau, nous devons synthétiser un signal qui correspond exactement à la fréquence et à la phase du secteur, mais avec une tension légèrement supérieure.

En raison de la faible résistance du réseau, il est difficile de savoir exactement de combien il faut augmenter cette tension. Et comme la tension RMS fluctue, nous devons nous assurer de fluctuer avec elle. Le simple fait de produire un signal de tension fixe de 50 Hz légèrement supérieur à la tension secteur ne fonctionnera pas !

PI Contrôle du courant de sortie

Ce dont nous avons besoin, c'est d'une boucle de contrôle dans laquelle nous mesurons le courant instantané que nous injectons dans le réseau et ajustons automatiquement notre tension de sortie pour générer le courant que nous voulons. Cela transformera efficacement notre sortie en une source de courant (plutôt qu'une source de tension) qui est plus appropriée pour piloter de faibles impédances. Nous pouvons y parvenir en utilisant une boucle de contrôle PI (Proportional Integral):

Les boucles de contrôle PI sont fantastiques ! Il y a 3 parties pour eux:

  • La valeur mesurée - Le courant que nous mettons dans le secteur
  • Le point de consigne - Le courant que nous voulons injecter dans le secteur
  • La sortie - La tension de signal à générer

Chaque fois que nous appelons l'algorithme PID, nous passons la mesure de courant la plus récente et le point de consigne que nous voulons. Il renverra un nombre arbitraire (proportionnel à la tension de sortie à générer).

Notre algorithme de contrôle PID nous permet de choisir le courant de sortie que nous voulons à tout moment. Pour produire un courant de sortie sinusoïdal de 50 Hz, nous devons continuellement modifier notre courant demandé de manière sinusoïdale.

L'algorithme PID est appelé tous les 100us (ce qui équivaut à 200 fois par cycle de 50 Hz). Chaque fois qu'il est appelé, il est capable d'ajuster directement la tension de sortie et donc d'ajuster indirectement le courant de sortie. En conséquence, nous produisons une sortie de courant échelonnée similaire à celle montrée dans l'image avec chaque étape se produisant tous les 100us. Cela fournit une résolution suffisante.

Contrôle anticipatif

Nous pouvons réduire considérablement la charge de travail du contrôleur PI en ajoutant également un contrôleur feedforward. C'est facile! Nous connaissons la tension de sortie approximative que nous devrons générer (la même que la tension instantanée du réseau). Le contrôleur PI peut ensuite être laissé pour ajouter la petite tension supplémentaire nécessaire pour conduire un courant de sortie.

Par lui-même, le contrôleur prédictif fait correspondre la tension de sortie de l'onduleur à la tension du réseau. Aucun courant ne devrait circuler si nous correspondons assez bien. Le contrôle anticipatif fait donc 99% du contrôle de sortie.

En raison de la faible résistance du réseau, toute différence entre notre tension de sortie FF et la tension du réseau entraînerait un courant important. J'ai donc ajouté une résistance tampon de 1ohm entre l'onduleur et le réseau. Cela introduit des pertes, mais elles sont assez faibles dans le grand schéma.

Étape 3: Production de la tension de sortie à l'aide de PWM

Production de la tension de sortie à l'aide de PWM
Production de la tension de sortie à l'aide de PWM
Production de la tension de sortie à l'aide de PWM
Production de la tension de sortie à l'aide de PWM
Production de la tension de sortie à l'aide de PWM
Production de la tension de sortie à l'aide de PWM

Bien que nous contrôlions indirectement le courant de sortie, il s'agit d'une tension de sortie que nous générons à un moment donné. Nous utilisons PWM (Pulse Width Modulation) pour produire notre tension de sortie. Les signaux PWM peuvent facilement être produits par des microcontrôleurs et ils peuvent être amplifiés à l'aide d'un pont en H. Ce sont des formes d'onde simples caractérisées par 2 paramètres, la fréquence F et le rapport cyclique D.

Une forme d'onde PWM bascule entre 2 tensions, dans notre cas 0v et Vsupply

  • Avec D = 1.0, la forme d'onde PWM est simplement DC à Vsupply
  • Avec D = 0,5, nous obtenons une onde carrée avec une tension moyenne de 0,5 x Vsupply, (c'est-à-dire D x Vsupply)
  • Avec D = 0,1, nous obtenons une forme d'onde pulsée avec une période moyenne de 0,1 x Vsupply
  • Avec D = 0.0, la sortie est une ligne plate (DC à 0v)

La tension moyenne est la clé. Avec un filtre passe-bas, nous pouvons tout supprimer sauf la composante moyenne DC. Ainsi, en faisant varier le rapport cyclique PWM D, nous sommes en mesure de créer n'importe quelle tension continue souhaitée. Doux!

Utiliser un pont en H

Un pont en H est composé de 4 éléments de commutation. Ceux-ci peuvent être des BJT, des MOSFET ou des IGBT. Pour produire la première moitié (0 à 180 degrés) de l'onde sinusoïdale, nous réglons la phase B à un niveau bas en désactivant Q3 et en activant Q4 (c'est-à-dire en appliquant PWM avec D = 0). Nous effectuons ensuite notre PWMing sur la phase A. Pour la seconde moitié, où VAB est négatif, nous réglons la phase A au niveau bas et appliquons notre PWM à la phase B. C'est ce qu'on appelle la commutation bipolaire.

Les MOSFET du pont en H doivent être pilotés par un pilote de grille. C'est un sujet à part entière, mais une simple puce peut s'en occuper. La carte de développement DRV8301 abrite de manière pratique le pont en H, les pilotes de grille et les shunts de courant, ce qui rend ce projet beaucoup plus facile.

Étape 4: mesure du courant

Mesure du courant
Mesure du courant
Mesure du courant
Mesure du courant
Mesure du courant
Mesure du courant

Chaque branche du H-Bridge a une résistance shunt et un amplificateur différentiel. Nos shunts sont de 0,01 ohms et nos amplificateurs sont réglés pour un gain de 40. Par conséquent, 1 ampère développe 10 mV à travers le shunt qui est ensuite amplifié à 400 mV.

Les sorties des amplificateurs shunt sont lues par les CAN 12 bits sur le STM32F407 fonctionnant en mode de conversion continue. Les ADC sont configurés pour échantillonner chaque shunt à 110KSPS et le contrôleur DMA écrit automatiquement les conversions dans un tampon circulaire de 11 mots en RAM. Lorsqu'une mesure de courant est souhaitée, nous appelons une fonction qui renvoie la valeur médiane de ce tampon de 11 mots.

Étant donné que nous demandons des mesures de courant à chaque itération PID (à 10 KHz) mais remplissons nos tampons ADC de 11 mots à une fréquence de 110 KHz, nous devrions obtenir des données complètement fraîches à chaque itération PID. La raison de l'utilisation d'un filtre médian est que la commutation PWM peut introduire des pics dans le mélange et que les filtres médians éliminent très efficacement les échantillons ADC parasites.

Un point important à souligner ici: quelle branche du pont en H utilisons-nous pour les mesures de courant ? Eh bien, cela dépend de la jambe sur laquelle nous sommes actuellement en PWM et de celle qui est juste maintenue basse. La jambe maintenue basse est celle à partir de laquelle nous voulons mesurer notre courant, car le courant circule toujours à travers la résistance shunt de ce côté. En comparaison, du côté PWMed, lorsque le MOSFET côté haut est activé et que le côté bas est désactivé, aucun courant ne circule dans le shunt côté bas. Ainsi, nous changeons la branche sur laquelle nous mesurons le courant en fonction de la polarité de sortie de l'onduleur. Vous pouvez le voir clairement sur l'image, montrant la sortie de l'un des amplificateurs shunt sur une période. Évidemment, nous voulons prendre des lectures pendant le bit lisse.

Pour aider à déboguer nos lectures actuelles. J'ai configuré le convertisseur numérique-analogique sur le STM32F407. J'ai écrit les lectures actuelles que j'obtenais et j'ai délimité la sortie. Vous pouvez le voir dans l'image finale, le bleu est la tension aux bornes de la résistance tampon de sortie (c'est-à-dire le courant de sortie/1.1ohms) et le signal rouge est notre sortie DAC.

Étape 5: Filtrage de la sortie

Filtrage de la sortie
Filtrage de la sortie
Filtrage de la sortie
Filtrage de la sortie

Le filtre de sortie est un élément clé de la conception. Nous avons besoin de ces caractéristiques:

  1. Bloquer toutes les commutations haute fréquence mais transmettre un signal de 50 Hz
  2. Faibles pertes
  3. Pour ne pas résonner !
  4. Pour faire face aux courants et tensions impliqués

La transformée de Fourier d'un signal PWM de fréquence F, Duty cycle D, entre 0 - Vsupply volts est: (D x Vsupply) + ondes sinusoïdales à la fréquence fondamentale F, et harmoniques par la suite

C'est génial ! Cela signifie que si nous passons notre signal PWM à travers un filtre passe-bas qui bloque le fondamental PWM et tout ce qui précède. Il ne nous reste plus que le terme de tension continue. En faisant varier le cycle de service, nous pouvons facilement produire n'importe quelle tension que nous voulons entre 0 et Vsupply, comme expliqué.

Sur la base des caractéristiques souhaitées mentionnées ci-dessus, nous pouvons concevoir le filtre de sortie. Nous avons besoin d'un filtre passe-bas fabriqué avec une résistance minimale pour éviter les pertes. Par conséquent, nous utilisons uniquement des inductances et des condensateurs. Si nous choisissons une fréquence de résonance comprise entre 1 et 2 KHz, nous éviterons la résonance car nous n'injectons aucun signal proche de cette fréquence. Voici notre conception de filtre. Nous prenons notre sortie comme la tension aux bornes de C1.

En choisissant L1 = L2 = 440uH, C1 = 8,4uF nous calculons une fréquence de résonance de 1,85KHz. Ce sont également des valeurs de composants réalistes.

Il est essentiel de s'assurer que nos inducteurs ne commencent pas à saturer aux courants que nous attendons. Les inductances que j'ai utilisées ont un courant de saturation de 3A. Ce sera le facteur limitant sur la puissance de sortie de notre circuit. La tension nominale du condensateur est également importante à considérer. J'utilise de la céramique 450v, ce qui est très excessif dans ce cas !

Le tracé de Bode (pour des valeurs L/C légèrement différentes) a été généré à l'aide de LTspice. Il nous montre l'atténuation infligée aux différentes fréquences d'entrée. Nous pouvons clairement voir la fréquence de résonance à 1,8 KHz. Cela montre qu'un signal de 50 Hz est presque entièrement pur alors que je peux vous dire qu'un signal de 45 KHz est atténué de 54 dB !

Choisissons donc notre fréquence porteuse PWM à ~45KHz. En choisissant des fréquences porteuses PWM plus élevées, la fréquence du filtre peut être augmentée. C'est bien car cela réduit les valeurs L et C. Cela signifie des composants plus petits et moins chers. L'inconvénient est que des fréquences de commutation PWM plus élevées entraînent des pertes plus importantes dans les commutateurs à transistors.

Étape 6: Synchronisation de la phase et de la fréquence

Synchronisation de la phase et de la fréquence
Synchronisation de la phase et de la fréquence
Synchronisation de la phase et de la fréquence
Synchronisation de la phase et de la fréquence
Synchronisation de la phase et de la fréquence
Synchronisation de la phase et de la fréquence

La synchronisation avec la phase et la fréquence du réseau est ce qui fait un onduleur lié au réseau. Nous utilisons une implémentation numérique d'une PLL (Phase Locked Loop) pour obtenir un suivi de phase précis du signal secteur. Nous le faisons en:

  1. Échantillonnage de la tension secteur
  2. Produire notre propre signal sinusoïdal local de 50 Hz
  3. Comparer la phase entre notre signal local et le signal secteur
  4. Réglage de la fréquence du signal local jusqu'à ce que la différence de phase entre les 2 signaux soit nulle

1) Échantillonnage de la tension secteur

Nous configurons un 3ème canal ADC pour lire la tension de ligne. C'est ce que nous obtenons en divisant la tension d'une prise de transformateur, comme indiqué. Cela fournit une tension mise à l'échelle variant d'environ 1,65 V qui représente exactement la tension du réseau.

2) Produire un signal sinusoïdal local de 50 HzProduire notre propre onde sinusoïdale locale de 50 Hz est facile. Nous stockons une table de correspondance de 256 valeurs sinusoïdales. Notre valeur sinusoïdale simulée est facilement obtenue à l'aide d'un index de recherche qui tourne progressivement dans la table.

Nous devons incrémenter notre index exactement au bon taux afin d'obtenir un signal de 50 Hz. A savoir 256 x 50Hz = 12, 800/s. Pour ce faire, nous utilisons timer9 cadencé à 168 MHz. En attendant 168MHz/12800 = 13125 ticks d'horloge, nous augmenterons notre index au bon rythme.

3) Comparer la phase entre notre signal local et le signal secteur C'est la partie cool ! Si vous intégrez le produit de cos(wt) x sin(wt) sur 1 période, le résultat est nul. Si la différence de phase est autre que 90 degrés, vous obtenez un nombre différent de zéro. Mathématiquement:

Intégrale[Asin(t) x Bsin(t + φ)] = Ccos(φ)

C'est bien! Il nous permet de comparer le signal secteur, sin(ωt) avec notre signal local, sin(⍵t + φ) et d'obtenir une valeur.

Il y a cependant un problème qui doit être résolu: si nous voulons que nos signaux restent en phase, nous devons ajuster notre fréquence locale pour garder le terme Ccos(φ) maximal. Cela ne fonctionnera pas très bien et nous aurons un mauvais suivi de phase. En effet, le d/dφ de ɑcos(φ) est égal à 0 à φ = 0. Cela signifie que le terme Ccos(φ) ne variera pas beaucoup avec les changements de phase. Cela a-t-il du sens?

Il serait de loin préférable de déphaser le signal secteur échantillonné de 90 degrés afin qu'il devienne cos(ωt + φ). Ensuite, nous avons ceci:

Intégrale[Asin(t) Bcos(t + φ)] = Csin(φ)

L'introduction d'un déphasage de 90 degrés est facile, nous insérons simplement nos échantillons de tension ADC secteur dans une extrémité d'un tampon et les retirons un certain nombre d'échantillons plus tard, correspondant à un déphasage de 90 degrés. Étant donné que la fréquence du réseau varie à peine à partir de 50 Hz, une simple technique de temporisation fonctionne à merveille.

Nous multiplions maintenant notre signal secteur déphasé de 90 degrés avec notre signal local et gardons une intégrale courante du produit sur la dernière période (c'est-à-dire sur les 256 dernières valeurs).

Le résultat que nous connaissons sera nul si les 2 signaux sont maintenus précisément à 90 degrés l'un de l'autre. C'est fantastique car cela annule le déphasage que nous venons d'appliquer au signal secteur. Juste pour clarifier, au lieu de maximiser le terme intégral, nous essayons de le maintenir à zéro et nous déphasons notre signal secteur. Les déphasages de 90 degrés introduits par ces 2 changements s'annulent.

Donc si Integral_Result < 0 on sait qu'il faut augmenter la fréquence de notre oscillateur local pour le remettre en phase avec le secteur, et vice versa.

4) Réglage de la fréquence du signal local Ce bit est facile. Nous ajustons simplement la période entre l'incrémentation de notre index. Nous limitons la vitesse à laquelle nous pouvons corriger la différence de phase en filtrant essentiellement les parasites. Pour ce faire, nous utilisons un contrôleur PI avec un très petit terme I.

Et c'est tout. Nous avons verrouillé notre oscillateur sinusoïdal local (qui définit le point de consigne du courant de sortie) pour qu'il soit en phase avec la tension secteur. Nous avons implémenté un algorithme PLL et cela fonctionne comme un rêve !

L'augmentation de la fréquence de notre oscillateur local permet également de réduire le déphasage appliqué au signal secteur. Puisque nous limitons le réglage de la fréquence à +/-131 ticks (+/- ~1%), nous affecterons le déphasage de +/- 1° au maximum. Cela n'aura aucune importance tant que les phases se synchroniseront.

Théoriquement, si la fréquence du secteur s'écartait de plus de 0,5 Hz, nous perdrions notre verrouillage de phase. C'est à cause de notre contrainte ci-dessus sur combien nous pouvons ajuster notre fréquence d'oscillateur local. Cependant, cela ne se produira que si la grille est sur le point de tomber en panne. Notre protection anti-îlotage entrera en vigueur à ce stade de toute façon.

Nous effectuons une détection de passage par zéro au démarrage pour faire de notre mieux pour démarrer les signaux en phase à partir du décalage.

Étape 7: Anti-îlotage

Anti-îlotage
Anti-îlotage

Wikipedia a un article génial sur les techniques d'îlotage et d'anti-îlotage. Cela implique également que les gens sifflent et battent plus que nécessaire lorsqu'il s'agit de ce sujet. « Oh, vous ne pouvez pas construire votre propre onduleur réseau, vous tuerez quelqu'un, etc. »

Comme l'explique mieux l'article de wikipedia, nous utilisons quelques précautions de sécurité qui, ensemble, offrent une protection adéquate (à mon avis):

  1. Sous/Surtension
  2. Sous/Sur fréquence

Nous pouvons détecter ces situations en analysant simplement notre tension secteur échantillonnée à l'échelle. Si quelque chose se dérègle, désactivez le pont en H et attendez que les choses reviennent à la normale.

Conseillé: