Embedded Motion Control 2017 Group 2: Difference between revisions
Line 91: | Line 91: | ||
*Opening door | *Opening door | ||
''Make a sound to open door.'' | ''Make a sound to open door.'' | ||
The more advanced skill functions are: | |||
*Mapping | |||
''Use information from ”Get information” to determine and save a map of the environment. This creates the world model for PICO.'' | |||
*Localisation | |||
''Determine where PICO is located in the map created in ”Mapping”. This will most likely be implemented in the same function.'' | |||
*Object avoidance | |||
''Use current LRF data to make sure PICO does never hit a wall.'' | |||
*Maze solving | |||
''Use the map in combination with current and previous locations within the map to determine a route out of the maze.'' | |||
*Door and exit detection | |||
''Using the map to detect if possible doors have been found and if PICO has finished the maze.'' | |||
The task control implements switching between the following tasks: | |||
*Map making | |||
''Done throughout the challenge to improve current map.'' | |||
*Finding doors | |||
''Done in first stage of the challenge when no door has been found yet'' | |||
*Finding the exit | |||
''Once a door has been found and opened the task is to go through the door and finish the challenge.'' | |||
== Files == | == Files == | ||
[[File:Initial_Design.pdf]] | [[File:Initial_Design.pdf]] |
Revision as of 19:37, 13 May 2017
Welcome on the group 2 page.
Weekly meetings are on Friday morning.
Group Members
Name: | Report name: | Student id: |
Matthijs van der Burgh | M.F.B. van der Burgh | 0771381 |
Joep Linssen | J.M.H.G.H. Linssen | 0815502 |
Daniël Pijnenborg | D.H.G. Pijnenborg | 0821583 |
Joeri Roelofs | J. Roelofs | 1029491 |
Sil Schouten | S. Schouten | 0821521 |
Rens Slenders | R. Slenders | 1028611 |
Yanick Douven | Y.G.M. Douven | Tutor |
Minutes
Minutes of team meetings are available here: [1]
Initial design
Introduction
The goal of this project is to autonomously solve a maze with a robot (PICO) as fast as possible. The robot has sensors, actuators and a computer on board to navigate through the maze. The computer runs on Linux 14.04 and the program language used for the software is C++. In this section the initial design is discussed, which consist of the requirements, functions, components, specifications and interfaces. This design will be used to build structured software and define required interfaces.
Requirements To solve the maze problem the following are required
- Finding the exit
- Finding and opening the door
- Avoiding obstacles at all times
- The maze should be solved within 5 min
- All tasks must be executed autonomously
- The system should work on any maze
- The robot mustn't get trapped in loops
Functions The functions which have to be implemented are subdivided into the different contexts. Motion functions describe how the software gets input from and supplies output to PICO. Skill functions describe how different skills are executed in the software. Lastly Task functions implement task scheduling.
The motion functions have been determined as:
- Basic actuation
Give PICO the ability to move around and rotate
- Getting information
Receive information from LRF and odometry sensors.
- Opening door
Make a sound to open door.
The more advanced skill functions are:
- Mapping
Use information from ”Get information” to determine and save a map of the environment. This creates the world model for PICO.
- Localisation
Determine where PICO is located in the map created in ”Mapping”. This will most likely be implemented in the same function.
- Object avoidance
Use current LRF data to make sure PICO does never hit a wall.
- Maze solving
Use the map in combination with current and previous locations within the map to determine a route out of the maze.
- Door and exit detection
Using the map to detect if possible doors have been found and if PICO has finished the maze.
The task control implements switching between the following tasks:
- Map making
Done throughout the challenge to improve current map.
- Finding doors
Done in first stage of the challenge when no door has been found yet
- Finding the exit
Once a door has been found and opened the task is to go through the door and finish the challenge.