www.fgks.org   »   [go: up one dir, main page]

Heading - New Scientist Technology Blog

A technology blog from  Heading - NewScientist Blogs

Thursday, July 05, 2007

A programmable robot from 60 AD

Who built the first programmable robot? It's almost impossible to tell, and most people would put good money on Leonardo da Vinci. But now Noel Sharkey, a computer scientist at the University of Sheffield, UK, has traced the technology way back to ancient Alexandria.

In about 60 AD, a Greek engineer called Hero constructed a three-wheeled cart that could carry a group of automata to the front of a stage where they would perform for an audience. Power came from a falling weight that pulled on string wrapped round the cart's drive axle, and Sharkey reckons this string-based control mechanism is exactly equivalent to a modern programming language. He describes it in this week's issue of New Scientist magazine.

To prove it could work, the magazine's tech writers took up the challenge and constructed their own version of Hero's cart. We're certainly not the first to try: in 2003 a bunch of engineers at a conference in Colorado spent a few hours making a crude version using Lego. You can read about their efforts here (4.6 MB pdf).

Our cart was made from a child's scooter, a broom handle, wood, string, and lead weights from an old sash window. And, fortunately for us, Hero left some advice in his writings: friction is a problem, he warned, so you'll need a smooth floor to run it on. He also recommended using pre-stretched string, and even gave us the cart's measurements: one cubit long, four palms wide and three palms high - that's 45cm long, 35cm wide and 23cm tall. After a bit of tweaking, we succeeded in making our cart move forwards, backwards, and turn.

Here it is in action:



And now we're issuing a challenge: can you to do better? Can you build a version of Hero's robot that can perform as well as the inventor's original? Send us a video and you could win a prize.

Ben Crystall, New Scientist feature editor

Labels: ,

Comments:
All comments should respect the New Scientist House Rules. If you think a particular comment breaks these rules then please let us know, quoting the comment in question.
I'm not sure this is exactly a new discovery. I watched a documentary about this device a couple of years ago.
Thank you for not showing us the "robot" in action. After all that build-up on a rather significant bit of science and creativity: two seconds of it running. Thanks for the disappointment.
No video of the robot? FAIL!
By Anonymous Anonymous on July 07, 2007 3:14 PM  
3rd paragraph...
We're certainly not the first to try: in 2003 a bunch of engineers at a conference in Colorado spent a few hours making a crude version using Lego. You can read about their efforts here (4.6 MB pdf).



And that is a great recreation, keep up the good news and continuing to search for true science.

All of the haters please go back to criticizing others for trying something you cannot..
By Anonymous Anonymous on July 07, 2007 9:14 PM  
short performances? guys, why not use block and tackle and greater weights? It could allow to deliver a few times longer performances!

/methinks I am gonna try this at home some day
Rysiek said: "short performances? guys, why not use block and tackle and greater weights?"

I was just going to suggest this, and you beat me to it. Heavy weights with block and tackle, geared down, provide the equivalent of of _very_ tall drop without the vertical space requirement. Bravo!
By Anonymous Anonymous on July 07, 2007 10:06 PM  
... But I commented a bit too soon:

"Heavy weights with block and tackle, geared down, provide the equivalent of of _very_ tall drop without the vertical space requirement."

But this also puts more weight on the axles, with a corresponding increase in friction. Modern bearings can probably (licks finger and holds up in the wind) compensate for this, but this approach may not have been available to Hero in a era before precision bearings.
By Anonymous Anonymous on July 07, 2007 10:10 PM  
That was gr8, Thank you!
the guy in the video is incorrect, this
"robot"'s language is nothing like modern robots, most simply because there is no way to make conditional movements
By Anonymous Anonymous on July 07, 2007 10:39 PM  
It depends on your deffinition of "robot" (originally, a Polish word meaning "indentured servant" first coined to be mechanical man in the play Rowsum's Universal Robots). The Japanese concider any automated mechanical appendage to be a "robot." Even the automobile assemply lines which blindly repeat tasks with no conditioals.

The Jacard Loom was concidderd programable, yet it had no conditions. Does that mean Ada Lovelace Babbage was not a "real" programmer?

There are plenty of modern mechanical actuators which are programmable - that is, you can change their behavior without rebuilding them - yet do not make decisions.

The only relevant question is... can you make a Beowulf cluster of this device? :-)
By Anonymous Anonymous on July 07, 2007 11:18 PM  
Uh, if there's no branching, then it can't be equivalent to a programming language. Sorry, try again.
By Anonymous Anonymous on July 07, 2007 11:53 PM  
"String Language" is conditional:

IF wrap == Counterclock wise
THEN spin axel forward
ELSE spin axel backward

The device operates two "threads" in parallel. Combined they make the cart go forward OR turn left OR turn right OR go backward.

It's actually more advanced than the Turning Machine - the simplest programmable computer.

-CF
so you mean it is actually running on a multi-threaded platform?
By Anonymous Anonymous on July 08, 2007 1:38 AM  
what kind of jerk cuts up his son's scooter?
By Anonymous Anonymous on July 08, 2007 2:25 AM  
did this thing have a purpose? could I not strategically place clumps of dirt on a hill, roll a rock down it, and given the "programming" of the dirt call the hill a robot?
By Anonymous Anonymous on July 08, 2007 3:07 AM  
It is a programming language. This robot is unlike modern robots because it lacks sensors in which to conditionally make decisions about its environment.
By Anonymous Anonymous on July 08, 2007 7:32 AM  
This is great, now lets build a modern day robot with our modern technology.
By Anonymous Anonymous on July 08, 2007 6:04 PM  
Maybe you could make it go longer with gears. Just make the "steering rope" go around a cylinder which is connected to a small cog. connect the weight to a bigger cog and put the cogs together - tadaam.
you'll also need to make the weight heavier by the ratio of the cogs if you want to achieve the same speed for the cart.
By Anonymous Anonymous on July 08, 2007 8:55 PM  
"What kind of a jerk cuts up his son's scooter".

Maybe one who's son has moved out of home? The old scooter lying around rusting in the garage?
I believe you could, in staying with the 'era' of technology, produce a much longer working robot using a bow and string arrangement powering a real that pulls in a long piece of string that in turn wraps around the drive shaft. It may even be possible to have many bows that are triggered sequentially. This should provide a long run with minimal weight.
By Anonymous Anonymous on July 09, 2007 2:23 AM  
Steam Power

With a simple boiler to create steam power you could supply an "endless" amount of power. Of course then the amount of string then becomes the problem - where gears would come in handy. All of this would have been easily available to the people of the time - I assume they just didn't have a need for anything that complicated.

Just because you can do something complicated, unless you need to - KISS.
"It depends on your deffinition of 'robot' (originally, a Polish word meaning 'indentured servant' first coined to be mechanical man in the play Rowsum's Universal Robots)."

I'm pretty sure it was coined from the Czech word for "forced labor", possibly "indentured servant"
"Robota" in slavic means "to work"
By Anonymous Anonymous on July 09, 2007 6:42 PM  
This is not "fairly similar to the kinds of languages used in modern programming." Just because it can go forward, backward, left, and right does not mean it is programmable. It would be easy to build a wind-up toy that had a system to do this. It lacks any sort of data input, so it cannot make decisions based on its environment, and it lacks the ability to loop, both because it cannot rewind the string and because the string will eventually run out. It's still cool, but this is "modern programming" inasmuch as the fd, bk, lt, and rt statements in Logo (and nothing else) are "modern programming".
Interesting. At its most simplified level, the conceptual language of programming hasn't changed in 2000 years... But then again, what has?
By Anonymous Anonymous on August 03, 2007 12:54 PM  
Come on people. You compare it to modern stuff and say "It is not pregramable"
This was 60CE.
Iron was relatively new. The most advanced piece of military hardware was a chariot to take new fighters to the action and return. People walked everywhere and travelled very little. The height of schollarship was in the Allexandria Library and was written BY HAND on papyrus scrolls.
Get over yourselves and think about how wonderful this man's brain was. He is the first one to think of it. What have YOU done that NO ONE has EVER done before. He is MY HERO.
By Anonymous Jenni Mcinnes on February 07, 2008 6:49 AM  
right on jenny. Hero must have had an incredible mind. for all of you out there who liked this item - check out Su Song's celestial engine!
By Anonymous Anonymous on June 01, 2008 4:11 AM  
I hope i can get rs gold in low price.
i buy runescape for you.
runescape money is present for you.
Do you like cheap rs gold?
I usually buy the runescape gold.
By Anonymous Anonymous on January 11, 2009 4:54 AM