diff --git a/system_test_specification/charactersize.odg b/system_test_specification/charactersize.odg new file mode 100644 index 0000000..d22f231 Binary files /dev/null and b/system_test_specification/charactersize.odg differ diff --git a/system_test_specification/charactersize.pdf b/system_test_specification/charactersize.pdf new file mode 100644 index 0000000..4b5b480 Binary files /dev/null and b/system_test_specification/charactersize.pdf differ diff --git a/system_test_specification/general_design.odg b/system_test_specification/general_design.odg new file mode 100644 index 0000000..14c86f0 Binary files /dev/null and b/system_test_specification/general_design.odg differ diff --git a/system_test_specification/general_design.pdf b/system_test_specification/general_design.pdf new file mode 100644 index 0000000..8f505c2 Binary files /dev/null and b/system_test_specification/general_design.pdf differ diff --git a/system_test_specification/system_test_specification.md b/system_test_specification/system_test_specification.md new file mode 100644 index 0000000..41296f3 --- /dev/null +++ b/system_test_specification/system_test_specification.md @@ -0,0 +1,172 @@ +# System Test Specification + +## 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. + +## System Description + +### 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. +![Image alt text](./general_design.pdf) + +#### Components + +* _End-effector:_ the end-effector is responsible for the connection of the tool with the SCARA. +* _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. +* _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. + +#### Specification +From the previous design steps we got the following list of system specification: + +1. The Writer shall be able to write at least 50 characters per line. +2. The Writer shall be able to write at least 5 lines of text. +3. The Writer shall plot characters with a size that is readable from 4 meters for a person with good eyesight. +4. The Writer shall plot in a regular used font with corresponding character spacing. +5. When a new tweet is send to the Writer, the Writer, shall wipe the existing tweet and write down a new tweet. +6. If the Writer is not wiping or writing then the Writer shall not obstruct the view of the whiteboard. +7. While writing, the Writer shall have a writing speed of at least 1 character per second. +8. If the Writer is tasked to wipe the tweet, the Writer shall wipe the tweet within 60 seconds +9. When a reset-signal is send to the Writer, the Writer shall re-calibrate its position on the board. +10. When a wipe-signal is send to the Writer, the Writer shall wipe the board clean. +11. The Writer shall not damage itself. +12. While writing, the SCARA shall have a writing speed of at least 1.5 characters per second. +13. 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. +14. 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. +15. When the SCARA has to be moved to a new position, the Carriage shall perform this movement within 1 second. + +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 +![Image alt text](./charactersize.pdf) + +### Operation +There are two main operations of the system. +The writing behavior and the wiping behavior. +To write, the following steps shall be performed: + +* Move the carriage/base of the SCARA to the first characters that shall be written. +* The SCARA writes at least 3 characters at that position. + +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. + + +## Small tests +The following tests do not cover the complete system but only one or two subsystems. + +### Small Square +*Subsystem:* SCARA + +*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. + +### Perimeter +*Subsystem:* Carriage + +*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. + +### Carriage Speed +*Subsystem:* Carriage + +*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. + +### Triple Chars +*Subsystem:* SCARA, End-effector + +*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. + +### Tool change +*Subsystem:* SCARA, End-effector + +*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. + +## Overall tests +These are the larger tests where all the subsystems come together. + +### Repeatability +*Specifications:* 3, 4, 9, 11 + +To test the repeatability of the system must do four things: + +* The system will be reset. +* Draw multiple squares (60 mm x 60 mm) at a random position within the drawing range (1000 mm x 300 mm) +* The system will be reset again +* 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. + +If this is not the case the test fails. + +### Linearity +*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 + +### Type setting + +*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: +``` +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!?@,.- +``` +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. + +### Wiping +*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.