00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef __MotionStabilizer_h_
00010 #define __MotionStabilizer_h_
00011
00012 #include "Modules/WalkingEngine/WalkingEngine.h"
00013 #include "Tools/Math/PIDsmoothedValue.h"
00014 #include "Representations/Perception/SensorDataBuffer.h"
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 class MotionStabilizer
00030 {
00031 public:
00032
00033 MotionStabilizer();
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048 bool stabilize(
00049 MotionRequest::MotionID lastMotionType,
00050 const MotionRequest& motionRequest,
00051 JointData& jointData,
00052 OdometryData& odometryData,
00053 const SensorDataBuffer& sensorDataBuffer);
00054
00055 PIDsmoothedValue accelX, accelY, accelZ,
00056 xFore, xHind, yLeft, yRight;
00057
00058 double stabilizerScale;
00059
00060 private:
00061 };
00062
00063 #endif// __MotionStabilizer_h_