ソースを参照

Add software

tags/0.4.3-reflection
コミット
2064817f2f
1個のファイルの変更33行の追加9行の削除
  1. +33
    -9
      content/case_experiment_prototype.tex

+ 33
- 9
content/case_experiment_prototype.tex ファイルの表示

@@ -1,14 +1,38 @@
To ensure that the design method resulted in a functional system, a prototype will be build from the current state of the design.
Although the development resulted in only a partial design, I determined that a prototype is more valuable than repeating the development cycle for the next feature.
For the construction of the prototype \ac{ots}-parts are used as much as possible and the mechanical linkages of the SCARA will be printed.
To write characters on a whiteboard; drivers and controlloop are implemented in software.

%&tex
To validate the dynamical and mechanical models, I will build a prototype of the current design.
For the mechanical design, the CAD model is used to print the custom parts.
Other components, such as steppers, microcontroller, screws and miscellaneous electronics, are ordered.
To test the dynamics, the steppers and servo have to be actuated.
To achieve this actuation a control law is written in software.

\subsection{Mechanical Construction}
With the 3D printed parts the SCARA was easy to construct.
The diameter of the holes in the parts were printed slightly undersized.
This was on purpose, such that the holes can be drilled to the specified size.
To connect the bodies on the joints, a bolt with washers is used.
Although this is clearly not the ideal technique to build joints, it was by far the easiest option.

During assembly I noticed that the bolts of a joint and those that hold the stepper motor in place collided.
This was possible because the bolts were not included in the CAD-model.
In hindsight this should have been included.
Fortunately there was enough clearance to mount the SCARA slightly further on the axle.
Resulting in an operating SCARA without having to redesign the mechanics.

\subsection{Control of the SCARA}
Although the focus of the design plan was specifically not the software, it still forms a important part of the development.
To run the hardware, I chose for for a STM32 \ac{mcu}. This is a powerfull processor with sufficient IO available.
RIOT-OS was chosen as an operating system due to prior experience and available support.
To be able to write characters on the board the following tasks have to be implemented in software:
\begin{itemize}
\item Driver for the stepper controller
\item Driver for servo motor
\item Control/Path planning
\end{itemize}

\subsection{Implementing Behavior}
Now with a physical SCARA, the last step is to implement the behavior.
The stepper motors are powered via a stepper controller.
The path planning for the SCARA and the operation of the stepper controller is implemented on a \ac{mcu}.
The stepper controller chip can be configured over UART and has two simple IO pins for step and direction signal.
To simplify the control, the software driver configures the stepper controller and includes functions to move the stepper motor to a certain angle.
Meaning that the feedforward control of the steppers is handled by the software driver class.
The angle of the servo motor is controlled by the duty cycle of a \SI{50}{\hertz} PWM signal.
The PWM signal generation is offloaded to the IO peripherals and the software driver has a toggle function to lift the marker from the board.
Most of the code for the software driver was already available as a module in RIOT-OS.


読み込み中…
キャンセル
保存