
3-Level-Synchron-Buck-Konverter mit durchschnittlicher Strommodus-Steuerung mit adaptivem Flugkondensatorspannungsausgleich
Spitzenansicht
In diesem Codebeispiel zeigt eine durchschnittliche Implementierung der Closed Loop Current Modus Control für DSPIC33CK. Es wurde speziell für das 3-Level-Buck-Konverter-Referenzdesign von EPC9148 entwickelt.
Die Karte startet den Buck -Konverter automatisch, wenn die Leistung auf die Karte angewendet wird, wodurch eine regulierte Ausgangsspannung von 12 V am Ausgang des Konverters bereitgestellt wird. Das Startvorgang wird vom Power Controller-Statusgerät gesteuert und ausgeführt und enthält ein konfigurierbares Startverfahren mit Ausschalten, Startdauer und Stromverzögerung, bevor sie in den konstanten Regulierungsmodus fallen. Eine zusätzliche Routine für Fehlerhandler überwacht kontinuierlich eingehende ADC-Daten und periphere Statusbits und schaltet die Stromversorgung ab, wenn die Eingangsspannung außerhalb des definierten Bereichs liegt oder wenn die Ausgangsspannung mehr als +/- 0,5 V für mehr als 10 Millisekunden über die Regulation liegt.
Ausgewählte Microchip -Technologieprodukte:
Ausgestellte EPC -Produkte (effiziente Stromumrechnungen):
Das Synchron-Buck-Konverter-Modul von EPC9148 3-Level bietet alle erforderlichen Schnittstellen zum Programmieren und Debuggen des DSPIC33CK32MP102 DSC sowie Testpunkte und Bananen-Jackanschlüsse für die einfache und sichere Handhabung des Kits während der Banktests. Das EPC9148 QSG enthält detaillierte Anweisungen für Betriebsverfahren.
Das Board ist programmiert und bereit, beim Auspacken verwendet zu werden. Zum Betrieb der Platine ist keine Neuprogrammierung des Zielgeräts erforderlich, es sei denn, Funktionen oder Einstellungen wie die nominale Ausgangsspannung oder das Startzeitpunkt müssen geändert werden.



Bei firmwarebasierten Funktionen müssen die Microchip-DSPIC33CK-Controller mit dem in der RJ-11-Programmierschnittstelle sowie dem 5-Pin-Header verfügbaren RJ-11-Programmierschnittstelle mit dem Microchip DSPIC33CK-Controller neu programmiert werden. Ein Bandkabel wird benötigt, um das Programmierkit und das EPC9148 anzuschließen. Diese Schnittstellen unterstützen alle In-Cirtu-Programmierer/Debugger von Microchip wie MPLAB® ICD4, MPLAB® Real Ice oder MPLAB® PICKIT4 und frühere Derivate. Weitere Informationen finden Sie unter EPC9148 Quick Start Guide.
Der Konverter startet automatisch, wenn mehr als 16,6 V DC über die Eingangsanschlüsse des EPC9148 angewendet werden. Bitte lesen Sie den EPC9148 Quick Start Guide, um detaillierte Informationen zu den Anforderungen für die Einrichtung und den Betrieb dieses Referenzdesigns zu erhalten.
Die Staatsmaschine durchläuft die folgenden Schritte in chronologischer Reihenfolge:
a) Initialisierung
In diesem Schritt werden die Kontrollschleifparameter auf ihre Standardeinstellungen zurückgesetzt, PWM -Ausgänge werden ausgeschaltet, aber die PWM läuft immer noch und löst den ADC kontinuierlich aus, um die Abtasteingangs- und Ausgangsspannung sowie die Boardtemperatur aufrechtzuerhalten.
b) Zurücksetzen Dies ist der Status "Fall-Back", aus dem der Buck-Konverter nach dem erfolgreichen Start des Buck-Wandlers neu gestartet wird und aufgrund eines Fehlerbedingungen (z.
c) Standby nach dem Zurücksetzen wartet die Statusmaschine darauf, dass alle Fehlerflags gelöscht werden und die Aktivitäten und Go -Bits eingestellt werden.
D) Stick-on-Verzögerung (POD) Sobald der Buck-Wandler gelöscht wurde, wird der Statusautomaten die Startvorgangsvorgang ausführen. Dies ist nur eine einfache Verzögerung, in der der Konverter inaktiv bleibt, aber der Fehlerhandler beobachtet die vom ADC erzeugten Werte für auftretende Fehlerbedingungen.
e) Startspannungsrampe Nach Ablauf der Steckdosenverzögerung werden die Eingangs- und Ausgangsspannung gemessen. Falls der Konverterausgang vorgespannt ist (Spannung = ungleich Null), wird der Leistungssteuerer mit einer künstlichen Steuerhistorie und einer PWM-Ausgabe „vorgeladen“, um die Ausgangsspannung von seinem jüngsten Niveau sanft zu stöbern.
f) Spannungsverstärker jetzt sind die digitalen Rückkopplungsschleife und PWM aktiviert und der Referenzwert des geschlossenen Schleifensystems wird mit jeder Ausführung der Zustandsmaschine (100 µSEC-Intervall) erhöht. Die Kontrollschleife wurde eingestellt, um mit einer Kreuzungsfrequenz von> 10 kHz mit der maximalen Störungsfrequenz übereinstimmen zu können, um das Steuerungssystem stabil zu halten.
g) Stromverzögerung Nachdem die Referenzspannung auf die vordefinierte Nennebene erhöht wurde, wechselt der Statusmaschinen-Machine in die Leistungsverzögerungsfrist. Dies ist eine weitere, einfache Verzögerung, bei der sich die Kontrollschleife in stabilem Zustand befindet, die darauf warten, dass die Verzögerungsfrist abläuft.
h) Online nach Ablauf der Leistung der Leistung fällt der Konverter in den nominellen Betrieb. In diesem Zustand beobachtet es kontinuierlich den Referenzwert für Änderungen. Sollte ein anderer Teil der Firmware die Controller-Referenz ändern, schaltet sich die Statusmaschine sanft in die neue Ebene ein, anstatt die Referenz zu schalten.
i) Suspend/Fehler Wenn der Leistungscontroller durch externe Befehle heruntergefahren und zurückgesetzt wird (z. B. Fehlerhandler, die eine Fehlerbedingung oder durch Benutzerverzögerung erkennen), wechselt die Statusmaschine in den Suspend-Status, der die PWM-Ausgänge deaktiviert und die Ausführung der Steuerungsschleife zurücksetzt und die staatlichen Maschinen zurücksetzen, um das State-Maschinen zurückzutragen, um das State-Maschinen zu reset, um das Reservieren zu reseten, um das Reservieren zu reset, um das State-Maschinen zu reagieren, um das Referet zu reseten, um das State-Maschinen zu reseten, um das Reservet zu reservieren.
Diese Firmware verwendet zwei digitale Typ -II -Controller, um die Rückkopplungsschleife in der durchschnittlichen Steuerung des Strommodus zu schließen. Der Controller besteht aus zwei kaskadierten Schleifen. Die Außenspannungs -Rückkopplungsschleife bestimmt den Ausgangsspannungsfehler und berechnet die erforderliche Referenz für die innere durchschnittliche Stromrückkopplungsschleife. Die innere durchschnittliche Stromschleife bestimmt die jüngste Abweichung zwischen der neuen Referenz und dem jüngsten Rückkopplungssignal und passt den PWM -Arbeitszyklus an, um den Leistungsbedarf zu decken und den Ausgangsspannungsfehler zu korrigieren. Die numerische Ausgabe jeder Schleife wird gegen definierte Minima- und Maxima-Schwellenwerte überprüft und bei Bedarf an diese benutzerdefinierten Schwellenwerte geklemmt, um die Hardware zu schützen und die Schleifensättigung zu verhindern.
Zusätzlich zur Implementierung der grundlegenden Durchschnittsmoduskontrolle wird eine dritte Schleife eingeführt, die die Flying Condensitor -Spannung überwacht und ausgleichen. Diese Schleife verfolgt den Spannungsspitzen und das Tal der oszillierenden Flying Condensitorspannung und stimmt den PWM -Timing ab, um Abweichungen über Komponentenverträglichkeiten, Last und Temperatur auszugleichen. Der Kompensationsfilter basiert auf einem einfachen Tiefpassfilter, der die Änderungsrate des Ausgleichsfehlerkompensationsfaktors begrenzt, um interne Schwingungen bei schnellen transienten Antworten zu verhindern. Der Korrekturfaktor wird dann in jedem Schaltzyklus in die Stromschleifeausgabe eingebaut.
Dieses Steuerungssystem kann durch Verwendung des Bits aktivieren im Statuswort der CNPNZz_T -Controller -Datenstruktur eingeschaltet werden.
Der Quellcode für Steuerschleifen wird von der Software PowerSmart ™ - Digital Control Library Designer (DCLD) konfiguriert und generiert.
Diese zusätzliche Designsoftware kann auf Github -Seiten heruntergeladen werden:
Nach der Installation kann die Controller -Konfiguration geändert werden. Die jüngste Konfiguration kann innerhalb der MPLAB X® IDE geöffnet werden, indem die jeweilige Steuerschleifungsdatei 'XXX_LOOP.DCLD' im Ordner wichtiger Dateien des Projektmanagers mit der rechten Maustaste klickt. Jede Steuerschleife ist in seiner individuellen Konfigurationsdatei mit dem Namen 'v_loop.dcld' für Spannungsschleifen und 'i_loop.dcld' für aktuelle Schleifen konfiguriert. Wählen Sie bei der rechten Maustaste "Öffnen im System", um die Konfiguration in PowersMart ™ DCLD zu öffnen.
Weitere Informationen finden Sie in der Benutzerhandbuch von PowersMart ™ DCLD, die in der Software enthalten ist und aus dem Help -Menü der Anwendung geöffnet werden kann.
Der Firmware wurde keine Benutzerkontrollschnittstelle hinzugefügt. Jede Änderung der Firmware und des grundlegenden Betriebs des Referenzdesigns, einschließlich der Neuprogrammierung der nominalen Ausgangsspannung
Die Konvertereinstellungen in dieser Datei werden als physikalische Werte wie Volt, Ampere, Ohm usw. definiert. Jeder definierte Wert wird zum Kompilierzeit in Binärzahlen durch sogenannte Makros konvertiert. Daher müssen Benutzer Werte nicht manuell konvertieren.
Um den Konverter zu programmieren, um eine nominale Ausgangsspannung zu liefern, die standardmäßig von 20 V DC eingestellt ist, befolgen Sie diese Schritte:
Die Einstellung für die nominale Ausgangsspannung wird unter Verwendung dieser Defines eingestellt
#define BUCK_VOUT_NOMINAL (float)12.000 // Nominal output voltage
#define BUCK_VOUT_TOLERANCE_MAX (float)0.500 // Output voltage tolerance [+/-]
#define BUCK_VOUT_TOLERANCE_MIN (float)0.100 // Output voltage tolerance [+/-]
Die obigen Toleranzeinstellungen enthalten die transiente Antwort bei einem maximalen Lastschritt. Der Wert für die maximale Ausgangsspannungstoleranz 'Buck_vout_tolerance_max' wird vom Fehlerhandler beobachtet. Sollte der Ausgangsspannungswert von dem jüngsten Referenzspannungswert um mehr als den angegebenen Bereich abgeleitet wird, wird der Konverter heruntergefahren und ein Regulierungsfehler wird angezeigt. Die Stromversorgung wird automatisch wiederhergestellt, sobald die Fehlerbedingung gelöscht wurde und der von Buck_Regerr_Recovery_Delay angegebene Wiederherstellungsverzögerungszeitraum, der in der Header -Hardware -Beschreibung der Hardware -Beschreibung des EPC9148 deklariert wurde, abgelaufen ist. Die Empfindlichkeit der Fehlerreise kann durch Ändern der Deklaration von BUCK_REGERR_TRIP_DELAY eingestellt werden.
(Die angegebenen Zeilennummern können sich ändern.)
Diese Code -Beispiele umfassen eine alternative proportionale Kontrollschleife, die häufig während der Messungen des Frequenzgangs des Kraftwerks verwendet wird. Wenn die folgende Definition auf TRUE eingestellt ist, wird die gemeinsame Hauptsteuerschleife durch den Proportional Controller ersetzt.
app_power_control.c: #define PLANT_MEASUREMENT false
Proportionale Controller sind standardmäßig instabil und sind nicht geeignet, die Ausgabe einer Stromversorgung unter normalen Betriebsbedingungen zu regulieren. Während einer Anlagenmessung ist es obligatorisch, dass die Eingangsspannung und -belastung stabil bleiben und sich nicht ändern.
Weitere Informationen zur Durchführung einer Kraftwerksmessung finden Sie in Abschnitt 6.1 der PowerSmart ™ DCLD -Benutzerhandbuch.
(c) 2020, Microchip Technology Inc.