Who says Lego is just for kids? With the Lego Mindstorm series, people around the globe are able to easily build and program their own customizable robots. Recently, Dr. German Vargas, mathematics chair at the College of Coastal Georgia, decided to combine his Mindstorm EV3 set with another hackable toy – the Leap Motion Controller.
When the integration was ready, Dr. Vargas decided to have a little fun with it – concealing a laptop under his jacket and looping the Controller’s USB cord through his sleeve. “It was fun to drive the robot around campus while hiding the laptop running the program under my jacket, but the best part was to respond to the question “where did you get that?” with “I built it and I programmed it!”
Getting started with Lego Mindstorms
While Dr. Vargas originally considered using an Arduino, he discovered that the MonoBrick Communication Libraries let him integrate everything into a single project – receiving data from the Leap Motion SDK and sending it immediately to the EV3 motors, all within C#. By downloading this compressed folder on his website, you can find his Visual Studio 2013 project, which in turn contains the full source code and linked libraries. You can also download the integration source code here.
Right now, the program works by feeding information to two motors. However, it’s also easily extendible to access all the functionalities with the MonoBrick communication libraries. By playing with certain sections of code, you can modify the integration to make your robot respond to other inputs, like the number of fingers.
After posting his original video, Dr. Vargas took his work with EV3 to the next level. In the next video, you can see how he controls the robot remotely by watching video feedback from a mounted camera via AirServer. He uses pitch to move forward and backward, yaw to turn left and right, and his hand’s position in the Y axis to control a small robotic arm.
When people understand how to program simple machines, they get a whole new understanding of the world. By showing how concepts from the classroom can bring robots to life, Dr. Vargas hopes to inspire his students to explore other applications.
The Mindstorm programming interface allows educators to target a broad audience, and gives you the opportunity to make the programming experience both accessible and challenging for groups of all ages. It doesn’t matter how young or old you are, once you start seeing that robot react to your commands, your attention is completely captured and your level of interest naturally rises.
In general it provides a great opportunity to engage the public in the STEM (science, technology, engineering, and mathematics) disciplines. Connecting what we see in the classroom to fun, real-world applications makes mathematics much more enticing. I’m just starting to develop things with the Leap Motion Controller, but I can just imagine teaching concepts like coordinate systems and vectors.
Building simple robots also teaches logic, the foundation of all programming, says Dr. Vargas. Students are challenged to disassemble tasks into small instructions that the robot can understand. Instead of saying “move there and grab the box,” they learn to break ideas into sequences. Other important math concepts – sets, representations, coordinate systems, functions, normalization of values, vectors, radius of curvature, array manipulation – start to emerge. Concepts start to make intuitive sense. Magic happens.
Has building a robot, designing an app, or just playing with your Lego bricks ever changed how you see the world? How would you like to see motion-controlled robotics used in the classroom?