This program is for an autonomous robot for the competition at the Hochschule Luzern. http://cruisingcrepe.wordpress.com/ We are one of the 32 teams. http://cruisingcrepe.wordpress.com/ The postition control is based on this Documentation: Control of Wheeled Mobile Robots: An Experimental Overview from Alessandro De Luca, Giuseppe Oriolo, Marilena Vendittelli. For more information see here: http://www.dis.uniroma1.it/~labrob/pub/papers/Ramsete01.pdf

Dependencies:   mbed

Fork of autonomous Robot Android by Christian Burri

Revision:
11:775ebb69d5e1
Parent:
6:48eeb41188dd
--- a/RobotControl/MotionState.cpp	Thu Apr 04 06:43:43 2013 +0000
+++ b/RobotControl/MotionState.cpp	Fri Apr 05 10:58:42 2013 +0000
@@ -7,12 +7,8 @@
     xposition = 0.0f;
     yposition = 0.0f;
     theta = 0.0f;
-    thetaCompass = 0.0f;
     speed = 0.0f;
     omega = 0.0f;
-
-    acceleration = ACCELERATION;
-    thetaAcceleration = THETA_ACCELERATION;
 }
 
 
@@ -27,8 +23,6 @@
     this->theta = theta;
     this->speed = speed;
     this->omega = omega;
-    acceleration = ACCELERATION;
-    thetaAcceleration = THETA_ACCELERATION;
 }
 
 MotionState::~MotionState()
@@ -108,38 +102,3 @@
     return omega;
 }
 
-void MotionState::setAcceleration(float acceleration)
-{
-    this->acceleration = acceleration;
-}
-
-float MotionState::getAcceleration()
-{
-    return acceleration;
-}
-
-void MotionState::setThetaAcceleration(float thetaAcceleration)
-{
-    this->thetaAcceleration = thetaAcceleration;
-}
-
-float MotionState::getThetaAcceleration()
-{
-    return thetaAcceleration;
-}
-
-void MotionState::increment(float desiredSpeed,
-                            float desiredOmega,
-                            float period)
-{
-    float acceleration = (desiredSpeed-speed)/period;
-    if (acceleration < -this->acceleration) acceleration = -this->acceleration;
-    else if (acceleration > this->acceleration) acceleration = this->acceleration;
-
-    float thetaAcceleration = (desiredOmega-omega)/period;
-    if (thetaAcceleration < -this->thetaAcceleration) thetaAcceleration = -this->thetaAcceleration;
-    else if (thetaAcceleration > this->thetaAcceleration) thetaAcceleration = this->thetaAcceleration;
-
-    speed += acceleration * period;
-    omega += thetaAcceleration * period;
-}