using new optimized control parameters
This commit is contained in:
@@ -48,7 +48,7 @@ the counter moves between +/- 16384. PwmSf is typically set to 95% of 16384
|
||||
\end{verbatim}
|
||||
Nevertheless the documentation is confusing. Therefore PwmSf is measured to convert idCmd bits values to idVolts bits in section \ref{sec:measCurStep}\\
|
||||
|
||||
The Parker stages are configured to contCur=800mA ,peakCur=2400mA. Specs of the D11 stage are 0.8Amp RMS (producing 4N force) and 2.4Amp RMS peak.\\
|
||||
The Parker stages are configured to contCur=800mA ,peakCur=2400mA. Specs of the D11 stage \cite[23]{ParkerStage} are 0.8Amp RMS (producing 4N force) and 2.4Amp RMS peak.\\
|
||||
It should be save to use the higher DC value of 0.92Amp and 2.8Amp instead of the RMS value.
|
||||
|
||||
\subsection{Measure Current Step}\label{sec:measCurStep}
|
||||
@@ -94,10 +94,9 @@ The images have been generated with
|
||||
\verb|./MXTuning.py --dir MXTuning/19_01_29 --mode 64|.\\
|
||||
|
||||
\begin{figure}[h]
|
||||
\vspace{-1cm}
|
||||
\includegraphics[scale=.45]{../python/MXTuning/19_01_29/img/bode_model_plot0.eps}
|
||||
\includegraphics[scale=.45]{../python/MXTuning/19_01_29/img/bode_model_plot2.eps}
|
||||
\vspace{-1cm}\caption{open loop of motor 1 and 2}
|
||||
\includegraphics[trim=0cm 1.5cm 0cm 1cm,scale=.45]{../python/MXTuning/19_01_29/img/bode_model_plot0.eps}
|
||||
\includegraphics[trim=0cm 1.5cm 0cm 1cm,scale=.45]{../python/MXTuning/19_01_29/img/bode_model_plot2.eps}
|
||||
\caption{open loop of motor 1 and 2}
|
||||
\label{fig:mot_open}
|
||||
\end{figure}
|
||||
|
||||
@@ -873,6 +872,8 @@ Further improvements could be done with filters to shape the bode diagram. But f
|
||||
|
||||
Therefore in the figure \ref{fig:deltatau_std_ctrl} the filter $\frac{C}{D}$ is the main filter that can enhance the regulation quality. Up to now, this was not achived, because the regulation seems to be stronger than the effect of the filter.\\
|
||||
|
||||
One point that is very important to keep in mind: The response analyses focused so far the input trajectory to the measured position. But the frequencies relevant for that are only below 50Hz, because this is the maximal frequency of the trajectory. An other point is the ability to correct position errors. For that the bode plot without any feed forward gains has to be analyzed. That should be the next point to focus on and to optimize.\\
|
||||
|
||||
For the time being, these regulation parameters should be good enough for the beam time in March 2019 but still some further minor improvements should be possible.\\
|
||||
|
||||
|
||||
@@ -887,9 +888,74 @@ For the time being, these regulation parameters should be good enough for the be
|
||||
|
||||
% Motor 2:11.84Hz 0dB
|
||||
% Kaff = 1/((11.84*2*np.pi)**2/5000/5000) = 4517.278506241804
|
||||
\FloatBarrier
|
||||
|
||||
\section{Shapepath: trajectory planing}
|
||||
|
||||
Especially in the use case that the sample has to move at each shot at a new position to hit precisly a cristall with sizes close to 1 um, the trajectory planing is very important to achive good precision.\\
|
||||
DeltaTau has the possibility to use pvt (position-velocity-time) motion. In that mode one can tell at which time a position is passed at a certain speed.\\
|
||||
|
||||
\paragraph{p0t motion:}
|
||||
A first veriy trivial approach is to stop at each point. This stop and go motion will induce a lot of 'shaking' because it always accelerates and decelerates. This can also have a negative inpact to the sample. Therefore the goal was to create smooth trajectory with optimal speed, when the crystal is hit.\\
|
||||
|
||||
\paragraph{pvt motion:}
|
||||
PVT motion is a function of $ax^3+bx^2+cx+d$ between 2 points. Additionally the derivate (velocity) in a point is same fro the previous and next trajectory segment.\\
|
||||
Assume that the time between points is $t_s$ ms.
|
||||
In this approach the velocity in the point $p_n$ such that the distance from point $p_{n-1}$ to $p_{n+1}$ is reached in $2 \cdot t_s$ ms. This approach gives a very smooth trajectory planing.\\
|
||||
|
||||
\paragraph{ift motion:}
|
||||
Each new point has to be reached at equidistant time $t_s$. So we can look at the position as sampling values. The trajectory with the least high frequency components is the inverse Fourier transformation of the sampling points. The reconstruction of the trajectory can be done with summing $sin(x)/x$ in the time domain or by adding zeros in the frequency spectrum and the do the inverse Fourier transformation.\\
|
||||
The resulting trajectory is the best achievable in point of view of frequency bandwidth. Unfortunately motion programs do not allow such trajectory planing out of the box.
|
||||
|
||||
\paragraph{pft motion:}
|
||||
pft means 'position-velocity-time with fft velocity'. This approach makes the best approximation of the ift-motion with a pvt motion. For that the steepness (derivate) of the ift has to be calculated in each sampling points. The derivate in time domain corresponds to multiply the fourier transformation with $i$:
|
||||
|
||||
\begin{align*}
|
||||
\mathcal{F}(f')(\xi)&=\int_{-\infty}^{\infty}e^{-2\pi i\xi t}f'(t)\,dt\\
|
||||
&=e^{-2\pi i\xi t}f(t)\bigr\vert_{t=-\infty}^{\infty}-\int_{-\infty}^{\infty}-2\pi i\xi e^{-2\pi i \xi t}f(t)\,dt\\
|
||||
&=2\pi i\xi\cdot\mathcal{F}(f)(\xi)
|
||||
\end{align*}
|
||||
|
||||
With that function the velocities in each point can be calculated easily.\\
|
||||
The trajectory planing is additionaly implemented in such a way, that the calculated speed can be scaled from 1 to 0 (1=pft 0=p0t). With that an optimal tradeoff between 'best bandwith but time critical on shot (pft)' and 'shaking but low speed on shpt (p0t)' can be achived.\\
|
||||
|
||||
\begin{figure}[h!]
|
||||
\center
|
||||
\includegraphics[trim=0cm 0.3cm 0cm 1.5cm,scale=.45]{traj1.eps}\\
|
||||
\includegraphics[trim=0cm 0cm 0cm 1cm,scale=.40]{traj2.eps}
|
||||
\includegraphics[trim=0cm 0cm 0cm 1cm,scale=.40]{traj3.eps}
|
||||
\label{fig:traj}
|
||||
\caption{trajectory planing}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Figure \ref{fig:traj} shows one axis trajectory planing with 40ms equidistant sampling points. The displayed trajectories are ift, pvt, p0t and pft. The other figure shows the frequency spectrum. The blue line shows a strong drop at 12.5Hz as expected (40ms sampling $\rightarrow$ 25Hz $\rightarrow$ Nyquist frequency = 12.5Hz). The last figure shows the difference of the pvt, p0t and pft compared to ift.\\
|
||||
As expected the pft matches the best the ift and has better bandwith behaviors than the other trajectory planing approaches.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
\begin{tcolorbox}[colback=red!5!white,colframe=red!75!black,colbacktitle=red!50,coltitle=black,title=TODO]
|
||||
\begin{verbatim}
|
||||
Add section shapepath:
|
||||
----------------------
|
||||
TODO:
|
||||
images of spiral motion: with pvt,pvt0,ift motion
|
||||
TODO:
|
||||
timing of motion
|
||||
\end{verbatim}
|
||||
\end{tcolorbox}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
\vspace{1pc}
|
||||
|
||||
\FloatBarrier
|
||||
\begin{appendix}
|
||||
\section{Appendix}\label{ax:optimize}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user