<  Home

MSc - Logo & Lego Mindstorms

I completed an MSc in Software Engineering in 2010 and my final-year project was titled “A Logo programming environment for Lego Mindstorms™ robots”. I made a Java web application for students to use to program a robot to execute Logo (Turtle Maths).

Turtle Math’ is a simple language which has been used in schools for decades to help introduce children to the concepts of computer programming. On a normal computer, ’fd 10’ moves the turtle forward 10 units and rpt 4 [fd 10 rt 90] draws a square.

A Logo turtle has only a location on screen and an orientation…Indeed, the Turtle is like a person: “I am here and I am facing north…” And from these similarities comes the Turtle’s special ability to serve as a representative of formal mathematics for a child.

Seymour Papert, inventor of Logo and consultant for Lego Mindstorms™ robots

My application allowed a list of users to share one robot, to write Logo and execute the commands in a Java Swing GUI. When ready, the user in charge of the robot could execute the commands on the robot and it would move along the ground, drawing geometric shapes as it goes.

  • Logo interpreter written using JavaCC to generate the parser
  • GUI built with Java Swing and the Java port of PureMVC
  • Lego Mindstorms robot re-flashed with Lejos (Tiny Java VM)
  • Sockets and bluetooth

You can read the final report here, or check out the source code here.