Sunday, November 20, 2011

Akron board milling project

I finally finished the milling project that I started back in March. It's a board game called Akron that I milled into a sheet of acrylic. We had a milling course at work for people to learn how to use the computer-controlled milling machine, and this is what I chose to do as my project.
The game is one of my favourites, a connection game designed by Cameron Browne where you can stack marbles up and over your opponent's path. In the second photo, you can see that the white player has connected from left to right, although the path is a bit twisty. Black was close to cutting off white by crossing over the top, but couldn't get there in time. To learn more about the game, read the rules, or play it on Richard's play-by-e-mail server.
The project took a lot longer than I expected, mostly because I made it way more complicated than necessary. On future projects, I'll try to keep things simpler, but it's tempting for me to push into what is possible with the tools, instead of staying with what is practical. I found it an interesting transition moving from writing software to designing something physical. In software, I'm used to writing in small pieces and testing each piece along the way. With a mill, it takes a long time to get set up, so I probably did more dry runs than I needed to. If you're interested in the gcode that I wrote, you can find it in my Google Code project. Writing gcode was interesting, in some ways it's even more primitive than classic BASIC. I think on future projects, I'll write Python code to generate the gcode, and skip gcode's loops and conditional logic as much as possible.
The 1" diameter marbles came from two copies of Abalone, and one copy of Balanx.