Embedded Motion Control 2019 Group 7: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
Line 13: Line 13:
== Design Document ==
== Design Document ==


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 ==

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

Scheme of a possible Escape Room, with PICO located in the upper left corner.

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.


Scheme of a possible Escape Room, with PICO located in the lower right corner.

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.


Dealing With Bounder Scenarios

Exit Interpolation