WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

PWM Signal für Inverter anpassen

 

lethuer
Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 05.04.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2018, 12:06     Titel: PWM Signal für Inverter anpassen
  Antworten mit Zitat      
Hallo,

ich habe ein Simulink PWM Signal der drei Phasen zwischen 0 und 1 und möchte dieses nun für die Modellierung eines 3 Phasen-Inverters in Simscape Power Systems anpassen.

Beispiel:
Der Inverter muss in jedem Fall öfter aufgerufen werden als die Berechnung des Tastgrades. Diese erfolgt aktuell alle 0.1ms = 100us = 1e-4.
Bei einer Auflösung von 1% muss der Inverter 100x schneller aufgerufen werden (alle 0.1us = 1e-6)

Wenn PWM_A = 0.7 soll der IGBT A(H) für eine Zeitdauer von 70% eingeschaltet werden. PWM_A(L) dann für die übrigen 30% der Zeit.
Private Nachricht senden Benutzer-Profile anzeigen


boundary
Forum-Anfänger

Forum-Anfänger


Beiträge: 41
Anmeldedatum: 15.12.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2018, 14:43     Titel:
  Antworten mit Zitat      
Und wie lautet jetzt die konkrete Frage?
Private Nachricht senden Benutzer-Profile anzeigen
 
lethuer
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 05.04.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2018, 15:04     Titel:
  Antworten mit Zitat      
Das ich zwar weiß wie es prinzipiell funktionieren müsste aber nicht weiß wie ich es umsetzen kann...
Private Nachricht senden Benutzer-Profile anzeigen
 
boundary
Forum-Anfänger

Forum-Anfänger


Beiträge: 41
Anmeldedatum: 15.12.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2018, 15:16     Titel:
  Antworten mit Zitat      
Das erste Signal ist periodisch? Dafür könntest du den Repeating Sequence Block aus der Simulink Bibliothek nehmen.

Für das zweite Problem müsstest du dir einen Schalter bauen z.B. mit einer Switch der ab einem bestimmten Wert auf ein anderes Signal wechselt.

Leider verstehe ich deine Simulation und auch dein Problem nicht ganz und kann dir somit auch nicht wirklich weiterhelfen.
Private Nachricht senden Benutzer-Profile anzeigen
 
lethuer
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 05.04.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2018, 19:32     Titel:
  Antworten mit Zitat      
ich versuche es erneut...

auf dem Bild "Simulink PWM Signal" sind die Duty Cycles der drei High Side IGBT's zu sehen.
Aus deren Information müssen nun die sechs IGBT's geschaltet werden. Das darf aber nicht zeitgleich erfolgen !

Wird der Inverter (zweites Bild) 100 mal öfter ausgeführt, so soll bei einem Duty Cycle von 0.7 nun der obere IGBT für 70 Cycles geschaltet werden und DANACH der Low Side IGBT für die restlichen 30 Cycles.

Einen bestimmten Wert als Schwelle mit einem Switch vorzusehen klappt also nicht...

Viele Grüße

Leon
Private Nachricht senden Benutzer-Profile anzeigen
 
fabianT
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 84
Anmeldedatum: 31.10.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.10.2018, 18:46     Titel:
  Antworten mit Zitat      
Hallo Lethuer,

dieser Beitrag ist schon etwas her, ich antworte aber trotzdem mal.

Das erste Bild zeigt ja die Duty Cycles der drei Phasen. Um die entsprechenden PWM Signale für die Swiches zu generieren, musst du einen Sägezahn (mit der entsprechenden PWM Frequenz) bauen (von -1 bis 1) und diesen mit dem Duty Cycle vergleichen. Der Output davon ist dann ein Signal zwischen 0 und 1. Dieses wird als Input für den High Side IGBT verwendet. Für den Low Side Switch negierst du einfach dieses Signal.

In Simscape PowerSystems gibt es etliche Beispiele dafür. Für die PWM könntest du den "PWM Generator" Block verwenden.

Wenn ich das falsch verstanden habe und es eher darum geht Kurzschlüsse zwischen High- und Low Side zu vermeiden, musst du Delays einfügen. Das geht entweder automatisch über den Gate Driver Block, wo du direkt die Delay Zeit einstellen kannst, oder manuell indem du in Simulink die Signale mit einem Delay beaufschlagst.

Viele Grüße
Fabian
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.