Embedded Motion Control 2015 Group 10: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Group Details=
=Group Details=


{| border="1" class="wikitable"
{|border="1" class="wikitable" style="margin: 1em auto 1em auto;"
|+ Group Details
! S No
! S No
! Name
! Name
Line 42: Line 41:
|}
|}


=Summary=
=Objective=


Design and implement a robotic software system for the robots Pico/Taco, such that they are able to solve a maze in shortest time possible.


=Requirements=


*The robot should exit the maze as quickly as possible.
*The robot should align itself along the path orientation.
*The robot should avoid collision with the walls.
*The robot should be able to detect and differentiate between doors and walls.
*The robot should be able to identify that it has reached the end the maze.


=Functions=


*Navigation
**The robot should move along its Y-axis.
**The robot should stop before taking a turn.
**The robot should rotate 180o in case of a dead end.
**The robot should rotate 90o to its left or right when it encounters a corner.


=Functions=
*Sensing
# The robot should sense the wall.
**The robot should sense doors and walls.
# It should move along its Y-axis.
**The robot should go through in case of door.
# It should sense the difference between the dead end, corner with a right opening or a left opening.
**The robot should sense the difference between a dead end, a corner with a right or left opening.
# It should stop before taking a turn.
**The robot should stop once it exits the maze.
# It should rotate 180o in case of a dead end.
# It should go through In case of door.
# It should rotate 90o  to its left or right when it encounters a corner.
# It should stop once it exits the maze#


=Components=
=Components=




 
[[File:components.jpeg|center|Components of the System.]]
 
 
 


=Specifications=
=Specifications=


*Robot : A-MAZE-ING PICO
*Sensors:
**Laser sensor
*Actuators:
**Holonomic base (Omni - wheels)
*Computer:
**Running Ubuntu 12.04
**ROS (Robot Operating) - RVIZ
**Subversion


=Interface=


[[File:interface.jpeg|center|]]


 
=Maze Solving Logic=
 
The maze is considered as a map consisting of straight lanes,turns and in some cases loops. The robot should be able to navigate itself according to the scenario it is faced with. Mostly, the basic movements of the robot that need to be controlled are that of straight line motion and rotation during turns / dead-ends. They are described briefly in the following sub-sections:
 
==Straight line motion==
=Interface=
The robot should be able to navigate itself through a straight lane without touching / colliding with the walls. To satisfy this condition for all track-widths, the robot should be positioned equidistantly with respect to the walls. Initially, the robot orients its' axis parallel to the walls upon sensing them. As the robot starts to move in the lane, the LASER sensor data is used to identify the distance with walls in either direction (left/right). The distance identified on either sides is used to obtain an equidistant line, which the robot will trace throughout its'motion.
==Negotiating turns / dead-ends==
When the robot encounters a turn, it senses the direction of the turn (left/right) using the LASER range data. In the event of a turn, the LASER range increases in that particular direction. This range increase helps the robot to identify a turn and stop as it reaches the turn. The robot should position itself centrally with respect to the edges of the turn, in order to enter the turn without touching the edges. In order to ensure this, the robot senses the edges and maintains its'axis at 45 degrees with respect to the edge. Once the robot has positioned itself centrally at the mouth of a turn, it rotates 90 degrees towards the turn opening and proceeds straight ahead. In case of a wall obstruction, the robot turns back and returns to its'initial position at the mouth of the turn.

Latest revision as of 16:34, 19 May 2015

Group Details

S No Name Student ID Email ID
1 Sudarsan Kumar Venkatesan 0925292 s.k.venkatesan@student.tue.nl
2 Manoj Kannan Soundarapandian 0925101 m.k.soundarapandian@student.tue.nl
3 Srinivas Subramanian 0925168 s.subramanian@student.tue.nl
4 Sankar Chandrasekar 0923562 s.chandrasekar@student.tue.nl
5 Vasanth Subramaniam 0927487 v.subramaniam@student.tue.nl
6 Akshay Vaidhiyanathan 0877940 a.vaidhiyanathan@student.tue.nl
7 Avinash Visagan Varadarajan 0925263 a.v.varadarajan@student.tue.nl

Objective

Design and implement a robotic software system for the robots Pico/Taco, such that they are able to solve a maze in shortest time possible.

Requirements

  • The robot should exit the maze as quickly as possible.
  • The robot should align itself along the path orientation.
  • The robot should avoid collision with the walls.
  • The robot should be able to detect and differentiate between doors and walls.
  • The robot should be able to identify that it has reached the end the maze.

Functions

  • Navigation
    • The robot should move along its Y-axis.
    • The robot should stop before taking a turn.
    • The robot should rotate 180o in case of a dead end.
    • The robot should rotate 90o to its left or right when it encounters a corner.
  • Sensing
    • The robot should sense doors and walls.
    • The robot should go through in case of door.
    • The robot should sense the difference between a dead end, a corner with a right or left opening.
    • The robot should stop once it exits the maze.

Components

Components of the System.

Specifications

  • Robot : A-MAZE-ING PICO
  • Sensors:
    • Laser sensor
  • Actuators:
    • Holonomic base (Omni - wheels)
  • Computer:
    • Running Ubuntu 12.04
    • ROS (Robot Operating) - RVIZ
    • Subversion

Interface

Interface.jpeg

Maze Solving Logic

The maze is considered as a map consisting of straight lanes,turns and in some cases loops. The robot should be able to navigate itself according to the scenario it is faced with. Mostly, the basic movements of the robot that need to be controlled are that of straight line motion and rotation during turns / dead-ends. They are described briefly in the following sub-sections:

Straight line motion

The robot should be able to navigate itself through a straight lane without touching / colliding with the walls. To satisfy this condition for all track-widths, the robot should be positioned equidistantly with respect to the walls. Initially, the robot orients its' axis parallel to the walls upon sensing them. As the robot starts to move in the lane, the LASER sensor data is used to identify the distance with walls in either direction (left/right). The distance identified on either sides is used to obtain an equidistant line, which the robot will trace throughout its'motion.

Negotiating turns / dead-ends

When the robot encounters a turn, it senses the direction of the turn (left/right) using the LASER range data. In the event of a turn, the LASER range increases in that particular direction. This range increase helps the robot to identify a turn and stop as it reaches the turn. The robot should position itself centrally with respect to the edges of the turn, in order to enter the turn without touching the edges. In order to ensure this, the robot senses the edges and maintains its'axis at 45 degrees with respect to the edge. Once the robot has positioned itself centrally at the mouth of a turn, it rotates 90 degrees towards the turn opening and proceeds straight ahead. In case of a wall obstruction, the robot turns back and returns to its'initial position at the mouth of the turn.