Embedded Motion Control 2013 Group 1: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 115: Line 115:
{| border="1" cellpadding="5" cellspacing="0" style="width:100%;border-collapse:collapse;"
{| border="1" cellpadding="5" cellspacing="0" style="width:100%;border-collapse:collapse;"
|-
|-
| style="width:70%" style="background: #D3D3D3;"  | '''#'''
| style="width:5%" style="background: #D3D3D3;"  | '''#'''
| style="width:20%" style="background: #D3D3D3;"  | '''Datatype'''  
| style="width:15%" style="background: #D3D3D3;"  | '''Datatype'''  
| style="width:10%" style="background: #D3D3D3;"  | '''Node'''
| style="width:15%" style="background: #D3D3D3;"  | '''Node'''
| style="width:10%" style="background: #D3D3D3;"  | '''Topic'''  
| style="width:15%" style="background: #D3D3D3;"  | '''Topic'''
| style="width:50%" style="background: #D3D3D3;"  | '''Description'''
|-  
|-  
| A
| A
Line 141: Line 142:
|-  
|-  
| E  
| E  
| n.a. yet
|
| n.a. yet
|
| n.a. yet 
|
|-  
|-  
| F  
| F  
Line 155: Line 156:
|
|
|}
|}
<table border="1" cellpadding="5" cellspacing="0" style="width:100%;border-collapse:collapse;">
<tr style="background: #D3D3D3;">
<td width="3px"><b>Line:</b></td>
<td width="30px"><b>Data type:</b></td>
<td width="30px"><b>Ros stack/msg:</b></td>
<td width="30px"><b>Ros topic:</b></td>
</tr>
<tr>
<td>A</td>
<td>-</td>
</tr>
<tr>
<td>B</td>
<td>float-32 multi array (cart. points) </td>
</tr>
<tr>
<td>C</td>
<td>float-32 multi array (cart. points)</td>
</tr>
<tr>
<td>D</td>
<td>3x boolean + 1 float32</td>
</tr>
<tr>
<td>E</td>
<td>-</td>
</tr>
<tr>
<td>F</td>
<td>3x float32</td>
</tr>
<tr>
<td>G</td>
<td>float-32 float-32</td>
</tr>
</table>


== Software development ==
== Software development ==

Revision as of 12:35, 24 September 2013

Group Info

Name: Abbr: Student id: Email:
Groupmembers (email all)
Paul Raijmakers PR 0792801 p.a.raijmakers@student.tue.nl
Pieter Aerts PA 0821027 p.j.m.aerts@student.tue.nl
Wouter Geelen WG 0744855 w.geelen@student.tue.nl
Frank Horstenbach FH 0792390 f.g.h.hochstenbach@student.tue.nl
Niels Koenraad NK 0825990 n.j.g.koenraad@student.tue.nl
Tutor
Jos Elfring n.a. n.a. j.elfring@tue.nl

Meetings

  1. Meeting - 2013-09-04
  2. Meeting - 2013-09-11
  3. Meeting - 2013-09-18

(Global) Planning

Week 1 (2013-09-02 - 2013-09-08)

  • Installing Ubuntu 12.04
  • Installing ROS Fuerte
  • Following tutorials on C++ and ROS.
  • Setup SVN

Week 2 (2013-09-09 - 2013-09-15)

  • Discuss about splitting up the team by 2 groups (2,3) or 3 groups (2,2,1) to whom tasks can be appointed to.
  • Create 2D map using the laser scanner.
  • Start working on trying to detect walls with laser scanner.
  • Start working on position control of Jazz (within walls i.e. riding straight ahead, turning i.e. 90 degrees).
  • Start thinking about what kind of strategies we can use/implement to solve the maze (see usefull links).

Week 3 (2013-09-16 - 2013-09-22)

  • Start work on trying to detect openings in walls.
  • Start working on code for corridor competition.
  • Continue thinking about maze solving strategy.

Week 4 (2013-09-23 - 2013-09-29)

  • Decide which maze solving strategy we are going to use/implement.

Week 5 (2013-09-30 - 2013-10-06)

  • To be determined.

Week 6 (2013-10-07 - 2013-10-13)

  • To be determined.

Week 7 (2013-10-14 - 2013-10-20)

  • To be determined.

Week 8 (2013-10-21 - 2013-10-27)

  • To be determined.

Progress

Week 2

State diagram made of nodes Localisation and Situation

Software architecture

Software architecture.jpg

IO Data structures

# Datatype Node Topic Description
A LaserScan lineDetector HoughLines
B Int32MultiArray
C Int32MultiArray
D Custom message (3x booleans, 1x Float32)
E
F Custom message (3x Float32)
G Custom message (2x Float32)

Software development

Localisation.gif

Situation corridor challenge.gif


localisation code (matlab generated)

clc %%x is driving direction!

Y1_1=-5; X1_1=-2;

Y1_2=-6; X1_2=6;


Y2_1=6; X2_1=-5;

Y2_2=5; X2_2=-6;

rc1=(X1_1-X1_2)/(Y1_1-Y1_2) %%of left-hand line
rc2=(X2_1-X2_2)/(Y2_1-Y2_2) %%of right-hand line

%%##determine relative driving angle
Theta=tan(rc1+rc2)/2

%%##determine distance to left wall
offset1=X1_1-Y1_1*rc1;
Y1=-offset1/rc1

%%##determine distance to right wall
offset2=X2_1-Y2_1*rc2;
Y2=-offset2/rc2

Theory

include hough transform here

Usefull links