Software: SimX - Nadelantrieb - Aktordynamik - Hysterese-Nennwertoptimierung: Unterschied zwischen den Versionen

Aus OptiYummy
Zur Navigation springenZur Suche springen
KKeine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
 
(28 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Software:_SimX_-_Nadelantrieb_-_Aktordynamik|&uarr;]] <div align="center"> [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Modell|&larr;]] [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Experimentauswertung|&rarr;]] </div> <div align="center">''' Nennwert-Optimierung mit Wirbelstrom und Hysterese '''</div>
[[Software:_SimX_-_Nadelantrieb_-_Aktordynamik|]] <div align="center"> [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Modell|]] [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Experimentauswertung|]] </div> <div align="center">''' Nennwert-Optimierung mit Wirbelstrom und Hysterese '''</div>


Wir benutzen das ''OptiY''-Projekt '''Etappe2b-xx.opy''', um mit dem bereits definierten Experiment-Workflow eine optimale Parameter-Konfiguration unter Berücksichtigung von Wirbelstrom und Magnet-Hysterese zu finden:
Nach dem Öffnen des vorhandenen OptiY-Versuchsstandes '''Etappe2b_xx.opy''' gelangen wir mit den [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Wirbelstrom-Nennwertoptimierung|'''bereits geübten Schritten''']] zum benötigten Versuchsstand '''Etappe2c_xx.opy''' für das Hysterese-Modell:
* Von dem unter Berücksichtigung des Wirbelstroms ermittelten '''''Bestwert''''' werden wir die '''''Parameter übernehmen''''' als Startwert für die erneute Präzisierung der optimalen Lösung.
* Günstig für die Konvergenz des Hooke-Jeeves-Verfahrens zum Optimum ist eine Reduktion der '''Startschrittweiten auf ca. 1/1000 der Start-Nennwerte'''. Dies ist möglich, weil das Rauschen des Simulationsmodells infolge der Erhöhung der Rechengenauigkeit gering ist!
* Wir könnten die Optimierung mit dem Hooke-Jeeves-Verfahren starten, würden aber wahrscheinlich an numerischen Problemen scheitern. Diese numerischen Probleme werden wir deshalb prophylaktisch "entschärfen". Dazu schließen wir vorläufig ''OptiY'' und auch das Modell in ''SimulationX''.
* Es kommt in seltenen Fällen zu "ewigem Rechnen" eines Simulationslaufes mit extrem kleinen Schrittweiten an kritischen Stellen. Wir können für solche Fälle durch ''OptiY'' einen Abbruch der Simulation veranlassen. Dazu setzen wir im ''OptiY''-Workflow für das ''SimulationX''-Modell in der Registerkarte "Allgemein" die "'''Max. Prozesszeit&nbsp;=&nbsp;1&nbsp;s'''".
Danach öffnen wir nur das ''SimulationX''-Modell, um dieses in Hinblick auf die Optimierung günstiger zu konfigurieren:
* Das Modell wird bis zum Zeitpunkt t=tStop berechnet, wenn man keinen vorzeitigen Simulationsabbruch definiert.
* Unser Modell hat ein Problem nach Vollendung des Prägezyklusses, wenn die Nadel in der Ruhelage an den starren Anschlag gedrückt wird. Dort kommt es zu "ewigem Rechnen" mit extrem kleinen Schrittweiten.  
* Wir lösen dieses Problem, indem wir den Simulationslauf kurz nach Vollendung des Prägezyklusses durch Definition einer geeigneten Abbruchbedingung beenden ('''''Kontext-Menü des Modells > Eigenschaften'''''):
'''termCond=(Praegung.y>=1)and(tZyklus.y>1e-3)and((t-tZyklus.y)>1e-4)'''
<div align="center"> [[Bild:Software_SimX_-_Simulation_vorzeitig_beenden.gif| ]] </div>
* '''''Hinweis:''''' Diese Abbruchbedingung lässt sich für unser Beispiel schlecht verallgemeinern, sondern ist in Hinblick auf verwendete Zeitangaben auf den konkreten Bewegungsablauf zugeschnitten.
* Im Beispiel erwiesen sich die folgenden Einstellungen für die transiente Simulation als robust. Im Einzelfall kann eine leichte Verringerung von ''dtMin'' zu besserem Verhalten führen:
<div align="center"> [[Bild:Software_SimX_-_Nadelantrieb_-_Aktordynamik_-_hysterese-simulationssteuerung.gif| ]] </div>
* Falls das Modell erst einmal stabil rechnet, ist die Nennwert-Optimierung kein großes Problem:
<div align="center">[[Bild:Software_SimX_-_Nadelantrieb_-_Aktordynamik_-_hysterese-optimierungsverlauf.gif| ]]</div>[[Bild:memo_stempel.gif|right]]


Falls das Modell erst einmal stabil rechnet, ist die Nennwert-Optimierung kein großes Problem:
<div align="center">[[Bild:Software_SimX_-_Nadelantrieb_-_Aktordynamik_-_hysterese-optimierungsverlauf.gif|.]]</div>
* Im obigen Beispiel wurde eineZykluszeit von '''3,4&nbsp;ms''' angestrebt, aber nicht ganz erreicht.
* Man müsste die Optimierung mit einem leicht vergrößertem Zielwert für die Zykluszeit wiederholen. Für solche Iterationen sollte man den folgenden Hinweis berücksichtigen.


'''''Merke:''''' <br>Das globale Nennwert-Optimum eines technischen Systems schöpft im Normalfall alle Restriktionsgrenzen aus.


 
'''''Hinweis'':'''
Im Beispiel wurde der Grenzwert des Stromes nicht ganz ausgeschöpft, so dass noch geringfügige Verbesserungen der Zykluszeit zu erwarten sind:
* Der Wert von '''R_Spule''' wird zwar "optimiert", der tatsächliche Einfluss auf das Antriebsverhalten geht aber gegen Null!
* Der Pfad zum "absoluten" Optimum führt entlang der Restriktionsgrenze für die Abschaltspannung.
* Es ist günstig, '''R_Spule als Konstante''' mit einem Wert von '''1&nbsp;Ohm''' zu berücksichtigen → der Bestwert wird dann ca. mit der Hälfte der Optimierungsschritte erreicht.  
* Dieser Pfad ist extrem schmal und fast ohne Gefälle. Eine Erhöhung des Stromwertes führt in einem höheren Maße zur Überschreitung der Abschaltspannung, als zu einer Verkürzung der Zykluszeit.
<div align="center"> [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Modell|]] [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Experimentauswertung|]] </div>
* Die noch mögliche Verbesserung der Zykluszeit ist anscheinend nur akademischer Natur.
* Eine Abschätzung, in welchem Maße noch Verbesserungen der optimalen Lösung zu erwarten sind, gelingt nur nach intensiven Analysen.
'''''Achtung:''''' <br> Die geschilderten Probleme sind normal bei der numerischen Optimierung komplexer und stark nichtlinearer Systeme. Die wachsende "Intelligenz" der Software hält einen immer größeren Teil dieser Probleme vom Anwender fern. Trotzdem ist für absehbare Zeit der Eingriff des Menschen in solche Optimierungsprozesse noch erforderlich.
 
 
<div align="center"> [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Modell|&larr;]] [[Software:_SimX_-_Nadelantrieb_-_Aktordynamik_-_Hysterese-Experimentauswertung|&rarr;]] </div>

Aktuelle Version vom 27. Februar 2024, 11:45 Uhr

Nennwert-Optimierung mit Wirbelstrom und Hysterese

Nach dem Öffnen des vorhandenen OptiY-Versuchsstandes Etappe2b_xx.opy gelangen wir mit den bereits geübten Schritten zum benötigten Versuchsstand Etappe2c_xx.opy für das Hysterese-Modell:

  • Günstig für die Konvergenz des Hooke-Jeeves-Verfahrens zum Optimum ist eine Reduktion der Startschrittweiten auf ca. 1/1000 der Start-Nennwerte. Dies ist möglich, weil das Rauschen des Simulationsmodells infolge der Erhöhung der Rechengenauigkeit gering ist!
  • Es kommt in seltenen Fällen zu "ewigem Rechnen" eines Simulationslaufes mit extrem kleinen Schrittweiten an kritischen Stellen. Wir können für solche Fälle durch OptiY einen Abbruch der Simulation veranlassen. Dazu setzen wir im OptiY-Workflow für das SimulationX-Modell in der Registerkarte "Allgemein" die "Max. Prozesszeit = 1 s".

Falls das Modell erst einmal stabil rechnet, ist die Nennwert-Optimierung kein großes Problem:

.
  • Im obigen Beispiel wurde eineZykluszeit von 3,4 ms angestrebt, aber nicht ganz erreicht.
  • Man müsste die Optimierung mit einem leicht vergrößertem Zielwert für die Zykluszeit wiederholen. Für solche Iterationen sollte man den folgenden Hinweis berücksichtigen.


Hinweis:

  • Der Wert von R_Spule wird zwar "optimiert", der tatsächliche Einfluss auf das Antriebsverhalten geht aber gegen Null!
  • Es ist günstig, R_Spule als Konstante mit einem Wert von 1 Ohm zu berücksichtigen → der Bestwert wird dann ca. mit der Hälfte der Optimierungsschritte erreicht.