CNC Pen Plotter

A pen plotter is a machine that draws on a piece of paper. You can give the machine code and it will move the pen to draw an image, a signature, or anything else that can be drawn with a pen.


Rafael B.

Area of Interest

Mechanical Engineering


Drew School


Incoming Senior

Final Milestone

For my final milestone, I put all the pieces of the project together into the finished product. First, I screwed the two CD drives onto flat panels from their casing. I had to use two L-brackets to mount them at a perpendicular angle from each other. I then cut out a square from MDF to use as the base for the paper to sit on. I also cut smaller squares to stack and use as spacers in order to move the pen further from the CD drive to increase the drawing area. I also glued the pen to a servo motor to prevent the pen from drawing when it didn’t need to.

Second Milestone

For my second milestone, I had to generate gcode to use in my pen plotter. Gcode is just a series of coordinate points that the machine reads so it knows where to go. I used a program called Inkscape to make the drawings that I would convert into gcode. I also used an extension to Inkscape named the “Inkscape Unicorn Plotter.” This allowed me to draw or insert an image to Inkscape and export it as gcode. The extension is only compatible with some versions of Inkscape, and the latest version that works is 0.48.5. After using this version and having unsuccessful gcode exports, I tried using a Windows laptop instead of my Mac, which worked. Once I had gcode, I still needed to send it to the Arduino. I used a program called Processing to do this. To use it, first you need to run the firmware from Arduino. Once it’s running, open the Processing code and run that. Select the Arduino port, and then you’re connected. You can import gcode files that will run on the pen plotter.

First Milestone

The goal for my first milestone was to have both CD drives connected to my electronic control and power, and make them move. I took apart two CD drives because all I needed were the moving parts inside them. The code I wrote is being sent from my computer to an Arduino plugged into it. On top of the Arduino is an L293D H-Bridge motor shield. The purpose of the motor shield is to have a place to plug the motor wires into without needing to use a breadboard. The motor shield is powered by an external 5V power supply. The external power supply is needed because the Arduino cannot provide enough power to the motors, so commands are sent to the Arduino, transferred through the motor shield, and sent to the motors.

Starter Project

For my starter project, I built the Junior Theremin from MadLab. A theremin is a musical instrument that does not require any contact from the user. By moving your hand closer to the antenna, the theremin emits a higher note, and moving your hand further causes a lower note. When you wave your hand near the antenna, you form a capacitor between the antenna and your hand. This capacitor oscillates and the rate of oscillation depends on the distance between your hand and the antenna. This oscillation is then mixed with the output of a fixed oscillator on the theremin, and the difference between the two is output as a sound played through the speaker. While building the theremin, I also learned about what role each component plays to ultimately create a note. This theremin uses a nine-volt battery, but the components only need five volts, so two capacitors and a regulator stabilize and lower the voltage. The theremin also has two chips, each which serve a different purpose. One chip is used to create the fixed oscillation and input the new oscillation through the antenna. The other chip is used to light up the four LEDs and power the speaker. The first chip sends the oscillation from the antenna to the second chip, which interprets it and converts it into sound and light.

Leave a Comment

Start typing and press Enter to search