Difference between revisions of "Trajectory from gyro/accellerometer/compas"

From RoboWiki
Jump to: navigation, search
Line 32: Line 32:
 
Následne sme vykreslili dáta získané v prvej etape pomocou OpenGL:
 
Následne sme vykreslili dáta získané v prvej etape pomocou OpenGL:
 
[[Image:etapa2.png|none|2. etapa]]
 
[[Image:etapa2.png|none|2. etapa]]
 
  
 
== 3. etapa ==
 
== 3. etapa ==
 
V tretej etape sme chceli dosiahnuť vykreslenie trajektórie podľa získaného Yaw (uhol zabočenia). S využitím polárnych súradníc a automatického pohybu vpred sme nakoniec dokázali vykresliť trajektóriu v rovine.
 
V tretej etape sme chceli dosiahnuť vykreslenie trajektórie podľa získaného Yaw (uhol zabočenia). S využitím polárnych súradníc a automatického pohybu vpred sme nakoniec dokázali vykresliť trajektóriu v rovine.
 
[[Image:etapa3.png|none|3. etapa]]
 
[[Image:etapa3.png|none|3. etapa]]
 +
 +
<pre>
 +
  angle = radians(yaw - yawOffset);
 +
  delta += 0.5f;
 +
  double d = 0.9;
 +
  double deltaZ = cos(angle) * d;
 +
  double deltaX = sin(angle) * d;
 +
  xx += deltaX;
 +
  yy -= deltaZ;
 +
</pre>

Revision as of 18:09, 25 June 2013

Zadanie

Trajectory from gyro/accellerometer/compas. Requirement: must use this part: 9DOF IMU, use any real robot.


O súčiastke

9DOF IMU

V projekte sme mali využiť súčiastku 9DOF IMU a následne zo získaných dát vykresliť prejdenú trajektóriu robota.

Na doske 9DOF IMU sa nachádzajú nasledujúce komponenty:


1. etapa

V prvej etape sme sa snažili prepojiť súčiastku s počítačom a získať z nej potrebné dáta. Postupným testovaním a dolaďovaním sme získali hodnoty:

  • Yaw - udáva uhol zabočenia
  • Pitch - udáva uhol stúpania / klesania
  • Roll - udáva uhol výkyvu doprava / doľava

Yaw, Pitch, Roll

Nami získané údaje vyzerali takto:

1. etapa


2. etapa

Následne sme vykreslili dáta získané v prvej etape pomocou OpenGL:

2. etapa

3. etapa

V tretej etape sme chceli dosiahnuť vykreslenie trajektórie podľa získaného Yaw (uhol zabočenia). S využitím polárnych súradníc a automatického pohybu vpred sme nakoniec dokázali vykresliť trajektóriu v rovine.

3. etapa
  angle = radians(yaw - yawOffset);
  delta += 0.5f;
  double d = 0.9; 
  double deltaZ = cos(angle) * d;
  double deltaX = sin(angle) * d;
  xx += deltaX;
  yy -= deltaZ;