Erste Layout zu Einfügen von Punkten und Ebenen für CATIA eingebaut
This commit is contained in:
@@ -26,7 +26,7 @@
|
||||
\markboth{Anhang}{}
|
||||
In diesem Abschnitt werden Skripte dargestellt, welche Grundlage dieser Arbeit sind.
|
||||
|
||||
\lstinputlisting[style=custom, basicstyle=\ttfamily\scriptsize, caption={Create\_CATIA\_Makro.m}]{datas/Create_CATIA_Makro.m}
|
||||
\lstinputlisting[style=custom, basicstyle=\ttfamily\scriptsize, caption={MATLAB Create\_CATIA\_Makro.m},label=lst:MATLAB-CATIA-Makro]{datas/Create_CATIA_Makro.m}
|
||||
%,label=lst:CATIA-Makro
|
||||
|
||||
|
||||
|
||||
@@ -6,20 +6,90 @@
|
||||
|
||||
\subsection{Forschungsanlage}
|
||||
|
||||
|
||||
\subsubsection{Rotorblatt}
|
||||
|
||||
|
||||
\subsubsection{Spinner}
|
||||
|
||||
|
||||
\subsubsection{Gondel}
|
||||
|
||||
|
||||
\subsubsection{Turm}
|
||||
|
||||
|
||||
|
||||
\subsection{Computermodell}
|
||||
Note: Computermodell validiert durch Masterthesis von Sonja
|
||||
NOTE: Computermodell validiert durch Masterthesis von Svenja Prange.
|
||||
|
||||
\subsubsection{Rotorblatt}
|
||||
Bei der Modellerweiterung für das Rotorblatt werden zuerst zusätzliche Sektionen in das CATIA-Modell geschnitten und anschließend Punkte und Linien in Längsrichtung erzeugt. Die Linien werden in radialer Richtung extrudiert und wiederum mit dem CATIA-Modell geschnitten.
|
||||
Die Informationen werden aus der generierten ANSYS-Einlesedatei \texttt{shell7.src} vom XXX rausgeschrieben, in MATLAB als CATIA-Makro aufbereitet und in CATIA eingelesen und ausgeführt.
|
||||
|
||||
\paragraph{Sektionen und Punkte}~\\
|
||||
Die Informationen zu den Ebenen und der geometrischen Punkte -- beziehungsweise in ANSYS als \emph{Keypoints} bezeichnet -- sind in der Einlesedatei \texttt{shell7.src} von Zeile 8.682 bis 16.406 zu finden. Ein Ausschnitt des Inhalts sind in den folgenden zwei Auszüge dargestellt. Der erste Programmausdruck~\ref{lst:APDL-Punkte-Anfang} stellt den Anfang der \emph{Keypoint}-Erzeugung dar.
|
||||
\begin{lstlisting}[language=Fortran,firstnumber=8682, caption={ANSYS APDL shell7.src: Beginn Erstellung von Punkten und Ebenen},label=lst:APDL-Punkte-Anfang]
|
||||
! DEFINE KEYPOINTS FOR SECTIONS AND CONNECT KEYPOINTS WITH LINES
|
||||
|
||||
local,1000,CART,0,0,0, -90,0,-90
|
||||
|
||||
csys,0
|
||||
ksel,none
|
||||
k,1,-1.64752,0.389762,0
|
||||
k,2,-1.65218,0.365811,0
|
||||
k,3,-1.66391,0.303277,0
|
||||
\end{lstlisting}
|
||||
Der zweite Programmausdruck~\ref{lst:APDL-Punkte-Weitere} zeigt den Wechsel zwischen den Sektionen.
|
||||
\begin{lstlisting}[language=Fortran,firstnumber=8882, caption={ANSYS APDL shell7.src: Weitere Erstellung von Punkten und Ebenen},label=lst:APDL-Punkte-Weitere]
|
||||
k,195,-1.62342,0.474422,0
|
||||
k,196,-1.64096,0.41326,0
|
||||
zSmoothe
|
||||
csys,1000
|
||||
clocal,1001,CART,0,-0,0, -0,0,-0
|
||||
|
||||
local,12,CART,-0,0,0, 0,0,-0
|
||||
|
||||
csys,0
|
||||
ksel,none
|
||||
k,1001,-1.64752,0.389762,0.3
|
||||
k,1002,-1.65218,0.365811,0.3
|
||||
\end{lstlisting}
|
||||
Dies Ablauf wird analog für alle 38 Sektionen wiederholt mit welche insgesamt 37.192 \emph{Keypoints} erstellt werden.
|
||||
|
||||
Für das Importieren der Punkte in CATIA sind nur die Zeilen welche mit dem \texttt{k}-Befehl anfangen interessant. Der \texttt{k}-Befehl erstellt die \emph{Keypoints} und erwartet als weitere Parameter den Namen als Zahl und die Koordinaten in den drei Raumrichtungen.
|
||||
Jene Zeilen mit dem \texttt{k}-Befehl werden als Vorbereitung des CATIA-Makros in eine eigenständige Datei mit dem Namen \texttt{keypoints.txt} gespeichert und in MATLAB eingelesen.
|
||||
|
||||
Die Positionen der Ebenen kann beispielsweise von der z-Koordinate der \emph{Keypoints} abgelesen werden.
|
||||
Hierbei ist zu beachten dass die z-Koordinate bezüglich dem Zusammenbau um \unit{1,5}{m} verschoben wird und folglich den Abstand zur Rotornabe repräsentiert.
|
||||
|
||||
Mit der z-Korrektur liegen die 18 zusätzlichen Ebenen in Bezug auf dem Nabenradius nach der dargestellten MATLAB-Variable \texttt{planeDistances} im Programmausdruck~\ref{lst:MATLAB-Ebenen}.
|
||||
\begin{lstlisting}[language=Matlab, firstnumber=15, caption={MATLAB Create\_CATIA\_Makro.m: Position der Ebenen},label=lst:MATLAB-Ebenen]
|
||||
planeDistances = [7000, 8333,3, 10500, 13500, 18500, 19950, 22000, 26100, ...
|
||||
32250, 33500, 38500, 40450, 42500, 43500, 46500, 48650, 56166.7, 58900]; % in mm
|
||||
\end{lstlisting}
|
||||
Der Hauptteil zur Erzeugung von Ebenen in CATIA zeigt folgender Programmausdruck~\ref{lst:CATIA-Ebenen}
|
||||
%\begin{lstlisting}[language=Matlab,showstringspaces=false]
|
||||
%numberOfPlanes = length(planeDistances);
|
||||
%for i=1:numberOfPlanes
|
||||
% fprintf(fileID, ['Set hybridShapePlaneOffset1 = hybridShapeFactory1.AddNewPlaneOffset(reference1, %f, False)\r\n'...
|
||||
% 'hybridShapePlaneOffset1.Name = "Ebene.10%02d"\r\n'...
|
||||
% 'hybridBody1.AppendHybridShape hybridShapePlaneOffset1\r\n'...
|
||||
% 'part1.InWorkObject = hybridShapePlaneOffset1\r\n'...
|
||||
% 'part1.Update\r\n'], planeDistances(i), i);
|
||||
%end
|
||||
%\end{lstlisting}
|
||||
\begin{lstlisting}[language=VBScript,showstringspaces=false, caption={VBScript Makro\_open\_file\_and\_create\_elements.catvbs}, label=lst:CATIA-Ebenen]
|
||||
Set hybridShapePlaneOffset1 = hybridShapeFactory1.AddNewPlaneOffset(reference1, 7000, False)
|
||||
hybridShapePlaneOffset1.Name = "Ebene.1001"
|
||||
hybridBody1.AppendHybridShape hybridShapePlaneOffset1
|
||||
part1.InWorkObject = hybridShapePlaneOffset1
|
||||
part1.Update
|
||||
\end{lstlisting}
|
||||
Dieser Programmausdruck wird für jede zusätzliche Ebene analog durchlaufen
|
||||
und dabei, der in der ersten Zeile angegebene Abstand von 7000, mit den Werten aus der MATLAB-Variable \texttt{planeDistances} ersetzt.
|
||||
Die zweite Zeile benennt die Ebenen mit den Bezeichnungen von "\texttt{Ebene.1001}"\ bis "\texttt{Ebene.1018}".
|
||||
Mit den abschließenden Zeilen werden die Ebenen mit dem Modell verknüpft. Zuvor werden noch einige benötigte Variable zur Verfügung gestellt die hier nicht weiter gezeigt werden. Für den interessierten Leser und zur Vollständigkeit ist das gesamte MATLAB-Skript, welches das CATIA-Makro erzeugt, im Anhang als Programmausdruck \ref{lst:MATLAB-CATIA-Makro} angefügt.
|
||||
|
||||
\subsection{Berechnungsmodell} % oder Simulationsmodell
|
||||
|
||||
|
||||
Reference in New Issue
Block a user