Wie bekomme ich das Schwingen bei einer Regelung weg? Meine Regelung sieht so aus: e=w-z; y=kpr*e y geht auf eine if Bedingung. Gesteuert wird über ein PWM Signal ein Mosfet. Mein Problem ist das die Regelung zwar arbeitet aber entweder macht sie ganz auf oder ganz zu. Z wird über einen Analogeingang eingelesen. Ich brauche aber eine Regelung die sich bei einem konstanten Wert z.B. 6 V hält und nicht dauernt schwingt. Lösung wenn es geht bitte mit Programmbeispiel in ANSI C
Wie sieht denn Deine Regelstrecke aus? Und welche Werte nimmt die Stellgröße an (von wegen if-Bedingung)?
Regelstrecke ist bei mir ein Akku der konstant mit 6,75V geladen werden soll. Die IF bedingung liegt daran mit wieviel Hz ich fahre entweder 500 oder 2000. Ich kann y nacher ja noch multpliezieren. Habe auch schon einen PI regler mal programmiert der schwingt genauso, oder muss ich die beiwerte nur richtig einstellen?? Falls noch frsgen sind schreib einfach. Michael
Hallo, Ich kann aus den beiden Gleichungen noch nicht ganz entnehmen, wie Dein Regelalgorithmus aussieht. Es scheint aber ein P oder ein PI-Regler zu sein, oder? Wenn ein Regler schwingt, sind meiner Erfahrung nach 1) entweder die Regelkoeffizeinten zu hoch eingestellt, oder 2) falls es sich um ein sehr träges System handelt, hilft es, eine D-Komponente hinzuzugeben. Diese hat praktisch folgendes Verhalten: Sie gibt zuerst Leistung vor, nimmt sie aber nach einiger Zeit (tn) wieder weg. Auf diese Weise kann der Sollwert erreicht werden, und Schwingungen werden kompensiert (wenn man den D-Koeffizienten und und die Zeit tn richtig einstellt). D_Anteil = D_koeff x (RAbw(t) - RAbw(t-tn)) RAbw heisst hier Regelabweichung Man muss herumspielen, bis ein Regler gut eingestellt ist. Oder das System auf einem Rechner simulieren, und mit einem simulierten Regler regeln. Gruss pront_salvatore
Dann hast Du einen Zweipunktregler und der ist nichtlinear. Warum verwendest Du die Regeldifferenz nicht als Multiplikator für die PWM? Dann hast Du eine annähernd kontinuierliche Ausgangsfrequenz.
Hallo, "Mein Problem ist das die Regelung zwar arbeitet aber entweder macht sie ganz auf oder ganz zu." Mal die naheliegendste Schlußfolgerung: Wenn sich eine Regelung so wie beschrieben verhält, ist die proportionale Verstärkung viel zu hoch eingestellt. kpr ist das der proportionale Faktor? "Regelstrecke ist bei mir ein Akku der konstant mit 6,75V geladen werden soll." Warum muß man dabei derartig regeln? Einen Akku lädt man meistens mit einer Konstantstromquelle. Ja gut, die regelt sich selbst. (Phantasie eingeschaltet->)Oder ist es gerade eine Konstantstromquelle, die Du mittels FET und PWM-Ansteuerung realisieren möchtest? Also eine geschaltete verlustarme Stromquelle mit Abschaltung bei Erreichen der maximalen Ladespannung? (<-Phantasie wieder ausgeschaltet) Was mißt denn der Eingang Deiner Schaltung? Die Akkuspannung per AD-Wandler oder den Strom? Du könntest noch einige Info beisteuern. Ich vermute mal einfach, man müßte in Reihe zum MOSFET noch einen Widerstand ( einige, z.B. fünf Ohm) schalten, damit die Regelstrecke weicher angesteuert wird. Wenn Du nur leicht mit der PWM über die Akkuspannung steuerst, zieht der Akku so viel Strom = Ladung, daß die Spannung steigt und Deine Regelung (falls Du tatsächlich U mißt) gleich wieder zu macht -> Schwingung. Wahrscheinlich benötigst Du eine I-Anteil, der in etwa der Reaktionszeit des Akkus entspricht, d.h. die Ladekurve per DSO aufzeichen und daraus die Verzögerungszeit (im Bereich von so 10 Minuten) heraus lesen (klar, braucht viel Zeit). Dann hat das System genügend Dämfung und läßt das Schwingen sein. Schreib mal, woran es letztendlich lag, wenn es dann geklappt hat. Gruß
nochwas vergessen: Ist die verwendete Betriebsspannung Deines Aufbaues stabil? Die wird ja wehcselweise belastet. Oder Schwingt Dein Regler zusammen mit dem Regler des verwendeten Netzgerätes?
nochwas: "Regelstrecke ist bei mir ein Akku der konstant mit 6,75V geladen werden soll." Eigentlich ist Diese Aussage so nicht richtig, denn ein Akku wird mit Ladung (Coulomb) geladen, das ist Strom (Ampere) mal Zeit und nicht mit Spannung (Volt). Die Spannung eines Akkus ist im wesenlichen konstant, bis er eben leer ist. Die 6,75 V ist vermutlich die Lade-Schlußspannung eines 6V-Akkus. Die Akkuspannung wird nur als Wirkung aus der zugeführten Ladungsmenge immer größer. Zur Regelstrecke gehört außer dem Akku noch die Ansteuerung des Akkus, also die Sache mit der PWM und dem FET, ob mit oder ohne Widerstand in Reihe zum FET und ob die Versorgungsspannung Deiner Schaltung dabei in die Knie geht. Die Regelung darf deshalb nicht mehr Strom durch den Akku jagen, als die Versorgung zu liefern imstande ist. Viel Spaß beim Regeln Gruß
Dein Regelalgorithmus ist Murks. ;) Wie wärs mit einem einfachen P-Algorithmus? Regelabweichung = Ist - Soll; StellgroesseNEU = StellgroesseALT - (Proportionalfaktor * Regelabweichung); in Zahlen soll = 500 ist = 525 P := 0.1 --> e = ist-soll == +25 s = s - (0.1 * 25) Mit dem P-Wert musste halt mal ein wenig experimentieren, und so klein drehen, dass du möglichst nahe an den aperiodischen Grenzfall kommst. Überschwingen ist wahrscheinlich ned so gut. der Flo
@Florian dein Regelalgorithmus ist aber auch nicht viel besser. Es handelt sich hier nämlich nicht um einen P-Regler, sondern um einen D-Regler. Mit dem Teil wirst du so ziemlich nichts regeln können. Deine Stellgröße wird ziemlich schnell Null, wenn sich deine Ist-Werte nicht ändern. Du schreibst nämlich eigentlich. Ausgehend von s_o = 0 beim Start s_neu = s_alt - (P * (ist_neu - soll)) = s_o - (P * (ist_alt - soll)) - (P * (ist_neu - soll)) = - P * (ist_alt - soll - ist_neu + soll) = P * (ist_neu - ist_alt) Gruß Oliver
Mein Vorschlag ist Florians Regler als I-Regler zu bezeichnen, und mit der Rechnung von Florian (nach Korrektur) zu belegen. Ja, ja, die Vorzeichen vor den Klammern... ;)
pronto_salvatore mi piace la TUA risposta ...che pasticcioni... Ed
Hihi stimmt, da hab ich was durcheinandergeworfen, ihr habt natürlich Recht. Man merkt dass ich zuviel über der Diplomarbeit hänge ;) der Flo
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.