Embedded Motion Control 2019 Group 7: Difference between revisions
No edit summary |
|||
Line 15: | Line 15: | ||
The design document, describing the initial design requirements, functions, components, specifications and interfaces, can be found [here]. | The design document, describing the initial design requirements, functions, components, specifications and interfaces, can be found [here]. | ||
== Requirements == | === Requirements === | ||
== Functions == | === Functions === | ||
== Components == | === Components === | ||
== Specifications == | === Specifications === | ||
== Interfaces == | === Interfaces === | ||
== Challenge 1: The escape room == | == Challenge 1: The escape room == |
Revision as of 22:54, 5 May 2019
Group members
- Guus Bauwens - 0958439
- Ruben Beumer - 0967254
- Ainse Kokkelmans - 0957735
- Johan Kon - 0959920
- Koen de Vos - 0955647
Introduction
This wiki page describes the design process for the software as applied to the PICO robot within the context of the "Embedded Motion Control" course project. The project is comprised of two challenges: the escape room challenge and the hospital challenge. The goal of the escape room challenge is to exit the room autonomously as fast as possible. The goal of the hospital challenge is to autonomously visit an unknown number of cabinets as fast as possible.
Design Document
The design document, describing the initial design requirements, functions, components, specifications and interfaces, can be found [here].
Requirements
Functions
Components
Specifications
Interfaces
Challenge 1: The escape room
As an intermediate assignment, PICO has to autonomously find the exit of a room. For efficient team project work, the code written to let PICO perform this assignment, should be usefull in the Final Assignment of PICO navigating a hospital.
Gap Finder
PICO's LDR scans from right to left (counter clockwise). The angle of a single measurement point and its corresponding distance (radius) is known. A significant absolute jump in this data means that the wall (or obstacle, but not present during this challenge) is not continuous. Around this location the exit should therefore be located as the escape room is rectangular without special shapes. The data point before and the data point after the gap indicates the gap location. However, as can be seen in the Figure to the right it does not indicate the actual (parallel) exit entrance. The points corresponding to the actual exit entrance can be found by minimizing the distance between the left and right side of the gap. This minimal distance will be the parallel or perpendicular (in this case) on the walls next to the exit. To find the minimum distance the data to the right of the right (blue) point is checked. If the data point has a smaller distance to the left (red) point, this data point is tagged as the minimum distance. The left (red) point is checked in a similar way but with the data to the left. The result of this iteration is shown in the Figure to the right with as initial gap the dotted orange line, and the final gap the straight orange line.
In this specific example, the left (red) point is already optimal and the right (blue) point is optimized.
In this example of a possible situation, PICO is located straight in front of the exit. In this case the gap cannot be optimized in the same way because moving either of the points increases the distance between the points (as they are not iterated at the same time). In the section xxx the script is expanded to deal with this scenario.