diff --git a/python/MXTuningDoc/fastStageTune.tex b/python/MXTuningDoc/fastStageTune.tex index cba690a..2117ef1 100644 --- a/python/MXTuningDoc/fastStageTune.tex +++ b/python/MXTuningDoc/fastStageTune.tex @@ -177,21 +177,21 @@ $s \cdot iqMeas =\frac{1}{L}iqVolts - \frac{R}{L}iqMeas$\\ Input: Force $u(t)=F$\\ Output: Position $y(t)=x_1(t)$\\ -total mass $m=m_1+m_2+\ldots+m_n$\\ -damping: $d_1 \ldots d_n$\\ -springs: $k_1 \ldots k_n$\\ +mass $m=m_1+m_2+\ldots+m_n$\\ +damping: $d=d_1+d_2+\ldots+d_n$\\ +springs: $k=k_1+k_2+\ldots+k_n$\\ \eqref{mech1} shows the mechanical differential equations: \begin{equation} \begin{aligned} m_1\ddot{x}_1 = & u(t) -k_1x_1-d_1\dot{x}_1\\ - & + k_2x_2+d_2\dot{x}_2 - + k_3x_3+d_3\dot{x}_3 - + k_4x_4+d_4\dot{x}_4\\ - m_2\ddot{x}_2= & -k_2x_2-d_2\dot{x}_2\\ - m_3\ddot{x}_3= & -k_3x_3-d_3\dot{x}_3\\ - m_4\ddot{x}_4= & -k_4x_4-d_4\dot{x}_4\\ + & + k_2(x_2-x_1)+d_2(\dot{x}_2-\dot{x}_1) + + k_3(x_3-x_1)+d_3(\dot{x}_3-\dot{x}_1) + + k_4(x_4-x_1)+d_4(\dot{x}_4-\dot{x}_1)\\ + m_2\ddot{x}_2= & k_2(x_2-x_1)+d_2(\dot{x}_2-\dot{x}_1)\\ + m_3\ddot{x}_3= & k_3(x_3-x_1)+d_3(\dot{x}_3-\dot{x}_1)\\ + m_4\ddot{x}_4= & k_4(x_4-x_1)+d_4(\dot{x}_4-\dot{x}_1)\\ \end{aligned}\label{mech1} \end{equation} @@ -230,19 +230,19 @@ x_4\\ A= \begin{bmatrix} 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0\\ --\frac{k_1}{m_1} & -\frac{d_1}{m_1} & -\frac{k_2}{m_1} & -\frac{d_2}{m_1} & -\frac{k_3}{m_1} & -\frac{d_3}{m_1} & -\frac{k_4}{m_1} & -\frac{d_4}{m_1}\\ +-\frac{k}{m_1} & -\frac{d}{m_1} & \frac{k_2}{m_1} & \frac{d_2}{m_1} & \frac{k_3}{m_1} & \frac{d_3}{m_1} & \frac{k_4}{m_1} & \frac{d_4}{m_1}\\ 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0\\ -0 & 0 & -\frac{k_2}{m_1} & -\frac{d_2}{m_2} & 0 & 0 & 0 & 0 \\ +-\frac{k_1}{m_2} & -\frac{d_1}{m_2} & \frac{k_2}{m_2} & \frac{d_2}{m_2} & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0\\ -0 & 0 & 0 & 0 & -\frac{k_3}{m_1} & -\frac{d_3}{m_3} & 0 & 0 \\ +-\frac{k_1}{m_3} & -\frac{d_1}{m_3} & 0 & 0 & \frac{k_3}{m_1} & \frac{d_3}{m_3} & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1\\ -0 & 0 & 0 & 0 & 0 & 0 & -\frac{k_4}{m_1} & -\frac{d_4}{m_4} \\ +-\frac{k_1}{m_4} & -\frac{d_1}{m_4} & 0 & 0 & 0 & 0 & \frac{k_4}{m_1} & \frac{d_4}{m_4} \\ \end{bmatrix},\quad B=\begin{bmatrix} -\frac{1}{m} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0\\ +\frac{1}{m_1} \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 0\\ \end{bmatrix} %,\quad %C=\begin{bmatrix} @@ -252,10 +252,51 @@ B=\begin{bmatrix} \label{mech2} \end{equation} +\subsection{Stage data} +This data comes from datasheets and construction information [biblio: 'Dynamics of Parker Stage', Wayne Glettig 5.12.2018]. + +\begin{tabular}{|r|l|} +\hline +Stage Y mass& 340g \\ +Stage X mass& 950g \\ +Interferometer mirrors & 51g (additional)\\ +Aluminun (instead ABS) & 42g (additional)\\ +\hline +\end{tabular} + +\vspace{1pc} + +\begin{tabular}{|r|c|l|} +\hline +Continous force && 5.51N \\ +Peak force && 12N \\ +Static friction && 1N\\ +Viscose damping && 0.5N$\cdot$s/m\\ +Motor constant &Km& 1.46N/$\sqrt{watt}$\\ +Resistance &R&8.8$\Omega$\\ +Inductance &L& 2.4mH\\ +\hline +\end{tabular} + +\vspace{1pc} + +The data in the data sheet are quite confusing. But lets check the motor Konstant Km.\\ +The data sheet says:\\ +Stall Current Continous 0.92A, Stall force Continous 4N + +\[ +U=R\cdot I \qquad P=U \cdot I \quad \rightarrow \quad P=R \cdot I^2\\ +\] + +at a constant current of 0.92A we have $ 8.8 \cdot 0.92^2 = 7.44 $W the resulting force will be:\\ +$1.46N \cdot \sqrt{7.44} = 3.98 N$ \section{Simulink/MATLAB simulations} + +TODO: describe the identification process to get a model out of the bode plots. identifyFxFyStage.m\\ + Simulink simulation \verb|stage_closed_loop.slx| with \verb|ServoDeltaTau_z G(z)| showed similar response Therefore the model seems good enough diff --git a/python/MXTuningDoc/model.svg b/python/MXTuningDoc/model.svg index 3cd4863..3f8d24a 100644 --- a/python/MXTuningDoc/model.svg +++ b/python/MXTuningDoc/model.svg @@ -484,11 +484,11 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="1.3997821" - inkscape:cx="159.66739" - inkscape:cy="505.01076" + inkscape:zoom="1.9795908" + inkscape:cx="227.4925" + inkscape:cy="145.89617" inkscape:document-units="mm" - inkscape:current-layer="layer1" + inkscape:current-layer="g4751" showgrid="true" inkscape:snap-grids="false" inkscape:snap-nodes="true" @@ -836,8 +836,9 @@ + d="m 254.80827,948.57917 0,24.08103" + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + sodipodi:nodetypes="cc" /> + d="m 154.7927,967.95427 99.51557,0" + style="color:#000000;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#arrowSimple-3);color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" + sodipodi:nodetypes="cc" /> + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> 1 x1, xx2, x2, x3, x3 + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:64.99999762%;font-family:sans-serif;-inkscape-font-specification:sans-serif;baseline-shift:sub">4 +