Software: SimX - Nadelantrieb - Aktordynamik - Hysterese-Nennwertoptimierung

Aus OptiYummy
Zur Navigation springenZur Suche springen

Nennwert-Optimierung mit Wirbelstrom und Hysterese

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:

  • 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.
  • Wir könnten die Optimierung mit dem Hooke-Jeeves-Verfahren starten, im Verlaufe der Optimierung könnte es dabei jedoch zu nummerischen Problemen kommen. Diese numerischen Probleme werden wir deshalb prophylaktisch "entschärfen". Dazu schließen wir vorläufig OptiY (mit Speichern) und auch das Modell in SimulationX (ohne Speichern).

Danach öffnen wir nur das SimulationX-Modell, um dieses in Hinblick auf die Optimierung günstiger zu konfigurieren:

  • Im Beispiel erwiesen sich die folgenden Einstellungen für die transiente Simulation als robust:
Software SimX - Nadelantrieb - Aktordynamik - hysterese-simulationssteuerung.gif
  • In vorherigen SimulationX-Versionen hatte das Modell manchmal ein Problem nach Vollendung des Prägezyklusses, wenn die Nadel in der Ruhelage an den starren Anschlag gedrückt wird. Dort kam es zu "ewigem Rechnen" mit extrem kleinen Schrittweiten.
  • Wir können in solchen Fällen 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".
  • Hinweis: 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!

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

.

Im obigen Beispiel wurde die angestrebte Zykluszeit von 3,1 ms nicht erreicht und man müsste diesen Grenzwert für den nächsten Optimierungslauf etwas erhöhen.