Software: SimX - Nadelantrieb - Geometrie und Waerme - Experimentplanung: Unterschied zwischen den Versionen

Aus OptiYummy
Zur Navigation springenZur Suche springen
KKeine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Zeile 7: Zeile 7:
=== Entwurfsparameter ===
=== Entwurfsparameter ===


Zwei Parameter können wir aus der Optimierung herausnehmen, da ihre Werte bereits bekannt sind:
Zwei Parameter müssen nicht optimiert werden da ihre Werte bereits bekannt sind:
  '''Nadel.x0 = 0.15 mm''' (Nadelspitze auf Papier)  
  '''Nadel.x0 = 0.2 mm''' (Nadelspitze auf Papier)  
  '''d_Magnet = 20 mm'''   (max. Spulen-Wickelraum)
  '''d_Magnet = 20 mm''' (max. Spulen-Wickelraum)
Wir berücksichtigen im Optimierungsexperiment die Nennwerte von 5 Entwurfsparametern:
Wir berücksichtigen im Optimierungsexperiment die Nennwerte von 5 Entwurfsparametern:
  '''d_Anker'''    (Ankerdurchmesser)  
  '''d_Anker'''    (Ankerdurchmesser)  
Zeile 21: Zeile 21:


Wir berücksichtigen 6 Forderungen als Restriktionsgrößen:<div align="center"> [[Bild:Software_SimX_-_Nadelantrieb_-_Geometrie_und_Waerme_-_einfuegen-bewertungsgroeszen.gif| ]] </div>
Wir berücksichtigen 6 Forderungen als Restriktionsgrößen:<div align="center"> [[Bild:Software_SimX_-_Nadelantrieb_-_Geometrie_und_Waerme_-_einfuegen-bewertungsgroeszen.gif| ]] </div>
  '''Praegung''' &ge; 1 (Prägungsmaß)  
  '''Praegung''' = 1 (Prägungsmaß)  
  '''|v_Max|'''  &le; 200 V (max. Spulenspannung)  
  '''|v_Max|'''  = 200 V (max. Spulenspannung)  
  '''i_Max'''    &le; 1,5 A (max. Spulenstrom)  
  '''i_Max'''    = 1,5 A (max. Spulenstrom)  
  '''L_Magnet''' &le; 30 mm (Magnetlänge)   
  '''L_Magnet''' = 30 mm (Magnetlänge)   
  '''dT_Draht''' &le; 40 K (Temperaturerhöhung)
  '''dT_Draht''' = 40 K (Temperaturerhöhung)
       da 50°C Umgebungstemperatur, setzen wir im SimulationX-Modell '''Geometrie.TSpule=90°C'''
       da 50°C Umgebungstemperatur, setzen wir im SimulationX-Modell '''CAD.TSpule=90°C'''
  '''Wichtig:''' Die Werte von Ausgangsgrößen werden entsprechend der im SimulationX-Modell gewählten Einheit übernommen!
  '''Wichtig:''' Die Werte von Ausgangsgrößen werden entsprechend der im SimulationX-Modell gewählten Einheit übernommen!
Und wir haben weiterhin den Wunsch, dass ein Prägezyklus '''tZyklus''' möglichst schnell vollendet wird. Diesen Wunsch könnten wir als Gütekriterium berücksichtigen:
Und wir haben weiterhin den Wunsch, dass ein Prägezyklus '''tZyklus''' möglichst schnell vollendet wird. Diesen Wunsch könnten wir als Gütekriterium berücksichtigen:
Zeile 56: Zeile 56:
Wir benutzen als Startpunkt für die Optimierung z.B. den Bestwert, welchen wir in der vorherigen Etappe ohne Berücksichtigung von Geometrie und Erwärmung ermittelt haben.
Wir benutzen als Startpunkt für die Optimierung z.B. den Bestwert, welchen wir in der vorherigen Etappe ohne Berücksichtigung von Geometrie und Erwärmung ermittelt haben.
* '''Wichtig:'''
* '''Wichtig:'''
*# '''''Geometrie.K_FeInnen=0.1xx''''': Jeder Teilnehmer der Lehrveranstaltung benutzt den individuellen Wert.
*# '''''CAD.K_FeInnen=0.1xx''''': Jeder Teilnehmer der Lehrveranstaltung benutzt den individuellen Wert.
*# '''''Geometrie.Re_Eisen=1.5&nbsp;mOhm ''''': Jeder Teilnehmer benutzt den gleichen Wert aus der Modell-Verifizierung.
*# '''''CAD.Re_Eisen=1.5&nbsp;mOhm ''''': Jeder Teilnehmer benutzt den gleichen Wert aus der Modell-Verifizierung.
*# '''''Geometrie.T_Spule=90°C''''': Der Wert der Spulentemperatur ist auf den zu erreichenden Grenzwert zu setzen.
*# '''''CAD.T_Spule=90°C''''': Der Wert der Spulentemperatur ist auf den zu erreichenden Grenzwert zu setzen.


'''Erläuterung zur Spulen-Erwärmung:'''<br>
'''Erläuterung zur Spulen-Erwärmung:'''<br>
Zeile 66: Zeile 66:
* Die berechnete Erwärmung wird durch den Trick der Vorgabe der Grenztemperatur nach Erreichen der optimalen Lösung mit der Vorgabetemperatur übereinstimmen.
* Die berechnete Erwärmung wird durch den Trick der Vorgabe der Grenztemperatur nach Erreichen der optimalen Lösung mit der Vorgabetemperatur übereinstimmen.
* Die wahrscheinlich geringfügige Abweichung des Modellverhaltens durch die fehlerhafte Spulentemperatur außerhalb des Optimums akzeptieren wir als Preis für den Gewinn an Rechengeschwindigkeit.
* Die wahrscheinlich geringfügige Abweichung des Modellverhaltens durch die fehlerhafte Spulentemperatur außerhalb des Optimums akzeptieren wir als Preis für den Gewinn an Rechengeschwindigkeit.
'''Numerische Probleme mit der Diode:'''<br>
Während der Optimierung erfolgen Modellberechnungen mit unterschiedlichsten Parameter-Kombinationen. Leider führen im Beispiel sehr viele diese Parameter-Kombinationen zu numerischen Problemen beim Abschaltvorgang im elektrischen Kreis:
* Ursache ist die stark nichtlineare Kennlinie der Diode im Zusammenspiel mit der Behandlung der praktisch gleichzeitig stattfindenden Umschalt-Ereignisse.
* Wir ersetzen die Diode deshalb durch eine Leiterverbindung. Das Verhalten des Antriebs ändert sich dadurch nur unwesentlich:
*# Es fließt im eingeschalteten Zustand bereits ein kleiner Strom durch den Schutz-Widerstand (i=u/R).
*# Die Abschaltspannung an der Spule verringert sich um die '''0,7&nbsp;V''' der fehlenden Diode.


=== Optimierungsverfahren ===
=== Optimierungsverfahren ===

Version vom 24. April 2024, 09:21 Uhr

Experiment-Planung

===>>> Der folgende Abschnitt wird noch überarbeitet !!!

Entwurfsparameter

Zwei Parameter müssen nicht optimiert werden da ihre Werte bereits bekannt sind:

Nadel.x0 = 0.2 mm (Nadelspitze auf Papier) 
d_Magnet = 20 mm  (max. Spulen-Wickelraum)

Wir berücksichtigen im Optimierungsexperiment die Nennwerte von 5 Entwurfsparametern:

d_Anker    (Ankerdurchmesser) 
R20_Spule  (Widerstand bei 20°C) 
w_Spule    (Windungszahl) 
k_Feder    (Federsteifigkeit) 
R_Schutz   (Schutzwiderstand) 

Diese Nennwerte werden in einem ersten Schritt im Workflow-Editor als abstrakte Daten-Objekte definiert:

Software SimX - Nadelantrieb - Geometrie und Waerme - einfuegen-nennwerte.gif

Bewertungsgrößen

Wir berücksichtigen 6 Forderungen als Restriktionsgrößen:

Software SimX - Nadelantrieb - Geometrie und Waerme - einfuegen-bewertungsgroeszen.gif
Praegung = 1 (Prägungsmaß) 
|v_Max|  = 200 V (max. Spulenspannung) 
i_Max    = 1,5 A (max. Spulenstrom) 
L_Magnet = 30 mm (Magnetlänge)   
dT_Draht = 40 K (Temperaturerhöhung)
      da 50°C Umgebungstemperatur, setzen wir im SimulationX-Modell CAD.TSpule=90°C
Wichtig: Die Werte von Ausgangsgrößen werden entsprechend der im SimulationX-Modell gewählten Einheit übernommen!

Und wir haben weiterhin den Wunsch, dass ein Prägezyklus tZyklus möglichst schnell vollendet wird. Diesen Wunsch könnten wir als Gütekriterium berücksichtigen:

  • Nach unseren Erfahrungen mit dem "Verklemmen" des Hooke-Jeeves-Verfahrens an Restriktionsgrenzen definieren wir tZyklus sofort als zusätzliche Restriktion.
  • Im Verlaufe des Optimierungsexperiments verschärfen wir schrittweise die Forderungen für die Dauer eines Präge-Zyklus.

Modell-Einbindung

SimulationX-Modell:

Dieses fügen wir zuerst als abstraktes Objekt in den Workflow-Desktop ein:

Software SimX - Nadelantrieb - Geometrie und Waerme - einfuegen-menue.gif Software SimX - Nadelantrieb - Geometrie und Waerme - einfuegen-simulationsmodell inout.gif

Jedes Simulationsmodell muss über seine Input- und Output-Größen in den Workflow eingebunden werden.

Input-Größen:
In unserem Beispiel sollen sämtliche Entwurfsparameter als Input-Größen in das SimulationX-Modell "Prägeantrieb" eingespeist werden. Ein Doppelklick auf das SimulationX-Objekt öffnet den zugehörigen Eigenschaftsdialog:

  • Man muss die Entwurfsparameter markieren, welche als Input-Größen in das Modell einzuspeisen sind.
  • Die Zuordnung des abstrakten Modell-Objekts zum konkreten Modell erfolgt durch Öffnen der Modell-Datei.
  • Dem Modell-Objekt gibt man einen sinnvollen Namen und einen erläuternden Kommentar:
    Software SimX - Nadelantrieb - Geometrie und Waerme - simulationsmodell-eigenschaften.gif
  • Wenn ein konkretes Modell zugeordnet wurde, kann man die abstrakten Entwurfsparameter auch konkreten Modellparametern zuordnen (Registerkarte Eingang).
  • Nach der Zuordnung der Modell-Parameter stehen die Anfangswerte in den Entwurfsgrößen zur Verfügung. Die Standardwerte für die Grenzen muss man noch durch sinnvolle Werte ersetzen.

Output-Größen:
Die Bewertungsgrößen kann man nicht direkt als Output-Variablen des Modells nutzen. Es sind deshalb noch keine Ergebnis-Verbindungen möglich:

  • Die Output-Variablen müssen als separate Datenobjekte eingefügt werden (Einfügen > Ausgangsgrößen):
    Software SimX - Nadelantrieb - Geometrie und Waerme - einfuegen ausgangsgroeszen.gif
  • Nach Doppelklick auf das SimulationX-Objekt kann man dann den abstrakten Ausgangsgrößen konkrete Variablen des Modells zuordnen (analog zu den Modellparametern, aber in Registerkarte Ausgang):
    Software SimX - Nadelantrieb - Geometrie und Waerme - ergebnisverbindungen zum modell.gif
  • Damit werden die Verbindungen der Ausgangsgrößen zum Modell hergestellt.
  • Nach dem Editieren (der Ausdrücke) aller Bewertungsgrößen werden deren Verknüpfungen zu den Ausgangsgrößen visualisiert:
    Software SimX - Nadelantrieb - Geometrie und Waerme - bewertungsgroeszen verknuepft.gif

Ausgangslösung

Wir benutzen als Startpunkt für die Optimierung z.B. den Bestwert, welchen wir in der vorherigen Etappe ohne Berücksichtigung von Geometrie und Erwärmung ermittelt haben.

  • Wichtig:
    1. CAD.K_FeInnen=0.1xx: Jeder Teilnehmer der Lehrveranstaltung benutzt den individuellen Wert.
    2. CAD.Re_Eisen=1.5 mOhm : Jeder Teilnehmer benutzt den gleichen Wert aus der Modell-Verifizierung.
    3. CAD.T_Spule=90°C: Der Wert der Spulentemperatur ist auf den zu erreichenden Grenzwert zu setzen.

Erläuterung zur Spulen-Erwärmung:
Es wird davon ausgegangen, dass die optimale Lösung den oberen Grenzwert für die Erwärmung voll ausschöpft:

  • Die aktuelle Spulentemperatur bestimmt den ohmschen Widerstand des Spulendrahtes. Der aktuelle Drahtwiderstand beeinflusst wesentlich die Verlustleistung in der Spule und damit die Spulenerwärmung, welche wiederum den Drahtwiderstand verändert.
  • Unser vereinfachtes Antriebsmodell berücksichtigt diese Wechselwirkung zwischen Spulentemperatur und Drahtwiderstand nur in einer Richtung durch Vorgabe einer Spulentemperatur. Die damit berechnete Erwärmung muss aber nicht zur vorgegebenen Spulentemperatur führen!
  • Die berechnete Erwärmung wird durch den Trick der Vorgabe der Grenztemperatur nach Erreichen der optimalen Lösung mit der Vorgabetemperatur übereinstimmen.
  • Die wahrscheinlich geringfügige Abweichung des Modellverhaltens durch die fehlerhafte Spulentemperatur außerhalb des Optimums akzeptieren wir als Preis für den Gewinn an Rechengeschwindigkeit.

Optimierungsverfahren

Software SimX - Nadelantrieb - Geometrie und Waerme - eigenschaft-optimierung.gif
  • Wir benutzen das Hooke-Jeeves-Verfahren mit "manueller" Startschrittweite und ohne automatischen Stop.
  • Nach Wahl des Optimierungsverfahrens sollte man überprüfen, ob die Startschrittweite der Entwurfsgrößen sinnvoll ist.
  • Um den Gradienten der Zielfunktionsverbesserung möglichst gut zu erfassen, sind kleine Abtastschrittweiten günstig.
  • Allerdings ist die minimal zulässige Abtastschrittweite abhängig vom "Rauschen" des Simulationsmodells. Der Anteil des stochastischen Fehlers darf die Berechnung der Änderungen der Bewertungsgrößen nicht stören!
  • Bei unserem Antriebsmodell hat sich z.B. 1/1000 des Startwertes als günstiger Wert für die Startschrittweite erwiesen.
  • Man beachte, dass die Windungszahl eine Ausnahme darstellt, da nur ganze Zahlen sinnvoll sind (Genauigkeit=1). Hier ist eine Startschrittweite von 1 Windung günstig.

Visualisierung

Man sollte die Nennwert-Verläufe aller Entwurfsparameter und Bewertungsgrößen jeweils in einem eigenen Fenster darstellen.