25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

191 satır
14KB

  1. %&tex
  2. As the previous development cycle was aborted prematurely, that cycle did not finish.
  3. The second cycle is picks up at the feature selection step in the Development Cycle.
  4. \subsection{Feature Selection}
  5. The implementation of the end-effector proofed to be impractical.
  6. This means that only two features are left.
  7. The updated table in \autoref{tab:featurestab2} shows the updated feature comparison.
  8. Compared with the previous feature selection in \autoref{tab:firstfeatureselection}, the number of tests for the SCARA decreased and the Risk/Time increased.
  9. This is because System Test \ref{test_tool_change} relied on both the SCARA and the End-effector and is no longer applicable.
  10. Based on the feature comparison, the next component to implement is the SCARA.
  11. \begin{table}[]
  12. \caption{}
  13. \label{tab:featurestab2}
  14. \begin{tabular}{|l|l|l|l|l|l|}
  15. \hline
  16. Feature & Dependees & Tests & Risk & Time & Risk/Time \\ \hline
  17. SCARA & - & 2 & 50\% & 12 days & 4.2 \\ \hline
  18. Carriage & - & 2 & 30\% & 10 days & 3 \\ \hline
  19. \end{tabular}
  20. \end{table}
  21. \subsubsection{Evaluation}
  22. The feature selection for the second cycle is an updated selection process of the first cycle (\autoref{sec:case_feature_selection_1}).
  23. This resulted in a quick and effortless feature selection process.
  24. \subsection{Rapid Development for SCARA}
  25. The goal is to present a functional model of the SCARA.
  26. Based on the tests and requirements, it must be able to write three characters within 2 seconds.
  27. The basic design principle is based on the initial design and shown in \autoref{fig:combined}.
  28. The lowest level of detail is a kinematics model of the design.
  29. This does not involve any physics simulation yet, but gives insight in the operation range, arm length and joint behavior.
  30. In the following steps, the level of detail is gradually increased until it is a competent model.
  31. However, planning all the different steps in advance is difficult as design decisions still need to be made.
  32. Nonetheless, I can describe at least the following levels of detail for the model:
  33. \begin{enumerate}
  34. \item Basic kinematics model, no physics.
  35. \item Basic physics model, ideal 2D physics.
  36. \item Basic Motor behavior, 2D physics with non-ideal DC-motor.
  37. \item Basic control law, path planning.
  38. \end{enumerate}
  39. After these steps the optimal order of implementation for the levels of detail becomes vague.
  40. However, the following elements are required to make a competent model:
  41. \begin{itemize}
  42. \item Improved motor model
  43. \item 3D physics model
  44. \end{itemize}
  45. When the first design decisions made, the succeeding levels of detail for these and other elements are laid out.
  46. \subsubsection{Evaluation}
  47. The current steps in the rapid development are difficult to perform.
  48. There is, unsurprisingly, lack of a clear vision of the end-product.
  49. Making describing all the different levels of detail explicitly farfetched.
  50. However, it was still possible to describe some levels of detail and a couple of expected elements that are added later.
  51. \subsection{Variable Detail Approach}
  52. The following steps is to increase the detail of the model.
  53. This is done according to the steps in the previous section.
  54. \subsubsection{Basic Kinematics Model}
  55. \begin{marginfigure}
  56. \centering
  57. \includegraphics[width=0.9\linewidth]{graphics/scara_arm_kinematics.pdf}
  58. \caption{Basic kinematics of the SCARA. The arm consists of two linkages $a$ and $b$; two joints $\alpha$ and $\beta$; and a point mass $m$ which represents the end-effector/tool.}
  59. \label{fig:scaraarm}
  60. \end{marginfigure}
  61. The development starts with a basic model model as shown in \autoref{fig:scaraarm}.
  62. It consists of the forward and inverse kinematics of the design.
  63. With this kinematics model it was easy to find a good configuration of the SCARA.
  64. I tested if the SCARA could reach the required operating area, to be able to satisfy specification \ref{threecharspec}.
  65. The operating area is not a couple of centimeters away from the base of the SCARA.
  66. This is to avoid the singularity point that lies at the base of the SCARA.
  67. Resulting in longer arms than strictly necessary but this reduces the operating angles of the joints allowing for simpler construction.
  68. At this point, there are already multiple design decisions made about the position of the operating area and the arm lengths.
  69. The second detail iteration adds the basic physics of the model.
  70. This model was in the form of a double pendulum, with two attenuated joints.
  71. The ideal motors in the joints made gave the SCARA almost unlimited acceleration.
  72. As the one of the goals is to get an indication on what the required torque for these joints is, the ideal motors are replaced with basic DC-motors.
  73. Implementing a simple PID-controller allowed the SCARA to follow the rectangular path as described in system test \ref{test1}.
  74. Based the simulation, it was possible to determine minimum specifications of the motors.
  75. The motors must be able to deliver at least \SI{0.2}{\newton\meter} of torque and reach an angular velocity of at least \SI{12}{\radian\per\second}.
  76. \begin{marginfigure}
  77. \centering
  78. \includegraphics[width=0.9\linewidth]{graphics/scara_20sim_model.png}
  79. \caption{3D plot of the current implementation. The rectangular shapes represent are the linkages and implemented as rigid bodies.
  80. The sphere on the origin and the one between both linkages represent the actuated joints.
  81. There is no inertia implemented for these joints.}
  82. \label{fig:scara_20sim}
  83. \end{marginfigure}
  84. The current implementation can be seen in \autoref{fig:scara_20sim}.
  85. Now that the model forms a basic with the non-ideal motors, basic physics and a control law, it can be used to make some estimates.
  86. The model was configured to follow the required path in the specified amount out time according to System Test \ref{test1}.
  87. The torque required gave a rough estimate of the required actuation force of the motors.
  88. \subsubsection{Detailed design decisions}
  89. The basic model gave some good insight and information about the dynamic behavior of the system.
  90. However, the current configuration is very simple but requires a motor in the joint.
  91. In \autoref{fig:scaradesign}, this setup is shown as configuration 1.
  92. The disadvantage is that a motorized joint is heavy and has to be accelerated with the rest of the arm.
  93. Other configurations in \autoref{fig:scaradesign} move the motor to a static position.
  94. Configuration 2 is a double arm setup, but has quite limited operating range.
  95. Due to a singularity in the system when both arms at the top are in line with each other.
  96. Configuration 3 also has such a singularity, but due to the extended top arm this point of singularity is outside of the operating range.
  97. However, this configuration requires one axis with two motorized joints on it.
  98. Even though this is possible, it does increase the complexity of the construction.
  99. By adding an extra linkage, the actuation can be split as shown in configuration 4.
  100. \begin{figure}
  101. \centering
  102. \includegraphics[width=0.875\linewidth]{graphics/scara_design.pdf}
  103. \caption{Four different SCARA configurations. The colored circles mark which of the joints are actuated. Configuration 3 has two independently actuated joints on the same position.}
  104. \label{fig:scaradesign}
  105. \end{figure}
  106. The actuation of the arm is done with stepper motors.
  107. The advantage of stepper motors over simple DC-motors is that they hold a specific position.
  108. There is no extra feedback loop required to compensate for external forces.
  109. They are heavier and more expensive as well.
  110. The additional mass is probably beneficial as adds momentum to the base, reducing the counter movement of the base when the arm is actuated.
  111. The extra costs are easily compensated as it save development time due to the simplified control law.
  112. Due to the aborted implementation of the end-effector, the SCARA must also lift the marker of the board.
  113. The chosen configuration of the SCARA makes it possible to add an extra joint in the linkage.
  114. As the marker only needs to be moved a couple of millimeters from the board, a simple servo suffices.
  115. \subsubsection{Implementing details}
  116. The new concrete design decisions, make it possible to plan the next steps of adding detail.
  117. The following steps are an addition of steps in as described in the previous section:
  118. \begin{enumerate}
  119. \setcounter{enumi}{4}
  120. \item Stepper motor behavior.
  121. \item Updating physics model to 3D physics.
  122. \item Marker lifting behavior, servo lifts marker of the board.
  123. \end{enumerate}
  124. The first step was to replace the DC-motor with a stepper motor model.
  125. This is based on a model by \textcite{karadeniz_modelling_2018}.
  126. The controller is updated as well, to accommodate for the behavior of the steppers.
  127. The next step is to implement a dynamic model of the configuration (4) as shown in \autoref{fig:scaradesign}.
  128. The dynamics of the SCARA are based on a serial link structure \autocite{dresscher_modeling_2010}.
  129. This serial link structure was makes it easy to add or extend joints and bodies to the system.
  130. Therefore, the last detail, the marker lifting, was added without any difficulty.
  131. The servo is connected via a linkage with the marker such that it rotates away from the board.
  132. \subsubsection{Component Design}
  133. At this point the development has produced a design with a competent dynamic model.
  134. The developed design does, however, not incorporate the physical component design.
  135. Nevertheless, must these components be designed to validate that the SCARA and its components can be constructed.
  136. For the mechanical part I used OpenSCAD as CAD software, based on prior experience with the software.
  137. With this it was possible to implement all the components that have to be made, as well as the \ac{ots}-components.
  138. Using the inverse kinematics model from the basic design of the SCARA, the angles were directly applied on the components in system.
  139. Allowing me to change the configuration of the SCARA and inspect the clearance between each component.
  140. Following the rectangular path as defined in \autoref{test1}, it revealed that collision occurred between some parts.
  141. These collisions were resolved by adding an indentation and moving linkage and are shown in \autoref{fig:scad_clearance}
  142. The configuration with the stepper motors, servo and marker is shown in \autoref{fig:scad_carriage}.
  143. \begin{figure}
  144. \centering
  145. \includegraphics[width=0.8\linewidth]{graphics/scad_scara_circles.png}
  146. \caption{
  147. CAD of the SCARA configuration, with the end-effector orientated in the lower left corner of the operating area.
  148. The configuration has been adapted at the two circled points, to resolve collisions in this orientation.
  149. An indentation was made to ensure that the arm could make the required corner.
  150. Furthermore, the bottom linkage has been moved from above to below the actuated joints, as this linkage would otherwise collide with the end-effector.
  151. }
  152. \label{fig:scad_clearance}
  153. \end{figure}
  154. \begin{figure}
  155. \centering
  156. \includegraphics[width=0.8\linewidth]{graphics/scad_carriage.png}
  157. \caption{Rendered 3D model of the SCARA, including steppers, marker and servo.}
  158. \label{fig:scad_carriage}
  159. \end{figure}
  160. \subsubsection{Evaluation}
  161. The complete development was rather smooth.
  162. However, this was not without deviating from the original design plan.
  163. The different levels of detail could not be defined before the start of the development but had to be updated midway.
  164. In total there are seven predefined levels of detail in the design.
  165. Meaning that there must also be seven test cycles.
  166. However, I noticed that this number was significantly higher.
  167. During the design, running the simulation of the dynamics is easy.
  168. Resulting in extremely short feedback loops, sometimes even minutes.
  169. For example, changing the arm lengths and evaluate the new behavior.
  170. Did it improve? Is this as expected?
  171. Implicitly, the system was very often tested and changed based on test results.