Let's Make Robots!

Mr. Lobster

Meet Mr. Lobster.
He's big, ugly and lazy - but he's also environmentally conscientious.
Now in full-colour video! Wow!


The small photovoltaic array on his head powers a 600mW double PEM (proton exchange membrane) fuel cell, causing the fuel cell to split stored water in hydrogen and oxygen gas. The gases are stored in 'helium grade' balloons inside the tank that makes up Mr. Lobster's 'abdoben'.
The fuel cell then consumes to stored gases and converts them back into water, producing around 2V @ 500mA which is boosted by an on-board voltage converter. The voltage converter charges a 1F super-capacitor, which is used to power the two microcontrollers and motors.


As for behaviour, Mr. Lobster just wants to spend all day frolicking in the sun. If he's not yet fully charged and there's ample sunlight he'll just laze about, but if he's 'full' he'll wander about aimlessly. If there's a sunnier patch nearby he'll move towards it, otherwise if it's dark he'll shut off as much hardware as possible to conserve energy - the voltage boost converter goes into a low-power state, and one of the two PIC16LF628A microcontrollers is turned off.
The 'master' PIC handles decision making, reading of LDR couples and boost converter management. The 'slave' PIC monitors the stored power level and controls the motors using quantised charge feedback. The PICs communicate via two-way asynchronous USART (like typical serial comms, but without a clock).

Up until yesterday Mr. Lobster looked like this:

So as you can see he's changed quite a lot in the last 24 hours =D
Sadly one of the feedback circuits for his forearm motors went ballistic and there was no time to track down and correct the problem. I tried to manually control the walking gait, but without feedback Mr. Lobster was so inept that he couldn't walk at all.
The whegs (wheel-legs) were actually part of the original concept, so I quickly added those back in. They're simply made of thick-walled rubber gardening hose with a curtain-wire spring fitted tightly inside. They're not terribly effective on smooth carpet, but Mr. Lobster is surprisingly agile over grass or rubble.

As requested I've written a bit of a walkthrough on using PEM Fuel Cells which you can check out here.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Video is coming - after my exam this afternoon I'm borrowing a camera, so I'll hopefully have one up by tomorrow morning.

I'd be happy to put together a fuel cell walkthrough, they're actually pretty easy to use.

put some velcro strips on the whegs to improve his traction on carpet and maybe some rubber squash balls at the end of the whegs to grip on smooth surfaces.

Just my 2 RMB worth :D

I wanted to put grappling-hook type claws on the end of each arm, but that apparently violates the "no killer robots" rule in this house.
I'm thinking maybe less leg and more wheel for mk1.1 - the wheel part can be rubbery and grippy, which leaves all the grasping and clawing to the leg parts. Now if I can just raid some velcro strips from somewhere...

You say that motor feedback is one of the sensor/input systems - which parameters are you querying, what kind of condiitons influence a modification to behaviour?

hmm, what does "quantised charge feedback" entail? ... heck, what does it even mean?

Is there a lot of metal weight onboard - or is it all aluminium? Where did you get it from?


Originally built for collision detection for the 2DoF front legs, the feedback system works at the end of every programmed movement.
The H-bridges that drive the motors have Darlington Pair NPNs on the low side (which also control the high side PNPs), which have a small capacitor placed between the base terminal and ground. When the microcontroller wants to stop the motor it switches the output pin that controls the H-bridge to a high-impedance input. The small base capacitor keeps the H-bridge running for about 10 milliseconds, but this time varies depending on how much current the motor is drawing - more motor current causes more base current to be pulled from the capacitor, so it discharges quicker.
Meanwhile, the microcontroller has started an internal timer that advances every microsecond, and the instant that base capacitor runs out it records the elapsed time. The quanta of charge the motor is given during the feedback process is always the same, so the time taken to discharge the base capacitor provides a convenient way to examine how much current the motor was drawing just before it was turned off. Since the motor was already running before the feedback routine started, the usual problem of high starting current throwing off the readings is avoided.

The readings for discharge time are compared to a simple threshold value which indicates whether or not the motor has stalled (or close to it) or is still running happily. With the original legs stalling was good, since it meant the leg had made firm contact with the ground. On the whegs however, stalling out means the wheg is stuck, so Mr. Lobster tries to free himself by reversing the motor and seeing if it can rotate it in that direction. If he can't rotate the motor either way Mr. Lobster gives up for a while, and tries again later.

Apart from the main plate and other gear from the Mr. Basic set, the rest of the metal is from some $2 Meccano-style toy sets I bought in bulk a few months ago. It's pretty flimsy stuff, but because it's so thin it isn't too heavy and it's easy to reshape if needed.

Okay, thanks for the detailed info.

I think I don't have a clear picture of the timing circuit; the microcontroller is driving the Hbridge. To turn off the motors, it toggles the enable pin via a NPN, to switch to a hi-impedance output? The capacitor is connected in parallel  to the base of the NPN, and goes to ground.?

Sorry, I'm not too sharp with nomenclature - if you have the patience, perhaps a quick sketch would help?

Thanks again.


I tried a few different configurations, but this simple one was the most effective. Cb is about 1uF for a 'cooldown' time of ~10ms. The darlington transistors are ULN2803A, so there are a few resistors and diodes that I've left off the sketch.


The microcontroller pins themselves are set to input/high-Z, not the bridge itself, it keeps running.

Ok this sounds like science fiction - i just have to get one of these PEMs - where on earth (or planet Zogg) did you get it from.

Would love to know what the overall mAh rating is (but i suppose its a little difficult to calculate)

"Sexy Legs"- I am looking for an alternative traction system for TB007 as its difficult for bots to travel over grassy terrain - "Brill" idea.


Eroticon 6, of course

The exact fuel cell I have is this one here. The mAh rating will depend on how much gas you can store up - I recently changed to a bigger tank and I haven't run the numbers on the new one yet.

Although I'm more or less finished with the Mr. Lobster experiment, I'll soon be starting on another 'wheg' bot, this time one that is more effective on carpet and tiles (areas where Mr. Lobster struggles). In preparation for the aforementioned bot I'll be playing around with modifications to Mr. Lobster's whegs, so I'll attach a blog with my progress.