You know there’s something wrong when…

My office is about two blocks from a grocery store and many days I’ll just walk out there and grab a sandwich from the deli.  As I was walking back I thought of something I might want to blog…  but none of my current blogs1 was particularly appropriate for this notion.  For a full minute I actually toyed with the idea of starting a fourth.

Which, of course, is just pure madness.  There’s no damn reason for one man to blog in four places across the internet. 234

Thankfully that moment of madness has passed and I have no recollection of the thought which prompted me to taste insanity just before my turkey wrap.5

  1. I post two places regularly and on a third site very infrequently. []
  2. Unless, of course, schizophrenia counts as “reason.”  And, I’m pretty sure it’s the opposite. []
  3. Or close enough to the opposite of reason when one considers the appropriate number of blogs per capita. []
  4. One man, one vote, and one blog seems about right. []
  5. Except for the lingering knowledge that I had some thought/idea that was so compelling I might actually decide to spin up a fourth blog. []

DrawBot – Printing, Part II

After actually calibrating my machine, the results are MUCH better.  I still need to adjust the settings a little, but otherwise I’m very very happy with this result.  As you can see, the drawing is flipped.  Once flipped back, I think it is reasonably apparent this is Van Gogh’s Starry Night.  Here are a few things I’m going to try:

  • The pen I was using seemed to stop working in certain regions of the drawing.  I bought a few new pens on my lunch break today.  Both are art marker pens – one blue and one red.  Unfortunately, both are too wide to fit in my current gondola.  For now I’ll use a thin sharpie.
  • There is a slight curvature on the top and bottom of the drawing.  This is probably due to a miscalculation in the mm per rotation.  The downside to using a spool, rather than a sprocket/ball chain or gear/toothed belt, is that as the spool contains more cord, the diameter of the spool actually grows larger.  This means that when there’s a lot of line on the spool each rotation releases more line and when there’s very little line left on the spool, each rotate releases less line.  However, given the diminished space requirements, I don’t think this is going to be such a big deal.
  • I mostly measured the machine width.  Basically what that means is that I did measure it, but then got distracted, then used what I recalled the width to be inches to calculate the width in mm.  Clearly, there is room for increased precision.
  • For weights I’m using a bunch of spent batteries in a ziplock baggie tied with a wire to the gondola.  Too many batteries were causing the line to be too jagged.
Default Series Title

DrawBot – Printing!

I’ve actually printed something using my DrawBot!!!  Would you like to see it?!

DrawBot test print #4
DrawBot test print #4

As you can see, this is a print of Van Gogh’s Starry Night.  It has a few problems.  First, the pen was non-ideal.  This will take some experimentation.  Second, the image, as anyone can tell you, is mirrored.  Third, the image was supposed to be much larger – almost as wide as the entire A4 page I’ve scanned in above.  I fiddled with some settings last night, but didn’t accomplish much.  I’ll try again tonight.

However!  I’m really very encouraged!  It actually drew something that roughly corresponds to the thing I’ve asked it to draw!  I’m looking forward to playing with the settings.  The robot is fairly quiet – it’s propped against a wall about seven feet from where I’m sitting and the sound of operation is barely noticeable above the television.

Default Series Title

DrawBot – The Breakdown, Part II

Since my prior cost breakdown post, I’ve invested a little more in this project.  Thankfully, this hasn’t been a project where I’ve been throwing money at the end goal.  Overall, it’s been incredibly cheap with the cost of failure at the most delicate points being quite low.this help in choosing the steppers and power adapter.  Here’s what I bought and from where:

Right now the robot is probably close to its final form and I don’t anticipate any further expenditures.  Someone who has a box of electronic stuff could almost certainly build this robot for next to nothing.  Many other people have spare Arduinos, steppers, stepper controllers, and power supplies.  If I just purchased the bare minimum for this project and used scrap stuff from around the house, I probably could have built this robot even cheaper.

Default Series Title
  1. I couldn’t think of anything else I couldn’t live without!! []

DrawBot – The Assembly, Part VIII

Well, my newly designed motor mounts, while cool, just aren’t working.  If I were committed to using that long pine box, I could probably make a go of them.  I’ve tried several variations on this robot, and nothing has really worked so far.  Here’s what I’ve tried:

  1. In a box, mounted to the wall
    1. This just didn’t work.  The spot I found on the wall was in our robot room, behind my monstrous card catalog.  It was difficult to get to, the laptop I had it hooked up to wasn’t really talking to the robot, and I didn’t even get it fully hooked up in that location before I decided it just wasn’t going to work.
  2. In a box, under an easel
    1. In a fit of inspiration I realized that I had a painting easel, a rather nice one at that.  I took an old new canvas1 , put it on the easel, put the easel’s feet inside the long pine box, ran the monofilament line from the motor, through holes in the pine box, up behind the canvas, through an eyescrew on top of the canvas, and down over the front.  This was terrible.  It creaked, shuddered, and the pen sputtered around the front.
  3. In a box, on an easel
    1. Not ready to give up on Project Easel, I tried to put the pine box on top of the canvas and hold them together in the easel.  This really didn’t work.  Because of the location of the motors in the pine box, the canvas was either going to block the holes for the monofilament line or I’d have to run the line through the top of the box, which would have resulted in the same creaky, shuddering, sputtering problem of using the line through a hole in the box as if it were a pulley.  Either way, the entire assembly just wasn’t stable on the easel which did not want to hold it together.
  4. Bolted to a chunk of wood
    1. I actually have some spare plywood, but it’s been in the garage for a while and has a weathered look to it.  It also has a large 1.5 foot radius quarter circle cut out of it.  I figure if I’m going to keep this inside, I might as well spring for a new piece of wood.  A bit over $14 at the hardware store and I was in business.  Now that I’ve given up on my nifty motor mounts, I designed and printed a dead simple motor mount.  I could have accomplished much the same result by just drilling some holes in a piece of scrap wood. 2  I’ve also abandoned a gondola of my own design. 3
    2. The final result is essentially as follows – a 2’x4’x0.5″ piece of plywood, wrapped in butcher paper, two steppers bolted to mounts and screwed to the left and right sides at the end of the plywood.  The steppers are wired to the stepper motor in the center, and the Arduino and stepper motor controller are in an ill-fitting plastic holder which is duct taped to the front top of the plywood.  The plywood is then propped up against our built-in on which my most useless laptop is sitting, ready to run the robot.
Default Series Title
  1. Old because I’ve had it for about 10 years; new because it’s still in the shrink wrap.  Now, to my credit, I have actually painted on my other canvases – this is just the last one and I completely forgot about it. []
  2. These will probably have been the very very last thing I’ll have ever printed with my black ABS. []
  3. While cool, it just did not work well at all – I made the pen holder so large it would only hold the largest sharpie made by man, it didn’t do a good job of holding the pen against the paper, and it held the weights rather awkwardly. []

Roboapocalypse averted

Yesterday I got to hang out with Chris of DIYDrones.  We discussed this video and he assured me that SkyNet is still a little ways off.

What I didn’t realize about those videos is that they are, in Chris’ words, one step up from a simulation.  The rooms in which those copters are flying have no turbulence, are surrounded by sensors, all obstacles are clearly marked so that they can be picked out by the myriad of cameras surrounding the room, and all of the sensing and computing is being done by a computer – rather than the drones themselves.

Even if you had an army of robo-drones that could only fly indoors, how cool would that be?  Some of those videos show the little ‘bots lifting and assembling structures.  I would love to have a swarm of these things that did nothing but structures out of legos.

Now, I suppose, I only have to concern myself with the zombie apocalypse.

I kept thinking… SkyNet

@johnbaichtal had this to say:

Dude, quadrotors are scary. http://www.youtube.com/watch?v=YQIMGV5vtd4

Watching an army of nano quadrotors fly in formation, swarm, and return to formation was almost surreal.  It really did feel like I was watching a clip out of Terminator.  If you get a chance, watch the other videos by this same uploader, “TheDemel” as they feature these quadrotors flying/diving through hoops, flying/diving through thrown hoops, and perching on vertically mounted landing pads.

DrawBot – The Assembly, Part VII

Yesterday I accomplished a little more with my DrawBot.  Here’s what I did:

  1. Drilled holes in my project box1 for running mounting wires through the box.
  2. Drilled holes in my project box for the power cord and USB cable.
  3. I added several yards of monofilament line to each spool.  The way I have the motors mounted into the box I had to add some filament line to it on the spool.  Obviously, I had no way of knowing how much line I would need, so I just added a few feet.  Today I cut off several additional yards, tied the new section to the shorter section already attached to the spool2 , cut off the little loose ends, and rolled the spool with a finger.
  4. Found studs in the wall, put two huge screws into two studs3 for holding the box on the wall.
  5. Ran some sturdy steel wire through the box for mounting on the wall.
  6. Cut a huge sheet of cardboard out of a box we had in the garage.  I wrapped three edges of it in packing tape, so that it would remain flat and not shed little bits of cardboard paper.  The fourth edge I covered with duct tape for a sturdier hold.  This was then mounted on the wall underneath the pine box using more huge screws going through the side with the duct tape.  The purpose of this is to give the DrawBot a flat surface to draw on, rather than the textured wall.
  7. I then plugged the power cable and USB cables in and tried to fire up the Polargraph software.  Since this is all being done in a different room, I’m connecting all of this to a totally different laptop using different software.  I have an older laptop running Windows Vista that is connected to my Thing-O-Matic and Cupcake.  Now it is attached to my DrawBot as well.
  8. At this point the only physical components of the DrawBot missing are the gondola which I haven’t installed and blank paper.
  9. Unfortunately, that laptop I connected the DrawBot to is having some kind of problem communicating with the Arduino.  But, that’s another problem for another day.
Default Series Title
  1. A long pine box []
  2. Square knot []
  3. True story:  My wife heard the new electronic stud finder going all wacky from the family room.  She called back, “If it’s making that beeping noise, you’re doing something wrong.”  I replied, “Yeah, I’m just running it over my belly just to see what it will do.”  My daughter ran over in disbelief and then called back to my wife, “Mom!  Daddy’s rubbing the finder on his tummy!”  Say what you will, that damn thing is accurate. []

On Partially Closed Systems (or why businesses should share more)

Sometimes it is just silly not to share.  Take for instance mouser and digikey’s refusal to make a cost API available1 or Polulu’s refusal to share their 3D image files for their products.

I say these are partially closed systems because, for whatever reason, the system controllers refuse to facilitate sharing.  But, such websites and products as those mentioned above are only partially closed systems.  The problem with partially closed systems is that those portions of their systems that are public facing (a website or the physical dimensions of their commercial products) are not only available for public consumption, but they’re public facing because their business model requires it. 2

Now, I’m not advocating the need for open sourcing or sharing absolutely everything. 3  I’m just suggesting that facilitating the publicly available aspects of your system makes sense when it means you’re enabling your customers and clients and allowing them to better consume your products.

I suppose it is possible that a company’s competitors might misuse such knowledge, but it is almost trivial for those same companies to accomplish what one dedicated person can do by themselves.  While Amazon and Buy.com used to use a system that only allowed you to view special promotional prices when you added that item to your cart, it doesn’t appear as if Amazon does this any more.  I haven’t visited Buy.com in a while, but I would be a little surprised to see if they did.

The problem with any partially closed system is that it only takes one person to defeat the system.  Worse, no matter how much money, time, and resources you throw at the problem, it will never be enough.  Somewhere in the vastness of cyberspace there is one hacker4 who will work around the clock fueled by unlimited amounts of caffeine, nicotine, alcohol, and hot pockets.  And they will do it for free.

Ultimately trying to prevent access to a partially closed system is useless (those measures will be circumvented) and counter-productive (since that information was already made public).  The only people who are truly deprived of that information are those could do the most for the company holding the partially closed public information.

  1. No longer there.  Bummer. []
  2. An e-commerce website without prices?!  A physical product that has no physical dimensions?? []
  3. In fact, I like the idea that creators of intellectual property can reap financial rewards for their work.  Perhaps it is because I some of my own income is derived from my own intellectual property.  However, I think rewarding content creators for their efforts is probably a good thing even outside of my own selfish desires.  I believe that incentivizing work and the creation of content is a good thing and critical to a well-functioning capitalist society.  That said, I love open source hardware and software projects and actively devote my time and efforts to both. []
  4. I say hacker to mean a person in the strictly technical, non-perjorative sense, of one who makes use of things in ways they were not originally intended. []