Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

Video of dynamic standing

Bioloid robot kit from Korean company Robotis; CM5 controller block, AX12 servos..
21 postsPage 1 of 21, 2
21 postsPage 1 of 21, 2

Video of dynamic standing

Post by StuartL » Fri Jun 20, 2008 9:43 am

Post by StuartL
Fri Jun 20, 2008 9:43 am

It's not quite the amazing videos you see around the world but it's still something of an achievement.

This is my humanoid robot made from a Bioloid Comprehensive kit (+ two extra servos) dynamically standing. You can see that if you push him too hard he falls over right now but steps are afoot (badoom tish) to resolve this.

All software is scratch written, IMU input is from Jon Hylands bus IMU (http://www.huvrobotics.com).

Enjoy!

phpBB [media]
It's not quite the amazing videos you see around the world but it's still something of an achievement.

This is my humanoid robot made from a Bioloid Comprehensive kit (+ two extra servos) dynamically standing. You can see that if you push him too hard he falls over right now but steps are afoot (badoom tish) to resolve this.

All software is scratch written, IMU input is from Jon Hylands bus IMU (http://www.huvrobotics.com).

Enjoy!

phpBB [media]
StuartL
Savvy Roboteer
Savvy Roboteer
Posts: 350
Joined: Mon Jun 04, 2007 3:46 pm
Location: Thatcham, Berkshire, UK

Post by JonHylands » Fri Jun 20, 2008 3:09 pm

Post by JonHylands
Fri Jun 20, 2008 3:09 pm

Very cool Stuart - nice to see people getting use out of those parts.

- Jon
Very cool Stuart - nice to see people getting use out of those parts.

- Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by srobot » Sat Jun 21, 2008 4:26 am

Post by srobot
Sat Jun 21, 2008 4:26 am

Nice!

What did you program it in?

--srobot
Nice!

What did you program it in?

--srobot
Dell Latitude D520, Windows XP, 4 GB RAM, 80 GB HDD, Intel Core 2 Duo. The power that's needed!

RIBO Labs, Springing Robotic Development to a New Level
srobot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 401
Joined: Sun Dec 10, 2006 1:00 am
Location: Deep in robot parts

Post by StuartL » Sun Jun 22, 2008 7:36 pm

Post by StuartL
Sun Jun 22, 2008 7:36 pm

srobot wrote:What did you program it in?


It's all scratch written C. He's doing full forward and inverse kinematics and feeding the IMU/gyro into the foot and ankle positions to cancel out his own movement.

More tuning is required but he's learned the basics :D
srobot wrote:What did you program it in?


It's all scratch written C. He's doing full forward and inverse kinematics and feeding the IMU/gyro into the foot and ankle positions to cancel out his own movement.

More tuning is required but he's learned the basics :D
StuartL
Savvy Roboteer
Savvy Roboteer
Posts: 350
Joined: Mon Jun 04, 2007 3:46 pm
Location: Thatcham, Berkshire, UK

Post by tom_chang79 » Mon Jun 23, 2008 4:13 pm

Post by tom_chang79
Mon Jun 23, 2008 4:13 pm

StuartL, that is very impressive indeed... I haven't seen any dynamic ped control and inverse kinematic on the Bioloid until I saw yours...

It seems there is a hysteresis from the compensation... But this is impressive nevertheless... Keep us updated with more videos of your Bioloid!

Regarding your inverse kinematics, I'm assuming you are coding this in "C" or using AVR?
StuartL, that is very impressive indeed... I haven't seen any dynamic ped control and inverse kinematic on the Bioloid until I saw yours...

It seems there is a hysteresis from the compensation... But this is impressive nevertheless... Keep us updated with more videos of your Bioloid!

Regarding your inverse kinematics, I'm assuming you are coding this in "C" or using AVR?
tom_chang79
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 116
Joined: Sat Jan 12, 2008 2:31 am
Location: California

Post by limor » Mon Jun 23, 2008 6:14 pm

Post by limor
Mon Jun 23, 2008 6:14 pm

very nice work!
have you looked at kalman filter to compensate for those oscillations?
very nice work!
have you looked at kalman filter to compensate for those oscillations?
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by NovaOne » Mon Jun 23, 2008 11:20 pm

Post by NovaOne
Mon Jun 23, 2008 11:20 pm

It's not quite the amazing videos you see around the world but it's still something of an achievement.


You are too modest...It's a massive leap in biped control,.....one of a select few on robosavvy who has succeeded ..... :shock: Congratulations :idea:
It's not quite the amazing videos you see around the world but it's still something of an achievement.


You are too modest...It's a massive leap in biped control,.....one of a select few on robosavvy who has succeeded ..... :shock: Congratulations :idea:
NovaOne
Savvy Roboteer
Savvy Roboteer
Posts: 405
Joined: Thu Jul 05, 2007 7:30 am

Post by JonHylands » Tue Jun 24, 2008 1:19 am

Post by JonHylands
Tue Jun 24, 2008 1:19 am

As an interesting aside, one of my friends is going to be implementing a Kalman filter for my IMU this summer, and if it works, we're going to try and shoehorn it into the ATmega168 - if that works out, then the Bioloid IMU will become really useful.

- Jon
As an interesting aside, one of my friends is going to be implementing a Kalman filter for my IMU this summer, and if it works, we're going to try and shoehorn it into the ATmega168 - if that works out, then the Bioloid IMU will become really useful.

- Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by billyzelsnack » Tue Jun 24, 2008 4:37 am

Post by billyzelsnack
Tue Jun 24, 2008 4:37 am

limor wrote:very nice work!
have you looked at kalman filter to compensate for those oscillations?


Do you mean put a second kalman filter on top of the IMU sensors' output? It looked more like feedback was the issue and he needs the gain adjusted in his algorithm.
limor wrote:very nice work!
have you looked at kalman filter to compensate for those oscillations?


Do you mean put a second kalman filter on top of the IMU sensors' output? It looked more like feedback was the issue and he needs the gain adjusted in his algorithm.
billyzelsnack
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 618
Joined: Sat Dec 30, 2006 1:00 am

Post by Will » Tue Jun 24, 2008 5:35 am

Post by Will
Tue Jun 24, 2008 5:35 am

Hi from Will,
well done, i have not got to try my gyro thing yet, i'm still trying to understand my rx64 feet.
i've writen a behavior control which i've yet to try it is similar to
start
loop
load print id 120:25
if id 120:25 > 1658 then play motion page 50"lean forward"
else if id 120:25 < 1656 then play motion page 51"lean backward"
jump loop
end


does this sound like its going to stop my robot falling backwatds, or do i need to master programming in
C ?
i thought it might be as easy as "print ID 120:25" and then some if and then call. ?

again i say well done, :D
bye for now and be well from Will.
Hi from Will,
well done, i have not got to try my gyro thing yet, i'm still trying to understand my rx64 feet.
i've writen a behavior control which i've yet to try it is similar to
start
loop
load print id 120:25
if id 120:25 > 1658 then play motion page 50"lean forward"
else if id 120:25 < 1656 then play motion page 51"lean backward"
jump loop
end


does this sound like its going to stop my robot falling backwatds, or do i need to master programming in
C ?
i thought it might be as easy as "print ID 120:25" and then some if and then call. ?

again i say well done, :D
bye for now and be well from Will.
Will
Robot Builder
Robot Builder
Posts: 16
Joined: Mon Apr 30, 2007 11:26 am

Post by StuartL » Tue Jun 24, 2008 8:51 am

Post by StuartL
Tue Jun 24, 2008 8:51 am

JonHylands wrote:As an interesting aside, one of my friends is going to be implementing a Kalman filter for my IMU this summer, and if it works, we're going to try and shoehorn it into the ATmega168 - if that works out, then the Bioloid IMU will become really useful.


We've got a working exponential smoothing algorithm that goes over the accelerometer and gyro ADC. We use different smoothing parameters for accelerometers to the gyros as the accelerometers are much noisier. The output of the exponential smoothing algorithms goes into a PID filter to control the inverse kinematics for the leg and ankle positions. I'm fairly sure these algorithms are both small enough to squeeze into ATMega8/168.

In fact we plan to rewrite the AX-12 firmware over the summer... ;)

Do you mean put a second kalman filter on top of the IMU sensors' output? It looked more like feedback was the issue and he needs the gain adjusted in his algorithm.


I'm assured by my partner in crime (hereby known as RandomMatt) that a Kalman filter is a linear filter and doesn't work (well) for the non-linear space of 3D kinematics. He's a maths whizz so I trust him on this statement. The exponential smoothing and PID control are all children of his work and are both very compact and exceedingly fast.

You are 100% correct that the gain is a problem. It's slightly more complicated with the two layers of filters (exponential smoothing + PID) with four 'gain's to adjust but that's the core of the problem.

It's looking less and less likely that he's going to be walking by Saturday, which depresses me a little, but you'll certainly be able to see the dynamic standing in action.
JonHylands wrote:As an interesting aside, one of my friends is going to be implementing a Kalman filter for my IMU this summer, and if it works, we're going to try and shoehorn it into the ATmega168 - if that works out, then the Bioloid IMU will become really useful.


We've got a working exponential smoothing algorithm that goes over the accelerometer and gyro ADC. We use different smoothing parameters for accelerometers to the gyros as the accelerometers are much noisier. The output of the exponential smoothing algorithms goes into a PID filter to control the inverse kinematics for the leg and ankle positions. I'm fairly sure these algorithms are both small enough to squeeze into ATMega8/168.

In fact we plan to rewrite the AX-12 firmware over the summer... ;)

Do you mean put a second kalman filter on top of the IMU sensors' output? It looked more like feedback was the issue and he needs the gain adjusted in his algorithm.


I'm assured by my partner in crime (hereby known as RandomMatt) that a Kalman filter is a linear filter and doesn't work (well) for the non-linear space of 3D kinematics. He's a maths whizz so I trust him on this statement. The exponential smoothing and PID control are all children of his work and are both very compact and exceedingly fast.

You are 100% correct that the gain is a problem. It's slightly more complicated with the two layers of filters (exponential smoothing + PID) with four 'gain's to adjust but that's the core of the problem.

It's looking less and less likely that he's going to be walking by Saturday, which depresses me a little, but you'll certainly be able to see the dynamic standing in action.
StuartL
Savvy Roboteer
Savvy Roboteer
Posts: 350
Joined: Mon Jun 04, 2007 3:46 pm
Location: Thatcham, Berkshire, UK

Post by StuartL » Tue Jun 24, 2008 10:38 pm

Post by StuartL
Tue Jun 24, 2008 10:38 pm

New video!

Note how the book collapses under his weight and with a short panic he corrects it...

phpBB [media]


However we've now completely broken the software with an attempt to make his feet adopt the angle of the surface he's standing on. Fortunately we have version control.
New video!

Note how the book collapses under his weight and with a short panic he corrects it...

phpBB [media]


However we've now completely broken the software with an attempt to make his feet adopt the angle of the surface he's standing on. Fortunately we have version control.
StuartL
Savvy Roboteer
Savvy Roboteer
Posts: 350
Joined: Mon Jun 04, 2007 3:46 pm
Location: Thatcham, Berkshire, UK

Post by JonHylands » Wed Jun 25, 2008 12:30 am

Post by JonHylands
Wed Jun 25, 2008 12:30 am

StuartL wrote:I'm assured by my partner in crime (hereby known as RandomMatt) that a Kalman filter is a linear filter and doesn't work (well) for the non-linear space of 3D kinematics.


While that is entirely true of a regular Kalman filter, there are extended Kalman filters that work very well in this space. Look at all the helicopter-based UAVs out there - they all stabilize themselves with a six-axis IMU and an extended Kalman filter.

- Jon
StuartL wrote:I'm assured by my partner in crime (hereby known as RandomMatt) that a Kalman filter is a linear filter and doesn't work (well) for the non-linear space of 3D kinematics.


While that is entirely true of a regular Kalman filter, there are extended Kalman filters that work very well in this space. Look at all the helicopter-based UAVs out there - they all stabilize themselves with a six-axis IMU and an extended Kalman filter.

- Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by Will » Wed Jun 25, 2008 12:40 am

Post by Will
Wed Jun 25, 2008 12:40 am

Wow, thats cool. :shock:
and the spring effect of the book cover is an interesting test. well done.
My mom said my hoverbike was fantastic but man your robot seems pritty fantastic to me.
The yellow thing i got from tribotix a while ago in Data's chest might be one of those, man! i hope i get to learn about it.
i just watched your vid again, i'm trying to work out how to say "co o ol"
Bye for now and be well from Will.
:D
Wow, thats cool. :shock:
and the spring effect of the book cover is an interesting test. well done.
My mom said my hoverbike was fantastic but man your robot seems pritty fantastic to me.
The yellow thing i got from tribotix a while ago in Data's chest might be one of those, man! i hope i get to learn about it.
i just watched your vid again, i'm trying to work out how to say "co o ol"
Bye for now and be well from Will.
:D
Will
Robot Builder
Robot Builder
Posts: 16
Joined: Mon Apr 30, 2007 11:26 am

Post by billyzelsnack » Wed Jun 25, 2008 3:05 am

Post by billyzelsnack
Wed Jun 25, 2008 3:05 am

Ah cool. I didn't notice before, but you stretched him too. I stretched my guy awhile back but I never got around to actually doing anything with him after the surgery. Are you having any problems with the servos not being powerful enough?
Ah cool. I didn't notice before, but you stretched him too. I stretched my guy awhile back but I never got around to actually doing anything with him after the surgery. Are you having any problems with the servos not being powerful enough?
billyzelsnack
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 618
Joined: Sat Dec 30, 2006 1:00 am

Next
21 postsPage 1 of 21, 2
21 postsPage 1 of 21, 2