noodleFeet : All Wired and Ready

When your baby is learning to walk, you make sure its near soft things and away from stairs so that when the inevitable fall occurs, they don’t collapse into pieces. When your baby is a robot learning to walk, bungie chords and harnesses are also needed. And in the case with noodle, who is delicate and wobbly like a skittish baby fawn, I am sparing no precaution!

The noodle Harness

IMG_1487

Robots get rigging. Mark took the time this weekend and installed a guide wire on the ceiling over our work table. A “leash” hangs down from this wire and clips on to noodle’s smashing neon-yellow harness which wraps around all four of his legs. If he loses his balance, he won’t have very far to fall before the leash pulls tight and catches him.

Calibration!

IMG_1485

Before assembling noodle for his big day, I had to calibrate all of the servo motors to 90º. Only then could I screw the gears to the motor shafts, as well as connect the pulley bits from the secondary servo motors on each leg to the bendy bits.

In the end, once all of the final parts were attached to one another,  I was pleased with how solidly he stands on his own. Hopefully I can figure out the right way to distribute balance so that he can lift up his feet and walk.

Wiring up the Bread

IMG_1482

Lastly, this afternoon I taped an Arduino down to the end of a breadboard and fashioned some male headers so that the servo motors could easily plug-in and tether to their appropriate pins. The breadboard itself is taped directly to the leash so that it will move with noodle as he walks… or falls.

When is he walking?

So, he’s poised and ready. The big moment will either come tonight some time or tomorrow after Mark is home from work for the weekend. Either way, I’ll be sure to take LOTS of footage of my wobbly child as he navigates across the table for the first time. =O

Wish us luck!

noodleFeet : Goes Metal

I’ve relied on 3D printing for so many of my prototypes lately, and have finally come to a point where plastic won’t cut it any longer. I require metal, in this case aluminum. The likes of which I ordered from McMaster-Carr and received in the mail last week. I literally spent the majority of the weekend meditating over how to measure my cuts and holes… as for the first time in a long time, their accuracy and placement was entirely up to me and my calipers, not some Cartesian goo plotter as I’m so spoiled by…

While everyone was downing beer and watching the Stuperbowl, I was in the garage with Mark playing with his father’s ancient drill press. He eyeballed one axis, I checked it against the other, and we were able to punch the 24 holes needed on the four pieces of aluminum tubing which would soon be noodleFeet’s strong new legs.

IMG_1445

As you can see, I printed out little strips of paper with lines where holes needed to be drilled. It only occurred to us immediately after we finished how much easier this would have been if we had 3D printed a jig for drilling the holes instead… So alas, 3D printed could have potentially saved the day. Thoughtful or not… we did a pretty good job.

Once the aluminum femur was assembled, I realized I was going to need stronger springs. These flour legs are going to support eight motors, a board, and eyeballs; a decent amount of weight:

IMG_1448

The calf bit is essentially a bone buried within the noodle material. However, with my last prototype, the bone kept sliding out the clearance slot I cut in the noodle. So to remedy this I made these little braces that look like pac-man heads… which keep the bone centered within the tube and prevent it from popping out where it isn’t suppose to:

IMG_1456

The rare and beautiful white noodle was harvested by Mark from the great noodle beast itself. I cut the pieces to length with a Japanese saw and carved the appropriate clearance slots so that the legs can fold in on themselves like they should:

IMG_1460

The new servo and leg bracket is THICK. It is complete with roller bearings spaced a decent amount apart vertically to keep the intersecting pipe from wobbling around (as with my first prototype):

IMG_1454

The eight roller bearings hold the pipes perfectly parallel to one another and allow them to turn nice and smoothly. I also added stronger springs to tension the legs outward, so the new prototype is a little monster. Although… he looks sort of helpless up-side-down on my bench right now:

IMG_1463

At this point, Feet is nothing but a pile of feet. He needs eyes, and that is exactly what I’m going to do next… and maybe a brain. Over this weekend I’ll likely hook an Arduino up to his servos and figure out a walking pattern too.

I honestly have no idea what it’ll look like when he walks, but I’m hoping due to the springs counterbalancing his weight that he’ll have a little bit of a bounce. That’d be cute.

I also don’t know if he’ll be able to balance himself when he walks. Once summer happens and the noodle is less rare, I will go harvest some 4″ stock (in neon yellow) from Walmart and cut my prototype some new fat feet. That way he makes more contact with the ground and is less like to fall. Like training feet.

IMG_1475

Hopefully by my next update he’ll be moving some… like a robot aught to. Cheers!

noodleFeet : Proof of Concept

Last week I started building a new robot who I’m calling noodleFeet! He is essentially a spider-type walker who will locate nearby legs, approach and then lean on them. In addition to having that specific purpose, he needs to look a particular way. I’ve been drawing him in the margin of my notes for weeks now, so he’s become something of a character to me:

noodle2

In order to make a robot that does these things, I need to design the mechanism itself and how it will be attached to the motors driving the motion (challenging and fun). At the same time I need to learn about Open CV and figure out how to make a computer recognize all the different shapes that legs come in. This will involve a camera and some coding (hard and not fun). With these two elements combined, I’ll eventually end up with a leg hugger…… or leaner. I’ll talk about the details of those steps when I get to them.

To get started, my challenge for the weekend was to solve how to make the legs of the robot itself. I wanted to come up with a reverse knee-joint capable of folding into a single-stick. This took about three of four revisions to get right, at which point I went on to 3D print four copies for the proof of concept.

IMG_1420

The proof of concept is nothing more than a rough servo bracket that holds all of the motors in place at the point where the four legs attach to them. With these parts alone I was able to construct something that looks surprisingly already very much like the end product I’m aiming to create. It still isn’t a working prototype however. For this, my concerns were mainly measurement and proportion:

noodle

I’ve gotten away with using 3D printed parts on many of my projects, but for this one plastic isn’t going to cut it. Even though the design is mechanically sound (I believe) and I could have wired some servo motors up to see some motion, the flimsy plastic legs don’t seem like they’d be able to support the combined weight of the motors… so I didn’t. Because of that, the next step is to replace the crucial parts that support the most weight with aluminum pieces. So I’ve gone ahead and ordered some hollow pipe and bearings for a more sturdy, motion-ready second prototype. In fact… the materials arrived today, so it’s a good thing I got documenting this out of the way!

Hopefully with my next post I’ll have video of noodleFeet making his first steps… or wiggles. You can see him in this illustration I recently drew to the right of our car:

wtfWestCoastSmall

mechaFeet : Prototyping with Algodoo

I had to wait this week for the sensors I ordered to come in the mail before I continued progress on Jelly. With Jelly on hold, I couldn’t save myself from starting on yet another project idea I’ve had fermenting in my mind for a while now. It involves building a pair of mechanical chicken (or raptor) legs that can stride in sync with one another; both legs driven by the same moving part. The thing that initially inspired me to make a mechaChicken was this quirky and utterly gorgeous mechanical hand ostrich thing by Tim Lewis called “Pony” (that and all the stupid bipedal robotic dinosaurs that are in the stores for Christmas this season).

My problem is that I don’t have a whole lot of experience with big kid mechanical motion, so it took a lot of meditating on before I even got started.

Two nights ago, I laid in bed and mused over parallelograms. When I woke up, my mind was running an animation loop that I must have seen somewhere at some point in my life. In any case I understood what sort of shape I needed to build to get the movement I wanted. So, I rushed to the closest scrap of paper and drew it before the idea escaped:

mechafeet4

After I made the doodle I played geometry Sudoku with the lengths of the pieces. Once I was satisfied with my own logic, I designed the segments in CAD and printed the eight individual bits to test. I eagerly screwed them together to find that the ‘mechanical leg’ moved EXACTLY like I thought it should… the proportions needed to be tweaked a bit, but it worked:

mechafeet3

This wasn’t good enough in itself though. Now I had to figure out how to drive the leg in order to execute the motion correctly (which isn’t as easy as you’d think). After spiral-graphing the top of the ‘thigh’ in motion by manipulating the ‘foot’ of the piece, I saw that the thigh tendons were arching in circles, so I knew I needed to create a wheel of some sort… which I did, but it sucked:

mechafeet1

Sucky wheel sucked because I didn’t take into account that the tendon piece of the leg would need to clear past the center of the hub, flush with the wheel itself. Of course, I had a screw mounting the wheel in place, so the head of that said screw got in the way… ruining my night. Easily remedied… but… Bleeeeeeeh very fussing. so much tedious.

Around now, Mark suggested that there ought to be some sort of 2D motion simulation software out there in the ether that I could use to test my ideas. I was starting to wonder that too… as I was minutes away from hopping on Little Big Planet to make use of their physics tools, tehe.

Last night, after some hunting, I found Algodoo. What a wonderful discovery… It allows you to draw out (literally) your arms, connect the joints with screws and drive them with motors, just like life but without the toil of actually building the prototype. What do I mean? I made this in about 5 minutes and it gave me the exact same feedback:

mechafeet2

In my video I give a brief introduction to the software while explaining how to make my chicken leg. As of right now, I still haven’t figured out what kind of motion will properly drive it, but I’m well on my way to getting there (without wasting PLA!)

jellyBot : Rolley (the second prototype)

Ok, so the proof of concept I worked on back in October looked awesome, but it couldn’t really move on its own… and there were a couple of reasons why:

  • I had mounted standard servos on the drive shaft instead of the continuous rotation type. I found out you need more than a breadth of 180 degrees to make a rack and pinion move far enough to do anything useful!
  • Also, my drive shaft needed some roller bearings to tension the rack down onto the pinion in order to stop all the slippage.

Since both of these things involve the mount of the motors specifically, I took the time to completely redesign that whole part to be more solid in general… after all, it is the very core of the robot- therefore the most important part! Tighter tolerances = happy jelly.

So what I ended up making was a set of brackets that both servo motors mount to… the roller bearing tensioner is a separate piece that screws into both, bridging the two and making it one solid piece:

IMG_1316

The extra gear bit (that kinda looks like a spur in the picture above) was added to help keep the rack in alignment, but it ended up causing more problems than solving them… so I removed it. The final working rendition had a roller bearing slightly above and below the pinion itself… instead of one directly on top of it:

IMG_1328

After these changes were made I hooked one of the new motors up to an arduino to test whether or not the thing moved… which it didn’t. =[ BUT- it wasn’t because of the improvements I had just made. I now had a new problem to solve.

SO- the bit that is actually supposed to be moving is a sort of vertebrae or disk that slides up and down on the metal rails which the stationary servos are mounted to. One of these disks is attached to the end of each rack, but only on one side. As this goes…. when the rack moves, it tips the disk slightly at an angle… which causes it to bind on the rail rather than slide up and down it at an ideal 90 degree angle. Eh.

The solution apparently was to add some linear bearings… which I didn’t have on hand- so I faked it and just added some cylindrical tubes to the part in CAD and reprinted them. This actually worked extremely well. Not as well as linear bearings, but it did get the thing working at last:

IMG_1324

Accept… a third problem appeared at this point. Now that the properly tensioned rack and pinion was actuating the properly guided disks up and down the rails… there was really no quick way to calibrate the motors back to center every time I unplugged the power. Eh. Since these are continuous rotation motors, there is no center… so I had to manually pluck the pinion off and guide the rack back down by hand…

Which sucked. So… it was time to graduate from my uber basic sweep code to something with feedback. I wired up four buttons on my breadboard and Mark helped me write some code in Arduino so that each of the two servos had a switch for up and down. Now I have absolute control over the range of the motors!

So, the new drive shaft more or less works mechanically, which is swell. The next phase of development will include adding limit switches and a way for the jelly to zero itself out when it needs to… as well as some motor choreography so it actually jellies like a jelly is supposed to.

Robot Army : Final Stretch

There was an old woman who lived in a shoe… who had so many deltas she didn’t know what to do. So she put them in boxes and shipped them away, to twelve different countries so they could revolt and take over the world one day… hehe.

We’ve shipped about 150 kits at this point. The poor printer has been running at a minimum of ten hours ever single day for the past six months and I’m starting to feel like I should buy it a drink or something.

page

 

I estimate we should be sending the last troops out to their perspective families within the next 2-3 weeks. That means this whole Kickstarter process from the brainstorming of the campaign all the way to the end has taken one whole year: November to November ( ! ).

The eBook : The final thing I need to do once all is said and done, is document my story. I’ll get to noodle up tight with my plush delta, Stitchie, and regurgitate all that we’ve gathered from this growing experience in hind sight. I have a lot to say about it, and hopefully others out there in the hardware world will find my advice useful… or whimsical.

The Coastal Campaign : So, once Mark and I finally start building the army, we need to come up with a way to travel with all 100 or so of them like one big happy family. Our plans for the winter may involve a road trip up the coast to all the cities which have hackerspaces so we can introduce the little ones to the world.

What’s Next? We will continue to sell the Starter Kit on our site as well as others potentially, although a post-KS price change is to be expected.

On a few occasions Mark and I have stolen away and worked on our next project amidst all this shipping. We have a lot of ideas swimming around, but there is still a lot to get done to the tune of building out that army first… right? What do 1000 servos sound like?? We’ll soon know!

IMG_1022

Here are some fun facts :

For the Kickstarter we have printed…

1400+ yellow arms

700+ paddles

300 end effectors

and 1500 brackets

we’ve burned through 25ish rolls of filament from six different suppliers (depleting the neon yellow stock of a few)

I have soldered around…

6900+ male pin headers (Mark has soldered more)

and placed around 1200 SMT parts

We’ve used 3 industrial-sized rolls of quarter-inch bubble-wrap for packing

and have shipped kits to 16 different countries!

The place where the most robots are going to is… the bay area. Take good care of our kids, Silicon Valley.

jellyBot : Racky All in one Piece

IMG_1152

This weekend I started printing the newly redesigned pieces for my jellyfish robot. I got about 90% finished by Sunday, but not enough was intact to start testing out whether or not the design will move like it should.

Yesterday, I scraped together the short end pieces leftover from old roles of filament to finish printing the rest of the tiny arms for Racky. Now that I’ve added a slight curve to the length in addition to the U joint at one end, it was a pain deciding how to print the piece without ended up with a pile of pelvic fur. I had to position it rocketing off the build plate with some support material, which had a 50% success rate, (which sucked as I was nearly out of yellow). In spite of the failed attempts, I got them all done… just in the knick of filament :

IMG_1138

Once these small arms were added to the body, I needed to come up with a better way to attach the tendrils than with twist ties (like in my old prototype). So, I made a little U joint piece that could screw onto the under side of each arm :

IMG_1145

At this point I realized that the jelly as a whole needed to be disassembled so that I could secure the motors onto the steel rods somehow. I had the idea to use some of the square rubber grommets that came with the servo motors to slide onto the rod, filling the small gap between the two and wedging them in place :

IMG_1143

Once done, I was able to put the rest of the jellyfish back together around this piece. The last bits to screw together where the tendrils to the short curvy arms I had just attached to the body :

IMG_1150

Everything looks nice and I’m sorta confident it will work to some degree… but before I can hook the motors up and do any sort of testing, I need to design that tensioner for the rack and pinion. Otherwise nothing is going anywhere. Alas, I’ll get to it!