Selaa lähdekoodia

fixup! Update second cycle section

tags/0.4.2-reflection
Wouter Horlings 4 vuotta sitten
vanhempi
commit
39f164fb5f
2 muutettua tiedostoa jossa 71 lisäystä ja 13 poistoa
  1. +1
    -0
      content/case_experiment_end-effector.tex
  2. +70
    -13
      content/case_experiment_scara.tex

+ 1
- 0
content/case_experiment_end-effector.tex Näytä tiedosto

@@ -6,6 +6,7 @@ The implementation of the end-effector was not successful, as the design was too
Fortunately, this failure did give valuable insight on the design method.

\subsection{Feature Selection}
\label{sec:case_feature_selection_1}
\begin{table}[]
\caption{Overview of the different features and their dependencies, number of tests that can be completed and the risk/time factor.
The risk/time factor is calculate as risk divided by time.}


+ 70
- 13
content/case_experiment_scara.tex Näytä tiedosto

@@ -21,25 +21,41 @@
\end{tabular}
\end{table}

\subsection{Rapid Development of SCARA}
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:
\subsubsection{Evaluation}
The feature selection for the second cycle is an updated selection process of the first cycle (\autoref{sec:case_feature_selection_1}).
This resulted in a quick and effortless feature selection process.

\subsection{Rapid Development for SCARA}
The goal is to present a functional model of the SCARA.
Based on the tests and requirements, it must be able to write three characters within 2 seconds.
The basic design principle is based on the initial design and shown in \autoref{fig:combined}.
The lowest level of detail is a kinematics model of the design.
This does not involve any physics simulation yet, but gives insight in the operation range, arm length and joint behavior.
In the following steps, the level of detail is gradually increased until it is a competent model.
However, planning all the different steps in advance is difficult as design decisions still need to be made.
Nonetheless, I can describe at least the following levels of detail for the model:
\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.
After these steps the optimal order of implementation for the levels of detail becomes vague.
However, the following elements are required to make a competent model:
\begin{itemize}
\item Improved motor model
\item 3D physics model
\end{itemize}
When the first design decisions made, the succeeding levels of detail for these and other elements are laid out.


\subsection{Variable Approach}
\subsubsection{Evaluation}
The current steps in the rapid development are difficult to perform.
There is, unsurprisingly, lack of a clear vision of the end-product.
Making describing all the different levels of detail explicitly farfetched.
However, it was still possible to describe some levels of detail and a couple of expected elements that are added later.

\subsection{Variable Detail Approach}
The following steps is to increase the detail of the model.
This is done according to the steps in the previous section.

@@ -107,18 +123,59 @@
The additional mass is probably beneficial as adds momentum to the base, reducing the counter movement of the base when the arm is actuated.
The extra costs are easily compensated as it save development time due to the simplified control law.

Due to the aborted implementation of the end-effector, the SCARA must also lift the marker of the board.
The chosen configuration of the SCARA makes it possible to add an extra joint in the linkage.
As the marker only needs to be moved a couple of millimeters from the board, a simple servo suffices.

\subsubsection{Implementing details}
The new concrete design decisions, make it possible to plan the next steps of adding detail.
The following steps are an addition of steps in as described in the previous section:
\begin{enumerate}
\setcounter{enumi}{4}
\item Stepper motor behavior.
\item Updating physics model to 3D physics.
\item Marker lifting behavior, servo lifts marker of the board.
\end{enumerate}
The first step was to replace the DC-motor with a stepper motor model.
This based on a model by \textcite{karadeniz_modelling_2018}.
This is based on a model by \textcite{karadeniz_modelling_2018}.
The controller is updated as well, to accommodate for the behavior of the steppers.
The next step is to implement a dynamic model of the configuration (4) as shown in \autoref{fig:scaradesign}.
The dynamics of the SCARA are based on a serial link structure \autocite{dresscher_modeling_2010}.
This serial link structure was makes it easy to add or extend joints and bodies to the system.
Therefore, the last detail, the marker lifting, was added without any difficulty.
The servo is connected via a linkage with the marker such that it rotates away from the board.

\subsubsection{Evaluation}
The complete development was rather smooth.
However, this was not without deviating from the original design plan.
The different levels of detail could not be defined before the start of the development but had to be updated midway.

In total there are seven predefined levels of detail in the design.
Meaning that there must also be seven test cycles.
However, I noticed that this number was significantly higher.
During the design, running the simulation of the dynamics is easy.
Resulting in extremely short feedback loops, sometimes even minutes.
For example, changing the arm lengths and evaluate the new behavior.
Did it improve? Is this as expected?
Implicitly, the system was very often tested and changed based on test results.

Furthermore, the step from 2D to 3D physics was in no means a small increment in detail.
The first four levels of detail, as describe in the previous section, all were implemented in with two dimensions.
As the later details required a third dimension, all the detail was directly converted from 2D into 3D.
This is a large amount of work, introducing a high cost when the conversion fails.
Moreover, it creates a new 3D physics model, parallel to the 2D physics model instead of adding detail to the latter.
Alternative approaches for 3D model physics could be:
\begin{itemize}
\item Ignore 2D and start implementation in 3D modelling.
\item Retrace all incremental detail steps of the 2D model in a 3D model.
\end{itemize}
Both options are not ideal, the first one does not allow a simple basic model and the second approach redoes work.
The advantage of starting with 3D is that allows for a continuous development of one model, instead of switching the complete model.

\subsection{Prototype Construction}
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.

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.


Loading…
Peruuta
Tallenna