A website just about drawing robots

Itty Bitty Tiny CNC Drawing Robot

Itty Bitty Tiny CNC Drawing Robot

Lately I’ve been working on drawing robots more and more. My latest creation is an itty bitty Tiny CNC drawing robot. I’ve already published the files and Arduino sketch on Thingiverse, but you’ll find all of the instructions over on my PlotterBot blog.  While this site is about 3D printing and random nonsense, I’ve tried to only post stuff directly related to drawing robots over on this new website.

If drawing robots are your cup of tea, then please take a minute and check out my other side.  :)

PlotterBot.com – a new site dedicated to drawing robots

Moving time!

Moving time!

I’ve been working on and blogging about my PlotterBot, through several incarnations, for a little over a year now.1 The posts on this site have always tended to be a mixture of near-incoherent ramblings, frivolity, and the occasional nuggets of information.  However, since showing off my PlotterBot at the Maker Faire Bay Area 2013 it really feels like that project deserves a website of its own.

While I’ll still discuss my PlotterBot and related experiments here, my goal is to make PlotterBot.com a resource for people who are interested in building an awesome drawing robot of their very own.  If you’ve enjoyed reading about my DrawBot adventures here, I hope you’ll sign up for my Plotterbot.com newsletter and stay tuned for some tutorials on how to build and get the most from your own drawing robot.

Default Series Title
  1. Photo courtesy of cmorran123 []

Your vote could stop the Robopocalypse!

Okay, before you read any further, take a moment to click here and vote for my PlotterBot for the Road to Maker Faire Challenge.

Vote for our future.  Vote PlotterBot!

Vote for our future. Vote PlotterBot!

I’ve been blogging about every little aspect of my own drawing robot – with this post1 it’s more than 80 posts on the topic. ((Photo courtesy of Vox Efx)) Everything from a list of other robots, to where I sourced the parts, to my failed attempts at designing parts, and a lot more posts about what I’ve done that does work.  Using what I’ve learned from my own really colossal failures and the brilliant open source work of others like Sandy Noble and Dan Royer, I’ve designed all of my own printable plastic parts from scratch, explained my thoughts and considerations behind the designs in excruciating detail, and shared all the files and my source code for everyone to use.

The winner of Maker Faire’s contest “The Road to Maker Faire Challenge” gets $2,500.00.  Dear gentle reader, should I be fortunate enough to win – I hereby make you these two promises:

  1. I promise to spend every last dime on building more and better robots.
  2. I promise to continue blogging relentlessly about what I did, how I did it, what worked, what didn’t work, and how you do it all yourself too.

So, please vote for my PlotterBot for the Road to Maker Faire Challenge!

  1. Which really doesn’t count… []

Drawing Robot Penmanship

Not a robotic pen holder

Not a robotic pen holder

Until very recently, I had only considered a drawing robot’s pen holder maintaining the pen at an angle to the drawing surface as an obvious and positive thing.1 I have now been cured of such illusions and understand that when the pen is mounted at something other than perfectly perpendicular to the drawing surface, it is possible for the pen tip skip or stutter across the drawing surface.

I’ve already droned on at length about the various ideal attributes I considered while designing a pen holder.  In light of this new important attribute of pen tilt other than perpendicular causing pen skipping, would I modify my design?

It probably depends.

First let’s consider what causes the skipping itself.  It seems to occur when the pen holder moves faster than the pen tip “wants” to be dragged across the drawing surface.  The result is that the pen tip tilts slightly with an upward movement instead of drawing upward for a short distance, then the pen holder swings a little to compensate for the upward jerk, then the pen tip skips upward – leaving a gap the pen tip skipped over. (I feel like I”m not explaining this well…)

Once I read that post by Dan, I did some half-scientific tests.2 I dragged the pen holder around on the drawing surface.  This is not even close to an operational simulation because I’m sure I didn’t keep the pen steady and the pen holder would almost never move that quickly.  I found that when the pen was moved very quickly upwards, the entire pen holder would indeed skip.  I tried the same “experiment” again after having adjusted the pen so that it was perpendicular to the drawing surface.  This time the pen still skipped – just a little less than when it was at a 15 degree tilt in the pen holder.  However, the pen I was using was a big marker.

Setting aside the pen tilt for a moment, I can’t think of any other benefits besides skip-reduction behind putting the pen perpendicular to the drawing surface.  The next thing to consider is whether all pens skip equally.  Not having actually performed a specific test to determine this, and speaking only from experiences in using different pens, I would suggest that not all pens skip equally.  Specifically, good ball point gel based pens do not appear to skip when operated very quickly.  In fact, running a gel based ball point pen seems to work quite well since it seemed to keep the itty-bitty ball inside the pen tip moving, which keeps the ink flowing.

I would suggest that the desirable pen holder tilt would depend upon (a) pen holder speed and (b) type of pen possibly as follows:

Marker, perpendicular Ball Point Pen, perpendicular Marker, tilted Ball Point Pen, tilted
Fast Pen Holder I would hypothesize a fast moving marker is going to skip whether it is mounted perpendicularly or not.However, from a semi-scientific test, I a tilted marker would skip a little more.  It is important to note that a marker will draw equally well whether it is perpendicular or tilted. First, gel ball point pen will quickly stop being able to draw ink if it is not held at a tilt.  A non-gel ink ball point pen might not have this problem since at least some of the ink comes through via capillary action.Either way, drawing perpendicularly is a problem for ball point pens.  However, since their tip makes a small point of contact with the drawing surface, they don’t seem to suffer from skipping problems, even at high speed. I don’t think a marker held at an angle is going to draw lines any better or worse than one that is held perpendicularly.However, my limited testing suggests that markers drawing at an angle quickly will skip a little more than quick drawing markers held perpendicularly. I suspect a ball point pen of almost any kind would work well if drawing at an angle.  Almost every single drawing made with my first drawing robot was done with ball point pens operating at about a 30-45 degree angle.Admittedly, that robot never drew very quickly, but then again I never seemed to have problems with skipping.
Slow Pen Holder If a pen holder with a marker is moving too slowly, the result will be ink bleeding all over the drawing and through the paper and pens that dry or run out too quickly.  It’s really quite a mess.I suspect that running any marker too fast is going to cause skipping problems – whether it is at an angle or not.  A marker’s tip either starts out much wider than a ball point pen, or it will end up that way after hours of drawing and being dragged across a large sheet of paper.  In my experience, using a marker in this fashion will basically make the marker unsuitable for any other purpose. With the caveat that pretty much any kind of ball point pen is going to have a difficult time drawing perpendicular to a vertical drawing surface, I would posit that moving the pen slow-to-medium would result in gaps in the drawings.  However, I think those gaps in the drawing would likely be more due to the ball point pen not have sufficient friction to keep ink flowing consistently. A slow moving marker makes about as much of a mess as an oil spill.Even assuming a medium-speed marker, I don’t think skipping would be that big a problem as long as the pen was not tilted at too severe an angle. A ball point pen could probably be operated anywhere between slow and fast.As long as the pen is moving relatively continuously, a ball point pen should be able to provide a continuous stream of ink.

Taking into account the potential for skipping, I would suggest based on the analysis above, that skipping is a problem for markers no matter the angle and largely irrelevant for ball point pens.  I would also suggest that a very slight pen holder tilt of 15 degrees is extremely helpful, if not crucial, to ball point pens and mostly irrelevant to markers.

Hey Dan, what do you think?

Last but not least, this is post #80 in this DrawBot Adventure Series!  And there’s still so much to cover!

Default Series Title
  1. Photo courtesy of Creative Tools []
  2. Which, I suppose is not much better than not-scientific… []

Skipping! How could I forget the skipping?!

Hubris, I haz it

Hubris, I haz it

Mr. Noble is not the only one prone to hubris.1 After taking into account every post on ideal drawing robot pen holder criteria, I found one more post that I should have read first.  Dan Royer of MarginallyClever.com suggests2 as good pen holder should:

  1. A single cord convergence point.  “Have the two strings meet at a single point, or as close as possible.  The moment they separate the math gets really ugly.”
  2. Deal with friction.  “Friction causes the pen to drag and lean.  If I tell the robot to draw a square corner and it comes out rounded then I know my pen is dragging because it never reached the corner.  The pen has to stay at a right angle to the drawing surface.  So far I’ve found that having at least three points of contact is enough to eliminate the problem.  That’s why I tape my business card to an eye bolt on the bottom of the ring – the bottom edge of the card forms a large contact area with very little friction.”
  3. Be well balanced.  “If the pen is balanced wrong it may point up or down.  If it points up then it might go dry.  If it points down then it might have extra friction when moving downwards, causing the pen to skip and create a dotted line.”
  4. Have an easy way to switch pens.  “Not only should it be easy to replace a pen but every pen should “lock” into the pen holder at the same distance and angle from the drawing surface.  In order to simplify this problem I only use one kind of pen that comes in many colors.”
  5. Works on a slanted surface.  “Works on both vertical and slanted surfaces up to a maximum of 10 degrees.”

My own prior post on ideal characteristics in a pen holder took into account Dan’s number 1, 3, 4 and considered 5.  What I failed to consider was how friction can cause the pen to skip or stutter when the pen is mounted at an angle and the pen travels upwards.

Although I started diving into this consideration, but I’m putting all that over-pontification into its own post.  This post is really about (a) Dan considered a very important factor in pen holder construction which I neglected and (b) how awesome open source is.  My own pen holder would be a terribly complicated mess doomed to multiple revisions had I not had the benefit of being able to review a veritable legion of pen holders used by many many other people in their many many different kinds of vertical drawing robots.

So – Yay Dan!  Huzzah open source!

The next post will be about whether this consideration would cause me to change my existing pen holder design.

Default Series Title
  1. Photo courtesy of Markus Krispler []
  2. I’m keeping all of Dan’s words, but reformatting them []

To Maker Faire!!!

Road to Maker Faire!

Road to Maker Faire!

Early yesterday morning I got an e-mail from Make saying that my DrawBot project had been accepted to the “Road to Maker Faire Challenge!”  If you check out Make’s latest post inviting applicants for the “Road to Maker Faire Challenge,” you’ll notice the tiny image in the bottom left is from this post.  How cool is that?!

Default Series Title

DrawBot Pen Holder Post Mortem

Yoda, standing tall

Yoda, standing tall

Two days ago I designed a new type of pen holder for my drawing robot based upon what I had learned from examining the pen holders other people have designed and used.

Here’s what worked and what didn’t:

  1. WORKED:  The fit.  I’m really happy with how the pen holder went together.  It’s always very satisfying to print a part you just designed and have it “just fit.”  With the zip tie holding the micro servo in place, neither the micro servo tab nor the zip tie protrude beyond the flat surface of the pen holder.  The groves for the rubber band to hold the pen in place work very well.  The pen doesn’t move side-to-side, get pushed back into the holder, and it is very easy to reposition the pen or change pens entirely.  While it’s not as elegant as, say, a metal spring, it works very well and doesn’t require a bunch of moving parts.
  2. WORKED:  The amount and placement weight.  I hot glued a AA battery to either side of the pen holder, as close to the center as I could manage around the hole for the pen.  This weight seemed to work perfectly.  There was enough weight that the cords hung in straight lines, but not so much that it seemed to cause a strain on the motors.  The placement of the weights seemed to work well as there was no noticeable pendulum swinging of the pen holder, despite me running the robot at about three times it’s usual top motor speed and about twice it’s normal acceleration.1
  3. WORKED:  The multiple points of cord attachment.  Having a row of holes for connecting the cords at different points along the top central edge of the pen holder worked out great.  To test the balance all I did was stick a small paperclip through a hole.  If the holder balanced with the flat edge upright and vertical, that’s the point I needed.  It was easy to find the balance point and easy to connect the cords.
  4. WORKED:  The single point of cord attachment.  When I was using a crappy cardboard pen holder with cord attachment points very far apart, the entire pen holder would tip to one side or another when it got close to that side.  This caused a bubble-like distortion effect towards the edges of the drawing.  While this could be a cool effect to intentionally inflict on a drawing, it’s not what I was going for with that crappy cardboard design.  Having the two cords meet at exactly the same point worked out incredibly well.  Even when the robot was drawing the top left corner of Yoda’s lightsaber, the pen holder was always perfectly vertical.
  5. WORKED:  Shape of pen holder flat side.  The pen holder I’ve designed is roughly teardrop shaped, with a flat top.  My thought with giving it a “flat top” was that it wouldn’t potentially develop a central raised point (between the circular top edge of the pen holder and the device I was using for the pen lift) when I was doing a pen lift.  I figured that if I was using a “flat top” it was possible for the pen holder to be balanced on the edge of the flat top and the point of the servo arm – essentially turning my full contact pen holder into a three point contact pen holder with the servo arm as one of the points.
  6. DIDN’T WORK:  Motor skipping?  There is a large section in the middle of the drawing of Yoda, pictured above, that looks like it was shifted downwards slightly.  This could have been because I was fussing a little with the robot while it was working.  It could also have been because I was running the robot pretty fast (motor speed of 1600 when the normal is 600), because I had increased the acceleration (400 instead of the default 800), because I had the pots turned down too low (maybe, but the current settings have worked reasonably well for other drawings), because the pen holder was too heavy and causing too much strain on the motor (very unlikely since this holder is lighter than the cardboard abomination I was using) or some combination thereof.  My guess is that I probably need to increase the pots when I increase the speed.  It’s really unlikely that the pen holder itself was to blame for these missteps.2
  7. DIDN’T WORK:  The pen lift.  I haven’t drawn anything with a pen lift yet – but I did test the pen lift last night after Yoda was done.  I noticed a few minor problems with the pen lift – but nothing to indicate I was on a completely wrong track.
    1. The first problem is that I glued the two batteries slightly too close to the clearance area for the micro servo arm.  This is why the next version will include a holder for the AA batteries – to ensure they don’t get in the way.
    2. Second, even when fully extended the servo arm didn’t push out far enough to cause the pen tip to lift off the surface of the paper.  This could be solved by either making sure the pen tip is positioned slightly farther back, extending the servo arm, or creating a servo arm powered cam, similar to Dan Royer’s Makeangelo (check out the video at about 4:35 for a view of the cam in action).
    3. Third, my concern is that since the micro servo is mounted in such a way that the servo arm sweeps from right to left, it could cause a similar sweeping motion to be applied to the pen tip – assuming I work out the pen tip depth issues.  It’s possible that sweeping the arm upwards or downwards might minimize this effect.  I just have no idea whether this is a valid concern or not – the servo arm might move so quickly that it’s not a real concern.
    4. Also, while not an actual issue, the servo motor cable applies a bit of weight to the pen holder.  This will require me to reposition the cord attachment points – and may require me to add extra weights to the pen holder itself.

Once I change the pen position and maybe use a larger servo arm, I’ll try a vector drawing which requires pen lifts and re-evaluate this design.  Overall, this design has basically worked beautifully.  I’m looking forward to experimenting with some new variations on the design to see if I can eliminate the few remaining issues.

Default Series Title
  1. I’ll pretend I was doing this for a system stress-test, but really I was impatient to get a big giant Yoda drawing []
  2. Does that count as a pun? []

Fire the DrawBot!

Last night I connected my newly designed pen holder to my finished drawing robot and attempted a relatively “quick” drawing of Yoda.  I say “quick,” because it only took about two hours.  The one lone trade-off for having an cheap and easy to build robot capable of essentially unlimited drawing sizes is that it can take a long time.  I took several photographs of my robot while it was drawing and turned them into an animated GIF, featured at the end.

Finished and mounted robot, with old pen holder

Finished and mounted robot, with old pen holder

Above is the robot itself, mounted to the wall.  I’ve made two minor changes to this setup since that photo, detailed just below.  First, I’ve placed a large sheet of sacrificial cardboard under the paper so that any pen leaks will not mar the wall.  Second, since the “home point” (exactly 130mm down from the exact midpoint between the two spots where the cord leaves the project box) is hidden by the paper when I pull it down, I needed a way to be able to center the robot without having to re-measure the home point each time.  My solution was to take a small piece of leftover plastic about the size of a pinhead and tape it to the home point on the cardboard.  Now, I can feel the home point through the sheet of paper and center the pen holder accordingly.

Home point for centering the pen holder

Home point for centering the pen holder

It’s a little difficult to make out in the photo above, but you can see the two big arrows pointing to the home point and a slight bulge in the tape caused by the small plastic speck.

Brand new pen holder, assembled

Brand new pen holder, assembled

This picture shows the pen holder fully assembled.  I operated it the first time without the benefit of a servo motor cable.  I wanted to see if the pen holder would work well.  Once the drawing was about 2/3 done and I was pretty happy with the pen holder’s operation, I soldered up a cable to connect the servo lift port to the servo motor.

Drawing robot in action

Drawing robot in action

The above animated GIF is comprised of eight separate photos from my digital camera on a tripod, combined in GIMP.  I’ve never to make an animated GIF from a series of photos, but it very quick and painless.  Since video takes up a lot of space and battery power, I figured a series of photos would be the easiest way to create a “time lapse” of the robot’s operation.  You don’t get the low drone and hum of the motors, but you can see how it operates.  Now that I’ve done one, I’m looking forward to making more of these.

Yoda, standing tall

Yoda, standing tall

And here is Yoda!  As you can see from the ruler next to him, he’s about 35 inches tall from the tip of the lightsaber to his feet.  There’s a “band” of the drawing that appears to be shifted downwards slightly, causing a little overlap at the bottom of that region and a slight gap above.  This is probably due to me fiddling with the robot, but it could also be due to the motors slipping or skipping slightly during operation.  If it was due to me fiddling with the robot, then the fix is simple – I just need to be more patient.  If it was due to the motors skipping steps, then turning up the pots just a little would probably fix that.  Given that this is the very first drawing from my very first draft of a new pen holder, I’m really happy with the result.