Online Robotics Laboratory
Maze Solving Robot
B.S., Electronic Engineer Thesis, 2011
Universidad de los Andes, Bogotá, Colombia
SUMMARY
In this project an online robotic maze laboratory was built, aimed to be used as teaching aids or labs in an undergraduate course in programming. The user could open an applet which connected the user to the laboratory remotely. The user can define the topology of the maze, the starting and ending position of the robot, and program the algorithm that the robot would use to solve the maze. The applet would asses if such maze was actually solvable.
The user canprogram such algorithm in Java on the applet itself. The Java code was compiled dynamically using BeanShell. The user can then run the maze, and see via a webcam the robot perform the algorithm that was programmed and assess its performance.
FOLLOW-UP PROJECT: Teleoperated Laboratories -> École des Mines de Nantes,
Maze Solving Robot
B.S., Electronic Engineer Thesis, 2011
Universidad de los Andes, Bogotá, Colombia
SUMMARY
In this project an online robotic maze laboratory was built, aimed to be used as teaching aids or labs in an undergraduate course in programming. The user could open an applet which connected the user to the laboratory remotely. The user can define the topology of the maze, the starting and ending position of the robot, and program the algorithm that the robot would use to solve the maze. The applet would asses if such maze was actually solvable.
The user canprogram such algorithm in Java on the applet itself. The Java code was compiled dynamically using BeanShell. The user can then run the maze, and see via a webcam the robot perform the algorithm that was programmed and assess its performance.
FOLLOW-UP PROJECT: Teleoperated Laboratories -> École des Mines de Nantes,
Detailed Explanation
In this project a teleoperated robotics laboratory for teaching algoritms in undergraduate engineeing courses was made. I used a Lego Mindstorms NXT 2.0 to create a mobile robot laboratory that the students could program with an applet with Java. The objective of the laboratory was to create a maze and program an algorithm so the robot could solve said maze.
The robot has a line sensor, and is basically a line follower. The maze is set in a 10x10 grid, and the maze's restrictions are set in software (e.g., the maze's topollogy).
The laboratory uses Labview to control the robot, and a Java applet that controls the Labview program remotely. The laboratory uses the program JilServer, which servers as a bridge between Labview and the Java language. The ollowing diagram shows the general scheme of the laboratory.
The robot has a line sensor, and is basically a line follower. The maze is set in a 10x10 grid, and the maze's restrictions are set in software (e.g., the maze's topollogy).
The laboratory uses Labview to control the robot, and a Java applet that controls the Labview program remotely. The laboratory uses the program JilServer, which servers as a bridge between Labview and the Java language. The ollowing diagram shows the general scheme of the laboratory.
The used first connects to the remote laboratory via a Java Applet made with Easy Java Software. The user would then proceed to draw the maze he or she wants the robot to solve. The user would also specify the starting and ending position of the robot. The program would determine if the maze is solvable.
The user would then proceed to program the algorithm for the robot using simple Java language. The laboratory would provide the user with "high-level" primitives for the robot, such as the state of the wall that the robot sees at the present location and orders of movement for the robot (e.g., move left 1 position).
The user can finally execute the program they wrote and observe the robot as they go through the maze. The user can restart the robot if the robot cannot solve the maze or if it already solve it.
FOLLOW-UP PROJECT: Teleoperated Laboratories -> École des Mines de Nantes,