In this instructable, we will learn to make an XY plotter/ Vertical plotter drawing machine using Arduino. With this very efficient Vertical Drawing machine, We can draw images on different paper sizes, walls, or whiteboards along with printing texts, generating arts and graffiti. Vector images(SVG) are fed to them as input, for printing jpeg and png files, use a converter so as to convert the file to SVG file format. We will be using Arduino, l293d shield, and IC, servo, 3-D printer as a basic requirement for printing the parts required. Along with this hardware, the MAKELANGELO jar file will also be used as software for feeding instructions. Physics plays an important role in the proper and efficient working of this project, so we should keep an eye on the functioning of tension and friction throughout the time we are working on this project.
Step 1: REQUIRED PARTS FOR PLOTTER:
- 1x Arduino UNO R3(1)
- 1x L293D Motor Drive Shield(1)
- L293D Motor Drive IC(2)
- NEMA 17 Stepper Motors(2)
- MG90S Servo Motor(1)
- GT2 Pulley 16 Teeth Set(2)
- GT2 Rubber Belt (5M)
- 5V -2A Power Supply(1)
- External weights (around 200 grams on each side)
- Jumper wires
- Whiteboard Marker.
- 3-d printed parts used are mentioned below.
Step 2: 3D Models:
Applications that I used:
- Autodesk fusion 360 for preparing the 3-D model of the required files
- Ultimaker Cura 4.8.0 for slicing the file and converting it to g-code file format.
Step 3: ASSEMBLY OF HARDWARE:
- Connect the rubber belts on the central marker holding 3d printed part. (Adjust the length of the belts as per the size of your whiteboard.)
- Connect your servo motor to the central marker holding 3d printed part such that its head faces upward.(For pen lifting servo, use one capacitor across VCC and GND(470uf or above),
it will avoid jittering issues of servo.)
- Assemble the Nema 17 stepper motors on the mounting brackets that you have printed.
- Make sure to attach weight around both sides of the motors so that the tension between the connected belts are maintained.(I used old iron rods and old lipos of around 200 grams each on both the sides.)
- Don’t forget to attach a weight to the central marker holding 3d printed part so that the marker draws efficiently.
Step 4: CIRCUIT CONNECTIONS:
In the link mentioned below, you will get to know how to use a high-torque stepper motor(in this case we are using Nema 17 having torque of 4.2 kg-cm) with the L293D motor driver. Since, using high torque stepper motors with a motor driver generates a lot of heating issues, using two ICs one above another reduced overheating and efficient working of the plotter. The cause is the high current requirement. So, he modified the L293D Motor driver shield to solve this problem.
After mounting IC’s , make all the connections as mentioned in the picture shown above.
Step 5: SOURCE CODE AND MAKELANGELO:
- Install Arduino IDE .
- Download the following compressed file for Makelangelo and its libraries from any of these two links:
- Unzip the .rar file and save the files and folders onto any of your local disks.
- Now open Makelangelo folder and go to makelangeloFirmwareAMS-2 folder, open the Arduino sketch file and make desired changes in the code according to your hardware setup and upload the code to your Arduino Uno R3. (remember the COM port used for communication with Arduino for using the Makelangelo file.)
- Come back to the parent folder and open the executable jar file(Makelangelo-7.11.0-with-dependencies).
- Go to Settings inside Makelangelo-7.11.0-with-dependencies file and make desired changes in machine, paper, pen settings according to your whiteboard dimensions.(You can also change the page size from 4A0,A1,A2,A3…….ARCH E1. )
- Make sure to use proper machine dimensions and paper settings and leaving 10-20% margin towards each edge of the paper size you choose.
- Now click on CONNECT option and select the COM port whichever port you are using for your communication with Arduino.(Now, communication is established between the jar file and the Arduino.)
- Now once the connection is done, Set Home the marker to your desired location(mostly preferred to set the marker 0.35 of the length of the whiteboard. )
- Use Open File and Generate Art to insert different images of SVG type(Find any vector drawing image. Convert image to the SVG format from any converter platform like inkscape) and generate different arts pre-installed and text of your own choice.
- Finally, press Start to start plotting amazing drawings and texts of your choice .To stop the plotter, use Pause and Halt.