www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wie bekomme ich das Schwingen bei einer Regelung weg?


Autor: MicDen555 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Jens Renner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie sieht denn Deine Regelstrecke aus? Und welche Werte nimmt die
Stellgröße an (von wegen if-Bedingung)?

Autor: MicDen555 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: pronto_salvatore (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Jens Renner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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ß

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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ß

Autor: Florian Scharf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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

Autor: Stephan Hochberger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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... ;)

Autor: Stephan Hochberger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
grr, Rechnung von Oliver

Autor: edi.edi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
pronto_salvatore
mi piace la TUA risposta
...che pasticcioni...
Ed

Autor: Florian Scharf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hihi stimmt, da hab ich was durcheinandergeworfen, ihr habt natürlich
Recht. Man merkt dass ich zuviel über der Diplomarbeit hänge ;)

der Flo

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.