15 YouTube views, likes subscribers in 10 minutes. Free!
Get Free YouTube Subscribers, Views and Likes

3D Printed Arduino Pen Plotter

Follow
IV Projects

I designed this plotter in SolidWorks and 3D printed the parts. The NEMA17 motors are controlled by an Arduino running a forked version of the GRBL software that supports the use of servos. In short, it modifies the stock GRBL spindle PWM to control the position of a standard hobby servo. Here is a link to it if you would like to learn more:
https://github.com/bdring/Grbl_Pen_Servo

EDIT: .STL files for this plotter are now posted on my GitHub page (linked in the channel's "About" section)

The design for the pen lifting mechanism moves all electronics off of the print head, which decreases moving mass and simplifies cable management.

The paper roller assembly uses a small idler roller on a spring shaft, which keeps constant preload on the paper. I originally thought of this design after seeing a similar system used in a consumer inkjet printer. The rubber paper rollers were sourced from an inkjet printer.

I used Inkscape's GCodeTools extension to generate GCode. This works with any vector image. For nonvector images, I used a bitmap trace.

The GCode is then sent over serial communication to the Arduino. I used Universal GCode Sender for this.

As a note for anyone else building a project involving GRBL, I highly advise you to avoid using a cheap Arduino clone like the ones sold under the Kuman brand. These use a CH340G serial communication chip in place of the Atmel 16U2 chips used on genuine Arduino boards.

When running a heavy load like GRBL, these clones are very unreliable in my experience. The plotter would randomly stop during prints. The errors given by Universal GCode Sender were rather cryptic, leading me to believe the issue was somewhere in the software. Eventually I switched to an Elegoo Arduino board from a different project. Switching to this Arduino fixed the problem immediately.

posted by drymaintc3