Software: SimX - Nadelantrieb - Wirkprinzip - Guetefunktion

Aus OptiYummy
Zur Navigation springenZur Suche springen

Software SimX - Nadelantrieb - Wirkprinzip - 3d-kurve tzyklus titel.gif
Experiment: 3D-Gütefunktion (Rastersuche)

Das Hooke-Jeeves-Verfahren konvergiert durch ständige Abwärtsbewegung auf der Gütefunktion zum nächstgelegenen Minimum:

  • Es handelt sich zumindest um ein lokales Minimum auf der Gütefunktion.
  • Man kann sich dabei jedoch nie sicher sein, ob nicht doch noch Kombinationen für die Entwurfsparameter existieren, welche zu einer besseren Lösung führen (möglichst zum globalen Minimum der Gütefunktion).
  • Es wäre günstig, wenn man die Topografie der Gütefunktion in Analogie zu einer Landkarte kennen würde. Für unser Optimierungsproblem wollen wir dies in vereinfachter Form realisieren.
Software SimX - Nadelantrieb - Wirkprinzip - hoehenprofil suchpfad.gif

Die Gütefunktion wird in unserem Beispiel nur durch das Gütekriterium tZyklus gebildet. Während der Optimierung wird als Nennwert-Verlauf praktisch ein Höhenprofil des auf der Oberfläche der Gütefunktion zurückgelegten Pfades abgebildet. Der Wert der Zykluszeit ist bisher eine Funktion von den vier Entwurfsparametern:

  • d_Anker
  • Feder_k
  • Magnet_R
  • Nadel_x0

Geometrisch handelt es sich bei der kompletten Gütefunktion um eine 5D-Hyperfläche, welche für uns 3½D-Lebewesen schwer vorstellbar ist. Das Optimierungsproblem soll deshalb auf zwei Entwurfsparameter zurückgeführt werden. Wir erhalten dann bei hinreichend feiner Abtastung dieser Gütefunktion eine anschauliche 3D-Fläche.


Für die Reduktion des Optimierungsproblems müssen wir Änderungen am Simulationsmodell vornehmen. Dabei werden wir Bezug auf die bisherige Optimallösung mit vorgespannter Rückholfeder nehmen:

  • Die optimalen Entwurfsparameter übertragen wir mittels Analyse > Bestwert > Simulation durchführen in das SimulationX-Modell.
  • Im SimulationX speichern wir danach die Modell-Datei, um diesen Zustand zu sichern.
  • Wir beenden das OptiY. Dabei wird mit den aktuellen Programmversionen das SimulationX-Modell nicht geschlossen.
  • Nun können wir im SimulationX-Modell erforderlichen Änderungen vornehmen.

Für die Reduktion der Zahl der Entwurfsparameter sollen uns folgende Vorüberlegungen helfen:

  • Nadel_x0=0.15 mm
Die bisherigen Experimente zeigten, dass es am günstigsten ist, die Nadelspitze in der Ruhelage direkt auf der Papieroberfläche zu platzieren. Der Wert dieses Entwurfsparameters kann also konstant auf diesen Wert gesetzt werden! Wir setzen im SimulationX-Modell Nadel.x0=0.15 mm, was durch die optimalen Entwurfsparameter bereits erfolgt sein sollte.
  • Magnet_R - Abschaltung, wenn geprägt
Die Einschaltdauer der Magnetkraft muss vom Optimierungsverfahren kontinuierlich an die aktuelle Konfiguration von Ankerdurchmesser, Nadel-Ruhelage und Rückholfeder angepasst werden. Nur so kann für die aktuelle mechanische Konfiguration ein möglichst schnelles und sicheres Prägen des Papiers erreicht werden.
Diese Anpassung der Einschaltzeit kann man durch eine Änderung des Simulationsmodells automatisieren, indem man die Magnetkraft in Abhängigkeit vom Prägezustand steuert.
  • tZyklus=f(d_Anker, Feder_k)
Die übrig bleibende 3D-Gütefunktion wird wahrscheinlich das globale Optimum enthalten. Die Reduzierung der Dimensionen wird durch Berücksichtigung bekannter Abhängigkeiten im Simulationsmodell bzw. in der Experiment-Konfiguration erreicht.

Automatische Abschaltung der Magnetkraft

Das für die Abschaltung benötigte Status-Signal steht uns mit Praegung.y im Modell bereits zur Verfügung. Problematischer ist die hinreichend genaue Berücksichtigung von Fmax, hier sind einige Tricks erforderlich:

  • Fmax wurde bisher als Amplitude eines Sägezahn-Dreiecks vorgegebener Länge berechnet.
  • Die Kraft soll nun automatisch abgeschaltet werden, wenn das Papier komplett geprägt ist (Praegung.y≥1).
  • Da bei dieser automatischen Abschaltung der Abschaltzeitpunkt vorher unbekannt ist, kann der Dreiecksimpuls nicht mehr genutzt werden (Endwert von Fmax kann damit nicht realisiert werden!).
  • Deshalb wollen wir den Verlauf F=f(x) für die optimal angepasste Einschaltdauer näherungsweise nachbilden. Den erforderlichen Verlauf sehen wir in der Darstellung Luftspalt.Fi=f(Nadel.x) → beide Signale in ein Ergebnisfenster ziehen und y(x)-Darstellung wählen:
    • Der optimale Zeitpunkt für die Kraftabschaltung ist unmittelbar nach der Rissposition x=-0.39 mm.
      Software SimX - Nadelantrieb - Wirkprinzip - fmag von x dreieck.gif
      Die Nadel fliegt dann auf Grund ihrer Masseträgheit noch bis zum Anschlag und prägt das Papier komplett. Allerdings besteht die Gefahr, dass die kinetische Energie nicht ganz ausreicht und deshalb das Papier nicht richtig geprägt wird. Deshalb werden wir die automatische Abschaltung der Magnetkraft erst vornehmen, wenn Praegung.y=1 erreicht wird.
    • Die Form der Funktion Fmagn=f(x) entspricht weitestgehend einer quadratischen Funktion mit dem Wert Fmax zum Abschaltzeitpunkt. Das kann man bei Vernachlässigung der nichtlinearen Papierkräfte für dieses einfache Feder-Masse-System auch analytisch nachvollziehen.
    • Man muss dabei beachten, dass sich die Nadel erst bewegen kann, wenn die Vorspannkraft der Feder überwunden wird. Die Vorspannkraft von ca. 2 N ist im Vergleich zu ca. Fmax=50 N relativ gering (bei einer Masse von 10 g und einer Beschleunigung von 20 g).
    • Die Größe Praegung.y ändert sich beim Vorschub der Nadel von 0 auf 1. Dies soll genutzt werden, um den erforderlichen quadratischen Verlauf von Luftspalt.F näherungsweise nachzubilden. Die Anfangskraft für die Überwindung der Vorspannung wurde im Beispiel auf ca. 13% von Fmax gesetzt, damit zum Zeitpunkt t=0 die Federvorspann-Kraft mit Sicherheit überwunden werden kann:
      Software SimX - Nadelantrieb - Wirkprinzip - fmag von x ersatz.gif
      Blass hinterlegt erscheint im obigen Bild der wegabhängige Kraftverlauf des Dreieck-Impulses als eingefrorene Kurve. Die blaue Kurve entspricht der folgenden Formel, welche im Parameterfeld des Luftspalt-Elements eingetragen wurde. Der Ausdruck sign(1-floor(Praegung.y)) springt von Eins auf Null, wenn Praegung≥1 wird. Der Faktor 0.87 wurde gewählt, damit der Endwert von Fmax beim Abschalten erreicht wird:
0.87*Geometrie.Fmax*(0.15+sqrt(Praegung.y))*sign(1-floor(Praegung.y))

Erläuterung: floor(x) gibt den größten ganzzahligen Wert zurück, der nicht größer als x ist.
Wichtig: Wir verringern prophylaktisch in der Simulationssteuerung die min. Rechenschrittweite auf dtMin=1e-12 s. Anderenfalls kann es infolge des Kraftsprungs zum Zeitpunkt t=0 s zu Anlaufproblemen der numerischen Integration kommen (Fehlermeldung: "Verfahren konvergiert nicht!").

  • Das Verhalten des Magnet-Antriebs unterscheidet sich mit diesem Kraftansatz etwas vom optimal eingestellten bisherigen Dreiecksverlauf Fmagn=f(t). Qualitativ verhält sich der Antrieb jedoch ähnlich:
    Software SimX - Nadelantrieb - Wirkprinzip - optimum autoabschalt.gif
  • Das Modell soll nun so modifiziert werden, dass in Abhängigkeit von einem REAL-Parameter Abschaltung(0=Dreieck / 1=Auto) eine angepasste Berechnung von Luftspalt.F erfolgt:
    • Wir ergänzen in MagnGeo den Parameter Abschaltung mit entsprechendem Kommentar.
    • Achtung: in der aktuellen SimulationX Student Edition kam es zu Fehlermeldungen wegen unzureichender Lizenzen, solange der Parameter Abschaltung noch nicht im Luftspalt-Parameter benutzt wurde. Man kann diese Meldungen ohne Konsequenzen ignorieren!
    • Den Impulsgenerator Magnet verändern wir nicht. Er wird also weiterhin nur Dreiecksimpulse mit der vorgegebenen Amplitude Fmax erzeugen.
    • Die Umschaltung zwischen Dreiecksimpuls und Rechteckverlauf soll im Element Luftspalt für den Parameter F erfolgen. Der erste Summand entspricht dem eingespeisten Dreiecksimpuls, der zweite Summand der Ersatzfunktion. In Abhängigkeit des Wertes von Geometrie.Abschaltung (0 oder 1) wirkt nur einer der beiden Summanden:
self.in1*(1-Geometrie.Abschaltung) + 
0.87*Geometrie.Fmax*(0.15+sqrt(Praegung.y))*sign(1-floor(Praegung.y))*Geometrie.Abschaltung
  • Die sichere Funktion beider Betriebsmodi sollte man unbedingt überprüfen!
  • Achtung:
    • Wir erhöhen die Simulationszeit auf tStop=10 ms, um auch langsame Prägezyklen vollständig zu berechen
    • Um Probleme mit unserem bereits konfigurierten OptiY-Experiment zu vermeiden, setzen wir Abschaltung=0, bevor wir das Modell speichern. Damit ist im OptiY standardmäßig der bisherige Betriebsmodus mit Impulsgenerator wirksam.

Konfiguration eines neuen OptiY-Experiments

Software SimX - Nadelantrieb - Wirkprinzip - experiment duplizieren.gif

OptiY bietet die Möglichkeit, für ein Projekt mehrere Experimente zu verwalten. So können wir die bisherigen Einstellungen und Ergebnisse beibehalten und als Ausgangspunkt für ein neues Experiment nutzen:

  • Nach dem Duplizieren des Experiments erscheint im OptiY-Explorer die Kopie als Experiment2.
  • Dieses weitere Experiment besitzt am Anfang die gleiche Konfiguration wie das Original. Nur die Anzeigefenster muss man neu definieren.
  • Verwaltet man mehrere Experimente in einem Projekt, so sollte man mittels Umbenennen dafür sinnvolle Namen vergeben:
    • Das bisheriges Experiment könnte man z.B. nach dem verwendeten Optimierungsverfahren Hooke-Jeeves nennen.
    • Für das neue Experiment bietet sich die Bezeichnung Rastersuche 2D an:
      Software SimX - Nadelantrieb - Wirkprinzip - experimente umbenennen.gif

Für jedes Experiment wird von OptiY ein separater Workflow verwaltet, so dass darin unabhängig voneinander Änderungen vorgenommen werden können:

  • Zuerst selektieren wir die Rastersuche 2D über das Kontextmenü als Startup-Experiment, damit wir es bearbeiten können.
  • Wir löschen im zugehörigen Workflow die nicht mehr benötigten Entwurfsparameter:
    Software SimX - Nadelantrieb - Wirkprinzip - raster-workflow.gif
  • Software SimX - Nadelantrieb - Wirkprinzip - abschaltung konstant 1.gif
    Während der Rastersuche muss die Magnetkraft-Erzeugung mit Abschaltung=1 versehen werden:
    • Diesen Wert könnte man im SimulationX-Modell setzen. Das hat jedoch den Nachteil, dass der Wert für alle Experimente wirkt. Übersieht man diesen Effekt, gelangt man in anderen Experimenten ganz schnell zu fehlerhaften Resultaten!
    • Wir ergänzen deshalb einen Entwurfsparameter Abschaltung, den wir dann mit dem Startwert=1 versehen, aber konstant halten.
    • Abschaltung ordnen wir im Workflow dem Modellparameter Geometrie.Abschaltung zu.
  • Die Grenzen der beiden "echten" Entwurfsparameter muss man so groß wählen, dass das globale Optimum im aufgespannten Bereich enthalten ist:
    • Ein zu großer Bereich verhindert ein hinreichend dichtes Abtasten der Oberfläche wegen ausufernder Rechenzeit.
    • Orientieren sollte man sich an technisch-physikalisch sinnvollen Größen für die Parameter.
    • Meist kann man sich günstigen Grenzwerten für die Rastersuche nur iterativ nähern!
  • Im Sinne einer effektiven Nutzung der knappen Übungszeit werden hier günstige Grenzwerte vorgegeben:
    • d_Anker = 6...16 mm
    • Feder_k = 2...200 N/mm
  • Als Optimierungsverfahren wählen wir die Rastersuche mit 900 Abtastschritten:
    Software SimX - Nadelantrieb - Wirkprinzip - 3d-kurve rastersuche konfig.gif
    • Der Bereich jedes Entwurfsparameters wird dabei in gleichmäßigen Abständen an 30 Punkten abgetastet.
    • 30x30=900 Simulationsläufe sind auf modernen PC ein günstiger Kompromiss zwischen Rechenzeit und Feinheit der Abtastung.
    • Der Rechenzeitbedarf steigt quadratisch mit der Feinheit der Rasterung, deshalb sollte man sich auf älterer Hardware mit 20x20=400 Simulationsläufen zufrieden geben!


Hinweis:

In der Simulationssteuerung von SimulationX muss tStop größer gewählt werden, als der längste Prägezyklus im Suchraum! Im Beispiel sollte tStop=10 ms ausreichen.


  • Das 3D-Diagramm für das Gütekriterium tZyklus=f(d_Anker, Feder_k) kann man bereits vor dem Start der Optimierung öffnen (Analyse > Darstellung > 3D-Darstellung).
  • Software SimX - Nadelantrieb - Wirkprinzip - 3d-kurve konfig 3d.gif
    Nach Start der Optimierung baut sich Stück für Stück die 3D-Fläche im Diagramm auf.
    • Ein Mausklick auf das 3D-Diagramm ermöglicht im Eigenschaftsfeld die Konfiguration der Darstellung. Mit dem Einschalten aller Optionen erhält man eine gute Flächendarstellung und erkennt die einzelnen Schritte anhand der Punkte.
    • Mit dem Maus-Cursor lässt sich die Darstellung drehen, so dass man sich günstige Ansichten einstellen kann. Die Darstellung der Punkte wurde für das 3D-Diagramm deaktiviert:
      Software SimX - Nadelantrieb - Wirkprinzip - 3d-kurve tzyklus stabil.gif

Interpretation der Gütefunktion

  • Die Magnetkraft schaltet erst nach erfolgreichem Prägen des Papiers ab:
    • Reicht die Kraft dafür nicht aus, so kehrt die Nadel nicht mehr in die Ruhelage zurück, weil die Kraft nicht abschaltet.
    • In diesem Fall wird auf Grund des Messprinzips tZyklus=0 s ermittelt, obwohl praktisch tZyklus=unendlich ist!
  • Die Z-Achse (tZyklus) des 3D-Diagramms wird automatisch zwischen Minimalwert (0 s) und Maximalwert (langsamster Prägezyklus) skaliert:
    • tZyklus=0 repräsentiert den verbotenen Bereich, in dem keine Prägung stattfindet (=Restriktionsverletzung)
    • Die "Zacken" an der Grenze des zulässigen Lösungsbereichs resultieren aus dem Abtast-Raster.
  • Um die abgebildete Gütefunktion besser an die "natürlichen" Gegebenheiten anzupassen und gleichzeitig eine bessere Skalierung in Z-Richtung zu erhalten, genügt eine einfache Änderung:
    • Wir setzen im SimulationX-Modell für den Anfangswert tZyklus.y0=0.0034. Damit erscheint dieser Wert von 3,4 ms beim Nichtprägen.
    • Man erkennt dann im Bild, dass für diesen Zustand die Zykluszeit steil ansteigt (praktisch gegen Unendlich geht).
    • Dieses Plateau markiert gleichzeitig die Forderung für die maximal zulässige Zykluszeit.
    • Nach Rücksetzen und erneutem Start der Rastersuche erhalten wir eine günstigere Darstellung Gütefunktion tZyklus=f(d_Anker, Feder_k). Die Darstellung der Punkte wurde für das 3D-Diagramm deaktiviert:
      Software SimX - Nadelantrieb - Wirkprinzip - 3d-kurve tzyklus grenzwert.gif

Das globale Optimum liegt in einer flachen Mulde unweit der Grenze zum "Nichtprägen", daraus kann man folgende Schlussfolgerungen ziehen:

  1. Insbesondere die Federkonstante kann infolge der flachen Mulde in einem weiten Bereich verändert werden, ohne dass sich die Zykluszeit in relevanten Größenordnungen ändert. Man kann sich bei der Wahl eines konkreten Wertes an der technischen Realisierbarkeit orientieren.
  2. Zur gewählten Federsteife kann man einen geeigneten Ankerdurchmesser wählen, der einen hinreichend schnellen Prägezyklus ermöglicht.
  3. Die Kombination der gewählten Entwurfsparametern sollte für eine optimale Lösung möglichst weit entfernt von der Restriktionsgrenze liegen, um trotz aller Toleranzen einen sicheren Betrieb des Antriebs zu gewährleisten.

Hinweis: Der Anfangswert 0,0034 von tZyklus.y0 wird nur wirksam, wenn man den Kraftmodus "Abschaltung=1" benutzt. Beginnt die Magnetkraft bei Null, so wird die Nadel durch die Feder-Vorspannung in den Anschlag der Ruhelage gedrückt. Dies wird als erstes Ereignis registriert und dafür eine Zeit nahe Null für tZyklus.y übernommen.