Modellentwicklung Programmausdrucke hinzugefügt und Theorie Dynamik geringfügig erweitert

This commit is contained in:
2015-06-24 23:33:19 +02:00
parent 21974eb27e
commit 530e2c34b9
3 changed files with 95 additions and 12 deletions

View File

@@ -328,6 +328,7 @@
\newcommand{\LM}{\field{L}} % Lösungsmenge
\newcommand*{\qed}{\hfill\ensuremath{\blacksquare}}
\newcommand*\euler{\mathrm{e}}
\newcommand{\im}{\ensuremath{\mathrm{i}}}
\renewcommand{\deg}{\ensuremath{^{\circ}}\xspace}
\newcommand\degC{{\,^{\circ}\mathrm{C}}}
\newcommand\sins{{\mathrm{s}}} % short sin: s

View File

@@ -327,6 +327,7 @@ hybridShapeAssemble1.AddElement reference3
\end{lstlisting}
%
%
\paragraph{Längsschnitte}~\\\nopagebreak
Da mit der Einlesedatei \texttt{shell7.src} die kleinen Einzelflächen mit den zuvor definierten \emph{Keypoints} erstellt werden, wird vorerst nachvollzogen welche \emph{Keypoints} zur Flächenerzeugung verwendet wurden.
Die Zeilen 18.977 bis 21.484 der Einlesedatei \texttt{shell7.src} beschreiben die Flächenerzeugung.
Der Programmausdruck~\ref{lst:APDL-Flächen} stellt den Beginn mit der ersten Fläche dar.
@@ -347,19 +348,84 @@ Der Programmausdruck~\ref{lst:APDL-Flächen} stellt den Beginn mit der ersten Fl
\end{lstlisting}
Notiert werden Zeilen mit dem \texttt{a}"=Befehl, wie den in Zeile 18986; \texttt{a,1,9,1009,1001}, und in eine Textdatei Namens \texttt{sections.txt} zwischengespeichert.
Die dem \texttt{a}"=Befehl folgenden vier Ziffern, sind die eindeutigen Bezeichner der \emph{Keypoints}.
Mit dieser Methode reduziert sich die Anzahl der Keypoint von insgesamt 37.192 auf 498, wenn auf duplizierte sowie \emph{Keypoints} achtet die sich wirklich auf den Ebenen befinden. Die Umsetzung mit MATLAB zeigt Programmausdruck~\ref{lst:MATLAB-Keypoints}.
Mit dieser Methode reduziert sich die Anzahl der Keypoint von insgesamt 37.192 auf 498, wenn auf duplizierte \emph{Keypoints} sowie auf \emph{Keypoints} geachtet wird die sich wirklich auf den Ebenen befinden. Die Umsetzung mit MATLAB zeigt Programmausdruck~\ref{lst:MATLAB-Keypoints}.
\begin{lstlisting}[language=Matlab, firstnumber=45, caption={MATLAB Create\_CATIA\_Makro.m: Keypoint-Aufbereitung},label=lst:MATLAB-Keypoints]
uniqueSectionKeypoints = unique(sectionKeypoints(:));
%
% KEYPOINTS AND SECTIONS
iskeypointInSection = (ismember(keypoints(:,1) , uniqueSectionKeypoints));
\end{lstlisting}
Die gefundenen Punkte können nun in CATIA eingebaut werden.
Der Programmausdruck~\ref{lst:CATIA-Punkte} zeigt den Abschnitt des CATIA-Makros der die Punkteerzeugung durchführt.
\begin{lstlisting}[language=VBScript,firstnumber=608,showstringspaces=false, caption={VBScript Makro\_open\_file\_and\_create\_elements.catvbs}, label=lst:CATIA-Punkte]
Set hybridShapePointCoord1 = hybridShapeFactory1.AddNewPointCoord(1647.520000, 389.762000, -2870.000000)
hybridShapePointCoord1.RefAxisSystem = reference1
hybridBody6.AppendHybridShape hybridShapePointCoord1
hybridShapePointCoord1.Name = "Punkt.107001"
part1.InWorkObject = hybridShapePointCoord1
part1.Update
\end{lstlisting}
Im Nächsten Schritt werden auf Grundlage der Punkte oder \emph{Keypoints} Abschnittslinien erzeugt.
Informationen dazu sind in der Einlesedatei \texttt{shell7.src} in den Zeilen 17.262 bis 17.750 zu finden, siehe im Programmausdruck~\ref{lst:APDL-Linien} den Beginn der Linienerstellung.
\begin{lstlisting}[language=Fortran,firstnumber=17262, caption={APDL shell7.src: Informationen zu Einzelflächen},label=lst:APDL-Linien]
! Generate spanwise area-bounding lines with LAREA command
Linien ...
larea,9,1009,z_HP_area(1)
larea,13,1013,z_HP_area(1)
\end{lstlisting}
Mit dem \texttt{larea}"=Befehl werden Linien auf Flächen (dritten Parameter) durch Angabe von zwei \emph{Keypoints} (ersten zwei Parameter) erstellt.
Programmausdruck~\ref{lst:CATIA-Abschnittslinien}.
\begin{lstlisting}[language=VBScript,firstnumber=3440,showstringspaces=false, caption={VBScript Makro\_open\_file\_and\_create\_elements.catvbs}, label=lst:CATIA-Abschnittslinien]
Set hybridShapePointCoord1 = hybridShapes6.Item("Punkt.107009")
Set reference1 = part1.CreateReferenceFromObject(hybridShapePointCoord1)
Set hybridShapePointCoord2 = hybridShapes6.Item("Punkt.108009")
Set reference2 = part1.CreateReferenceFromObject(hybridShapePointCoord2)
Set hybridShapeLinePtPt1 = hybridShapeFactory1.AddNewLinePtPt(reference1, reference2)
hybridBody7.AppendHybridShape hybridShapeLinePtPt1
hybridShapeLinePtPt1.Name = "Linie.10801"
part1.InWorkObject = hybridShapeLinePtPt1
part1.Update
\end{lstlisting}
Zusätzlich zu diesen Linien, werden weitere Linien analog hinzugefügt, die sternförmig von den unterschiedlichen Längspositionen der Linien zum Zentrum führen und werden dann bei der Linienextrusion als Führungslinie verwendet.
Bevor die Linienextrusion durchgeführt wird, sind die einzelnen abschnittsweisen Längslinien zu jeweils zusammengesetzte Linien zu verbinden, siehe dazu Programmausdruck~\ref{lst:CATIA-Linienverbund} und \ref{lst:CATIA-Linienverbund-Einbau}.
\begin{lstlisting}[language=VBScript,firstnumber=7310,showstringspaces=false, caption={VBScript Makro\_open\_file\_and\_create\_elements.catvbs}, label=lst:CATIA-Linienverbund]
Set hybridShapes7 = hybridBody7.HybridShapes
Set hybridShapeLinePtPt1 = hybridShapes7.Item("Linie.10801")
Set reference1 = part1.CreateReferenceFromObject(hybridShapeLinePtPt1)
Set hybridShapeLinePtPt1 = hybridShapes7.Item("Linie.10901")
Set reference2 = part1.CreateReferenceFromObject(hybridShapeLinePtPt1)
Set hybridShapeAssemble1 = hybridShapeFactory1.AddNewJoin(reference1, reference2)
\paragraph{Längsschnitte}~\\\nopagebreak
~
Set hybridShapeLinePtPt1 = hybridShapes7.Item("Linie.11001")
Set reference3 = part1.CreateReferenceFromObject(hybridShapeLinePtPt1)
hybridShapeAssemble1.AddElement reference3
\end{lstlisting}
\begin{lstlisting}[language=VBScript,firstnumber=7402,showstringspaces=false, caption={VBScript Makro\_open\_file\_and\_create\_elements.catvbs}, label=lst:CATIA-Linienverbund-Einbau]
hybridShapeAssemble1.Name = "Verbindung.1101"
hybridBody7.AppendHybridShape hybridShapeAssemble1
part1.InWorkObject = hybridShapeAssemble1
part1.Update
\end{lstlisting}
%
Schließlich können mit den Linienverbund und den Führungslinien Flächen erzeugt werden, die die Struktur in Längsrichtung durchdringen, siehe dazu Programmausdruck~\ref{lst:CATIA-Linienextrusion}.
%
\begin{lstlisting}[language=VBScript,firstnumber=8787,showstringspaces=false, caption={VBScript Makro\_open\_file\_and\_create\_elements.catvbs}, label=lst:CATIA-Linienextrusion]
Set hybridShapeLinePtPt1 = hybridShapes7.Item("Linie.20801")
Set reference1 = part1.CreateReferenceFromObject(hybridShapeLinePtPt1)
Set hybridShapeDirection1 = hybridShapeFactory1.AddNewDirection(reference1)
Set hybridShapeAssemble1 = hybridShapes7.Item("Verbindung.1101")
Set reference2 = part1.CreateReferenceFromObject(hybridShapeAssemble1)
Set hybridShapeExtrude1 = hybridShapeFactory1.AddNewExtrude(reference2, 150.000000, 400.000000, hybridShapeDirection1)
hybridShapeExtrude1.SymmetricalExtension = 0
hybridBody4.AppendHybridShape hybridShapeExtrude1
hybridShapeExtrude1.Name = "Extrudieren.1001"
part1.InWorkObject = hybridShapeExtrude1
part1.Update
\end{lstlisting}
%
In ähnlicher Weise werden noch zwei Flächen für Längsversteifungen im Innern der Rotorblätter erstellt.
Das Ergebnis der bisherigen Schritten ist in Abbildung~\ref{fig:LängsschnitteCATIA} dargestellt.
%
\begin{figure}[H]\centering
\includegraphics[width=0.95\textwidth]{Laengsschnitte_CATIA.png}
@@ -367,7 +433,9 @@ Linien ...
\label{fig:LängsschnitteCATIA}
\end{figure} \vspace{-1.5em}
%
Mit dem MATLAB"=Programmausdruck im Anhang kann das vollständige CATIA"=Makro erzeugt und in CATIA ausgeführt werden.
Als letzte Aufbereitung für das Rotorblatt werden die Längsflächen direkt in CATIA mit dem Rotorblatt geschnitten und die überstehenden Flächen der Längsversteifungen getrimmt.
Damit sind alle Vorbereitungen für das Simulationsmodell erstellt, denn die anderen Teile der \ac{WEA} sind ausreichend modelliert beziehungsweise benötigen keine Modifikation für den Einbau von Materialparameter.
\subsection{Simulationsmodell} % Berechnungsmodell oder Simulationsmodell

View File

@@ -24,6 +24,9 @@ Die \ac{FEM} umfasst eine Vielzahl von Methodiken physikalische Fragestellungen
So sind für strukturmechanische Probleme einer \ac{WEA} beispielsweise die statische Durchbiegung der Rotorblätter aufgrund Eigengewicht und Windlasten
als auch Eigenformen und die Anlagenbelastung bei drehenden Rotorblätter von Interesse.
Dazu wird in den nachfolgenden Abschnitten auf die Grundlagen der statischen und dynamischen Analyse eingegangen.
%Zur weiteren Vertiefung der Themengebiete beziehungsweise bei Interesse zur Lösung von anderen Problemstellungen sei unter anderem auf die Literatur \citep{bathe86}, \cite{klein05} und \cite{becker02} sowie das \acs{ANSYS}"=Prograe einer \ac{WEA} beispielsweise die statische Durchbiegung der Rotorblätter aufgrund Eigengewicht und Windlasten
als auch Eigenformen und die Anlagenbelastung bei drehenden Rotorblätter von Interesse.
Dazu wird in den nachfolgenden Abschnitten auf die Grundlagen der statischen und dynamischen Analyse eingegangen.
%Zur weiteren Vertiefung der Themengebiete beziehungsweise bei Interesse zur Lösung von anderen Problemstellungen sei unter anderem auf die Literatur \citep{bathe86}, \cite{klein05} und \cite{becker02} sowie das \acs{ANSYS}"=Programmhandbuch %\cite{ansys}
%verwiesen.
Die Grundlage dieser Darstellung wiederum sind die Literatur \citep{bathe86}, \cite{klein05} und \cite{becker02} sowie das \acs{ANSYS}"=Programmhandbuch.
@@ -366,27 +369,32 @@ Die Umformung in die schwache Formulierung erfolgt analog zum statischen Fall
\paragraph{Das FE"=Gleichungssystem}~\\
...
\[
\tensor{K}\tensor{\hat{u}} + \tensor{M}\tensor{\hat{\ddt{u}}} = \tensor{\hat{r}}
\tensor{M}\tensor{\hat{\ddt{u}}} + \tensor{D}\tensor{\hat{\dt{u}}} + \tensor{K}\tensor{\hat{u}} = \tensor{\hat{r}}
\]
...
Mit \(\tensor{M}\) als Massenmatrix, \(\tensor{D}\) als Dämpfungsmatrix und \(\tensor{K}\) als Steifigkeitsmatrix sowie \(\tensor{\hat{r}}\) als Lastvektor.
\paragraph{Eigenfrequenzanalyse}~\\
Die Differentialgleichung für ungedämpfte freie Schwingung
\[
\tensor{K}\tensor{\hat{u}} + \tensor{M}\tensor{\hat{\ddt{u}}} = \tensor{0}
\tensor{M}\tensor{\hat{\ddt{u}}} + \tensor{K}\tensor{\hat{u}} = \tensor{0}
\]
Einsetzen des Lösungsansatzes
\[
\tensor{\hat{u}} = \tensor{\Phi}\euler^{i\,\omega\,t} \quad \text{mit } i = \sqrt{-1}
\tensor{\hat{u}} = \tensor{\Phi}\euler^{\im\omega t} \quad \text{mit } \im = \sqrt{-1}
\]
in die Differentialgleichung liefert das (reelle) Eigenwertproblem
\[
(-\lambda \tensor{M} + \tensor{K}) \tensor{\Phi} = \tensor{0} \quad \text{mit } \lambda=\omega^2
\]
wobei allgemein \(\euler^{i\,\omega\,t} \neq 0 \) gilt.
wobei allgemein \(\euler^{\im\omega t} \neq 0 \) gilt.
Für die Nichttriviale Lösung folgt die charakteristische Gleichung
\[
\det{(\tensor{K}-\lambda\tensor{M})} = 0
\]
Hierin sind \(\lambda_i\) die Eigenwerte und \(\omega_i\) die Eigenkreisfrequenzen sowie \(f_i=\frac{\omega_i}{2\pi}\) die Eigenfrequenzen und \(\tensor{\Phi}_i\) die Eigenvektoren beziehungsweise Eigenmoden.
...
[[Modale Superposition, Orthogonalität der Eigenvektoren, ggf. Effektive Massen]]
\paragraph{Transiente Analyse}~\\
Neben der Volumendiskretisierung wird für die Zeitintegration von transienten Feldgleichungen das zu untersuchende Zeitintervall in diskrete Zeitabschnitte \(\Delta t\) unterteilt
@@ -394,4 +402,10 @@ Neben der Volumendiskretisierung wird für die Zeitintegration von transienten F
[0,T] = \bigcup \Delta t \quad \text{mit } \Delta t = t_{n+1} - t_n
\]
Zeitintegration nach Newmark \cite{newmark59}...
Zeitintegration nach Newmark \cite{newmark59}...
\paragraph{Stationäre Analyse}~\\
\paragraph{Dämpfung}~\\