|
|
Rate Limiter Dynamic verursacht unerwünschte Spitzen |
|
suspectzero |
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 23.10.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 14.02.2018, 16:20
Titel: Rate Limiter Dynamic verursacht unerwünschte Spitzen
|
|
|
|
|
Hallo Forum,
ich möchte in meinem Simulationsmodell den Leistungsgradienten einer Batterie begrenzen und zwar beim Ladevorgang (nur wenn SoC über 50%) bzw. beim Entladevorgang (nur wenn SoC unter 50%). Die Auswertung erfolgt über einen If-Block. Dann gebe ich die Soll-Leistungskurve in einen Rate Limiter und gebe dann die Werte für positive bzw. negative Gradienten an. Funktioniert soweit auch ganz gut jedoch bekomme ich an speziellen Punkten unerwünschtes Verhalten: Wenn beispielsweise der SoC über 50 % ist, wird die Batterie anhand der Soll-Leistungskurve entladen (Gradient nicht begrenzt). An dem Punkt wo die Batterie den SoC von 50% erreicht wird wie gewollt die Ladebegrenzung aktiviert. Jetzt springt das Signal auf 0 um sich dann mit dem gewählten Gradienten anzunähern, obwohl im vorherigen Zeitschritt beide Signale schon gleich waren und der Leistungswert sich nicht geändert hat. Kann ich dem Rate Limiter Ausgang für jeden Zeitschritt einen "Output Value" geben (obwohl der Block evtl. wegen des SoC-Kriteriums nicht aktiv ist), sodass er bei Aktivierung nicht immer von 0 beginnt?
Ich hoffe ich konnte mein Problem ausreichend erklären. Ich hänge noch ein Bild an vielleicht wird es dadurch klarer.
LG
Beschreibung: |
|
Download |
Dateiname: |
image001.jpg |
Dateigröße: |
232.35 KB |
Heruntergeladen: |
433 mal |
|
|
|
|
|
suspectzero |
Themenstarter
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 23.10.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.02.2018, 13:18
Titel:
|
|
Hallo,
da das Problem glaube ich so recht unverständlich ist, möchte ich versuchen es zu umschreiben:
Ich habe einen if Block mit 3 verschiedenen Fällen. In jedem Fall wird ein Ausgangssignal erzeugt, das mittels eines Merge blocks zusammengeführt wird. An den Punkten, an denen die Bedingung eines anderen Zweiges erfüllt ist, entstehen im Gesamtverlauf natürlich Sprünge, sofern die beiden Signale an der "Schnittstelle" nicht zufällig den selben Wert haben. Ist es möglich den "nicht aktiven" Blöcken irgendwie mitzuteilen, welchen Wert der aktive Block gerade hat und diesen zu übergeben?
Ich hänge noch ein Bild an.
LG
Beschreibung: |
|
Download |
Dateiname: |
sim1_E_HG.PNG |
Dateigröße: |
63.36 KB |
Heruntergeladen: |
416 mal |
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|