|
|
@@ -0,0 +1,106 @@ |
|
|
|
|
|
%&tex |
|
|
|
|
|
\subsection{Feature Selection} |
|
|
|
|
|
The implementation of the end-effector proofed to be impractical. |
|
|
|
|
|
This means that only two features are left. |
|
|
|
|
|
The updated table in \autoref{tab:featurestab2} shows that the next step would be the SCARA. |
|
|
|
|
|
The SCARA has a higher risk/time factor and covers more tests. |
|
|
|
|
|
\begin{table}[] |
|
|
|
|
|
\caption{} |
|
|
|
|
|
\label{tab:featurestab2} |
|
|
|
|
|
\begin{tabular}{|l|l|l|l|l|l|} |
|
|
|
|
|
\hline |
|
|
|
|
|
Feature & Dependees & Tests & Risk & Time & Risk/Time \\ \hline |
|
|
|
|
|
SCARA & - & 3 & 40\% & 10 days & 4 \\ \hline |
|
|
|
|
|
End-effector & SCARA & 2 & 60\% & 8 days & 7.5 \\ \hline |
|
|
|
|
|
Carriage & - & 2 & 30\% & 10 days & 3 \\ \hline |
|
|
|
|
|
\end{tabular} |
|
|
|
|
|
\end{table} |
|
|
|
|
|
|
|
|
|
|
|
\subsection{Rapid Development} |
|
|
|
|
|
At the end of this implementation the SCARA is able to write the first characters |
|
|
|
|
|
This will be achieved by working through different levels of detail. |
|
|
|
|
|
Where each level adds more detail to the model. |
|
|
|
|
|
The levels that are implemented are as follow: |
|
|
|
|
|
\begin{enumerate} |
|
|
|
|
|
\item Basic kinematics model, no physics. |
|
|
|
|
|
\item Basic physics model, ideal 2D physics. |
|
|
|
|
|
\item Basic Motor behavior, 2D physics with non-ideal DC-motor. |
|
|
|
|
|
\item Basic control law, path planning. |
|
|
|
|
|
\item Advanced motor behavior, 2D physics with stepper motor behavior. |
|
|
|
|
|
\item Advanced physics model, 3D physics with complex dynamics with Lie-algebra. |
|
|
|
|
|
\item Marker lifting behavior, servo lifts marker of the board. |
|
|
|
|
|
\end{enumerate} |
|
|
|
|
|
This mainly describes the different level of physics detail. |
|
|
|
|
|
Together with the physics model there will be a solid 3D CAD model. |
|
|
|
|
|
The CAD model helps to check with dimensions and possible collisions of objects. |
|
|
|
|
|
|
|
|
|
|
|
\subsubsection{Basics} |
|
|
|
|
|
\begin{marginfigure} |
|
|
|
|
|
\centering |
|
|
|
|
|
\begin{tikzpicture} |
|
|
|
|
|
\tikzstyle{arrow} = [-latex,ultra thick] |
|
|
|
|
|
|
|
|
|
|
|
% draw roof |
|
|
|
|
|
\fill[pattern = north east lines] ($ (0,0) + (-1,0) $) rectangle ($ (0,0) + (1,0.5) $); |
|
|
|
|
|
\draw[thick] ($ (0,0.5) + (-1,0) $) -- ($ (0,0.5) + (1,0) $); |
|
|
|
|
|
|
|
|
|
|
|
%draw arm and joints |
|
|
|
|
|
\fill (0,0.5) circle (0.2); |
|
|
|
|
|
\draw[thick] (0,0.5) to node[midway,right,draw=none] {$a$} (-1.5,3.5); |
|
|
|
|
|
\fill (-1.5,3.5) circle (0.2); |
|
|
|
|
|
\draw[thick] (-1.5,3.5) to node[midway,above,draw=none] {$b$}(1.51,4.26); |
|
|
|
|
|
|
|
|
|
|
|
%draw mass |
|
|
|
|
|
\draw (1.7,4.32) circle (0.2) node {$m$}; |
|
|
|
|
|
|
|
|
|
|
|
%draw arc |
|
|
|
|
|
%\draw[dashed,gray] (-1.5,3.5) -- ++(2.5,0); |
|
|
|
|
|
%\draw (1,0.5) arc (0:116:1cm) node[above,midway] {$\theta$}; |
|
|
|
|
|
|
|
|
|
|
|
%\draw [arrow] (c.south) -- +(0,-1cm) node[midway,right,draw=none] {$F_{g} = m \cdot g$}; |
|
|
|
|
|
\end{tikzpicture} |
|
|
|
|
|
\caption{Basic kinematics of the SCARA} |
|
|
|
|
|
\label{fig:scaraarm} |
|
|
|
|
|
\end{marginfigure} |
|
|
|
|
|
The first four detail steps are just creating the basics dynamics of the SCARA as shown in \autoref{fig:scaraarm} |
|
|
|
|
|
It start with the kinematics model that is used to test the forward and inverse kinematics of the design. |
|
|
|
|
|
It gave a general idea of angles and arm lengths that are required in the design. |
|
|
|
|
|
The second detail iteration adds the basic physics of the model. |
|
|
|
|
|
This model was in the form of a double pendulum, with to powered joints. |
|
|
|
|
|
The ideal motors in the joints made it that it could move with almost infinite speed. |
|
|
|
|
|
To get a better idea of the forces in the model, the ideal motors are replaced with a beter motor model. |
|
|
|
|
|
As the system did not operate with infinite gain anymore it the path planning was updated as well. |
|
|
|
|
|
A simple PID controller was implemented to make SCARA follow a square path. |
|
|
|
|
|
|
|
|
|
|
|
Now that the model forms a basic with the non-ideal motors, basic physics and a controllaw, it can be used to make some estimates. |
|
|
|
|
|
The model followed the required path in the specified amount out time. |
|
|
|
|
|
With this, the minimum required torque could be calculated. |
|
|
|
|
|
Which is then used to dimension the motors. |
|
|
|
|
|
|
|
|
|
|
|
\subsubsection{Advanced Model} |
|
|
|
|
|
The basic model contains all elementary components and detail can be added for different components. |
|
|
|
|
|
The first step was to improve the motor models. |
|
|
|
|
|
Up to now it was a primitive model with a source of effort, resistance and gyrator in series. |
|
|
|
|
|
For the design it was decided to go with a stepper motor. |
|
|
|
|
|
The advantage of a stepper motor is the holding torque, such that the motor can be forced in a certain angle. |
|
|
|
|
|
With the new motors the controller was updated, to accommodate for the behavior of the steppers. |
|
|
|
|
|
|
|
|
|
|
|
The next step was to upgrade the model to a full three dimensional dynamics. |
|
|
|
|
|
Although the SCARA model itself is valid in only two dimensions, having the SCARA suspended from wires required the full dimensions. |
|
|
|
|
|
The dynamics of the SCARA are based on a serial link structure \autocite{dresscher_modeling_2010}. |
|
|
|
|
|
This allowed for a simple, yet quick implementation of the dynamics. |
|
|
|
|
|
|
|
|
|
|
|
\subsubsection{3D modeling} |
|
|
|
|
|
With a full dynamics model in 20-sim, the next step was to design the system in OpenSCAD. |
|
|
|
|
|
Although 20-sim has a 3D editor, it is significantly easier to build components with OpenSCAD. |
|
|
|
|
|
Furthermore, for prototyping the OpenSCAD objects can be exported for 3D printing. |
|
|
|
|
|
The model made it possible to check component clearance and get an idea of size. |
|
|
|
|
|
The model is shown in \autoref{fig:scad_carriage}. |
|
|
|
|
|
\begin{figure} |
|
|
|
|
|
\centering |
|
|
|
|
|
\includegraphics[width=0.8\linewidth]{graphics/scad_carriage.png} |
|
|
|
|
|
\caption{Rendered 3D model of the SCARA} |
|
|
|
|
|
\label{fig:scad_carriage} |
|
|
|
|
|
\end{figure} |
|
|
|
|
|
|
|
|
|
|
|
\subsection{Variable Approach} |