|The University of Adelaide||Home | Departments | Search|
A simple MATLAB simulation for camera based control of mobile robots
This small set of MATLAB m-scripts can be used to learn about camera controlled mobile robots and linear estimation. The central simulation is robsim, a GUI based m-script which gives access to all available elements of the simulation environment.
The simulation robsim has been written to assist students of robotics and mechatronics degrees in developing algorithms for the control of mobile robots based on visual feedback from a ceiling mounted camera. The simulation provides a virtual environment, which closely resembles the real environment of the laboratory. Replacing the live stream of images from the camera by simulated images, the students can develop their robot control algorithms off-line, without the need for access to the actual hardware such as the camera and/or other laboratory equipment. The resulting algorithms can then be verified using real robots. The seamless integration of robsim with the camera control toolbox FireWire VisionTools, ensures a close match between simulation and the real application. In fact, the image processing algorithms developed off-line should perform much the same as when applied to a stream of live images from the real camera.
A number of callback functions have been implemented for the definition of a robot model, an optional on-line parameter estimator as well as the actual controller algorithm. These callback functions are called at various stages of the main simulation loop. The use of callback functions has the advantage of separating the code of the control algorithm (to be written by the students) from the code of the simulation itself (remains unaltered).
The (concise) user manual should be the starting point of working with robsim.
The current release of robsim is based on MATLAB R2007a, and the version 6.4.4 CMU firewire driver.
This software is distributed as Free Software under the terms of the GNU General Public License Agreement (GPL). This gives a user the right to copy, re-distribute and modify the source code of the toolbox to suit any of their needs.