Gast
#1435658
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).