Overengineered Bolt Endcaps, Case Holder

Simplicity itself

Simplicity itself

I’m still working on building out an awesome drawing robot.1  I’m designing printable parts to be installed into a left over wooden box for holding a paper roll, filament spools, stepper motor mounts, and a few more bits.

  • PolagraphSD case – discussed here – done!
  • Mounts for a paper roll – discussed here – waiting to upload…
  • Filament spools – discussed here – waiting to upload…
  • Stepper motor mounts – discussed here – waiting to upload…
  • Filament guides – discussed here, revisions described below – waiting to upload…
  • Bolt end caps – discussed in this post – waiting to upload…
  • PolargraphSD case holder – discussed in this post – waiting to upload…
  • Pen holder/gondola – TBD2

You may3 be wondering why I’m waiting to upload all of these parts.  The simple reason is that as I design and install each part of the overall robot, I find that a given part might need to be redesigned or might be better design in another fashion.  I’d hate to have someone print up some lousy parts and be stranded with a bunch of junk.

  • The ‘Bot So Far
    • Right now the robot sits a few feet away from me almost totally assembled.  I’m really excited about it.  I’ve mounted the PolargraphSD brain to the right side of the project box so that it would be easy to run the power cord to it.  While I do like the Platonic ideal of the perfectly symmetrical robot, my more practical Aristotelian side won out.  The upshot is that the leads I originally soldered to one of the motors is totally unnecessary and the leads I originally soldered to the other motor are woefully inadequate.
    • There’s not a lot left to do.  Once the motor leads are extended and the robot mounted to a wall, it will be totally ready to go.  I’ve realized that the slides I’m using to mount the paper roll are long enough for me to attach a set of wall mounting brackets.
  • Revisions to Existing Parts
    • Filament Guides.  I designed these 2mm too short.  While this almost certainly wouldn’t be a problem, these pieces are so easy to print that it just doesn’t make sense to live without the benefit of a part that works better.  If they’re too short it is possible for the monofilament line to rub against the wood of the project box – which defeats the purpose of having the filament guides in the first place.
  • Recommended Changes to Existing Parts
    • PolargraphSD case.  It turns out that just above the two Stepsticks in the PolargraphSD there are a pair of three headers with a jumper on each.  The lid for the PolargraphSD case I designed didn’t adequately take into account their dimensions, which kept the lid from closing cleanly.  I used a pair of wirecutters and then needlenose pliers to just rip the unnecessary bits of plastic out.  You would barely notice the change unless you knew4 where to look.  I’m not going to bother to reprint this part because that’s a lot of time and plastic to use for a feature that really doesn’t matter and is barely noticeable.  I’ve updated the OpenSCAD code for this part, so anyone who prints from the latest revision would automatically benefit from this change.5
    • Spools.  For instance, ideally I would have printed the two spools with a slightly smaller radius on the edges of the spool.  As they are now they tend to bump a little against the bolts holding the motors into the motor mount.  Making it just 1mm shorter would do wonders.  There are a few easy fixes for this. The one I’m using for the moment is to just raise the spool on the motor shaft so that it doesn’t bump into any of the bolts.  I should point out that this wouldn’t be a problem at all if only I had plenty of short M3x8 bolts.  Right now I’m using M3x16 bolts with three nuts on them to hold the motor to the motor mount.  This means the bolt head and the nuts get slightly in the way of one of the ends of the spool.  Just using shorter bolts would instantly fix this problem.  I’ve also sanded the end of the spools that fits onto the motor shaft.  If I put more elbow grease into it, this would also fix the problem – but why bother when I can just raise the spool on the motor shaft for now and pick up some short M3 bolts later?6
  • Bolt End Caps
    • Today I installed the motor mount slides in the project box, the spools on the motors, the motors into the motor mounts, the motor mounts onto the slides, and the filament guides into the project box.  When I finished all of this I realized that the ends of the bolts were sticking out.  In the spirit of overengineering, I created little plastic caps to prevent the bolts from being able to scratch or catch on anything.  While not strictly necessary, they do serve some useful purposes and and more aesthetically pleasing than having bare bolt threads sticking out from a chunk of wood.  They’re not much more than a tapered cylinder with a hexagon shaped hole for a nut and a cylindrical hole for the bolt threads.
  • PolargraphSD Case Holder
    • Although I’ve designed a nifty PolargraphSD case, I can’t bolt the case to my project box because of certain design choices.7 The overall design I’m using for this robot involves a large paper roll mounted to the top of a box, with the paper to unfurl behind the box, and then down onto the wall.  Since the back of the box has to be completely flat, I can’t put any bolts through the back.  Thus, I had to design a way to mount the PolargraphSD case to the inside of my project box – all without putting anything through the back of the box.  I could have designed around this by just adding vertical mounting tabs to the PolargraphSD case, but it just didn’t occur to me at the time.  And, as suggested above, I’m not interested in reprinting the entire case just to add a small feature here and there.  So I designed two tabs that the case could be mounted to and which, in turn, could be mounted to the top of the box.  Overall, I’m really happy with the way it turned out.
Default Series Title
  1. Photo courtesy of Fábio Pinheiro []
  2. To be designed! []
  3. Or, of course, may not []
  4. And now you do! []
  5. When I upload the new file, that is []
  6. Tomorrow, perhaps? []
  7. Option D, for those of you playing along at home []

This project is not going to overengineer itself

Seriously, why would anyone with hands buy this?

Seriously, why would anyone with hands buy this?

This weekend I worked on my DrawBot.  ((Photo courtesy of Relly Annett-Baker))  I stripped my current DrawBot for parts so that I may build it back together with a PolagraphSD brain/heart.  ((Bart?  Hain?))  Given that there aren’t a ton of parts involved, the process went quickly.  I disconnected the two steppers, pulled all the screws1 and all the nuts and bolts2 from the project.  Right now all that is left of my once mighty3 drawing robot is an Arduino and shield duct taped to a chunk of plywood.

To assemble the new robot into the desired configuration ((Sketch D for those of you playing along at home)) I needed to design:

  • A new PolargraphSD case
    • This new case is about 2/3 the volume of Sandy’s design and has vents along the sides and top to help with heat dissipation.  It can also be assembled without any tools or hardware – with the LCD actually keeping the entire thing together.  At this point I now have three perfectly serviceable cases.  My goal, once the entire robot is put together, is that it look and feel like a finished and polished project – a DONE project.  But, really, I’d like to have it semi-permanently installed somewhere in my house as a drawing appliance.  My prior ‘bot while cool with tons of nifty little hacker cred to it was little more than a chunk of plywood with bits hanging off.  I’d draw something with it, put the board away, then bring it out later.
    • My ideas for building out the robot have changed slightly since designing this case, so I might need to adjust the code and print another one.  The issue now is that the case is designed to be mounted by being bolted into the base of the project box.  However, if I do that a nut or bolt will have to stick through the back of the project which will prevent the paper roll from being able to travel behind the project box.  I figure I could print a new case and bolt it to the side of the project box – but that might interfere with the location of the motors/motor mounts.  I might be able to just ziptie the case to the top of the project box – which might not be good as the bot is expect to shake a little in operation and I don’t want the board shaken unnecessarily.  Frankly, at this point, I think I’ll get everything else situated completely within the project box and come back to figuring out how to mount the case.
    • Although, an idea which just occurred to me is that I could glue some plastic mounts, with captive nuts, into the inside of the project box and bolt the case into that.  Again, this would best be done once all the other issues are resolved.
  • New monofilament spools
    • I had to completely destroy my existing spools to get them off the motor shafts.  For some god-awful reason I printed the two spools at 100% infill creating the sturdiest monofilament spools in existence.  I cannot imagine what possessed me to do this.  They were heavy and impossible to remove cleanly from the motor shafts.  I didn’t get the tolerances right with the prior spools, so I had to force them onto the shafts – but then they were stuck.  I had to use a big pair of wirecutters to chop chunks of plastic off until I could pull the last bits free from the motor.  When I finish designing and printing a new set of spools, I’m going to make sure the tolerances are right before I assemble.  I want the spools to fit snugly becuase I don’t want the motor to slip when it reverses directions – as it will do frequently across a large drawing.
    • I’m still kicking around ideas on how to improve the spools.  My first spools were way too complex and the friction fit wasn’t enough to keep them together.  My second set was too tight and too short.  While I wouldn’t mind a friction fit spool, I need a spool that can’t come apart during operation4 , can be tightened on the motor shaft, and can be removed easily if necessary.  Additionally, I’d like the final spool to be taller – so that there is more of the spool center and less of the flared end of the spool for the filament to wind onto.  The flared end was flared so that the spool could be printed as a single piece.  While this was nice for simplicity’s sake, I found that sometimes the filament line would “ride up” the flared end – which introduces unnecessary error into the process.
    • Looking at the AS220 Labs website page for their drawing robot kit through Archive.org, you will notice that they use a tall spool with a low-friction monofilament line guide.  The benefit of the tall spool is that it can keep a more consistent diameter for more of the filament versus a narrow spool that will accumulate layers of filament more quickly.  The benefit of the line guide is that it forces the robot to maintain the proper distance between the two motors even when the spools are mounted horizontally.  I also happen to like the horizontal spool mount system since it means the motors won’t stick out from the wall quite so much.5
  • A new gondola
  • A way to mount a roll of paper to my project box
    • Besides tearing my drawing robot apart, this is the one thing I did manage to design, print, and put together over the weekend.  Since the paper roll I’m using did not come with a center of cardboard or wood or on any kind of spindle, it is not an immediately mountable thing.  My roll of paper is just that – a really long roll of paper.
    • What I wanted was a modular way to mount a roll of paper to the top of my project box so that it could be adjusted to fit different diameters and widths of paper rolls.  My solution was to print two “caps” to go at either end of the paper roll, with a hole through them to run a long wooden dowel.  The nifty part is where I then bolted two printed plastic tracks to the top of my project box, onto which I can slide a plastic arm which the wooden dowel fits into.  Once the two plastic arms are in place, they can be tightened down onto the plastic track.  The result is a rock solid paper roll mount that lets the paper roll freely turn.  I was so happy with the way this turned out I almost couldn’t see straight.  Yes, it is just a mount for a roll of paper – but it is the most solid and polished way one might hope to mount a core-less roll of paper on top of a wooden box.
  • A new way to mount the stepper motors to the project box
    • Given the amount of time I’ve spent just mounting a roll of paper and obsessing about spools, is it any wonder I haven’t finished thinking about how to mount the steppers?  With the first incarnation of my drawing robot I had designed and printed no less than three completely different motor mounts.
    • I would like the final version of the motor mounts to be easily adjustable, probably using a similar track/mount system that I used to mount the paper roll.  While this kind of solution takes more time to design, the result is a robot that can be quickly and easily improved and adjusted.  As suggested above in the spool section, I am leaning towards mounting the motors so that the shafts are horizontal on the plate of the wall.  This will let the motors keep a slim profile in the project box and allow the use of a tall spool which will enable more even and uniform reeling and unreeling of monofilament.
    • I’m tempted to incorporate a monofilament line guide directly into the motor mount.  In the interests of modularity, it makes sense to keep these things separate, but it might just make sense to do this given the limited space I’ve got within the depth of this shallow project box.6

I’m undecided whether I want to put a cover on the front of my project box.  On the one hand leaving the front of the project box open allows the viewer to peer into the robot and marvel at its simplicity.  On the other hand, without viewing the internals all you would see is a box mounted on the wall, a paper roll on top of that, a power cord coming out of the side, and a drawing pen moving by two almost imperceptible monofilament lines.  Perhaps I should explore this idea in another long winded post?

Default Series Title
  1. Four total []
  2. 12 nuts and four bolts []
  3. Mighty UGLY, that is! []
  4. When one of the friction fit spools failed mid-drawing, it was like watching my robot puke monofilament line.  Frankly, a monofilament puking robot is pretty awesome – just not when it is made from a drawing robot []
  5. If you were betting on me not being able to type an ENTIRE Page of text just on the considerations of the spools in my robot, you would have lost. []
  6. For reference, the box I’m using is less than 2 inches deep. []

You know you’re prone to over-engineering when…

The California DMV is a scary and terrifying place. It’s so bad that their website’s horrific navigation and UI seems comforting in comparison. Both give you the impression that you want to spend as little time dilly-dallying there as possible.

I will say this though – for any given DMV location they have a little box that tells you the wait time if you have an appointment, if you don’t have an appointment, and the wait times for nearby DMV locations.  I loosely monitored the wait times at the nearest DMV location throughout the day yesterday.  However, this is the sort of thing that feels like a waste of time.1

I was actually tempted just now to build a scraper that would hit their website once a minute, check the wait time, and text me when it drops below a certain threshold. 2  And, if their website decides that’s too often, I would need to find a list of proxies and write a program that would pick a random selection of the proxies and run the scraper through them. 3  Then I remember I wrote something similar about nine months ago and ponder how long it would take me to repurpose that program for this task.

And then I realize I just spent more time daydreaming about defining the problem, thinking of a solution, holes in the solution, and fixing those holes than the amount time I will devote all day tomorrow to hitting F5 to refresh the DMV website.

  1. Well, the DMV thing as well as checking their site. []
  2. This is the over-engineering part. []
  3. Heck, if I did that I could ping their server once a second… []