·building·project·shipped

Cookie Cutter CNC

Full stack engineering project

  • 36"×36" sheet metal cutter with server and Arduino client control systems
  • Designed and developed C# .svg parser, toolpath scheduler, and optimizer, Arduino controller with serial protocol and electronics, and CNC machine with electrodischarge machining head.
  • Presented on project in May 2015 and June 2016
  • Development journey published here

Outcomes

  • 36”×36” sheet metal CNC (without cutting tool) with server and client control systems
  • Became significantly more fluent in C#
  • Developed .svg parser and toolpath scheduler with local optimization
  • Learned elementary electrical engineering
  • Engineered basic Arduino CNC controller
  • Wrote serial client featuring optimized protocol

The Problem

This project started with the objective of making a 2×2 plasma cutter. You see, until then, I had been painstakingly hacksawing all my sheet metal, and I probabbly broke 3 or more cutting blades each day in the process. It seemed like a no-brainer then to automate this process... or so I thought.

The hacksawing problem

I quickly began deciding objectives. PDFs started piling up on material science, electrical engineering, mechanotronics, programming, and gcode. For the first month, I spent much of my time in school taking notes, formulating designs, and drafting parts. It's so easy to get tempted to plan out every millimeter of a machine.

Finally, I settled on an acceptable design and began construction. At this point, there were only a few weeks of school left, and I wanted to share my work with my peers so I intensified my activity: no more basketball, programming through class and lunch, staying in the garage much of the evening. (I would've made more balanced decisions now) At this point, I began actually learning about machanical and electrical engineering, arduino programming, C#, SVG processing, matrix transformations, and of course, failure.

CookieCutter mechanotronics
CookieCutter electronics
CookieCutter mechanotronics

CookieCutter in development

It's hard to maintain a crazy level of involvement for long without losing some enthusiasm, and when the roadblocks came, I was ready to move on to another more exciting project. One of the bigest setbacks was the day before I was scheduled present the machine to my class. I was showing the electro-discharge cutting head to some of my teachers and school principle. It had worked before on aluminum foil, but this time I was using a homebuilt transformer to carry higher current. Because of a miscalculation however, the moment I turned on the switch, it shorted half of the classroom I was in and also a neighboring lab. Needless to say, that was a very embarassing moment. Summer break was just around the corner anyway so from then on, I gave up on making a working machine and just focused on giving a good presentation.

In honor of an attempted 3D printer, the Cookie Baker, I named this machine the Cookie Cutter. This system has all the bare-bones you would expect from a sheet metal cutting CNC except for an actual working cutting head. It uses CookieWare to read SVG files, an Arduino Mega with CookieWare Client to buffer serial input and make appropriate movements, and a threadscrew XY table. Check out the CookieCutter's Github repos for server and client code.

Final CookieCutter
Cookie Control

Final CookieCutter (left), mock product-release video (center), and CookieControl (right)

Neighborhood

Related

LimboidLimboidCookie Baker 3D PrinterCookie Baker 3D Printercanvas-engineeringcanvas-engineeringFocus StatementFocus StatementRapid prototyping and hardware thinkingRapid prototyping and hardw...Cookie Cutter CNC