Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

199 строки
15KB

  1. %&tex
  2. As the previous development cycle was aborted prematurely, the development cycle is repeated for the next feature.
  3. Starting with a feature selection process. Followed by the rapid development.
  4. \subsection{Feature Selection}
  5. The implementation of the end-effector proved to be unfeasible and was therefore removed from the design.
  6. This means that only two features are left.
  7. \autoref{tab:featurestab2} shows an updated feature comparison.
  8. Compared with the previous feature selection in \autoref{tab:firstfeatureselection}, the number of tests for the \ac{scara} decreased and the Risk/Time increased.
  9. This is because \autoref{test_tool_change} relied on both the \ac{scara} and the End-effector which is no longer applicable.
  10. Based on the feature comparison, the next component to implement is the \ac{scara}.
  11. \begin{table}[]
  12. \caption{Comparison of the two remaining features in the design process. This table is an updated version of \autoref{tab:firstfeatureselection}.}
  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. \ac{scara} & - & 2 & 50\% & 12 days & 4.2 \\ \hline
  18. \ac{cdc} & - & 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, as most of the work was already done.
  24. \subsection{Rapid Development for SCARA}
  25. The goal is to present a functional model of the \ac{scara}.
  26. The requirements state that it must be able to write three characters within two seconds.
  27. And to pass \autoref{test1} it must draw a \SI{50}{\milli\meter} by \SI{70}{\milli\meter} rectangle within one second.
  28. The basic design principle is based on the initial design as shown in \autoref{fig:combined}.
  29. For the lowest detail level of the design, I decided on a kinematics model.
  30. The model is very simple as it does not implement any physics.
  31. However, the model enables me to tinker with the design parameters, such as the lengths of the linkages and joint angles.
  32. In the following steps, the level of detail is gradually increased to arrive at a competent model.
  33. Planning all the different steps in advance is difficult as design decisions still need to be made.
  34. Nonetheless, I can describe at least the following levels of detail for the model:
  35. \begin{enumerate}
  36. \item Basic kinematics model, no physics.
  37. \item Basic physics model, ideal 2D physics.
  38. \item Basic Motor behavior, 2D physics with non-ideal DC-motor.
  39. \item Basic control law, path planning.
  40. \end{enumerate}
  41. After these steps the optimal order of implementation for the levels of detail becomes vague.
  42. However, the following elements are required to make a competent model:
  43. \begin{itemize}
  44. \item Improved motor model
  45. \item 3D physics model
  46. \end{itemize}
  47. When the first design decisions made, the succeeding levels of detail for these and other elements are laid out.
  48. \subsubsection{Evaluation}
  49. The current steps in the rapid development are difficult to perform.
  50. There is, unsurprisingly, lack of a clear vision of the end-product.
  51. Which makes an explicit description of every level of detail not realistic.
  52. However, it was still possible to describe the initial steps in the level of detail of the design.
  53. The remaining elements, that are essential to the design, take shape in a later stage of the development.
  54. Apart from this small deviation, the deliverables of this step are a good start of this development cycle.
  55. \subsection{Variable Detail Approach}
  56. The following steps is to increase the level of detail of the model.
  57. The initial model together with the set of steps in the detail level is inherited from the previous design step.
  58. To start, I implement the basic model and implement the different levels of detail.
  59. Based on the model after those steps, it is possible to make more detailed design decisions.
  60. The decisions make it possible to plan the subsequent levels of detail.
  61. Implementing these details results in a competent model.
  62. \subsubsection{Basic Kinematics Model}
  63. \begin{marginfigure}
  64. \centering
  65. \includegraphics[width=0.9\linewidth]{graphics/scara_arm_kinematics.pdf}
  66. \caption{Basic kinematics of the \ac{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.}
  67. \label{fig:scaraarm}
  68. \end{marginfigure}
  69. The development starts with the basic model shown in \autoref{fig:scaraarm}.
  70. The model consists of the forward and inverse kinematics of the design.
  71. With this kinematics model it was easy to find a suitable configuration of the \ac{scara}.
  72. I tested if the \ac{scara} reaches the required operating area, to satisfy system requirement 14.
  73. The operating area is a couple of centimeters away from the base of the \ac{scara}.
  74. This is to avoid the singularity point that lies at the base of the \ac{scara}.
  75. Resulting in longer arms than strictly necessary but reducing the operating angles of the joints, allowing for simpler construction.
  76. At this point, there are already multiple design decisions made about the position of the operating area and the arm lengths.
  77. As second detail iteration the basic physics of the model are implemented.
  78. The model is in the form of a double pendulum, with two actuated joints.
  79. The ideal motors in the joints made give the \ac{scara} unlimited acceleration.
  80. 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.
  81. Implementing a simple PID-controller allows the \ac{scara} to follow the rectangular path as described in \autoref{test1}.
  82. The simulation allowed me to determine the minimum requirements of the motors.
  83. 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}.
  84. \subsubsection{Detailed design decisions}
  85. The basic model gave some valuable insight about the dynamic behavior of the system.
  86. However, the current configuration is very simple but requires a motor in the joint.
  87. In \autoref{fig:scaradesign}, this setup is shown as configuration 1.
  88. The disadvantage is that a motorized joint is heavy, which has to be accelerated with the rest of the arm.
  89. Other configurations in \autoref{fig:scaradesign} move the motor to a static position.
  90. Configuration 2 is a double arm setup, but has quite limited operating range, caused by a singularity region in the system when both arms at the top are in line with each other.
  91. Configuration 3 also has such a singularity, but due to the extended top arm this point of singularity is located outside of the operating range.
  92. However, this configuration requires one axis with two motorized joints on it.
  93. Even though this is possible, it does increase the complexity of the construction.
  94. By adding an extra linkage, the actuation is split as shown in configuration 4.
  95. Configuration 4 is the preferred option for the \ac{scara}
  96. \begin{figure}
  97. \centering
  98. \includegraphics[width=0.875\linewidth]{graphics/scara_design.pdf}
  99. \caption{Four different \ac{scara} configurations. The colored circles mark which of the joints are actuated. Configuration 3 has two independently actuated joints on the same position.}
  100. \label{fig:scaradesign}
  101. \end{figure}
  102. The actuation of the arm is done with stepper motors, which have a strong advantage over DC-motors with their holding torque.
  103. The holding torque removes the need for a feedback controller that compensates for external forces.
  104. Allowing the stepper motors to be fully operated with a feedforward controller.
  105. However, they are heavier and more expensive but the additional mass is beneficial as increased inertia of the base.
  106. The extra inertia reduces the displacement which is caused by the reaction force of the \ac{scara} accelerating.
  107. The extra costs are easily compensated as it saves development time due to the simplified control law, and the removed need for extra angle sensors used in feedback control.
  108. Due to the aborted implementation of the end-effector, the \ac{scara} must also lift the marker of the board.
  109. With the fourth configuration (\autoref{fig:scaradesign}), it is possible to add an extra joint in the linkage.
  110. As the marker only needs to be moved a couple of millimeters from the board, a simple hobby servo suffices.
  111. \subsubsection{Advanced Detail Design}
  112. The design decisions made in the previous sections, make it possible to plan the next steps of adding detail.
  113. The following steps are an addition to the steps as described in the previous section:
  114. \begin{enumerate}
  115. \setcounter{enumi}{4}
  116. \item Stepper motor behavior.
  117. \item Updating physics model to 3D physics.
  118. \item Marker lifting behavior, servo lifts marker of the board.
  119. \end{enumerate}
  120. Starting by replacing the DC-motor with a stepper motor model, which is based on a model by \textcite{karadeniz_modelling_2018}.
  121. The controller is updated as well, to accommodate for the behavior of the steppers.
  122. The next step is to implement a dynamic model of configuration 4 in \autoref{fig:scaradesign}.
  123. The dynamics of the \ac{scara} are based on a serial link structure \autocite{dresscher_modeling_2010}.
  124. This serial link structure makes it easy to add and extend joints, bodies and mass points to the system.
  125. Therefore, the last detail, the marker lifting, was added without any difficulty.
  126. The servo is connected via a linkage with the marker such that it rotates away from the board.
  127. \subsubsection{Component Design}
  128. At this point the development has reached a detailed design together with a dynamic model representing that design.
  129. The dynamic model is a useful tool to test and evaluate the system behavior.
  130. However, it does not include the shapes of the components and can therefore not be used to evaluate clearance or collision between components.
  131. By implementing the design using CAD software, it is possible to inspect for collisions.
  132. Furthermore, this model is than also used to print the custom parts.
  133. For the mechanical part I used OpenSCAD as CAD software, based on prior experience with the software.
  134. With this it was possible to implement all the custom components as well as the \ac{ots}-components.
  135. Using the inverse kinematics model from the basic design of the \ac{scara}, the angles were directly applied on the components in system.
  136. Allowing me to change the configuration of the \ac{scara} and inspect the clearance between each component.
  137. Following the rectangular path as defined in \autoref{test1} revealed that collisions occurred between parts.
  138. These collisions were resolved by adding an indentation in one linkage and moving another linkage.
  139. These changes are shown in \autoref{fig:scad_clearance}
  140. The complete setup with the custom parts and the \ac{ots}-components, such as stepper motors, servo and marker, is shown in \autoref{fig:scad_carriage}.
  141. \begin{figure}
  142. \centering
  143. \includegraphics[width=0.8\linewidth]{graphics/scad_scara_circles.png}
  144. \caption{
  145. CAD of the \ac{scara} configuration, with the end-effector orientated in the lower left corner of the operating area.
  146. The configuration has been adapted at the two circled points, to resolve collisions in this orientation.
  147. An indentation was made to ensure that the arm can make the required angle.
  148. The bottom linkage was located above the joints as depicted in the fourth configuration in \autoref{fig:scaradesign}.
  149. This was moved to below the actuated joints as it did collide with the end-effector.
  150. }
  151. \label{fig:scad_clearance}
  152. \end{figure}
  153. \begin{figure}
  154. \centering
  155. \includegraphics[width=0.8\linewidth]{graphics/scad_carriage.png}
  156. \caption{Rendered 3D model of the \ac{scara}, including steppers, marker and servo.}
  157. \label{fig:scad_carriage}
  158. \end{figure}
  159. \subsubsection{Evaluation}
  160. The complete development was rather smooth.
  161. However, this was not without deviating from the original design plan.
  162. It was not feasible to define all different levels of detail before the start of the development.
  163. Prior to the design, it was possible to plan 4 levels of detail.
  164. After implementing these levels of detail, the design decisions taken made it possible to define additional levels of detail.
  165. In total there are seven predefined levels of detail in the design.
  166. Meaning that there must also be seven test cycles.
  167. However, I noticed that this number was significantly higher.
  168. During the design, running the simulation of the dynamics is easy.
  169. Resulting in extremely short feedback loops, sometimes even minutes.
  170. For example, changing the arm lengths and evaluate the new behavior.
  171. Did it improve? Is this as expected?
  172. Implicitly, the system was very often tested and changed based on test results.
  173. \subsection{Conclusion}
  174. With the development of the \ac{scara} completed.
  175. Following the design plan, the development has to be repeated for the design of the \ac{cdc}.
  176. However, the evaluation of the development until this point resulted in enough information to draw conclusions about the design plan.
  177. I expect that executing this development a third time is not beneficial to the case study, given the additional effort.
  178. Time is better spent on the realization of a prototype and improving the current design method.
  179. Therefore, the next section goes into the construction of the prototype instead of the development of the \ac{cdc}.