Overview - v1.2
This is a 2D pen plotter built using LEGO® components.
This page is a little basic at the moment, but will be updated when I have
worked on the software aspects some more.
The build instructions are available as a PDF, or LDraw file if that is
preferred, from the resources section below.
Note: This cannot be built from just the 31313 kit alone. It uses
extra parts that I obtained from the 45560 Educational Expansion Kit,
and some parts bought that would be found in the 45544 Core Set; the
treads and sprockets used for the x-axis drive.
Videos of it at work are on YouTube:
The code, as currently provided, will initialise the pen holder and x-axis
drive. It will then wait until a sheet of paper is detected over the colour
sensor - only then will the paper drive load the sheet. It will draw the paper
in until the top edge of it is seen - the bottom of the sheet is loaded first.
The coordinates used are in millimetres, standard X/Y orientation, with the
origin next to the touch sensor as the paper is loaded. Due to the gearing,
sprocket and wheel sizes, 1mm ~= 9˚ of x-axis motor rotation, and 8˚ of
y-axis motor rotation.
The pens I use are easily held in the pen holder, thinner pens may need some
modification to them (tape?) or to the holder. When inserting the pen for the
first time, wait for the first stage of the initialisation step, then insert
the pen so that its tip is ~2mm off from the paper bed. The pen holder is only
lifted, gravity is used to lower the pen on to the paper. I use felt tip pens;
others may or may not work so well.
NOTE: Before using the Plott3r for the first time the program
"Reset_Calibration" must be run. This creates an empty calibration
data file. This is used to manage the backlash in the system. The default
values ought to be good enough, but a calibration step is offered by the
other programs so you can tweak the values if needed; you will be asked
"Calibrate?". To skip this step press middle button, otherwise use the arrow
keys select yes/no and then you can adjust the X/Y backlash correction values
on the next page.
Updates to the project are noted below. Where relevant EV3 code, LDraw files and PDFs will have been updated to match.
- 9/6/2016 - Release v1.5.
- Solely an update to the BIs to insert a missing beam.
- 29/01/2016 - Release v1.4.
- Updated with a smoother track bed, and better paper guides.
- 15/07/2015 - Release v1.3.
- Updated the front of the pen holder to be more rigid.
- 5/6/2015 - Release v1.2.
- The pressure bar has had a slight modification - It can now be tilted up by pulling the red pins. This allows easy removal (or placement) of the sheet of paper. The grip on the paper is high when the bar is in place, so it was hard to pull the sheet out.
- Minor changes caused due to needing to relocate two red pins
- There is now a central paper guide under the x-axis track. This is to stop the middle of the paper rising and touching the pen when in the lifted state.
- 2/6/2015 - Release v1.1.
- Updated the EV3 code to implement a better _Real_Move MyBlock.
- The model has been updated with the new pressure bar.
- Updated the EV3 code to implement the Move_Relative MyBlock.This will produce straighter lines on each move, at the loss of accuracy overall. There is a high chance of cumulative error.
- Updated the EV3 code to implement a stack for use within the recursive->iterative algorithm conversions.
If you have any feedback on this project, documentation, code or any
other aspect, feel free to contact me via
email at lego <@> jander [dot] me [dot] uk.
Permission to use
I'm releasing this design and the EV3 code under the Creative Commons
LEGO® Plott3r by Jerry Nicholls is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Based on a work at http://jander.me.uk/LEGO/plott3r.html.
Back up to my LEGO® projects.
LEGO® is a trademark of the LEGO Group of companies which does not sponsor, authorize or endorse this site.