Added Documentation to Odometry to aid the implementation process.
This commit is contained in:
parent
df9c636b6e
commit
6d26c4ced9
1 changed files with 19 additions and 0 deletions
|
@ -5,6 +5,25 @@
|
||||||
import time
|
import time
|
||||||
from planet import Direction
|
from planet import Direction
|
||||||
|
|
||||||
|
'''
|
||||||
|
Documentation:
|
||||||
|
good and simple explanation on how odometry works:
|
||||||
|
https://www.youtube.com/watch?v=qsdiIZncgqo
|
||||||
|
|
||||||
|
Summary:
|
||||||
|
axis a (measure distance where wheels have most friction)
|
||||||
|
calibration factor c = diameter/ticks_per_turn
|
||||||
|
distance d = ticks wheel * c (calculate for each wheel individually)
|
||||||
|
vector_length = (d_l + d_r)/2
|
||||||
|
vector_angle ~= (d_l + d_r)/a (only applicable for small distances)
|
||||||
|
|
||||||
|
Functionality that should be implemented in this class:
|
||||||
|
- tracking of relative distances
|
||||||
|
- track the roboters orientation
|
||||||
|
- maybe have seperate functions for vector length and orientation (only if it is beneficial)
|
||||||
|
- closest coordinate to relative distance estimation/calculation
|
||||||
|
'''
|
||||||
|
|
||||||
|
|
||||||
class Odometry:
|
class Odometry:
|
||||||
def __init__(self, planet):
|
def __init__(self, planet):
|
||||||
|
|
Loading…
Reference in a new issue