\hypertarget{system-test-specification}{%
\chapter{System Test Specification}\label{system-test-specification}}

\hypertarget{introduction}{%
\section{Introduction}\label{introduction}}

A new design method is the goal of this Master's Thesis. Part of the
design method is a system test specification. The system tests are based
on the system specifications. If the tests are designed correctly,
passing the test proofs that the system operates within the
specifications.

In the following section we will give a short introduction of the system
that we plan to build. Then we have a section with a collection of
smaller and or simpler tests. These test can be passed before the system
is complete. Followed by a set of test that cover the complete system
and thus require all the features to be available in some part.

\hypertarget{system-description}{%
\section{System Description}\label{system-description}}

\hypertarget{design}{%
\subsection{Design}\label{design}}

The system that will be designed is a whiteboard writer. Its goal is to
write a tweet on a whiteboard. To make it dynamically challenging it is
a combination of two subsystems. First we have a SCARA, which is a 2D
arm. This SCARA is relatively small to the complete system. With the
smaller size we can achieve a higher speed and accuracy. However, the
size of the arm limits the range significantly. A cable bot will be used
to move the base of the SCARA arm around on the board.

Furthermore, the third part is the end-effector of the SCARA arm. This
is how the marker is attached to the arm. The end-effector could also be
replaced with something that can switch between tools. For example a
different color marker and a wiping tool. Or vice versa.
\begin{figure}
    \centering
    \includegraphics{graphics/general_design.pdf}
    \caption{Rough design of the white board writer}
    \label{fig:figuresize}
\end{figure}

\hypertarget{components}{%
\paragraph{Components}\label{components}}

\begin{itemize}
\item
  \emph{End-effector:} the end-effector is responsible for the
  connection of the tool with the SCARA.
\item
  \emph{SCARA:} Acronym for: `Selective Compliance Articulated Robot
  Arm'. It is colored red in the figure above. This arm moves in a 2D
  space along the whiteboard. Its task is to move the end-effector
  around. The base of the arm is mounted on the carriage.
\item
  \emph{Carriage:} This is the base for the SCARA. It is suspended from
  two wires. By changing the lenght of the wires it can move itself
  along the board.
\end{itemize}

\hypertarget{specification}{%
\paragraph{Specification}\label{specification}}

From the previous design steps we got the following list of system
specification:

\begin{enumerate}
\def\labelenumi{\arabic{enumi}.}
\item
  The Writer shall be able to write at least 50 characters per line.
\item
  The Writer shall be able to write at least 5 lines of text.
\item
  The Writer shall plot characters with a size that is readable from 4
  meters for a person with good eyesight.
\item
  The Writer shall plot in a regular used font with corresponding
  character spacing.
\item
  When a new tweet is send to the Writer, the Writer, shall wipe the
  existing tweet and write down a new tweet.
\item
  If the Writer is not wiping or writing then the Writer shall not
  obstruct the view of the whiteboard.
\item
  While writing, the Writer shall have a writing speed of at least 1
  character per second.
\item
  If the Writer is tasked to wipe the tweet, the Writer shall wipe the
  tweet within 60 seconds
\item
  When a reset-signal is send to the Writer, the Writer shall
  re-calibrate its position on the board.
\item
  When a wipe-signal is send to the Writer, the Writer shall wipe the
  board clean.
\item
  The Writer shall not damage itself.
\item
  While writing, the SCARA shall have a writing speed of at least 1.5
  characters per second.
\item
  When the Carriage/base of the SCARA is at a static position, the SCARA
  shall be able to write at least 3 characters at that position.
\item
  When the SCARA finished writing at their current position, the
  Carriage shall move the SCARA to it's next position where it can write
  the subsequent characters.
\item
  When the SCARA has to be moved to a new position, the Carriage shall
  perform this movement within 1 second.
\end{enumerate}

Although the list of specifications does not cover the size of a
character. For the testing we determined that the body of a character
should have a height of 20 mm. And can extend about 7 mm above and
below. Which give a total writable height of about 35 mm
\begin{figure}
    \centering
    \includegraphics{graphics/charactersize.pdf}
    \caption{Figure size example}
    \label{fig:figuresize}
\end{figure}

\hypertarget{operation}{%
\subsection{Operation}\label{operation}}

There are two main operations of the system. The writing behavior and
the wiping behavior. To write, the following steps shall be performed:

\begin{itemize}
\item
  Move the carriage/base of the SCARA to the first characters that shall
  be written.
\item
  The SCARA writes at least 3 characters at that position.
\end{itemize}

These two steps are repeated until the complete text is on the board.

The writing operation will behave in a similar way. Where the SCARA will
do the course operation and the carriage the full operation.

\hypertarget{small-tests}{%
\section{Small tests}\label{small-tests}}

The following tests do not cover the complete system but only one or two
subsystems.

\hypertarget{small-square}{%
\subsection{Small Square}\label{small-square}}

\emph{Subsystem:} SCARA

\emph{Specifications:} 3, 7, 11, 13

The SCARA must draw a square of at least 50 mm high and 70 mm wide. This
box is large enough to draw at least 3 characters. This square should be
drawn within one second. If it is slower than that, it is not able to
achieve specification 7.

\hypertarget{perimeter}{%
\subsection{Perimeter}\label{perimeter}}

\emph{Subsystem:} Carriage

\emph{Specifications:} 1, 2, 6, 11,

The carriage must move along the outer edges of the text area. This
means that it must reach 50 characters in width and 5 in height.
Resulting in perimeter of 1000 mm wide and 250 mm high.

The second part of this test is that the carriage must also move outside
of the perimeter.

\hypertarget{carriage-speed}{%
\subsection{Carriage Speed}\label{carriage-speed}}

\emph{Subsystem:} Carriage

\emph{Specifications:} 7, 14

The carriage must be able to move a distance of 80 mm in horizontal
direction to move within a second. At the start and the end of the
movement the speed of the carriage must be zero.

This is to ensure that the SCARA can then write its characters at the
given position.

\hypertarget{triple-chars}{%
\subsection{Triple Chars}\label{triple-chars}}

\emph{Subsystem:} SCARA, End-effector

\emph{Specifications:} 3, 4, 12, 13

The SCARA together with the end-effector must write 3 characters without
moving the carriage. This extends on the small square but the
end-effector must now be able to lift the marker of the board. The three
characters should be written on the board within two seconds.

\hypertarget{tool-change}{%
\subsection{Tool change}\label{tool-change}}

\emph{Subsystem:} SCARA, End-effector

\emph{Specifications:} (Not specified, due to errors in earlier design
phase)

Tool changing is not a specific part of the specification. However, the
system has to switch in some way between the marker and a wiper. Or a
different color. For this test the system must switch a tool within 10
seconds.

\hypertarget{overall-tests}{%
\section{Overall tests}\label{overall-tests}}

These are the larger tests where all the subsystems come together.

\hypertarget{repeatability}{%
\subsection{Repeatability}\label{repeatability}}

\emph{Specifications:} 3, 4, 9, 11

To test the repeatability of the system must do four things:

\begin{itemize}
\item
  The system will be reset.
\item
  Draw multiple squares (60 mm x 60 mm) at a random position within the
  drawing range (1000 mm x 300 mm)
\item
  The system will be reset again
\item
  Then in a random order, at least different from the order of squares,
  a circle of 55m diameter has to be drawn in the squares.
\end{itemize}

If this is not the case the test fails.

\hypertarget{linearity}{%
\subsection{Linearity}\label{linearity}}

\emph{Specifications:} 1, 2, 3, 4

The system must draw a grid on the drawing range (1000 mm x 300 mm),
with the horizontal and vertical lines spaces 100 mm from each other.
The distance between two horizontal or two vertical lines cannot be
smaller than 90 mm. The lines are not allowed to deviate more than 10 mm
in a line section of 300 mm

\hypertarget{type-setting}{%
\subsection{Type setting}\label{type-setting}}

\emph{Specifications:} 1, 2, 3, 4, 6, 7, 11, 12, 13, 14, 15.

To test the complete writing abilities the following text must be
written on the board:

\begin{verbatim}
the quick brown fox jumps over the lazy dog!?@,.-
0123456789101112131415161718192021222324252627282
THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG!?@,.-
0123456789101112131415161718192021222324252627282
the quick brown fox jumps over the lazy dog!?@,.-
\end{verbatim}

This is a full 250 character area. It must be readable and write all the
characters correctly. It must be completed withing 250 seconds. Which is
4 minutes and 10 seconds.

\hypertarget{wiping}{%
\subsection{Wiping}\label{wiping}}

\emph{Specifications:} 8, 10, (5 if type setting test passes)

The complete board must be cleared of any marking within 60 seconds.
This is without the change of tool.
