A Lego-robot with camera controlled by Matlab

disclaimer

Discussion

I did manage to create a robot that can be controlled from Matlab and I did some real time image analysis programs to control the robot, and they worked quite nicely. I used a PD-regulator to make the robot follow a twisted line and I think the robot is a good tool for regulator realization as results are directly and clearly seen by anyone.

There are still some thing that should definitely have been done.

To do

  • Add rotation sensors. The basic RIS-kit doesn't include rotation sensors, so I didn't have them. They would have helped the control of the robot really a lot, as with the current system there's no way (other than doing image analysis on the camera's picture) to know exactly how much the robot has moved and how fast it is moving. If rotation sensors are included in the system the commands and legOS program should propably be totally rewritten. It should then be possible to order the robot to move some defined number of steps.
    (I was thinking about doing a program that would make the robot drive some 'virtual' route that isn't visible, but that is almost impossible without precise control of the robot, ie. rotation sensors.)
  • Design the robot. It might be that the control would be more accurate if the robot had a better design. I just built it to have something to play with and changed the design as needed.
  • Mathematical model of the robot. My control functions were based purely on trial and error, but to do some more advanced things one should have a model of how the robots speed and angular speed depend of the motor levels. Here the rotation sensors would also help a lot.