[gelöst] software PID Regler
hallo!
Ich hatte eigentlich vor, mir ein Schaltnetzteil zu bauen, bei dem durch ein PWM Signal ein TTL-Mosfet angesteuert wird. Durch das Verhältnis der Einschalt- zur Ausschaltzeit sollte man eine Gleichspannung zwischen 0V und 30V einstellen können. Jetzt konnte ich wunderschön die Pulsweite verändern und so die unterschiedlichen Spannungen erhalten. Mein Problem ist jetzt aber die Regelung des ganzen. Über nen 10bit AD vom Wandler (AtMEGA32) erfasse ich die Ist Spannung. Bis jetzt hab ichs immer einfach verglichen:
IstSpannung < Sollspannung -> PWM erhöhnen
und andersrum....
Dabei fängt die Ausgangsspannung verständlicherweise enorm zum schwingen an. Deswegen wollte ich einen PID Regler (softwaremäsig) realisieren. Ich hab mich im Wiki schon eingelesen und bin auf das hier gestoßen:
e = w - x
esum = esum + e
y = Kp * e + Ki * Ta * esum + Kd * (e – ealt)/Ta
ealt = e
Dabei ist w meine Sollspannung X mein ist Wert und Ta die Tastrate.
Das ganze hab ich eigentlich auch schon verstanden. Nur wie verwandel ich das Y, also die Stellgröße, in die Abtastrate um. Denn eigentlich stellt ja das Y eine Spannung da, die angestrebt werden soll.
Ok ich weis ziemlich viel Text, aber ich hoffe ich hab nichts vergessen und alles genau genug erklärt.
Vielen Dank für eure Hilfe!
Schaltplan wäre interessant...
Hallo Martin,
kanste mal den Schaltplan posten? Mich interessiert auch, wie mit PWM eine leistungsstarke Gleichspannung regelbar zur Verfügung stellen kann.
Danke, MfG, dl1akp
Liste der Anhänge anzeigen (Anzahl: 1)
So ich hab jetzt einen teil des Schaltplans mit Eagle umgesetzt. Ich hoffe es passt soweit. Ich hab da nen L293D verwendet, um den MOSFET anzusteuern. In den nächsten Tagen kommt ne Lieferung mit ein paar ICL7667 die ich statt dessen verwenden werde. Die Spannungsmessung usw. ist noch nicht eingezeichnet. Ich weis auch nicht ob nicht noch ne Freilaufdiode beim MOSFET hingehört, eigentlich hat er ja eine von Haus aus? (Vielleicht könnte mir das noch jemand sagen). Da ich noch keine Kühlkörper montiert habe, hab ich die Schaltung auch noch nicht zu stark belastet. Die 15V Versorgung um den Mosfet durchzusteuern, nehm ich im Moment noch von den 24V. Bis jetzt hab ich nämlich nur 10V anstatt den 24 angelegt (ich weis umständlicher Satz a la: Sei P ein Punkt Q, wir wollen ihn R nennen), weshalb ich auch 10V für den L293D hergenommen hab. Da ich des ganze aber mir 24 bis 30V versorgen werde, muss halt noch ein Spannungsteiler her.
Ich hoffe ich hab nichts vergessen.
Achja ich kann für nichts garantieren! Das ganze ist mein eigener Entwurf. So funktioniert es im Moment mit ohmschen Lasten und geringen Strömen. Wenn ich die Kühlkörper hab, kann ichs mal mit höheren ausprobieren!