Thursday, July 13, 2006

BEAM robot 'bumper car'

Okay, so I built my 'Calimero' robot, that is to say, the robot itself, only to then discover that building a statuette out of styrofoam and papier-maché wasn't something I turned out to be any good at.

Long cursing and messing with sticky wads of paper story short: I decided to scrap the little project, Calimero looked more like E.T., sigh...

So... I had a functional robot, which worked flawlessly, but...
It was soooo ugly!
I only realised that after I uploade the pictures here. It simply looks like trash, despite it being a happy working robot, aaargh!

So I decided to take it apart and do something slightly different with it:

Presenting BEAM bot 'bumper car'

The modifications to the actual circuit are fairly simple, and look largely cosmetic, but they have their advantages over the Calimero 'bot.

First thing I did was simply bend the connecting diode leads so that now the two solarengines circuits are facing back to back. This has the advantage that now the two photodiodes face outwards, and are more sensitive to variations in ligting-conditions around the little bugger. The two circuits, mounted on veroboard are now is a shallow open 'V' shape, almost, but not completely parallel. I imagine the tapered 'face' of a rabbit, you get the idea.
I was just lucky the leads were overly long so I could bend them quite a ways without them making contact with any other component.

This is another picture of the now re-arranged setup, in my trademark 'splendid' grotty sloppily digitized VHS-quality style as per usual, heh.
The reason this pic looks even worse than the others is that it is in fact a blown up one, and it was hastily level-corrected, because it was totally off-colour, and I didn't feel like taking out the videocam again to make a good one (because that'd entail desoldering stuff from its mount etc.
I told you I was lazy. I'm lazy. I'll keep telling you, watch me.

The black-looking rectangular is a solar-cell from a calculator.
It is the biggest one I have yet found, and it pumps out quite a good dose of electrons :)

I stripped the capacitors from their plastic sleeves, because... Well, I thought it looked nicer that way.

I then bent their leads to I could solder them underneath the two circuits, sitting nicely side by side and they now act a bit as a 'foot' for the whole solarengines+solar cell setup.

No particular reason I did so, other than it made me think they somehow looked more 'engine' that way...

This is the undercarriage. The slimy looking yellow goo is contact-glue, applied rather overenthousiastically, grin.

The two engines are glued to a plastic thingy I found inside a printer I once cannibalized for its stepper-motors.
The nosewheel (a.k.a. pinch roller from a cassette deck mechanism) is glued onto a piece of plastic I salvaged out of a 5'1/4 disk-drive.

Then I glued a stiff electrical wire, partly stripped for visual and err... 'unstickability' effect, in a semicircular shape as bumper.
The rationale being that it prevents the robot to get stuck in corners and even walls, because it has no reverse 'gear'.

This really works, in most cases! When it faces a wall head-on, it starts to nudge in a certain direction (assuming the light isn't on the wall) and after awhile makes a near-complete circle, to drive away from it again, very nice.

On the underside you see the sea of glue...
In this picture of the underside, you see the pinch roller in all its (out of focused) glory. The mechanism wasn't totally symmetrical, so I ended up cutting lots of extraneous parts off of it, for no better reason than to make it look... More symmetrical. I'm not really a perfectionist, but sometimes I like to waste my time with such trivialities. Even though I'm lazy :)
This picture is in some ways the most important one, because it shows how I slightly tilted the motors to give the construction more ground-clearage.

The wheels are so small, when I put my Calimero-bot together, the construction had problems to overcome very small bumps on a surface.
As spacers I used two small flatcable connectors, probably from a discarded computer board. It really helped.

This is the semi-final result.

For fun, and because I'm still a kid despite my age, I added a toy-robot's head.
It now looks like a cross of a racecar and a robot on a wheelchair.

You can see it all looks a bit sloppy, but this pic was before I made the final adjustments of placeing things, and glueing them in place.

And as per usual I forgot to take a picture of the final result.

Conclusion: you too can make a cute little robotcar for less than 10 Euro/Dollars. Or if you use some stuff you salvaged from old equipment you can do it virtually for free.

Sunday, July 09, 2006

Calimero BEAM robot

Now that I've finally come around to reach around to the back of my computer to insert an S-video cable so I can digitise some pictures, I am able to (albeit grottily) document some more stuff I cobble together... And waste some more time writing about it here :)

So... Introducing my 'Calimero' BEAM robot.

BEAM robotics is the brain child of Mark W. Tilden. BEAM stands for a triple acronym:
Biology Electronics Aesthetics Mechanics
Building Evolution Anarchy Modularity
Biotechnology Ethnology Analogy Morphology

But in short, these BEAM robots usually refer to small autonomous robots, often solar-powered, and with a minimal or no 'central nervous system' (read: no complex computer'brains',) strongly resembling insects in their behaviour or appearance.

I like BEAM bots, they're very, very inexpensive to build, most simple examples you can build out of scrapped hardware, they're unbelievably simple in design, yet exhibit complex behaviour, what more does one want?

The little robot I hereby document is called Calimero, because it eventually will sport a styrofoam and papier-maché representation of this cartoon figure. Why, you ask?

I could tell you, there's a good reason for it, but it's rather personal, and blogs are already boringly personal enough, heehee! :p

My 'bot of the day is based -or rather: bit by bit slavishly copied from - on Wilf Rigter's version of the 555 photopopper circuit.

In short, it contains two small motors, fed by a solar-cell, and it has two 'eyes' made out of photodiodes. The solar-cell charges a capacitor, which when full, releases its energy to 'fire' the circuit, which drives the engine(s).

So this little statuette of Calimero just sits there, and now and then, depending on how much ambient light there is, it twitches a bit, each twitch a little nudge forward. Because there are two motors and two 'eyes,' it orients itself towards the brighter lightsource, following it, to get even more energy.

So it errr... Follows bright light, gottit?

Now this simple robot could be built very small, but since it will eventually have a little statuette atop of it, measuring approx 10-15 cm., building it as compact as possible is not a priority, so I thought about building it inside a plastic screw-top lid of a big jar.
The reason: it provides a reasonably sturdy yet light-weight chassis, ample room, and the circular outer rim is good to prevent it from getting stuck into corners too easily.


1.) Motors.

Let's start with the very stuff that makes the robot move: bog-standard electromotors.
These are motors from CD tray mechanisms; the black rubber sleeves comes from said same mechanism's vibration-mounts, those are incredibly flexible, and with a bit of effort they neatly slide over the wheels, which come from cassette-deck mechanisms.
I added some contact glue to the mix to make sure the contraption sticks. (Lame pun intended.)
Then I applied some paper tape partway around the housing of the motors, so I don't run the risk of short-circuiting when placing them next to each other.
(And yes: I didn't find my plastic insulator tape, you guessed that right.)

Oh, and to be tidy, I desoldered the original wires and resoldered my own, colour coded ones. The motors were the same but came from different mechanisms, so the wires had four different colours, tsk ;)

2.) Carriage.

This screw-top measures about 8 cm. in diameter, to give you an idea of dimensions...
The two motors and wheels are glued inside it, atop of a piece of scrap PCB, to adjust height. I cut a hole into the top of the lid to allow for wires to poke through, so I didn't have to fiddle too much getting stuff where I wanted it. The trailing wheel is a cassette-deck pinch-roller wheel, made out of rubber. You undoubtedly notice the wheels/motors assembly is fitted in a weird way, that was to make sure it will never run in a straight line, because I didn't want that to happen. I prefer a slightly wobbly way of movement, it increases the chance for the 'eyes' to notice a brighter spot because in this way the robot constantly 'looks' a little bit left and right when moving around and anyways, the screw-lid is too small to allow for a placement that allows a perfect straight way of movement, without letting the wheels stick out beyond the circular edge. I also didn't want that to happen, otherwise it would nullify the do-not-get-stuck advantages of a circular enclosure... (Duh.)

3.) Energy-storage.

Hmmm... I then noticed I had spare room left inside the enclosure so I added two capacitors.
This little robot I didn't take much time to think about in advance, it was so simple to make it possible to take the build-as-you-go approach, so this was a nice bonus. Before I noticed I had ample room to spare, I thought I would assemble the capacitors on the other side, now that's not neccesary, and has the added benefit the centre-of gravity of this thing is nice and low, the motors and capacitors providing the bulk of mass, nice, nice...
The capacitors, you could compare them to accu's; they store the energy from the solar-cell, and when full, they discharge their stored energy in one go into the motors. If you would just connect the solar-cell to the motors, those would never run, because the power from the cells isn't enough. So that power gets 'saved' into the caps, until there's enough of it to make te motors spin for a short while.
These capacitors aren't extremely big: 4700uF, a nice size in-between: smaller ones make the engines fire more often, but the movements then become really twitchy, now they roll a little ways instead of really 'nudging...' I didn't experiment with really small values, but probably will in another robot, giving a near-continuous movement-effect, though probably very jerky, I think it will give a creepy impression of an insect on caffeine, grin. (Yeah, insect on wheels??? That'll look convincing!)

4.) Igor, bring me a brain!

I said these 555-photopoppers contraptions were small, and my statuette was to be reasonably big, so I didn't go for the super-miniature way, but chose to put the ciruits on veroboard. This picture shows the backside, so you can all mock my l33t soldering skills.
In reality it looks much better, remember, this is a shot made with a handheld Hi8 analog camera, and it looks out of focus, which is in fact the digitising going a bit haywire...
Actual size approx 1.5 x 2.25 cm. And you can clearly see I could've easily made it smaller than that. I could've cut off the left side and the top side, but I didn't need really to, so of course I didn't. (Laaaaazzzzzzzyyyyyyyy!)

5.) Igor, bring me another brain!

This is actually the same one, component side, but they are identical, so just to give Igor some work, I pretend it is the other one. Ahem, errr... Right.
Left the 8-pin DIL socket, currently without the CMOS-555. At the right side, on top a simple transistor, and beneath that a photodiode. That's all it takes. All one has to add is some wires to connect it to the solar-cell, the capacitors, and of course the motors. Oh, and two diodes, so they can -partially- share the power, stored in the capacitors.

6.) Sometimes the twain do meet.

I told you they were hard to distinguish from eachother :) Two identical circuits, connected with a set of diodes, so that when one solarengine gets a power 'shot', the other one gets one too, but with a small bias, the diodes make sure the second engine gets slightly less power, so the engines run with a speed-difference, which makes the robot turn.
Now in hindsight, I should've thought about a way to build these things so the 'eyes' were placed more mirror-symmetrically, but of course, at the moment of soldering, I didn't think about this, darn-diddely-dandy! Putting the photodiodes on 'stalks' would be a nice idea for another built into the future, so one can aim the way they 'look'. It would also make the possibilities to built it inside an arbitrary enclosure much simpler. Hmmm... The veroboard idea seems less optimal by the minute.... Designs this simple really don't need to be soldered onto PCBs or veroboard, heh.

7.) It's alive!

So, everything in place, now it's time to assemble the pieces, and add a solar cell...

And it works! Igor it lives! Igoooooor!!!

Ahem. Errr... (Pants.) The trailing wires are testleads, and temporary connections to see whether it really works before soldering the bunch together. These are pictures of Rev. 1.1, which didn't perform very well....

For starters, now both the eyes are pointed upwards, which in itself isn't too bad, because 99% of lightsources come from above, like the sun and a bureau-light, but they capture equal amounts of light in most of the cases which didn't help the critter's phototropic behaviour... So I flipped the assembly 90° and bent the connecting diode-leads so that now the eyes look forward and more sideways, a bit like, say a dog...

Then the solar-cell, sigh... This second picture has the cell assembled differently, in a 45° angle, because I thought it didn't catch enough light, but these cells just... Don't deliver. These cells are cheap, and you can buy them in most electronics' shops, they come in a plastic shell with a transparent top, which contains lenses to increase its efficiency, but, alas, it doesn't help much. I went back to several shops, asking for something better, but the better cells aren't popular enough to stock, so it seems. One man told me these ones are in fact only good for demonstration purposes, not for actual use, argh!

So what to do? Sure the robot functioned, but it was terribly 'lazy,' only doing its thing when the light was very bright and even then it only triggered in big intervals...
The answer is simple: you remember the solar-powered calculators, popular in the 80's and 90's? Those tiny cells are actually much better than this variety, and you can find them for pennies in boot-car sales, attics, eBay etc. So if you spot one, make sure to lay your grubby hands on it.

Now it works better, and has a solar cell that is much smaller to boot.
Picture, you say? Ah, yes.... Maybe one day. (Laaaaaaaaazzzzzzzzzyyyyyy!!!!!!)

Saturday, June 17, 2006

The Discovery of Making Fire was Done by Kids. (That's what I think.)

Been reading a bit in the latest Science&Vie (Excellent French mag.) My French is quite rusty, but well, I manage, and there's lots of pretty pictures :)
The latest special issue is about the evolution of extinct hominids, great stuff, really.
One of the artist drawings was of an early hominid, heroically grabbing a burning branch, in the midst of a bush-fire.
So it depicts an era when man wasn't deathly afraid anymore of fire, probably using it already to its advantage, despite being incapable of producing a fire himself.
So I wondered, how did they make the big step forward from 'scavenging' fire to reliably producing fire?

And I thought: 'kids, of course!'

Now 'ere me out:

Somewhere arlong the evolution, early hominids became 'unnaturally' inquisitive, insomuch that they overcame their instinctive fears of the unknown: instead of fleeing from stuff they didn't understand, they got increasingly more fascinated by the world around them.
They started to look up at the stars, they started to think about stuff, cautiously observing fearsome things like fire from a distance, at first, but steadily overcoming their fears, until one brave soul grabbed a smouldering branch and (probably burning its hands) threw it away to a patch of dry grass, creating fire!
etc. etc.

So after awhile, they got smarter about it, found out ways to keep the fire burning days on end, discovering it was a friend (keeping them warm, keeping predators at bay at night, hardening tools, making food more readily digestable (how? That's not straightforward, but who knows, maybe one of them didn't like the cold meat he or she had as a leftover, being used to lukewarm meat, from lying in the sun or fresh from a killed animal, hmmm... Makes sense to try to warm it above a fire, after all...)

Okey-dokey, So Ms and Mr Barbarian had fire to their disposal, and hey, they kinda liked it, and it did things to their minds, as they sat staring in the flames at night, mesmerised by its flickering. Stirring stuff, and no reruns, heh.

Okay, so they had fire, but it was a fickle thing to get going, and sometimes they'd wake up and their fire had died, and they couldn't get it going again, bummer. So they had to wait for the next lightning storm and hope it would start another brush-fire etc. etc.

Meanwhile, that inquisitve mind...

Ever seen kids play with matches? They just love to set things alight, can't get enough of it. So I guess Barbarian Jr. wasn't behaving any different. You betcha they soon were tasked to keep the fire running, by throwing small sticks on it etc. And they just loved it.

And then one night the fire died, and aaaaw, they were as heartbroken as their parents.
Now these kids were destined to become hunter-gatherers, it was a family-business, back then.
And what is an important skill for a hunter-gatherer? A keen eye, sure, and stealth and stuff, but also throwing sticks and stones with precision. So when they went to Barbarian Junior High, they spent a lot of just doing that: practicing to throw stuff. Precisely and hard.
Now They've got a keen eye, a fascination for fire, the ability to throw stones hard and probably time to spare.
So it would be just a matter of time and good luck before one of them picked up a sharp stone and smashed it against a rock and see sparks fly!
Oh wow!
The inquisitve mind picks up the stone and throws it again, and once again there are those sparks! Great stuff.
Sits down and starts pounding it against the rock, discovering it is possible to reproduce sparks whenever he wants.

Kids with matches.

Saturday, April 01, 2006

Ethiopian green beans in Europe

So I visit the grocery department, and without much thinking, I pick up a bag of fresh green beans, absentmindedly wondering in what kind of greenhouse these would've been grown. In this day and age, you can eat season's vegetables year-round, but I tend to try and stick to the veggies that don't come from greenhouses, because when I was a kid I once saw on educational T.V. that the energy used to grow one tomato in winter could run a radio for a whole year. Colour me heavily impressed, as a kid. Now, a wee bit older, I see how utterly flawed their comparison was, I mean: one radio for one year, what kind of measurement is that? A megawatt radio? or a crystal radio? (runs without batteries.)
But still, whenever I see tomatoes in winter, I think about those radio's.

Anywayz... The green beans. They just looked too good to ignore so I picked up a bag and was pleasantly surprised they were cheap, too!

And then, some hours later, me preparing munchies, picking up the bag, and seeing the label that reads "country of origin: Ethiopia."


And I had the radio on, playing in the background, so I could hear some news.
Guess what? Yep, I just heard about the drought there, threathening the lives of some 2.5 million people...

Crazy world.

Tuesday, March 14, 2006

You're a Bureaucrat Now.


Sounds like the title for a punk song, but this is exactly the words Chris Phoenix used to make me feel quite happy and honoured...

About an hour or so ago, he granted me Bureaucrat privileges to the Wise-Nano Project, "a collaborative website to study the facts and implications of advanced nanotechnology," in the form of a Wiki.

Now, I'm absolutely not pretending I know a lot about Molecular Manufacturing, the subject of Center for Responsible Nanotechnology's interest, but I try to keep up, and I've been an avid reader of all things CRN posted from day one. (well, not really day one, but you get my drift...)

I think CRN does quite a nice job, esp. with their publishing of pretty detailed stuff, like Chris' own paper, Design of a Primitive Nanofactory, dated October, 2003 (Man, how time flies... I clearly remember reading it, somewhere late 2003, and being utterly impressed, heehee!)

MmmmKay, back on-topic.

So I was granted Bureaucrat privileges, not because I had some new, ground-shattering insights I wanted to expand upon in the Wise-Nano Wiki, but because I liked CRN so much and wanted to "give something back."

But what? I'm not a Credit-card holder, and anyway, just giving a modest amount of money is a bit futile, given the costs them greedy banks charge you for things that are as simple as hitting some keys on a keyboard, sheesh... (Ranting, aren't we?)

So, what could I do?

Easy: The Wiki was beset by spambots, and it increasingly looked like nobody had much spare time to do much about it alongside running CRN and its popular weblog, so after a fair deal of hesitating, I fired off an email to CRN, saying I felt it was a shame about those spammers, it being the only blemish on CRN's otherwise excellent web-presence etc. etc. yadda, yadda, yadda...

And whaddayaknow, only about an hour later I got a kind reply from Chris, saying that, indeed the Wiki was a bit dormant ATM, and he or no-one else had much time to keep an eye on it, and no-one had actually volunteered to do some spam-bashing, so he'd be more than happy if I would be so kind to...


(Maaaaan, this is becoming longwinded, I wonder if the coffee has something to do with it? Naaah... /TWITCH/)

So I'm a Bureaucrat, and promoted myself to sysop (weird how this escalation of privileges is possible under the Wiki-setup, IMO....)



Well, I guess that's cool. :) For a dork like me.
Now I can bash spammers both at CRN's Wiki and the New Mars Wiki and Forums

Hmmm... SpamBuster's my middle name.

Thursday, February 02, 2006

breve Creatures video and screenshots

Just to give you an idea how it looks like when there's a creature fairly well evolved...

This one's at generation 729, max distance travelled: 45.97 and it's not going anywhere fast...

But this creature:


is more promising, after only 19 generations it was around 30, now it's inching towards 43, yay!

Video of second one, hosted on YouTube:

I used SaverLab from Dozing Cat Software, because currently breve 2.3 doesn't run the simulation used for the screensaver, so there's no way to do screengrabs or movie-exports.

Wednesday, February 01, 2006

breve physics simulation


"breve is a free, open-source software package which makes it easy to build 3D simulations of decentralized systems and artificial life. Users define the behaviors of agents in a 3D world and observe how they interact. breve includes physical simulation and collision detection so you can simulate realistic creatures, and an OpenGL display engine so you can visualize your simulated worlds.

breve is available for Mac OS X, Linux and Windows."

I did a bit of experimenting with it, and this program is impressive! It has its own physics simulation engine, a 3D renderer and a powerful language, complete with interfacing capabilities to other languages.
I may post a script of one of the robots that are currently evolving on my (horribly slow) computer, if someone is interested.
To get an idea of the genetic algorithm in action, open one of the physics-examples in the demo section (walker being the fastest evolving one.)

My computer is waaaay too slow to do serious evolving (a G3@350MHurtz, sigh...) so I'm looking into a way to distribute the system... If I'm not gazing at the screensaver (OS X only)

Flocking behaviour... In a 3D space

They call it art, rather than technology, and when you watch the video's, you have to agree it is beautiful, the majestic movements, the whale-like sounds...

Of course, I had to think about Mars rightaway... Martian atmosphere, although thin, is mainly CO2, so it is quite heavy, there's a wide choice for buoyant gasses to choose from: Helium, Nitrogen, Hydrogen, Oxygen... CO2 not being an oxidiser, using Hydrogen would be a safe option. Downside (there's always a downside) is of course that these blimps would be quite huge if you wanted a usable payload attached...