Kalman filter for Eurobot

Committer:
madcowswe
Date:
Tue Mar 20 12:43:16 2012 +0000
Revision:
0:a0285293f6a6
Algo done, vars not done

Who changed what in which revision?

UserRevisionLine numberNew contents of line
madcowswe 0:a0285293f6a6 1 #include "Matrix.h"
madcowswe 0:a0285293f6a6 2 #include "RFSRF05.h"
madcowswe 0:a0285293f6a6 3
madcowswe 0:a0285293f6a6 4 //const int wheelmm = 314;
madcowswe 0:a0285293f6a6 5 //const int robotCircumference = 1052;
madcowswe 0:a0285293f6a6 6 //TODO make a globals and defines header file
madcowswe 0:a0285293f6a6 7 const int wheelbase = 400;
madcowswe 0:a0285293f6a6 8
madcowswe 0:a0285293f6a6 9 class Kalman {
madcowswe 0:a0285293f6a6 10 public:
madcowswe 0:a0285293f6a6 11 Kalman();
madcowswe 0:a0285293f6a6 12
madcowswe 0:a0285293f6a6 13 void predict(float left, float right);
madcowswe 0:a0285293f6a6 14 void update(int sonarid, float dist);
madcowswe 0:a0285293f6a6 15
madcowswe 0:a0285293f6a6 16 //State variables
madcowswe 0:a0285293f6a6 17 Matrix X; //(3,1)
madcowswe 0:a0285293f6a6 18 Matrix P; //(3,3);
madcowswe 0:a0285293f6a6 19
madcowswe 0:a0285293f6a6 20 private:
madcowswe 0:a0285293f6a6 21 Matrix Q; //perhaps calculate on the fly? dependant on speed etc?
madcowswe 0:a0285293f6a6 22 float R;
madcowswe 0:a0285293f6a6 23
madcowswe 0:a0285293f6a6 24 RFSRF05 sonararray;//(p13,p21,p22,p23,p24,p25,p26,p5,p6,p7,p8,p9);
madcowswe 0:a0285293f6a6 25 static const float beaconx = 0;
madcowswe 0:a0285293f6a6 26 static const float beacony = 0;
madcowswe 0:a0285293f6a6 27 };