Magnetic CNC marble maze


[Martin Raynsford] figured out a way to sneak some learning into a fun package. He did such a good job the test subjects didn’t even know they were teaching themselves just a tiny bit of CNC programming.

The apparatus above is a marble maze, but instead of building walls [Martin] simply etched a pattern on the playing field. The marble is a ball bearing which moves through the maze using a magnetic CNC gantry hidden underneath. Where does one get ball bearings of this size? If you’re [Martin] you scavenge them from your laser-cut Donkey Kong game.

He showed off the rig at the Maker Faire.  It takes simple commands as cardinal directions and units of movement. The ‘player’ (remember, they’re secretly learning something, not just playing a game) inputs a series of movements such as “N10,E10″ which are then pushed through a serial connection to the Arduino. It follows these commands, moving the hidden magnet which drags the ball bearing along with it. It’s simple, but watch the clip after the break and we think you’ll agree the sound of the stepper motors and the movement of the ball will be like crack for young minds.

20 thoughts on “Magnetic CNC marble maze

  1. Would be rather cool if thin little wires ran through the “walls”, to detect if the ball contacted them.
    Or, he could just etch them on a pcb.

  2. You already know the position of the marble because you told the machine to put it there. So you could use a projector to display the maze, and give the software knowledge of the maze that’s being displayed.

    1. That’s a good idea. Then you could have a set of mazes that gets progressively harder, and even change the ‘scale’ of the ball movements.

    2. Or maybe LED grid under plexiglass. If you etched lines into the underside of the plexi you could probably get away with one wall segment per LED.

      1. Probably that would make the magnet part kinda hard. Or you’d just need a screamingly powerful magnet (oh yeah).

  3. I don’t program my CNC machines with cardinal directions, I use signed distance along axis, or signed angular units.

      1. It’s not a very good teaching tool if it doesn’t provide relevant knowledge. It’s certainly a cool project, but seriously question it’s value as a teaching tool. Thanks for taking the time to point out obvious information that I already had though.

        1. He named his axes differently than you typically choose to, I fail to see how that makes the concepts irrelevant unless you completely lack abstract thought

          1. It’s not that they’re named differently, it’s that they function differently. CNC axis are very simple to understand, particularly if you’ve any exposure to the Cartesian coordinate system, and they don’t change to a different name when they change sign. This matters because when you use absolute coordinates, which is more often than not, cardinal directions do not work, they cannot indicate a specific location, only relative motion.

  4. This would be pretty fun if there was a collision detection noise, like a loud metallic ‘thud’ and then a manual joystick mode after, to reward you for solving it.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s