DrawingBot in OpenSCAD
thingiverse
<h3>Background</h3> I recently decided to start a new project, choosing the *DrawingBot* by *MakerC* (https://www.thingiverse.com/thing:1517211) as my starting point. A thorough research also uncovered the remixes by *avanhanegem* (https://www.thingiverse.com/thing:2058866) and *henryarnold* (https://www.thingiverse.com/thing:2349232), whose exceptional ideas, designs, and contributions greatly influenced my re-design. After examining the original designs, I decided to make some modifications - primarily to the idler pulleys and GT2 belt fixing, but also to tidy up a few loose ends that had been bothering me. Unfortunately, I didn't have access to the original design files, so I created my own using OpenSCAD. <h3>Design Basics</h3> My design may not be as visually appealing as the originals, as I was too lazy to create intricate curves and precise linear bearing supports (I used cable ties instead). The pieces are primarily straight-edged with nice curved corners. The minimum requirements for implementing the new bearing setup include *XY_carriage_base*, *XY_carriage_top*, *Y_back*, *Y_front*, and *base_slide*. I utilized the original X-axis motor mounts and Z-carrier, designing my own M3 knob to hold the pen (https://www.thingiverse.com/thing:2530144). I've also included a few extras, such as a servo arm that likely needs modification to suit your specific needs, as it was designed for my unbranded/unlabelled 9g servo. Note that printing good servo shaft splines with an 0.4 nozzle is nearly impossible, so I modified a standard servo arm. I've also included a source file for X-axis motor mounts, although I didn't use them myself - the originals are perfectly suitable, so my file is only offered in case you want to make modifications in that area. There's a file called *support_tube.scad* that generates a socket that can be glued to the existing X-axis motor mount on whichever side you prefer. This is used to locate the cable support coming from the XY carriage. The Y-front OpenSCAD file gives an option whether or not to generate a support tube as part of the compilation (hopefully clear in the SCAD file). <h3>Common Definitions File</h3> Note that almost all of the SCAD design files require the *dimensions.scad* file in the same directory to compile correctly. This file defines common dimensions and contains numerous modules used throughout the design. <h3>Test Files</h3> There are two test files: *horizontal_test_piece.scad* and *vertical_test_piece.scad*, which allow you to adjust values in the common file *dimensions.scad* without wasting too much plastic. These cover things like hole diameters, linear bearing locating grooves, captive nut holes, and cable tie holes (I used 2.5mm x 100mm ties). The horizontal test piece is probably the most critical one to get right. The intention is that if you can get these pieces to print with all the dimensions correct for your components, then all the other pieces will also be accurate. Hopefully. <h3>Alternative Bearings</h3> Flanged bearings: **F604ZZ** (qty. 10) The bearings in the X carriage were mounted using M4 socket cap-head bolts - the screw heads need to be either narrow or very flat, as the clearance between the screw head and the Y-axis rods is extremely small. The assembly sequence for the XY-carriage was: M4 screw with threaded part pointing downwards, M4 washer, bearing with flange upwards, M4 washer, bearing with flange downwards, M4 washer, hole in X-carriage body, M4 washer, M4 Nylok nut. A similar sequence was followed in the Y-axis back piece: M4 screw with threaded part pointing upwards, M4 washer, through first hole of the Y-axis back piece, M4 washer, bearing with flange downwards, M4 washer, bearing with flange upwards, M4 washer, through second hole of the Y-axis back piece, and into the M4 captive nut.
With this file you will be able to print DrawingBot in OpenSCAD with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on DrawingBot in OpenSCAD.