Hallo!
Bei den üblichen Regelalgorithmen gibt es ja immer einen Sollwert der
durch Veränderung der Stellgröße erreicht werden soll.
Bei meiner Anwendung soll der Regler immer ein kontinuierliches Maximum
am Ausgang durch Veränderung der Stellgröße ermitteln. Sogesehen ist der
Sollwert variabel, bzw. der über einen Zeitraum X ermittelte
Maximalwert.
Wie sollte man eine solche Regelung entwerfen? Es müsste ja theoretisch
immer mal der Stellwert vergrößert oder verkleinert werden um dann
wiederum festzustellen ob der Sollwert größer geworden ist.
Ich hoffe die Fragestellung ist soweit deutlich :)
Würde mich um Tips oder Gedankensnstöße dazu freuen.
Beste Grüße,
Bernhard
Erzähl doch mal mehr um was es genau geht. Man kann zum Beispiel immer
leicht "links" und "rechts" des Maximums regeln. Da diese Punkte leicht
unter dem Maximum liegen, weiss man, dass man in der Mitte im Maximum
ist. Also quasi die erste Ableitung auf 0 regeln (und die zweite
Ableitung zur Detektion ob ein Minimum oder Maximum verwenden)
Es geht um einen Schwingkreis dessen Induktivität durch äußere Einflüsse
immer verstimmt wird und sich dadurch die Resonsanzfrequenz ändert.
Der AVR kann über einen VCO die Frequenz einstellen und erhält über den
A/D-Wandler den aktuellen Wert der Amplitude.
Ziel ist eine kontinuierliche Anpassung der Frequenz auf die (derzeit)
maximal mögliche Amplitude.
> Ziel ist eine kontinuierliche Anpassung der Frequenz auf die (derzeit)> maximal mögliche Amplitude.
So wirklich verstehe ich das Problem nicht. Du hast doch eigentlich
alles was Du brauchst.
Um was für eine Applikation handelt es sich denn? Gibt es dabei noch
weitere Randbedingungen?
Ich denke die Anwendung (Schwingkreis) ist genau genug beschrieben.
Bei einem Wertebereich von 0 - 1024 für die Stellgröße ist die maximale
Amplitude z.B. bei 300.
Erfolgt nun eine Verstimmung der Induktivität durch z.B. eine Münze muss
die Stellgröße angepasst werden damit dann für den Zeitpunkt die
maximale Amplitude ermittelt werden kann (Maximalwert ist im Fall der
Münze z.B. geringer als davor).
Die Frage ist wie man an das Problem am besten rangeht.
Am Anfang ist der Schwingkreis ja nicht eingestimmt, d.h. auch geringe
Änderungen an der Frequenz führen nicht unbedingt zu einer messbaren
Änderung der Amplitude. Da müsste sich der Algorithmus grob herantasten.
Sobald messbare Änderungen erkennbar sind wird die Auflösung feiner
eingestellt und auf das Maximum geregelt.
Wobei mir nicht ganz klar ist wie man feststellt ob man über das Maximum
hinausgeregelt hat oder ob es noch kommt, bzw. in welche "Richtung" man
die Regelgröße verschiebt.
Beste Grüße,
Bernhard
Hi!
>Ziel ist eine kontinuierliche Anpassung der Frequenz auf die (derzeit)>maximal mögliche Amplitude.
Pmax ist doch dein Sollwert. Das ist das gleiche wie MPP bei
Solaranlagen,
nur das es da einfacher geht weil man sofort merkt ob die Leistung fällt
oder steigt.
Du musst deinen VCO einfach komplett durchstimmen und dabei das Maximum
suchen. Darauf stellst du dann deinen VCO ein und beobachtest nur noch
die
Amplitude. Wenn sie sich ändert kommt es jetzt auf deine Beobachtungen
an,
was du tun musst um Max. erneut zu erreichen.
Wenn dafür keine einheitlichen Zusammenhänge bestehen kannst du nur den
VCO komplett neu durchstimmen und erneut das Max. suchen.
Sind Zusammenhänge erkennbar, packe sie in eine Formel und baue damit
einen Regler. FUZZY könnte noch ein weiterer Ansatz sein,
beruht aber auch auf deinen Erfahrungen/Beobachtungen.
Viel Erfolg, Uwe
Hi alle Zusammen,
wie Uwe schon meinte, würde ich auch den VCO nach einem Schema das
komplette Band abtasten lassen und den Max. Wert suchen und so mit hast
du dan ja gleich die Max. Amplitude eh schön gemessen.
Jenach dem wie Träge das System ist das du durch misst musst du hier bei
natürlich auf Einschwingzeiten achten. Diese kannst du aber auch nutzen.
Wenn du jetzt den VCO von Min auf halbe Frequenz ziehst wesendlich
schneler als die Einschwingzeit des Kreises, hast du den Mittel wert der
Amplitude für diesen Teil des Bandes, das machst du mit dem Teil von
Mitte bis Max Frequenz auch, und vergleichst der Mittelwert der höher
ist, enthält zwangsläufig das Maximum, das kannst du belibig genau
runter brechen. Das ist im Grunde nur ein Suchalgorithmus für das
Maximum einer Zahlenfolge auf dein Problem adaptiert.
Einen Regler für dieses Problem gibt es in diesm Sinne nicht. denn du
suchst Das Maximum und Weiß nicht in welcher richtung du gegen steuern
musst um es zu finden. Diese Information bräuchte aber ein Regler.
Tec
Ich würde nicht auf das Maximum der Amplitude, sondern auf den Null-
durchgang der Phase regeln. Da die Phase bei der Resonanzfrequenz das
Vorzeichen wechselt, weiß man auch ohne Try-and-Error, in welche
Richtung man die Frequenz verändern muss.
Hallo,
der Forumeintrag ist zwar schon etwas älter aber falls mal jmd danach
sucht:
Extremwertregler oder Extremum Seeking Control (ESC) macht das. Gibt
auch ein schönen Tutrial für Simulink auf Youtube:
https://www.youtube.com/watch?v=Iat_fcIA3_Y&t=638s
> Es geht um einen Schwingkreis dessen Induktivität durch äußere Einflüsse
immer verstimmt wird und sich dadurch die Resonsanzfrequenz ändert.
Nun, das Ganze nennt sich AFC. Ein kontinuierlich arbeitender Regler.
Man generiert Seitenbanden, indem man den VCO frequenzmoduliert,
bedeutet, dem Steuereingang eine kleine Wechselspannung addiert. Nach
einer Synchrondetektion geht man auf einen Integrator, der die Frequenz
nachregelt. Der Regler regelt die beiden Seitenbanden auf gleiche
Amplitude und steuert so den VCO in die Mitte der Resonanz. Es gibt 2
Parameter. Die Modulationsfrequenz und Modulationsamplitude. Die
Modulationsfrequenz besagt, wie weit weg die Seitenbanden sind, die
sollten natuerlich noch in die Resonanz passen. Und die Ampltude besagt
die Amplitude des Seitenbandes. Man kann gut bei -40 .. -50 dBc
arbeiten, und somit das Nutzsignal sehr wenig stoeren.
Man sollte echt Threads automatisch schließen wenn da, ich sag mal, 12
Monate kein neuer Eintrag hinzu kam, die rote Schrift hilft anscheinend
nicht. Dieser Thread hier ist jetzt fast 10 Jahre alt.
Das Thema ist interessant, vielleicht interessiert's ja irgendwann
wieder jemanden. Die gezeigte Loesung ist uebrigens noch nicht erwaehnt
worden und sehr elegant zum Problem.