Created: 07/23/2008
Video description: Master robot builder David Calkins reveals the basics of putting together and programming your very own android. Plus, find out what happens when we combine Patrick and non-dairy creamer.
Systm: Build an Android Video Transcript
>> This episode of Systm is brought to you by eMusic.com, Netflix.com, and GoDaddy.com. Field trip, you might remember Dave Caulkin from Systm episode forty where he turned a pair of cordless drills and a pile of plastic into a combat robot. Today, Dave has something a bit different lined up for us in San Francisco State University's engineering workshop, a pair of humanoid robots on this episode of Systm.
^M00:00:26
[Music]
^M00:00:48
>> All right, welcome to Systm, [inaudible] David Calkin, we're back and we have your miniature humanoid robot army of doom. Talk to us about humanoid robots.
>> Humanoid robots are a lot harder than wheeled robots. You talk about the R2D2 versus C3PO quandary. R2D2 is really easy cause he's got wheels. You can rrrr, he's always flat.
>> You might want to lift your hand up when you do that.
>> A walking robot is hard because you have about twenty motors and you have to balance everything so just the whole balancing thing is tough.
>> And basically, emulating a human seems like just a horrible thing to do to a perfectly innocent robot.
>> Well, it is. So if this were a wheeled robot.
>> Sixteen, sixteen turbos?
>> Sixteen.
>> That's a lot of turbos.
>> You can do up to twenty-four but these ones are the sixteen. So, this is hard, you know. If you push on a wheeled robot, what does it do? It moves forward.
>> Right.
>> If you push on -
>> Was I supposed to catch him?
>> No.
>> Okay.
>> I know you're slow.
>> Sorry little dude.
>> So a humanoid robot is very difficult. It's very difficult doing the balance and things. But, you know, you can do things with a humanoid robot that you can't do with a wheeled robot, you know.
>> Like disco.
>> You can do all of these sorts of things.
>> Emulate human movements.
>> Emulate human movements.
>> So why did [inaudible] obviously, Honda is, certainly has a rep with Azmo [assumed spelling] with being at the forefront of this. What's the point of emulating people? Cause, I mean, it just seems like, other than walking up stairs, I mean, what's -
>> Affiliation.
>> Okay.
>> But, you know, when an artist sculpts, most artists don't sculpt cats or dogs.
>> Right.
>> They sculpt humans. It's the human form.
>> So basically, cause you want the end users to affiliate, with the robots cause the creators affiliate with the robots, or just cause they think it's cool to have.
>> Well, you know, both the end user and the creator, you know. You want to look something in the eye. Right?
>> Right. Or the little blue LEDs.
>> Or the little blue LEDs as the case may be.
>> And recognize the spark of life?
>> Mm-hmm.
>> Very promethean of you. Now, there's not a whole lot of, there are actually remote controlled. It's not like it's gonna follow me around the house and ask for a bottle of milk. I need a battery.
>> That's such a longer question. Yeah, these are remote controls.
>> Uh-huh.
>> But you can totally add, you know, all sorts of autonomy. So, for instance, you can add gyroscopes, you can add cameras and sensors and things like that. So we actually have robots and robot competitions where you add a camera, and then, the robot has to follow the paper ball.
>> Cool. So if I like tied a pink ball to the corporate cat's collar, I could use the robot to exercise the cat automatically?
>> Exactly.
>> I like that thought.
>> You can do all sorts of things.
>> So are we going to a cotta right now or is this some sort of disco frenzy?
>> We're actually going through a full cotta.
>> Cool.
>> Matt Bauer may have made this cotta for the robot, so. Geek TV, people like you [inaudible].
>> Hey, look. It's like a little, tiny martial arts dude. So, actually, what are these primarily used for in Robo Games?
>> So, in Robo Games, these are used, we actually have twelve different humanoid events. Just like the human Olympics, you know, if you're a human?
>> Right.
>> You shouldn't be restricted to one event, right? So, we have twelve different events. Five of them are remote control events. Seven of them are autonomous events. So remote control events are kung fu, which is just the whole remote control my robot versus your robot, and we'll have a competition later on today. Jay will lose gloriously.
>> Oh.
>> You never know, actually. I got my butt kicked at Robo Games this year by some little twelve year old kid. Isn't that the way it always is? You shouldn't have to hold onto him.
>> I'm just having fun. Just want to sort of turn him for the camera.
>> It's a foot fetish thing with you, isn't it.
>> Not exactly but we'll talk about that off camera. So for autonomous competitions, don't you need some kind of sensors out there? Or do they just sort of slam about?
>> You do need sensors. So, for example, here's a sonar sensor that we use. And the sonar sensor -
>> This came from that company that was selling stuff at Radio Shack.
>> Paralox, yeah. And the sonar sensor, you just mount it on the chest plate and the robot can see in front of it and if it's walking and comes across me, it will stop and turn around.
>> Got it. What other kind of sensors do you guys use?
>> We also use camera sensors.
>> Uh-huh.
>> So that the camera can track pink balls, one of the events, you know. One of the events is an obstacle course, the autonomous events, and you have red and blue folders. And so, the red folders, you have to crawl over, and the blue folders, you have to crawl under. So then, basically, the robot sees the red folder, it says, ah-hah, you know, and then it acts appropriately. It has to go from A to B by going over and under the varying folders.
>> And it would be sort of a speed competition?
>> And it's a speed competition, exactly. We also use gyros like that and that's how you control a remote control helicopter. And what the gyro does is, well, comparatively speaking.
>> If you take a standard robot, a non-gyro scoped robot and you push on him like. So this guy, if you watch carefully, he's not reacting. He doesn't really have what's called proprioception or kinesthetics which is your ability to know where your muscles are and your sense of balance.
>> Okay.
>> All right? So if you put a gyro on him, yeah, yeah, yeah.
>> He's stretching.
>> Stretching. Well, he's actually fighting back, he fights back.
>> Oh, wow. I can actually hear the servos.
>> You can actually hear the servos move. So him, I push him, he's not fighting back. I'll just, you know, he weebles and wobbles, sometimes he falls down. This guy, as I push, you can actually see the motors responding.
>> Yeah, I can hear them, too.
>> To my pushing.
>> Plus there's a little LED light which is true proof that something is happening.
>> Well, you get, there's always proof of something happening. If you have an LED on there. Go to Radio Shack, spend three cents on an LED, and people get incredibly impressed with you.
>> That's the alarm in my car. So, I would think, though, that, you know, I mean, this is essentially a remote control device and this is, there's some intelligence in there. How hard is it actually -
>> This is the intelligence, right?
>> Oh, my goodness. It's basically trying to stay upright.
>> Yeah. As I move, it's doing it's best to stay upright.
>> How hard, I mean, you know, is this like cut and paste code you can use to make it do this?
>> There's a lot of cut and paste code. Then we have, for free, we have, you know, cut and paste code libraries, like, do this for that and that for this.
>> So inside of these servos, there's probably not just a motor. There's probably also a sensor or something.
>> So there is a sensor in every servo no matter what kind of servo you're buying.
>> Uh-huh.
>> Which is just a standard potentiometer which is a variable resistor, like a rheostat, like what you use to dim your kitchen lights.
>> Mm-hmm.
>> And it's in line with the gear box. So basically, as you turn a gear, what happens is that resistor, as I go like this, that potentiometer sends back a signal which says, hey, I'm here. And the reason for that is that, basically, as I try and pull this arm up, for example, the potentiometer's saying, hey, hey, I'm being moved, and then, it can increase the flow of current to the servo so that, basically, it fights against that.
>> And this is all stuff, I mean, I'm watching my baby develop. What was that fancy word after kinesthetics?
>> Proprioception. If you stick your hand out like this, how do you know whether you're palm down or palm up?
>> Well, cause I'm looking at it.
>> Well, cause you're looking at it. But if you close your eyes, right, and it's not your sense of touch. People confuse proprioception with sense of touch. Your sense of touch is this, right? You can feel the air moving over your very, very hairy arm. That's your sense of touch.
>> Right.
>> That's not your sense of proprioception.
>> But it sounds like I can flip my hand over and not notice it.
>> Here, this is your sense of proprioception. That's your sense of where is my arm relative to the rest of my arm?
>> Or if you break something or dislocate a joint, you have that horrible sense that something's terribly wrong.
>> When you wake up in the morning, you know, before your eyes are open or anything else, you know that, you know, your arm is, like, above your head or below or you're curled up in the fetal position. You know where all your body parts are. It's very difficult to actually teach robots proprioception. So, for instance, if our little robot here is stepping on something.
>> Uh-huh.
>> Right now, all he knows is he's a little off balanced at the shoulders. He has one point, but actually, this is a balance point, really. But what he doesn't have is proprioception, didn't know that this foot is up.
>> So if this robot was walking forward and it put it's foot down on this, would it keep itself level or would it just kind of -
>> It would try to keep itself level.
>> Okay.
>> It would do it's best to keep itself level. That seems like something that's enormously complicated, I mean, could you get a feedback based on -
>> It's a funny thing. It's not, to be a good humanoid robot programmer; it's not really about intelligence. You can be the smartest guy on the planet and do a bad job of it and you can be really dumb and do a good job of it. It's really about patience. And you're gonna fail your first time. The question is, is are you willing to go forty times until you get it right?
>> Let's take a moment to thank one of our sponsors. eMusic.com, remember, our sponsors help us bring the show to you. Now, we've partnered with eMusic to pull together a play list. In this case, some of my favorite songs and once a month, I'm gonna create a new eMusic playlist that you can listen to on this website, eMusic.com/systm. Right now, I've got some AntiChrist, Ugazi [assumed spelling], Bad Brains, Bouncing Souls, it's a little punk rock this month and we're gonna switch it up with something different next month. But do us a favor, check out eMusic.com/systm and let us know what you think. If you like what you hear, check it out. EMusic is offering fifty free songs to Systm viewers when they visit eMusic.com/systm and sign up for a free trial. MP3 format, [inaudible]. The music plays in your iPod, your Zoon or any other MP3 compatible, digital music player out there. No restrictions, no [inaudible] hassles, no monthly fees. You own it forever. You like music? You should definitely check out eMusic.com and support us by supporting them.
>> How many people actually build a humanoid robot from scratch? I mean, all of these have the strong look of having been assembled from kits.
>> A lot of matching parts here. Building a kit versus building from scratch, it's kind of like that do you want to build your own car or do you want to buy a car?
>> Yeah.
>> Or even if it's a kit car, like, if you want to buy and Excalibur which, like, sits on a VW frame or something but it looks like a Duesenberg.
>> Let us never speak of the Excalibur again.
>> Personal history there?
>> Long story.
>> So the thing is that, how many people build a humanoid robot from scratch? Very few, and the reason for that is really you're reinventing the wheel.
>> Right.
>> Why do something from scratch? Because the major cost of doing that isn't in the robot but it's in the tools that are needed to make the parts to make the robot. For instance, you know, one of these brackets, these are the brackets that you would use to put together one of these robots, right?
>> Really suck to try to make those at home.
>> It would. So basically, what you would need is first you'd need, you know, a CNC mill, then you would need a good metal press to make all of the good, perfect bends. You'd need an oven to, you know, do all of the color anodizing, right? You'd need all the CAD software to -
>> I can already hear the e-mail where somebody's like, I can do that will a drill press and a vice and I can send it out for the anodizing.
>> The thing is, is that these kind of things you need to be accurate within a hundred thousandth or three hundred thousandth of an inch.
>> Is that just cause it makes the life easier for the software?
>> It's most likely done for the software. Because it's one of those things of, if you're off a little bit in every joint, it cumulatively adds up so much now the robot can't walk any more.
>> The robot goes -
>> Yeah, and walking is very hard. So why build a robot from scratch versus making a kit? Well, because all the hard work's been done for you.
>> Right.
>> All the really hard work, and then, it's not like, and then it's like a car, okay? You can just drive it to work and back and forth and do what you need and never, ever modify that. Or, you can be like, you know, Burning Man people, an artist, who like, okay, I want to art car, right?
>> Right.
>> So I've got the basics here. I've got my motor, I've got my transmission, I've got my suspension, okay? But what I want is I want my car to look like a bug, you know, and I want it to have little tentacles coming off of it.
>> Maybe some sort of flaming calliope on the back.
>> And a flaming calliope on the back, whatever, you know. So kits like this allow you to have all of the hard work done for you.
>> Mm-hmm.
>> But now, you get to do the customization of, okay, I want to add grippers. So let's make grippers.
>> Oh, weird.
>> For our robot. So instead of, you know, the dummy hands it comes with, now, for Mister Guy who can do anything and send it out to CNCparts.com.
>> Right.
>> Well, he can make his own grippers, right?
>> Or he can make his own jointed fingers.
>> Or, you know, like here we've got one that, you know, we've added a pan and tilt pad.
>> Oh, funny.
>> You know, so actually, we took off the camera and put this back on. But normally, it's got a camera on it so they can do object tracking with the camera. But here, you know, these heads are all permanently attached. You know, here, you have, this is just a pan. We took off the tilt but you can add things like that.
>> So, basically, starting with a kit allows you to concentrate on doing, you know.
>> The fun stuff.
>> Basically the fun stuff or concentrating on the programming rather than concentrating on -
>> Such as, you know, taking one of these, and then, going through this whole cotta, you know, where, like, Matt Bauer made.
>> Right.
>> Very long cotta so you can watch that. Or you can do more interesting things like, you can add, I mean, I was in my office last night for eight hours, totally lost track of time, just playing with the gyroscope of, like, how do I tweak the robot, all these off the shelf parts but, how do I tweak the software such that, when I turn the robot on, when I turn the robot on.
>> It will automatically fight.
>> He automatically fights and knows, you know, what he's doing. So, you know, here, let's, if I turn this robot on, if he's lying down, and I turn this guy on, what does he do? He stands, he stands up but he's not smart enough to know which ways up.
>> Because, you know, he's on his back.
>> Right. But if I take this robot and turn him on, he knows that he was lying down so he stands up.
>> That's very cool.
>> Right. So he's got this gyro on. So I didn't invent the gyro.
>> Right.
>> I didn't invent the robot. But I can reprogram them a lot so that he's smart enough to figure out, you know, that he's being pushed on and push back. That he's smart enough to know when he's lying down and stand up, things like that. And for, and it just doesn't have to be the, you know, engineering side of it, the electrical side. There are a lot of people who will just work on just, you know, these cottas like Matt did where, I just want to be an artist, right? I just want to make my robot do cool things. And whether that's this Japanese cotta or you have it running around your house dressed like a gnome for Christmas, you know.
>> Whatever makes you happy.
>> Whatever makes you happy, you know? So it becomes a three D animation tool, right? Except it's not animation on your computer.
>> It's animation on something that wanders around your house.
>> That wanders around your house.
>> To chase the cat. So what's the software look like you use to program movement?
>> Well, let me show you.
[Music]
>> You don't need a motion capture software would be easy.
>> [Inaudible].