Software: SimX - Nadelantrieb - Geometrie und Waerme - Experimentplanung: Unterschied zwischen den Versionen
K (→Ausgangslösung) |
|||
Zeile 54: | Zeile 54: | ||
*# '''''Geometrie.T_Spule=90°C''''': Der Wert der Spulentemperatur ist auf den zu erreichenden Grenzwert zu setzen. | *# '''''Geometrie.T_Spule=90°C''''': Der Wert der Spulentemperatur ist auf den zu erreichenden Grenzwert zu setzen. | ||
'''Erläuterung zur Spulen-Erwärmung:'''<br> | |||
Es wird davon ausgegangen, dass die optimale Lösung den oberen Grenzwert für die Erwärmung voll ausschöpft: | 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. | * 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. | ||
Zeile 60: | Zeile 60: | ||
* 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. | ||
'''Nummerische 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 einem Abbruch der Simulation 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 V''' der fehlenden Diode. | |||
* Durch die verbesserte nummerische Stabilität ist es auch möglich, in der Simulationssteuerung die Werte für die absoluten und relativen Toleranzen auf '''1e-6''' zu verringern. Daraus resultiert ein geringeres Rauschen der Simulationsergebnisse. | |||
=== Optimierungsverfahren === | === Optimierungsverfahren === |
Version vom 20. April 2016, 10:09 Uhr
Entwurfsparameter
Zwei Parameter können wir aus der Optimierung herausnehmen, da ihre Werte bereits bekannt sind:
Nadel.x0 = 0.15 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:
Bewertungsgrößen
Wir berücksichtigen 6 Forderungen als Restriktionsgrößen:
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 Geometrie.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:
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:
- 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):
- 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):
- 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:
Ausgangslösung
Wir benutzen als Startpunkt für die Optimierung den Bestwert, welchen wir in der vorherigen Etappe ohne Berücksichtigung von Geometrie und Erwärmung ermittelt haben.
- Wichtig:
- Geometrie.K_FeInnen=0.1xx: Jeder Teilnehmer der Lehrveranstaltung benutzt den individuellen Wert.
- Geometrie.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.
Nummerische Probleme mit der Diode:
Während der Optimierung erfolgen Modellberechnungen mit unterschiedlichsten Parameter-Kombinationen. Leider führen im Beispiel sehr viele diese Parameter-Kombinationen zu einem Abbruch der Simulation 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 V der fehlenden Diode.
- Durch die verbesserte nummerische Stabilität ist es auch möglich, in der Simulationssteuerung die Werte für die absoluten und relativen Toleranzen auf 1e-6 zu verringern. Daraus resultiert ein geringeres Rauschen der Simulationsergebnisse.
Optimierungsverfahren
- Wir benutzen das Hooke-Jeeves-Verfahren mit "manueller" Startschrittweite und ohne automatischen Stopp.
- 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.