an optimal encoding project with Kalman filtering

Hi,
I am completely new to robotics. To start learning by doing, I decided to perform a hello-world-type project with Kalman filtering. All what I know is only a little math theory and limited experience with Simulink.

The filter must reduce the noise from an incremental optical encoding system, which is consisting of these parts:

  1. HSR-1422CR Continuous Rotation Standard Servo
  2. Inex Infrared Reflective Sensor - TCRT5000L
    http://www.robotshop.ca/inex-infrared-reflective-sensor-TCR-2.html
  3. Arduino Duemilanove USB Microcontroller Board
    RobotShop | Robot Store | Robots | Robot Parts | Robot Kits | Robot Toys
  4. Also learned about codewheel here:
    http://www.mindspring.com/~tom2000/Delphi/Codewheel.html
  5. I have seen some practical implementations of KF, for instance here:
    http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1225283209

The hardware assembling is consisting of:

  1. Mounting the codewheel on the servo
  2. Mounting the reflector sensor, faced to the codewheel
  3. Connect them to the Arduino
  4. Connect the Arduino to a PC, to program the system explained below.

The thing is that I still did not receive the parts I bought, and I can't sit, doing nothing! I would like to start a simulation phase:

  1. Develop a block-diagram of the control system with math-model of parts, with a Kalman filter embedded in that and a source of random process generating.
  2. Get a graph, showing actual system state with and without noise, and the Kalman-filtered signal all together, so that to see and feel (how) the filter works.

This finishes the simulation phase, and hopefully by finishing it in a week, I will have my parts and go for a real experiment Smile

Please support:

  1. What is your idea about the block-diagram, parts and their math-model?
  2. What should be the state-space equation? I can't imagine, what the state of the system must be in this case? Spinning angle, or the distance?
  3. Any other general recommendations / instructions / link to tutorials, all are very welcome!

Best Regards!!