The way we walk...

This is an attempt to build a walking biped with only 4 servos, since that's what I have left right now. Since I don't have any video recording equipment right now, I'll try to describe how it walks. It start by tilting left to put all the wight on the left foot and lift the right foot. This is done by turning the left foot servo to the left, while turning the right foot to the right to support the robot as far as possible in the tilt, like this:

When the left servo turns further to the left, the weight will be on the left foot and the right leg will be lifted:

After the leg has been lifted, the robot will use the other two servos to move it forward. At this point, I always reach out for it, because it looks like it's going to fall:

 

Next step might be to add a gyro or acceleratometer, so it might adjust itself, if it's going to fall.

The "brain" is an Arduino that is mounted on a perf board. Only port 0-7 are connected because, the Arduino designers have, in their infinite wisdom placed the connector for port 8-13 half a unit from the 0-7 connector, so it won't fit on a standard perf board.

Perf board with connectors

I'll add a video next week, when I get my hands on a camera that can record video (no, there is no camera in my phone and my webcam doesn't work)

 

UPDATE: Video available.

Walks straight ahead

  • Actuators / output devices: 4 servos, TowerPro SG-5010
  • CPU: Arduino
  • Power source: 9V+6V
  • Programming language: C
  • Sensors / input devices: none
  • Target environment: indoor

This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/the-way-we-walk

really impressive, i like
really impressive, i like it, really, and even more that you are using arduino decimila, one more time i can see that if other make robots with it, i will be able to do it 2 :slight_smile:

brilliant!
brilliant!

Very nice. Definitely want

Very nice. Definitely want to see video of it walking.

Isn’t that a weird that they chose to add that little gap between pins 8-9? It would be so much easier to make clean, more permanent installations if they maintained the spacing. I’m still looking for a good way to integrate the Arduino into a circuit when I need to use more than 8 I/O pins. I considered simply desoldering all of the female headers from the Arduino and soldering in a ribbon cable or something instead. In my current project, I’m trying to fit it all inside a small project enclosure that’s barely bigger than the Arduino itself, so I might resort to that for this one. Or I guess you can always build an Arduino circuit from scratch on perfboard.

Dan

Looks awesome! Looking

Looks awesome! Looking forward to seeing it do the walk… though from the pictures it looks like it might have been sipping a bit too much from that wine glass ;-).

- Jimmy

Video! Congrats, btw - this

Video! Congrats, btw - this is our first 2-legged walker in here!! Video!!

/ Fritsl

Video has been uploaded.
Thanks for the comments. I have uploadet the video.

Wow - cool way to walk!!!/

Wow - cool way to walk!!!

/ Fritsl

Thanks. The second video
Thanks. The second video should be available soon, when Youtube has finished processing it.

very nice movies =P gratz
very nice movies =P gratz

Can I see the code you used

Can I see the code you used to move the servos. The code that I am using right now is veary complicated and can only move the servo in a 180° arch.

You need to set the video to

You need to set the video to Phil Collins I can’t Dance.

I can’t dance, I can’t talk.
The only thing about me is the way I walk.
I can’t dance, I can’t sing
I’m just standing here selling everything.

Very nice robot. Eventually I want to do a walker…

"The way we walk" is
"The way we walk" is actually a Genesis live album :slight_smile:

Sure. I’ll attach the code
Sure. I’ll attach the code to the article. But shield your eyes, it’s not pretty :slight_smile:

Ahem!
Well, OKay, the first one that actually walks, maybe…

180 degrees
Servos are normally only mechanically capable of a 180 degree turn unless they’re custom.

Can you tell I’m not a fan :wink:
Can you tell I’m not a fan :wink:

Thanks
Thanks!

You where write your code is
You where right your code is hard to understand. I have a question do you know a simple way to controol servos. Like how to position a servo in the center? I dont know how to do this. Is there any way to easily controol servos with audrino? If so some sample code would be nice.

Yes and No

Dunno about arduino. If you can set an output line high for 1ms, then bring it low for 17.5ms repeatedly, THAT will make your servo move to the middle. Variable pulse widths (NB NOT the same as Pulse-Width Modulation and I wish people would stop saying they control servos with PWM, 'cos the don’t) are the easiest way. Althought, some of the chaps here use some new-fangled high-level stuff that probably has a built-in command “set servo to middle” or something like that.