CNC Drawing Machine
Through my interest in 3D printing and machining I was driven to learn G-code, which nearly all CNC equipment uses. I needed a machine to execute the code, but this was 2018 – long before I owned a 3D printer. I set out to build a pen plotter because it only had 2 axes and a on/off tool. This project taught me about wiring and controlling stepper motors, the basics of machine control software, and programming simple G-code. It set me up for success much later when I was given a non-working 3D printer, because the knowledge and skills I learned with the plotter are easily transferrable.
The learning curve for stepper motors and motion control is steep. While the physical structure was relatively easy, I struggled putting together and programming the electronics. My first attempt used CD drives stripped from old computers, following the lead of this project and this project. CD drives are great because they use a small stepper motor and screw to precisely move one axis. unfortunately I fried one immediately; the small laptop CD drive uses 3.3V, not 5V like the standard one. Nevertheless, I continued putting together the brains of the operation: an Arduino running GRBL software. This is open source machine control highly optimized for Arduinos; it takes G-code streamed from a PC, performs kinematic planning, and directs the motor drivers accordingly. At this point I had a working tiny single-axis machine!
Months later a friend gave me a two axis stage he found in a scrap pile (guessing from a high-end microscope or scanner of some type). Score! After adapting my Arduino and stepper drivers to the new motors, building a crude pen holder, and re-powering the contraption I now had a much larger working pen plotter.
To make a drawing I follow these steps:
- Trace the image to obtain vector paths
- Export the paths as G-code (thanks to this tool by Diego Monzon)
- Load G-code into GRBL Plotter software and set up the origin and tool configuration
- Insert a pen or pencil and adjust pen up and down positions
- Start the program and watch it like a hawk to catch my mistakes
Mom loved my mother's day card featuring an adorable rendering of me and Elmo.
I regularly make cards with the machine. It excels at writing text because it can draw block letters with literal robotic precision, but it still has the ink imperfections and paper indentations like real handwriting.