a simply to build machine is the v plotter shown here. those machines are also called "hanging pen plotter", "polargraph" or "drawbot". the working principle is based on a pen that is hanging on two cords whose length can be varied by two motors. the v-plotter shown here uses a raspberry pi,... ...two double h bridges to drive the motors,...
raspberry pi 3d print server, ...two stepper motors used to vary the cord length... ...and finally one servo used to lift or lower the pen. the whole mechanism is mounted on a plate with the dimensions 94 times 20 centimeters. the plate for the drawing area below is 90 times 43 centimeters.
the area covered by the pen is approximately 56 times 30 centimeters. the bipolar stepper motor used here has two coils and so 4 terminals with a multimeter switched to continuity you can figure out what pair of terminals is internally connected one of the coils. at an operating voltage of 5v, 150ma are running through an enabled coil... ...while that current is 340ma at 12v. you can't connect a stepper motor directly to the gpios of the raspberry pi, because those pins provide no more than 2ma at just 3.3v! h bridges are needed to amplify the power and to swap the polarity at the coils of the stepper motors. the board shown here has two h bridges and so four output terminals. each of the coils of the stepper motor has to be connected to one of the h bridges.
four gpios of the raspberry pi have to be connected to the four input terminals of the h bridges on the board. two stepper motors are needed for the v plotter, thus two double h bridges and so 8 gpios of the raspberry pi are used to control the machine. you can get the schematics on the project page. the cord is wrapped around the shaft of the stepper motors. the motors are mounted with their shafts pointing to the base plate to get the cords as closely as possible to the drawing board. a clip is used to connect the pen to a stripe of perforated metal. that metal stripe in turn is connected to a stripe of acrylic plastic. a servo can bend the metal stripe and so lift or lower the pen. the triangular wire strap is used to stabilize the pen during operation.
if the pen is lowered, the whole mechanism rests on three points on the drawing plane by what the pen is pulled perpendicularly over the board. a simple way of connecting the pen with the mechanism is using loops at the ends of the cords. in doing so, the pivot axis is congruent with the center point of the pen, thus there is almost no deviation when deflecting the mechanism by hand. the higher the fastening point of the cords, the higher the force on the drawing plane. however if that fastening point is too high, the pen tilts. finding the right height is a bit tricky. here, the cords are linked with the mechanism by two metal hooks. in doing so, the height doesn't have to be readjusted whenever the pen is replaced, but there is a higher deviation when deflecting the mechanism. you can hang the v plotter flat on a wall, but a slight deviation from the vertical line causes a higher downforce of the pen and so a higher precision of the drawings.
you have to drive the pen to the point of origin manually before starting a plot. the software needs four parameters: the base length, thus the distance between the two stepper motors... ...the length of the two cords at the point of origin... ...and finally the number of steps a motor needs to move the pen for one millimeter. to get that value, one of the motors is turned for 2000 steps and the difference in cord length is metered. those parameters have to be entered in the source code. the program can process scalable vector graphics. the source code and some explanations about the trigonometry used to transform the cord length into x/y coordinates are available on the project page.
so let's do some drawings. the machine plots two text lines. the first one is at the top of the drawing area. the speed of the stepper motors should not be set too high or else the cords and so the pen will start vibrating. the accuracy of that low tech plotter isn't too bad: the characters with a height of approximately 5mm are easy to read. the second line is placed at the lower end of the paper sheet. in the template file, both text lines are arranged on straight lines, however there is a noticeable deviation at the plotted version. after the file is processed, the pen moves back to the point of origin.
let's plot a square to have a closer look at the deviations: during plotting, the cords are wound respectively unwound by the stepper motors. the cords are wound in multiple layers on the shaft of a motor. whenever a cord length is short, the diameter of motor shaft plus cord layers is maximal. if a cord length is at it's maximum, the diameter of the spool equals the diameter of the motor shaft. as a consequence, the move length of the pen with each step of a motor is lower, the longer the cord length becomes by what the calculation done by the software doesn't meet the reality, resulting in a visible error. another reason for deviations is the flexibility of the cords: i can stretch the cords and so deflect the pen easily by hand. the closer the pen is to the base line, the higher the forces acting on the cords and so the larger the deviations caused by the flexibility.
that's why lower text line is almost on a straight line. don't set the point of origin too high on the board and keep the drawing area small to reduce the deviations and so to get good results with this simple plotter. the deviations are negligible when drawing objects without straight lines or circles. when using three templates, one for each pen, you can plot a colored raspberry. to get bold lines even with a fine pen, the software calculates circles around the paths of the drawing. the plotting takes much longer, but the lines are clearly visible even from a distance. it's fun watching the plotter drawing objects. with a larger diameter of the spools, the deviations caused by the multiple cord layers are reduced. i am using a gear made with my cnc machine - you can get a detailed description of that machine on the project page.
the cords are wound on a ball bearing with an outer diameter of 30mm. with a cord length of approximately 140cm, only some layers are needed to wind the cord on that larger spool. furthermore the relative error per cord layer is lower than with a 5mm spool. the painted square has an edge length of 30cm and the quality of the drawing isn't too bad. the drawing board is mounted on a framework made of timber battens, thus there is no need for a wall. this v plotter has a drawing area of approximately 60 times 85cm.
with a large pen, there is no need for drawing circles around the path, which speeds up the plotting of the file. that's all about v plotters for now. anything else about that machine is written on the project page.
thanks for watching and: "i'll be back!"