Hallo, ich möchte eine Steuerplatine für einen Frequenzumrichter bauen. Gleich vorneweg - das ist nicht mein erstes derartiges Projekt, und von Leistungselektronik habe ich mittlerweile einige Ahnung. Ich habe sowas schon mal mit einem HCS08-Mikrocontroller realisiert. Das Problem dabei war, dass ich da eigentlich nur 2 PWM-Kanäle zur Verfügung hatte, aber mittels diverser Tricks konnte ich dann doch alle 3 Phasen korrekt ansteuern. Der Umrichter ist dann auch gelaufen! Wenn auch nur bis wenige 100 Watt. Wie auch immer - der LPC2468 hat doch diesen schönen PWM-Block, der 6 Ausgänge hat. Das schreit geradezu nach einer FU-Anwendung! Der Vorteil da wäre natürlich, dass jeder dieser 6 PWM-Ausgänge direkt einen eigenen Transistor (High- und Lowside) der Leistungsstufe ansteuern könnte. Und rein durch Software könnte man damit dann wahlweise bürstenlose DC en oder DAMs ansteuern - die benötigen ja unterschiedliche Ansteuerverfahren. Soweit zur Theorie. Jetzt die Praxis: erlaubt der LPC2468 eine solche Anwendung des PWM-Blocks? Ich bin bisher davon Ausgegangen, dass ich jeden PWM-Ausgang einzeln kontrollieren kann, und musste beim Studium des Handbuchs gerade feststellen, dass dem gar nicht so ist. Entweder habe ich den "single-edge mode", wo dann alle PWM-Signale gleichzeitig auf 1 wechseln und beim entsprechenden Match dann wieder auf 0 gehen, oder ich habe den "dual-edge mode", wo PWM1 bei Match 0 gesetzt und bei MAtch 1 gelöscht wird, PWM2 bei Match 1 gesetzt und bei Match 2 gelöscht usw. Frage: Ist es somit, wenn ich nur die Pins des einen PWM-Blocks zur Verfügung habe, trotzdem irgendwie möglich, "center aligned" PWM-Signale zu bekommen? Ausserdem soll jede zweite PWM genau invertiert sein (incl. deadtime, das müsste doch auch machbar sein?). Kurz gesagt: ich will eine Raumzeigermodulation machen, und die 6 PWM-Ausgänge über Gatetreiber direkt zur Ansteuerung der High- und Lowside-FETs benutzen (ich will also KEINE externe Logic mehr benutzen - früher musste ich mittels Inverter die Highside-Ansteuerung generieren sowie extern noch eine deadtime in die Signale rein mogeln, was ich mir hier ersparen möchte).
Hi, ich habe genau die gleiche Aufgabe zu lösen. Die 3 DutyCyles habe ich bereits per SVPWM modellbasiert entwickelt und über Simulink/TargetLink codegeneriert. Problem bei mir: Meine PWM-Kanäle auf dem S12X sind zwar Center-Alligned, aber es ist keine Totzeit einstellbar, d.h. irgendwie muss ich hier die Gateansteuerungen verzögern. Leider fehlt mir noch die entscheidende Idee. Eine Softwarelösung fällt meines Erachtens wegen der sowieso schon hohen CPU-Load aus. Kannst Du mir vielleicht in der Zwischenzeit deine damalige Analoglösung zeigen? Hab ein paar Studenten die an dem Thema Umrichter arbeiten, und die könnten sicher einen funktionierenden Ansatz brauchen. Ich schau mal ob ich eine Softwarelösung für das PWM hinbekomme, sodass der CO-Prozessor sind um die PWM-Erzeugung kümmert. Ich nehme an auf deinem µC ist nicht mehr viel Rechenleistung frei nach der SVPWM, oder? Grüße, Toby
Hi toby, doch der Prozessor hat genug Ressourcen, um die SVPWM relativ problemlos erledigen zu können. Wie gross die CPU load ist, kann ich dir nicht genau sagen, aber ein serielles Terminal mittels Polling läuft nebenbei völlig fehlerfrei, ebenso wie die Auswertung einer Tastatur sowie eine kleine Displayausgabe. Meine Totzeit habe ich wie folgt generiert: Mit dem digitalen Signal über einen Widerstand auf einen Kondensator und dann auf den Eingangspin eines 74HC14, dann nochmals 74HC14, damit es nicht invertiert ist. Der Eingangs erwähnte Widerstand ist mit einer Diode überbrückt, und zwar so, dass bei einer logischen eins die Diode sperrt (der Kondensator muss also erst aufgeladen werden, bis am Ausgang des letzten '14er eine eins raus kommt), und bei einer logischen 0 leitet die Diode und der Kondensator wird sehr schnell entladen. Somit wird das Einschalten verzögert, das ausschalten jedoch mehr oder weniger kaum beeinflusst. Bedingt aber, dass man Portpins hat, die ein bisschen Strom sourcen und sinken können; sollte dies nicht der Fall sein, einfach den letzten 74HC14 als Treiber 'missbrauchen'.
Hi Gerhard, ich hab nun vorerst einen Fahrtregler (Hextronik 120) aus dem Modellbau missbraucht. Das Gerät hat pro Halbbrücke einen Gatetreiber "IR2103" verbaut, welchen ich mit gleichphasigem PWM ansteuern kann. Funktioniert prima soweit. Die genannte Lösung ist für die selbst gefertige Platine eine gute Option, vielen Dank soweit. Grüße, Toby
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.